import { TdSwitchProps } from './type';
import './style';
export * from './type';
export type SwitchProps = TdSwitchProps;
export declare const Switch: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        customValue: {
            type: import("vue").PropType<import("@/components").SwitchValue[]>;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        icon: {
            type: import("vue").PropType<((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[]>;
            default: () => ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
        };
        label: {
            type: import("vue").PropType<(string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
                value: import("@/components").SwitchValue;
            }) => import("@/common").SlotReturnValue)>;
            default: () => (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
                value: import("@/components").SwitchValue;
            }) => import("@/common").SlotReturnValue);
        };
        loading: BooleanConstructor;
        size: {
            type: import("vue").PropType<"large" | "medium" | "small">;
            default: "large" | "medium" | "small";
            validator(val: "large" | "medium" | "small"): boolean;
        };
        value: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
            default: import("@/components").SwitchValue;
        };
        modelValue: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
            default: import("@/components").SwitchValue;
        };
        defaultValue: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
        };
        onChange: import("vue").PropType<(value: import("@/components").SwitchValue, context: {
            e: MouseEvent;
        }) => void>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
        disabled: boolean;
        icon: ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
        label: (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
            value: import("@/components").SwitchValue;
        }) => import("@/common").SlotReturnValue);
        loading: boolean;
        size: "large" | "medium" | "small";
        value: import("@/components").SwitchValue;
        modelValue: import("@/components").SwitchValue;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        customValue: {
            type: import("vue").PropType<import("@/components").SwitchValue[]>;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        icon: {
            type: import("vue").PropType<((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[]>;
            default: () => ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
        };
        label: {
            type: import("vue").PropType<(string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
                value: import("@/components").SwitchValue;
            }) => import("@/common").SlotReturnValue)>;
            default: () => (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
                value: import("@/components").SwitchValue;
            }) => import("@/common").SlotReturnValue);
        };
        loading: BooleanConstructor;
        size: {
            type: import("vue").PropType<"large" | "medium" | "small">;
            default: "large" | "medium" | "small";
            validator(val: "large" | "medium" | "small"): boolean;
        };
        value: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
            default: import("@/components").SwitchValue;
        };
        modelValue: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
            default: import("@/components").SwitchValue;
        };
        defaultValue: {
            type: import("vue").PropType<import("@/components").SwitchValue>;
        };
        onChange: import("vue").PropType<(value: import("@/components").SwitchValue, context: {
            e: MouseEvent;
        }) => void>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        disabled: boolean;
        icon: ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
        label: (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
            value: import("@/components").SwitchValue;
        }) => import("@/common").SlotReturnValue);
        loading: boolean;
        size: "large" | "medium" | "small";
        value: import("@/components").SwitchValue;
        modelValue: import("@/components").SwitchValue;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    customValue: {
        type: import("vue").PropType<import("@/components").SwitchValue[]>;
    };
    disabled: {
        type: BooleanConstructor;
        default: any;
    };
    icon: {
        type: import("vue").PropType<((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[]>;
        default: () => ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
    };
    label: {
        type: import("vue").PropType<(string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
            value: import("@/components").SwitchValue;
        }) => import("@/common").SlotReturnValue)>;
        default: () => (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
            value: import("@/components").SwitchValue;
        }) => import("@/common").SlotReturnValue);
    };
    loading: BooleanConstructor;
    size: {
        type: import("vue").PropType<"large" | "medium" | "small">;
        default: "large" | "medium" | "small";
        validator(val: "large" | "medium" | "small"): boolean;
    };
    value: {
        type: import("vue").PropType<import("@/components").SwitchValue>;
        default: import("@/components").SwitchValue;
    };
    modelValue: {
        type: import("vue").PropType<import("@/components").SwitchValue>;
        default: import("@/components").SwitchValue;
    };
    defaultValue: {
        type: import("vue").PropType<import("@/components").SwitchValue>;
    };
    onChange: import("vue").PropType<(value: import("@/components").SwitchValue, context: {
        e: MouseEvent;
    }) => void>;
}>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    disabled: boolean;
    icon: ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)[];
    label: (string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue))[] | ((h: typeof import("vue").h, props: {
        value: import("@/components").SwitchValue;
    }) => import("@/common").SlotReturnValue);
    loading: boolean;
    size: "large" | "medium" | "small";
    value: import("@/components").SwitchValue;
    modelValue: import("@/components").SwitchValue;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export default Switch;
