import type { ShowSearchType } from '../vc-cascader';
import { SHOW_CHILD, SHOW_PARENT } from '../vc-cascader';
import type { VueNode } from '../_util/type';
import Panel from './Panel';
export * from './interface';
export interface CascaderRef {
    focus: () => void;
    blur: () => void;
}
declare const _default: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        multiple: {
            type: BooleanConstructor;
            default: any;
        };
        size: import("vue").PropType<import("../config-provider").SizeType>;
        bordered: {
            type: BooleanConstructor;
            default: any;
        };
        placement: {
            type: import("vue").PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
        };
        suffixIcon: import("vue-types").VueTypeValidableDef<any>;
        status: import("vue").PropType<"" | "error" | "warning">;
        options: import("vue").PropType<import("./interface").CascaderOptionType[]>;
        popupClassName: StringConstructor;
        dropdownClassName: StringConstructor;
        'onUpdate:value': import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType) => void>;
        variant: {
            type: import("vue").PropType<"filled" | "outlined" | "borderless" | "underlined">;
            default: "filled" | "outlined" | "borderless" | "underlined";
        };
        value: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
        };
        children: import("vue").PropType<VueNode[]>;
        onMouseenter: import("vue").PropType<(e: MouseEvent) => void>;
        onMouseleave: import("vue").PropType<(e: MouseEvent) => void>;
        tabindex: NumberConstructor;
        onClick: import("vue").PropType<(e: MouseEvent) => void>;
        onFocus: {
            type: import("vue").PropType<(e: FocusEvent) => void>;
        };
        onBlur: {
            type: import("vue").PropType<(e: FocusEvent) => void>;
        };
        onChange: import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType, selectOptions: import("./interface").DefaultOptionType[] | import("./interface").DefaultOptionType[][]) => void>;
        onKeydown: import("vue").PropType<(e: KeyboardEvent) => void>;
        onKeyup: import("vue").PropType<(e: KeyboardEvent) => void>;
        onMousedown: import("vue").PropType<(e: MouseEvent) => void>;
        open: {
            type: BooleanConstructor;
            default: any;
        };
        animation: StringConstructor;
        direction: {
            type: import("vue").PropType<"rtl" | "ltr">;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        prefixCls: StringConstructor;
        id: StringConstructor;
        autofocus: BooleanConstructor;
        getPopupContainer: {
            type: import("vue").PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
        };
        dropdownMatchSelectWidth: {
            type: import("vue").PropType<number | boolean>;
            default: any;
        };
        placeholder: import("vue-types").VueTypeValidableDef<any>;
        loading: {
            type: BooleanConstructor;
            default: any;
        };
        defaultValue: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
        };
        prefix: import("vue-types").VueTypeValidableDef<any>;
        clearIcon: import("vue-types").VueTypeValidableDef<any>;
        allowClear: {
            type: BooleanConstructor;
            default: any;
        };
        getInputElement: {
            type: import("vue").PropType<() => any>;
        };
        getRawInputElement: {
            type: import("vue").PropType<() => any>;
        };
        fieldNames: {
            type: import("vue").PropType<import("../vc-cascader").FieldNames>;
            default: import("../vc-cascader").FieldNames;
        };
        searchValue: StringConstructor;
        onSearch: import("vue").PropType<(value: string) => void>;
        maxCount: NumberConstructor;
        showSearch: {
            type: import("vue").PropType<boolean | ShowSearchType<import("./interface").DefaultOptionType>>;
            default: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
        };
        tagRender: {
            type: import("vue").PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
        };
        optionLabelRender: {
            type: import("vue").PropType<(option: Record<string, any>) => any>;
        };
        notFoundContent: import("vue-types").VueTypeValidableDef<any>;
        onClear: import("vue").PropType<() => void>;
        choiceTransitionName: StringConstructor;
        defaultOpen: {
            type: BooleanConstructor;
            default: any;
        };
        onDropdownVisibleChange: import("vue").PropType<(open: boolean) => void>;
        maxTagTextLength: NumberConstructor;
        maxTagCount: {
            type: import("vue").PropType<number | "responsive">;
        };
        maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
        removeIcon: import("vue-types").VueTypeValidableDef<any>;
        transitionName: StringConstructor;
        dropdownStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        dropdownRender: {
            type: import("vue").PropType<import("../vc-select/BaseSelect").DropdownRender>;
        };
        dropdownAlign: import("vue").PropType<import("../vc-trigger/interface").AlignType>;
        showAction: {
            type: import("vue").PropType<("click" | "focus")[]>;
        };
        onPopupScroll: import("vue").PropType<(e: UIEvent) => void>;
        onInputKeyDown: import("vue").PropType<(e: KeyboardEvent) => void>;
        onPopupVisibleChange: import("vue").PropType<(open: boolean) => void>;
        popupStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        popupPlacement: import("vue").PropType<import("../vc-select/BaseSelect").Placement>;
        popupVisible: {
            type: BooleanConstructor;
            default: any;
        };
        expandIcon: import("vue-types").VueTypeValidableDef<any>;
        changeOnSelect: {
            type: BooleanConstructor;
            default: any;
        };
        displayRender: import("vue").PropType<(opt: {
            labels: string[];
            selectedOptions?: import("./interface").DefaultOptionType[];
        }) => any>;
        showCheckedStrategy: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ShowCheckedStrategy>;
            default: string;
        };
        expandTrigger: import("vue").PropType<"click" | "hover">;
        dropdownPrefixCls: StringConstructor;
        loadData: import("vue").PropType<(selectOptions: import("./interface").DefaultOptionType[]) => void>;
        dropdownMenuColumnStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        loadingIcon: import("vue-types").VueTypeValidableDef<any>;
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
        open: boolean;
        multiple: boolean;
        disabled: boolean;
        autofocus: boolean;
        variant: "filled" | "outlined" | "borderless" | "underlined";
        dropdownMatchSelectWidth: number | boolean;
        loading: boolean;
        bordered: boolean;
        allowClear: boolean;
        fieldNames: import("../vc-cascader").FieldNames;
        showSearch: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
        defaultOpen: boolean;
        dropdownStyle: import("vue").CSSProperties;
        popupStyle: import("vue").CSSProperties;
        popupVisible: boolean;
        changeOnSelect: boolean;
        showCheckedStrategy: import("../vc-cascader/Cascader").ShowCheckedStrategy;
        dropdownMenuColumnStyle: import("vue").CSSProperties;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        multiple: {
            type: BooleanConstructor;
            default: any;
        };
        size: import("vue").PropType<import("../config-provider").SizeType>;
        bordered: {
            type: BooleanConstructor;
            default: any;
        };
        placement: {
            type: import("vue").PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
        };
        suffixIcon: import("vue-types").VueTypeValidableDef<any>;
        status: import("vue").PropType<"" | "error" | "warning">;
        options: import("vue").PropType<import("./interface").CascaderOptionType[]>;
        popupClassName: StringConstructor;
        dropdownClassName: StringConstructor;
        'onUpdate:value': import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType) => void>;
        variant: {
            type: import("vue").PropType<"filled" | "outlined" | "borderless" | "underlined">;
            default: "filled" | "outlined" | "borderless" | "underlined";
        };
        value: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
        };
        children: import("vue").PropType<VueNode[]>;
        onMouseenter: import("vue").PropType<(e: MouseEvent) => void>;
        onMouseleave: import("vue").PropType<(e: MouseEvent) => void>;
        tabindex: NumberConstructor;
        onClick: import("vue").PropType<(e: MouseEvent) => void>;
        onFocus: {
            type: import("vue").PropType<(e: FocusEvent) => void>;
        };
        onBlur: {
            type: import("vue").PropType<(e: FocusEvent) => void>;
        };
        onChange: import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType, selectOptions: import("./interface").DefaultOptionType[] | import("./interface").DefaultOptionType[][]) => void>;
        onKeydown: import("vue").PropType<(e: KeyboardEvent) => void>;
        onKeyup: import("vue").PropType<(e: KeyboardEvent) => void>;
        onMousedown: import("vue").PropType<(e: MouseEvent) => void>;
        open: {
            type: BooleanConstructor;
            default: any;
        };
        animation: StringConstructor;
        direction: {
            type: import("vue").PropType<"rtl" | "ltr">;
        };
        disabled: {
            type: BooleanConstructor;
            default: any;
        };
        prefixCls: StringConstructor;
        id: StringConstructor;
        autofocus: BooleanConstructor;
        getPopupContainer: {
            type: import("vue").PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
        };
        dropdownMatchSelectWidth: {
            type: import("vue").PropType<number | boolean>;
            default: any;
        };
        placeholder: import("vue-types").VueTypeValidableDef<any>;
        loading: {
            type: BooleanConstructor;
            default: any;
        };
        defaultValue: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
        };
        prefix: import("vue-types").VueTypeValidableDef<any>;
        clearIcon: import("vue-types").VueTypeValidableDef<any>;
        allowClear: {
            type: BooleanConstructor;
            default: any;
        };
        getInputElement: {
            type: import("vue").PropType<() => any>;
        };
        getRawInputElement: {
            type: import("vue").PropType<() => any>;
        };
        fieldNames: {
            type: import("vue").PropType<import("../vc-cascader").FieldNames>;
            default: import("../vc-cascader").FieldNames;
        };
        searchValue: StringConstructor;
        onSearch: import("vue").PropType<(value: string) => void>;
        maxCount: NumberConstructor;
        showSearch: {
            type: import("vue").PropType<boolean | ShowSearchType<import("./interface").DefaultOptionType>>;
            default: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
        };
        tagRender: {
            type: import("vue").PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
        };
        optionLabelRender: {
            type: import("vue").PropType<(option: Record<string, any>) => any>;
        };
        notFoundContent: import("vue-types").VueTypeValidableDef<any>;
        onClear: import("vue").PropType<() => void>;
        choiceTransitionName: StringConstructor;
        defaultOpen: {
            type: BooleanConstructor;
            default: any;
        };
        onDropdownVisibleChange: import("vue").PropType<(open: boolean) => void>;
        maxTagTextLength: NumberConstructor;
        maxTagCount: {
            type: import("vue").PropType<number | "responsive">;
        };
        maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
        removeIcon: import("vue-types").VueTypeValidableDef<any>;
        transitionName: StringConstructor;
        dropdownStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        dropdownRender: {
            type: import("vue").PropType<import("../vc-select/BaseSelect").DropdownRender>;
        };
        dropdownAlign: import("vue").PropType<import("../vc-trigger/interface").AlignType>;
        showAction: {
            type: import("vue").PropType<("click" | "focus")[]>;
        };
        onPopupScroll: import("vue").PropType<(e: UIEvent) => void>;
        onInputKeyDown: import("vue").PropType<(e: KeyboardEvent) => void>;
        onPopupVisibleChange: import("vue").PropType<(open: boolean) => void>;
        popupStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        popupPlacement: import("vue").PropType<import("../vc-select/BaseSelect").Placement>;
        popupVisible: {
            type: BooleanConstructor;
            default: any;
        };
        expandIcon: import("vue-types").VueTypeValidableDef<any>;
        changeOnSelect: {
            type: BooleanConstructor;
            default: any;
        };
        displayRender: import("vue").PropType<(opt: {
            labels: string[];
            selectedOptions?: import("./interface").DefaultOptionType[];
        }) => any>;
        showCheckedStrategy: {
            type: import("vue").PropType<import("../vc-cascader/Cascader").ShowCheckedStrategy>;
            default: string;
        };
        expandTrigger: import("vue").PropType<"click" | "hover">;
        dropdownPrefixCls: StringConstructor;
        loadData: import("vue").PropType<(selectOptions: import("./interface").DefaultOptionType[]) => void>;
        dropdownMenuColumnStyle: {
            type: import("vue").PropType<import("vue").CSSProperties>;
            default: import("vue").CSSProperties;
        };
        loadingIcon: import("vue-types").VueTypeValidableDef<any>;
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, {
        open: boolean;
        multiple: boolean;
        disabled: boolean;
        autofocus: boolean;
        variant: "filled" | "outlined" | "borderless" | "underlined";
        dropdownMatchSelectWidth: number | boolean;
        loading: boolean;
        bordered: boolean;
        allowClear: boolean;
        fieldNames: import("../vc-cascader").FieldNames;
        showSearch: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
        defaultOpen: boolean;
        dropdownStyle: import("vue").CSSProperties;
        popupStyle: import("vue").CSSProperties;
        popupVisible: boolean;
        changeOnSelect: boolean;
        showCheckedStrategy: import("../vc-cascader/Cascader").ShowCheckedStrategy;
        dropdownMenuColumnStyle: import("vue").CSSProperties;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    multiple: {
        type: BooleanConstructor;
        default: any;
    };
    size: import("vue").PropType<import("../config-provider").SizeType>;
    bordered: {
        type: BooleanConstructor;
        default: any;
    };
    placement: {
        type: import("vue").PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
    };
    suffixIcon: import("vue-types").VueTypeValidableDef<any>;
    status: import("vue").PropType<"" | "error" | "warning">;
    options: import("vue").PropType<import("./interface").CascaderOptionType[]>;
    popupClassName: StringConstructor;
    dropdownClassName: StringConstructor;
    'onUpdate:value': import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType) => void>;
    variant: {
        type: import("vue").PropType<"filled" | "outlined" | "borderless" | "underlined">;
        default: "filled" | "outlined" | "borderless" | "underlined";
    };
    value: {
        type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
    };
    children: import("vue").PropType<VueNode[]>;
    onMouseenter: import("vue").PropType<(e: MouseEvent) => void>;
    onMouseleave: import("vue").PropType<(e: MouseEvent) => void>;
    tabindex: NumberConstructor;
    onClick: import("vue").PropType<(e: MouseEvent) => void>;
    onFocus: {
        type: import("vue").PropType<(e: FocusEvent) => void>;
    };
    onBlur: {
        type: import("vue").PropType<(e: FocusEvent) => void>;
    };
    onChange: import("vue").PropType<(value: import("../vc-cascader/Cascader").ValueType, selectOptions: import("./interface").DefaultOptionType[] | import("./interface").DefaultOptionType[][]) => void>;
    onKeydown: import("vue").PropType<(e: KeyboardEvent) => void>;
    onKeyup: import("vue").PropType<(e: KeyboardEvent) => void>;
    onMousedown: import("vue").PropType<(e: MouseEvent) => void>;
    open: {
        type: BooleanConstructor;
        default: any;
    };
    animation: StringConstructor;
    direction: {
        type: import("vue").PropType<"rtl" | "ltr">;
    };
    disabled: {
        type: BooleanConstructor;
        default: any;
    };
    prefixCls: StringConstructor;
    id: StringConstructor;
    autofocus: BooleanConstructor;
    getPopupContainer: {
        type: import("vue").PropType<import("../vc-select/BaseSelect").RenderDOMFunc>;
    };
    dropdownMatchSelectWidth: {
        type: import("vue").PropType<number | boolean>;
        default: any;
    };
    placeholder: import("vue-types").VueTypeValidableDef<any>;
    loading: {
        type: BooleanConstructor;
        default: any;
    };
    defaultValue: {
        type: import("vue").PropType<import("../vc-cascader/Cascader").ValueType>;
    };
    prefix: import("vue-types").VueTypeValidableDef<any>;
    clearIcon: import("vue-types").VueTypeValidableDef<any>;
    allowClear: {
        type: BooleanConstructor;
        default: any;
    };
    getInputElement: {
        type: import("vue").PropType<() => any>;
    };
    getRawInputElement: {
        type: import("vue").PropType<() => any>;
    };
    fieldNames: {
        type: import("vue").PropType<import("../vc-cascader").FieldNames>;
        default: import("../vc-cascader").FieldNames;
    };
    searchValue: StringConstructor;
    onSearch: import("vue").PropType<(value: string) => void>;
    maxCount: NumberConstructor;
    showSearch: {
        type: import("vue").PropType<boolean | ShowSearchType<import("./interface").DefaultOptionType>>;
        default: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
    };
    tagRender: {
        type: import("vue").PropType<(props: import("../vc-select/BaseSelect").CustomTagProps) => any>;
    };
    optionLabelRender: {
        type: import("vue").PropType<(option: Record<string, any>) => any>;
    };
    notFoundContent: import("vue-types").VueTypeValidableDef<any>;
    onClear: import("vue").PropType<() => void>;
    choiceTransitionName: StringConstructor;
    defaultOpen: {
        type: BooleanConstructor;
        default: any;
    };
    onDropdownVisibleChange: import("vue").PropType<(open: boolean) => void>;
    maxTagTextLength: NumberConstructor;
    maxTagCount: {
        type: import("vue").PropType<number | "responsive">;
    };
    maxTagPlaceholder: import("vue-types").VueTypeValidableDef<any>;
    removeIcon: import("vue-types").VueTypeValidableDef<any>;
    transitionName: StringConstructor;
    dropdownStyle: {
        type: import("vue").PropType<import("vue").CSSProperties>;
        default: import("vue").CSSProperties;
    };
    dropdownRender: {
        type: import("vue").PropType<import("../vc-select/BaseSelect").DropdownRender>;
    };
    dropdownAlign: import("vue").PropType<import("../vc-trigger/interface").AlignType>;
    showAction: {
        type: import("vue").PropType<("click" | "focus")[]>;
    };
    onPopupScroll: import("vue").PropType<(e: UIEvent) => void>;
    onInputKeyDown: import("vue").PropType<(e: KeyboardEvent) => void>;
    onPopupVisibleChange: import("vue").PropType<(open: boolean) => void>;
    popupStyle: {
        type: import("vue").PropType<import("vue").CSSProperties>;
        default: import("vue").CSSProperties;
    };
    popupPlacement: import("vue").PropType<import("../vc-select/BaseSelect").Placement>;
    popupVisible: {
        type: BooleanConstructor;
        default: any;
    };
    expandIcon: import("vue-types").VueTypeValidableDef<any>;
    changeOnSelect: {
        type: BooleanConstructor;
        default: any;
    };
    displayRender: import("vue").PropType<(opt: {
        labels: string[];
        selectedOptions?: import("./interface").DefaultOptionType[];
    }) => any>;
    showCheckedStrategy: {
        type: import("vue").PropType<import("../vc-cascader/Cascader").ShowCheckedStrategy>;
        default: string;
    };
    expandTrigger: import("vue").PropType<"click" | "hover">;
    dropdownPrefixCls: StringConstructor;
    loadData: import("vue").PropType<(selectOptions: import("./interface").DefaultOptionType[]) => void>;
    dropdownMenuColumnStyle: {
        type: import("vue").PropType<import("vue").CSSProperties>;
        default: import("vue").CSSProperties;
    };
    loadingIcon: import("vue-types").VueTypeValidableDef<any>;
}>> & Readonly<{}>, () => VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    open: boolean;
    multiple: boolean;
    disabled: boolean;
    autofocus: boolean;
    variant: "filled" | "outlined" | "borderless" | "underlined";
    dropdownMatchSelectWidth: number | boolean;
    loading: boolean;
    bordered: boolean;
    allowClear: boolean;
    fieldNames: import("../vc-cascader").FieldNames;
    showSearch: boolean | ShowSearchType<import("./interface").DefaultOptionType>;
    defaultOpen: boolean;
    dropdownStyle: import("vue").CSSProperties;
    popupStyle: import("vue").CSSProperties;
    popupVisible: boolean;
    changeOnSelect: boolean;
    showCheckedStrategy: import("../vc-cascader/Cascader").ShowCheckedStrategy;
    dropdownMenuColumnStyle: import("vue").CSSProperties;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    SHOW_PARENT: typeof SHOW_PARENT;
    SHOW_CHILD: typeof SHOW_CHILD;
    Panel: typeof Panel;
} & import("vue").Plugin<any[], any[]>;
export default _default;
