import './style';
import { TdCascaderProps } from './type';
export * from './type';
export type CascaderProps = TdCascaderProps;
export declare const Cascader: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        checkStrictly: BooleanConstructor;
        closeBtn: {
            type: import("vue").PropType<boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
            default: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        };
        header: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        keys: {
            type: import("vue").PropType<import("@/common").TreeKeysType>;
        };
        load: {
            type: import("vue").PropType<(node: import("@/common").TreeOptionData) => Promise<import("@/common").TreeOptionData[]>>;
        };
        middleContent: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        options: {
            type: import("vue").PropType<import("@/common").TreeOptionData[]>;
            default: () => import("@/common").TreeOptionData[];
        };
        overlayProps: {
            type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
            default: () => {};
        };
        placeholder: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
            default: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        };
        subTitles: {
            type: import("vue").PropType<string[]>;
            default: () => string[];
        };
        theme: {
            type: import("vue").PropType<"step" | "tab">;
            default: "step" | "tab";
            validator(val: "step" | "tab"): boolean;
        };
        title: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        value: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        modelValue: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        defaultValue: {
            type: import("vue").PropType<string | number>;
        };
        visible: BooleanConstructor;
        onChange: import("vue").PropType<(value: string | number, selectedOptions: import("@/common").TreeOptionData[]) => void>;
        onClose: import("vue").PropType<(trigger: import("@/components").CascaderTriggerSource) => void>;
        onPick: import("vue").PropType<(context: {
            value: string | number;
            label: string;
            index: number;
            level: number;
        }) => void>;
    }>> & Readonly<{
        "onUpdate:modelValue"?: (...args: any[]) => any;
        "onUpdate:value"?: (...args: any[]) => any;
        "onUpdate:visible"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:value" | "update:visible")[], import("vue").PublicProps, {
        checkStrictly: boolean;
        closeBtn: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        options: import("@/common").TreeOptionData[];
        overlayProps: import("@/overlay/type").TdOverlayProps;
        placeholder: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        subTitles: string[];
        theme: "step" | "tab";
        value: string | number;
        modelValue: string | number;
        visible: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        checkStrictly: BooleanConstructor;
        closeBtn: {
            type: import("vue").PropType<boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
            default: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        };
        header: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        keys: {
            type: import("vue").PropType<import("@/common").TreeKeysType>;
        };
        load: {
            type: import("vue").PropType<(node: import("@/common").TreeOptionData) => Promise<import("@/common").TreeOptionData[]>>;
        };
        middleContent: {
            type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
        };
        options: {
            type: import("vue").PropType<import("@/common").TreeOptionData[]>;
            default: () => import("@/common").TreeOptionData[];
        };
        overlayProps: {
            type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
            default: () => {};
        };
        placeholder: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
            default: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        };
        subTitles: {
            type: import("vue").PropType<string[]>;
            default: () => string[];
        };
        theme: {
            type: import("vue").PropType<"step" | "tab">;
            default: "step" | "tab";
            validator(val: "step" | "tab"): boolean;
        };
        title: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        value: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        modelValue: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        defaultValue: {
            type: import("vue").PropType<string | number>;
        };
        visible: BooleanConstructor;
        onChange: import("vue").PropType<(value: string | number, selectedOptions: import("@/common").TreeOptionData[]) => void>;
        onClose: import("vue").PropType<(trigger: import("@/components").CascaderTriggerSource) => void>;
        onPick: import("vue").PropType<(context: {
            value: string | number;
            label: string;
            index: number;
            level: number;
        }) => void>;
    }>> & Readonly<{
        "onUpdate:modelValue"?: (...args: any[]) => any;
        "onUpdate:value"?: (...args: any[]) => any;
        "onUpdate:visible"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        checkStrictly: boolean;
        closeBtn: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        options: import("@/common").TreeOptionData[];
        overlayProps: import("@/overlay/type").TdOverlayProps;
        placeholder: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
        subTitles: string[];
        theme: "step" | "tab";
        value: string | number;
        modelValue: string | number;
        visible: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    checkStrictly: BooleanConstructor;
    closeBtn: {
        type: import("vue").PropType<boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    header: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
    };
    keys: {
        type: import("vue").PropType<import("@/common").TreeKeysType>;
    };
    load: {
        type: import("vue").PropType<(node: import("@/common").TreeOptionData) => Promise<import("@/common").TreeOptionData[]>>;
    };
    middleContent: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("@/common").SlotReturnValue>;
    };
    options: {
        type: import("vue").PropType<import("@/common").TreeOptionData[]>;
        default: () => import("@/common").TreeOptionData[];
    };
    overlayProps: {
        type: import("vue").PropType<import("@/overlay/type").TdOverlayProps>;
        default: () => {};
    };
    placeholder: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        default: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    };
    subTitles: {
        type: import("vue").PropType<string[]>;
        default: () => string[];
    };
    theme: {
        type: import("vue").PropType<"step" | "tab">;
        default: "step" | "tab";
        validator(val: "step" | "tab"): boolean;
    };
    title: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    value: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    modelValue: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    defaultValue: {
        type: import("vue").PropType<string | number>;
    };
    visible: BooleanConstructor;
    onChange: import("vue").PropType<(value: string | number, selectedOptions: import("@/common").TreeOptionData[]) => void>;
    onClose: import("vue").PropType<(trigger: import("@/components").CascaderTriggerSource) => void>;
    onPick: import("vue").PropType<(context: {
        value: string | number;
        label: string;
        index: number;
        level: number;
    }) => void>;
}>> & Readonly<{
    "onUpdate:modelValue"?: (...args: any[]) => any;
    "onUpdate:value"?: (...args: any[]) => any;
    "onUpdate:visible"?: (...args: any[]) => any;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "update:value" | "update:visible")[], "update:modelValue" | "update:value" | "update:visible", {
    checkStrictly: boolean;
    closeBtn: boolean | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    options: import("@/common").TreeOptionData[];
    overlayProps: import("@/overlay/type").TdOverlayProps;
    placeholder: string | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue);
    subTitles: string[];
    theme: "step" | "tab";
    value: string | number;
    modelValue: string | number;
    visible: boolean;
}, {}, 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 Cascader;
