export declare type HSLColor = [number, number, number]; export declare type Palette = { [hue: number]: HSLColor | string; } & { contrast: HSLColor | { [hue: number]: HSLColor | string; }; }; export declare type PaletteMap = { [name: string]: Palette; }; export interface IColorConfig { isContrast: boolean; $target: HTMLElement; } export declare const defaultColorConfig: IColorConfig; /** * Returns the color key for a color with a given hue. * @param name * @param hue * @param isContrast */ export declare function colorKey(name: string, hue: number | string, isContrast?: boolean): string; /** * Returns a string for the color. * @param color */ export declare function colorValue(color: HSLColor | string | number): string; /** * Sets a color variable on a target. * @param name * @param hue * @param color * @param isContrast * @param $target */ export declare function setColor(name: string, hue: number | string, color: HSLColor | string | number, { isContrast, $target }?: Partial): void; /** * Removes a color variable on a target. * @param name * @param hue * @param isContrast * @param $target */ export declare function removeColor(name: string, hue: number | string, { isContrast, $target }?: Partial): void; /** * Sets the palette variables. * @param name * @param palette * @param config */ export declare function setPalette(name: string, palette: Palette, config?: Partial): void; /** * Sets the palette variables for a palette map. * @param paletteMap */ export declare function setPaletteMap(paletteMap: PaletteMap): void;