/// <reference types="tinycolor2" />
import { Color, GradientColorPoint, type ColorFormat } from '../utils';
import type { ColorPickerChangeTrigger } from '../type';
import { TdColorModes } from '../interfaces';
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    baseClassName: import("@vue/composition-api").ComputedRef<string>;
    statusClassNames: {
        loading: string;
        loadMore: string;
        disabled: string;
        focused: string;
        success: string;
        error: string;
        warning: string;
        selected: string;
        active: string;
        checked: string;
        current: string;
        hidden: string;
        visible: string;
        expanded: string;
        indeterminate: string;
    };
    t: <T>(pattern: T, ...args: any[]) => any;
    global: import("@vue/composition-api").ComputedRef<import("../..").ColorPickerConfig | ({
        readonly swatchColorTitle: "系统预设颜色";
        readonly recentColorTitle: "最近使用颜色";
        readonly clearConfirmText: "确定清空最近使用的颜色吗？";
        readonly singleColor: "单色";
        readonly gradientColor: "渐变";
    } & import("../..").ColorPickerConfig)>;
    color: import("@vue/composition-api").Ref<{
        states: {
            s: number;
            v: number;
            h: number;
            a: number;
        };
        originColor: string;
        isGradient: boolean;
        gradientStates: {
            colors: {
                id?: string;
                color?: string;
                left?: number;
            }[];
            degree: number;
            selectedId: string;
            css?: string;
        };
        update: (input: string) => void;
        saturation: number;
        value: number;
        hue: number;
        alpha: number;
        readonly rgb: string;
        readonly rgba: string;
        readonly hsv: string;
        readonly hsva: string;
        readonly hsl: string;
        readonly hsla: string;
        readonly hex: string;
        readonly hex8: string;
        readonly cmyk: string;
        readonly css: string;
        readonly linearGradient: string;
        gradientColors: {
            id?: string;
            color?: string;
            left?: number;
        }[];
        gradientSelectedId: string;
        gradientDegree: number;
        readonly gradientSelectedPoint: {
            id?: string;
            color?: string;
            left?: number;
        };
        getFormatsColorMap: () => {
            HEX: string;
            CMYK: string;
            RGB: string;
            RGBA: string;
            HSL: string;
            HSLA: string;
            HSV: string;
            HSVA: string;
            CSS: string;
            HEX8: string;
        };
        getFormattedColor: (format: ColorFormat, enableAlpha: boolean) => string;
        updateCurrentGradientColor: () => false | Color;
        updateStates: (input: string) => void;
        getRgba: () => {
            r: number;
            g: number;
            b: number;
            a: number;
        };
        getCmyk: () => {
            c: number;
            m: number;
            y: number;
            k: number;
        };
        getHsva: () => import("tinycolor2").ColorFormats.HSVA;
        getHsla: () => import("tinycolor2").ColorFormats.HSLA;
        equals: (color: string) => boolean;
    }>;
    mode: import("@vue/composition-api").Ref<TdColorModes>;
    isGradient: import("@vue/composition-api").ComputedRef<boolean>;
    formatModel: import("@vue/composition-api").Ref<ColorFormat>;
    recentlyUsedColors: import("@vue/composition-api").Ref<boolean | string[]>;
    previewColorStyle: import("@vue/composition-api").ComputedRef<string>;
    addRecentlyUsedColor: () => void;
    handleModeChange: (newMode: TdColorModes) => void;
    handleSatAndValueChange: ({ saturation, value }: {
        saturation: number;
        value: number;
    }) => void;
    handleHueChange: (hue: number) => void;
    handleAlphaChange: (alpha: number) => void;
    handleGradientChange: ({ key, payload, }: {
        key: 'degree' | 'selectedId' | 'colors';
        payload: number | string | GradientColorPoint[];
    }) => void;
    handleSetColor: (value: string, trigger: ColorPickerChangeTrigger) => void;
    handleInputChange: (input: string) => void;
    handleRecentlyUsedColorsChange: (colors: string[]) => void;
}> & import("@vue/composition-api").Data, {}, {}, {
    togglePopup: {
        type: FunctionConstructor;
    };
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    colorModes: {
        type: import("vue").PropType<("monochrome" | "linear-gradient")[]>;
        default: () => ("monochrome" | "linear-gradient")[];
    };
    disabled: {
        type: BooleanConstructor;
        default: any;
    };
    enableAlpha: BooleanConstructor;
    enableMultipleGradient: {
        type: BooleanConstructor;
        default: boolean;
    };
    format: {
        type: import("vue").PropType<"HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS">;
        default: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS";
        validator(val: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS"): boolean;
    };
    inputProps: {
        type: import("vue").PropType<import("../..").InputProps<import("../..").InputValue>>;
    };
    popupProps: {
        type: import("vue").PropType<import("../..").TdPopupProps>;
    };
    recentColors: {
        type: import("vue").PropType<boolean | string[]>;
        default: () => boolean | string[];
    };
    defaultRecentColors: {
        type: import("vue").PropType<boolean | string[]>;
        default: () => boolean | string[];
    };
    selectInputProps: {
        type: import("vue").PropType<import("../..").TdSelectInputProps>;
    };
    showPrimaryColorPreview: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<import("../..").SizeEnum>;
        default: import("../..").SizeEnum;
        validator(val: import("../..").SizeEnum): boolean;
    };
    swatchColors: {
        type: import("vue").PropType<string[]>;
        default: any;
    };
    value: {
        type: StringConstructor;
        default: string;
    };
    defaultValue: {
        type: StringConstructor;
        default: string;
    };
    onChange: import("vue").PropType<(value: string, context: {
        color: import("../type").ColorObject;
        trigger: ColorPickerChangeTrigger;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onPaletteBarChange: import("vue").PropType<(context: {
        color: import("../type").ColorObject;
    }) => void>;
    onRecentColorsChange: import("vue").PropType<(value: string[]) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
    togglePopup: {
        type: FunctionConstructor;
    };
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    colorModes: {
        type: import("vue").PropType<("monochrome" | "linear-gradient")[]>;
        default: () => ("monochrome" | "linear-gradient")[];
    };
    disabled: {
        type: BooleanConstructor;
        default: any;
    };
    enableAlpha: BooleanConstructor;
    enableMultipleGradient: {
        type: BooleanConstructor;
        default: boolean;
    };
    format: {
        type: import("vue").PropType<"HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS">;
        default: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS";
        validator(val: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS"): boolean;
    };
    inputProps: {
        type: import("vue").PropType<import("../..").InputProps<import("../..").InputValue>>;
    };
    popupProps: {
        type: import("vue").PropType<import("../..").TdPopupProps>;
    };
    recentColors: {
        type: import("vue").PropType<boolean | string[]>;
        default: () => boolean | string[];
    };
    defaultRecentColors: {
        type: import("vue").PropType<boolean | string[]>;
        default: () => boolean | string[];
    };
    selectInputProps: {
        type: import("vue").PropType<import("../..").TdSelectInputProps>;
    };
    showPrimaryColorPreview: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<import("../..").SizeEnum>;
        default: import("../..").SizeEnum;
        validator(val: import("../..").SizeEnum): boolean;
    };
    swatchColors: {
        type: import("vue").PropType<string[]>;
        default: any;
    };
    value: {
        type: StringConstructor;
        default: string;
    };
    defaultValue: {
        type: StringConstructor;
        default: string;
    };
    onChange: import("vue").PropType<(value: string, context: {
        color: import("../type").ColorObject;
        trigger: ColorPickerChangeTrigger;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onPaletteBarChange: import("vue").PropType<(context: {
        color: import("../type").ColorObject;
    }) => void>;
    onRecentColorsChange: import("vue").PropType<(value: string[]) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    value: string;
    disabled: boolean;
    size: import("../..").SizeEnum;
    defaultValue: string;
    format: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS";
    borderless: boolean;
    clearable: boolean;
    colorModes: ("monochrome" | "linear-gradient")[];
    recentColors: boolean | string[];
    defaultRecentColors: boolean | string[];
    swatchColors: string[];
    enableAlpha: boolean;
    enableMultipleGradient: boolean;
    showPrimaryColorPreview: boolean;
} & {
    onChange?: (value: string, context: {
        color: import("../type").ColorObject;
        trigger: ColorPickerChangeTrigger;
    }) => void;
    onClear?: (context: {
        e: MouseEvent;
    }) => void;
    inputProps?: unknown;
    popupProps?: unknown;
    selectInputProps?: unknown;
    onPaletteBarChange?: (context: {
        color: import("../type").ColorObject;
    }) => void;
    onRecentColorsChange?: (value: string[]) => void;
    togglePopup?: Function;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    baseClassName: import("@vue/composition-api").ComputedRef<string>;
    statusClassNames: {
        loading: string;
        loadMore: string;
        disabled: string;
        focused: string;
        success: string;
        error: string;
        warning: string;
        selected: string;
        active: string;
        checked: string;
        current: string;
        hidden: string;
        visible: string;
        expanded: string;
        indeterminate: string;
    };
    t: <T>(pattern: T, ...args: any[]) => any;
    global: import("@vue/composition-api").ComputedRef<import("../..").ColorPickerConfig | ({
        readonly swatchColorTitle: "系统预设颜色";
        readonly recentColorTitle: "最近使用颜色";
        readonly clearConfirmText: "确定清空最近使用的颜色吗？";
        readonly singleColor: "单色";
        readonly gradientColor: "渐变";
    } & import("../..").ColorPickerConfig)>;
    color: import("@vue/composition-api").Ref<{
        states: {
            s: number;
            v: number;
            h: number;
            a: number;
        };
        originColor: string;
        isGradient: boolean;
        gradientStates: {
            colors: {
                id?: string;
                color?: string;
                left?: number;
            }[];
            degree: number;
            selectedId: string;
            css?: string;
        };
        update: (input: string) => void;
        saturation: number;
        value: number;
        hue: number;
        alpha: number;
        readonly rgb: string;
        readonly rgba: string;
        readonly hsv: string;
        readonly hsva: string;
        readonly hsl: string;
        readonly hsla: string;
        readonly hex: string;
        readonly hex8: string;
        readonly cmyk: string;
        readonly css: string;
        readonly linearGradient: string;
        gradientColors: {
            id?: string;
            color?: string;
            left?: number;
        }[];
        gradientSelectedId: string;
        gradientDegree: number;
        readonly gradientSelectedPoint: {
            id?: string;
            color?: string;
            left?: number;
        };
        getFormatsColorMap: () => {
            HEX: string;
            CMYK: string;
            RGB: string;
            RGBA: string;
            HSL: string;
            HSLA: string;
            HSV: string;
            HSVA: string;
            CSS: string;
            HEX8: string;
        };
        getFormattedColor: (format: ColorFormat, enableAlpha: boolean) => string;
        updateCurrentGradientColor: () => false | Color;
        updateStates: (input: string) => void;
        getRgba: () => {
            r: number;
            g: number;
            b: number;
            a: number;
        };
        getCmyk: () => {
            c: number;
            m: number;
            y: number;
            k: number;
        };
        getHsva: () => import("tinycolor2").ColorFormats.HSVA;
        getHsla: () => import("tinycolor2").ColorFormats.HSLA;
        equals: (color: string) => boolean;
    }>;
    mode: import("@vue/composition-api").Ref<TdColorModes>;
    isGradient: import("@vue/composition-api").ComputedRef<boolean>;
    formatModel: import("@vue/composition-api").Ref<ColorFormat>;
    recentlyUsedColors: import("@vue/composition-api").Ref<boolean | string[]>;
    previewColorStyle: import("@vue/composition-api").ComputedRef<string>;
    addRecentlyUsedColor: () => void;
    handleModeChange: (newMode: TdColorModes) => void;
    handleSatAndValueChange: ({ saturation, value }: {
        saturation: number;
        value: number;
    }) => void;
    handleHueChange: (hue: number) => void;
    handleAlphaChange: (alpha: number) => void;
    handleGradientChange: ({ key, payload, }: {
        key: 'degree' | 'selectedId' | 'colors';
        payload: number | string | GradientColorPoint[];
    }) => void;
    handleSetColor: (value: string, trigger: ColorPickerChangeTrigger) => void;
    handleInputChange: (input: string) => void;
    handleRecentlyUsedColorsChange: (colors: string[]) => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    value: string;
    disabled: boolean;
    size: import("../..").SizeEnum;
    defaultValue: string;
    format: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS";
    borderless: boolean;
    clearable: boolean;
    colorModes: ("monochrome" | "linear-gradient")[];
    recentColors: boolean | string[];
    defaultRecentColors: boolean | string[];
    swatchColors: string[];
    enableAlpha: boolean;
    enableMultipleGradient: boolean;
    showPrimaryColorPreview: boolean;
} & {
    onChange?: (value: string, context: {
        color: import("../type").ColorObject;
        trigger: ColorPickerChangeTrigger;
    }) => void;
    onClear?: (context: {
        e: MouseEvent;
    }) => void;
    inputProps?: unknown;
    popupProps?: unknown;
    selectInputProps?: unknown;
    onPaletteBarChange?: (context: {
        color: import("../type").ColorObject;
    }) => void;
    onRecentColorsChange?: (value: string[]) => void;
    togglePopup?: Function;
}, {
    value: string;
    disabled: boolean;
    size: import("../..").SizeEnum;
    defaultValue: string;
    format: "HEX" | "HEX8" | "RGB" | "RGBA" | "HSL" | "HSLA" | "HSV" | "HSVA" | "CMYK" | "CSS";
    borderless: boolean;
    clearable: boolean;
    colorModes: ("monochrome" | "linear-gradient")[];
    recentColors: boolean | string[];
    defaultRecentColors: boolean | string[];
    swatchColors: string[];
    enableAlpha: boolean;
    enableMultipleGradient: boolean;
    showPrimaryColorPreview: boolean;
}, true>);
export default _default;
