import { PropType } from '@vue/composition-api';
import { Color } from '../utils';
import { TypeColorHandler } from '../type';
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    t: <T>(pattern: T, ...args: any[]) => any;
    global: import("@vue/composition-api").Ref<{
        clearConfirmText?: string;
        recentColorTitle?: string;
        swatchColorTitle?: string;
    }>;
    confirmGlobal: import("@vue/composition-api").Ref<{
        cancel?: string | {
            block?: boolean;
            content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            disabled?: boolean;
            ghost?: boolean;
            href?: string;
            icon?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            loading?: boolean;
            shape?: "square" | "round" | "circle" | "rectangle";
            size?: import("../../../common.type").SizeType;
            tag?: "button" | "a" | "div";
            theme?: "default" | "success" | "warning" | "primary" | "danger";
            type?: "button" | "reset" | "submit";
            variant?: "outline" | "base" | "text" | "plain" | "dashed";
            onClick?: (e: MouseEvent) => void;
        };
        confirm?: string | {
            block?: boolean;
            content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            disabled?: boolean;
            ghost?: boolean;
            href?: string;
            icon?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            loading?: boolean;
            shape?: "square" | "round" | "circle" | "rectangle";
            size?: import("../../../common.type").SizeType;
            tag?: "button" | "a" | "div";
            theme?: "default" | "success" | "warning" | "primary" | "danger";
            type?: "button" | "reset" | "submit";
            variant?: "outline" | "base" | "text" | "plain" | "dashed";
            onClick?: (e: MouseEvent) => void;
        };
        confirmBtnTheme?: {
            default: string;
            warning: string;
            danger: string;
        };
    }>;
    classPrefix: import("@vue/composition-api").ComputedRef<string>;
    DeleteIcon: any;
    AddIcon: any;
    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;
    };
    selectedColorIndex: import("@vue/composition-api").ComputedRef<number>;
    visiblePopConfirm: import("@vue/composition-api").Ref<boolean>;
    setVisiblePopConfirm: (visible: boolean) => void;
    handleClick: (color: string) => void;
    isEqualCurrentColor: (color: string) => boolean;
    handleRemoveColor: () => void;
}> & import("@vue/composition-api").Data, {}, {}, {
    colors: {
        type: PropType<string[]>;
        default: () => PropType<string[]>;
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    editable: {
        type: BooleanConstructor;
        default: boolean;
    };
    handleSetColor: {
        type: PropType<TypeColorHandler>;
        default: () => () => void;
    };
    handleAddColor: {
        type: PropType<TypeColorHandler>;
        default: () => () => void;
    };
    disabled: BooleanConstructor;
    color: {
        type: import("vue").PropType<Color>;
    };
    handleChange: {
        type: import("vue").PropType<TypeColorHandler>;
        default: () => () => void;
    };
}, {
    title: string;
    disabled: boolean;
    handleChange: TypeColorHandler;
    colors: string[];
    editable: boolean;
    handleSetColor: TypeColorHandler;
    handleAddColor: TypeColorHandler;
} & {
    color?: Color;
}> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    title: string;
    disabled: boolean;
    handleChange: TypeColorHandler;
    colors: string[];
    editable: boolean;
    handleSetColor: TypeColorHandler;
    handleAddColor: TypeColorHandler;
} & {
    color?: Color;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    t: <T>(pattern: T, ...args: any[]) => any;
    global: import("@vue/composition-api").Ref<{
        clearConfirmText?: string;
        recentColorTitle?: string;
        swatchColorTitle?: string;
    }>;
    confirmGlobal: import("@vue/composition-api").Ref<{
        cancel?: string | {
            block?: boolean;
            content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            disabled?: boolean;
            ghost?: boolean;
            href?: string;
            icon?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            loading?: boolean;
            shape?: "square" | "round" | "circle" | "rectangle";
            size?: import("../../../common.type").SizeType;
            tag?: "button" | "a" | "div";
            theme?: "default" | "success" | "warning" | "primary" | "danger";
            type?: "button" | "reset" | "submit";
            variant?: "outline" | "base" | "text" | "plain" | "dashed";
            onClick?: (e: MouseEvent) => void;
        };
        confirm?: string | {
            block?: boolean;
            content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            disabled?: boolean;
            ghost?: boolean;
            href?: string;
            icon?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
            loading?: boolean;
            shape?: "square" | "round" | "circle" | "rectangle";
            size?: import("../../../common.type").SizeType;
            tag?: "button" | "a" | "div";
            theme?: "default" | "success" | "warning" | "primary" | "danger";
            type?: "button" | "reset" | "submit";
            variant?: "outline" | "base" | "text" | "plain" | "dashed";
            onClick?: (e: MouseEvent) => void;
        };
        confirmBtnTheme?: {
            default: string;
            warning: string;
            danger: string;
        };
    }>;
    classPrefix: import("@vue/composition-api").ComputedRef<string>;
    DeleteIcon: any;
    AddIcon: any;
    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;
    };
    selectedColorIndex: import("@vue/composition-api").ComputedRef<number>;
    visiblePopConfirm: import("@vue/composition-api").Ref<boolean>;
    setVisiblePopConfirm: (visible: boolean) => void;
    handleClick: (color: string) => void;
    isEqualCurrentColor: (color: string) => boolean;
    handleRemoveColor: () => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    title: string;
    disabled: boolean;
    handleChange: TypeColorHandler;
    colors: string[];
    editable: boolean;
    handleSetColor: TypeColorHandler;
    handleAddColor: TypeColorHandler;
} & {
    color?: Color;
}, {
    title: string;
    disabled: boolean;
    handleChange: TypeColorHandler;
    colors: string[];
    editable: boolean;
    handleSetColor: TypeColorHandler;
    handleAddColor: TypeColorHandler;
}, true>);
export default _default;
