import type { MeshAttribute, TypedArray } from '@loaders.gl/schema';
import type { AttributeStorageInfo, Field } from "../../types.js";
type ColorsByAttribute = {
    /** Feature attribute name */
    attributeName: string;
    /** Minimum attribute value */
    minValue: number;
    /** Maximum attribute value */
    maxValue: number;
    /** Minimum color. 3DObject will be colorized with gradient from `minColor to `maxColor` */
    minColor: [number, number, number, number];
    /** Maximum color. 3DObject will be colorized with gradient from `minColor to `maxColor` */
    maxColor: [number, number, number, number];
    /** Colorization mode. `replace` - replace vertex colors with a new colors, `multiply` - multiply vertex colors with new colors */
    mode: string;
};
/**
 * Calculate new vertex colors array to visualize 3D objects in a attribute driven way
 * @param colors - vertex colors attribute
 * @param featureIds - feature Ids attribute
 * @param attributeUrls - array of attribute's urls
 * @param fields - array of attribute's fileds
 * @param attributeStorageInfo - array of attributeStorageInfo
 * @param colorsByAttribute - attribute color options
 * @param token - access token
 * @returns new colors attribute
 */
export declare function customizeColors(colors: MeshAttribute, featureIds: number[] | TypedArray, attributeUrls: string[], fields: Field[], attributeStorageInfo: AttributeStorageInfo[], colorsByAttribute: ColorsByAttribute | null, token?: string): Promise<MeshAttribute>;
export {};
//# sourceMappingURL=customize-colors.d.ts.map