import { App, CSSProperties, ExtractPropTypes, PropType, CreateComponentPublicInstanceWithMixins, ComponentOptionsMixin, PublicProps, GlobalComponents, GlobalDirectives, ComponentProvideOptions, ComponentOptionsBase, VNodeProps, AllowedComponentProps, ComponentCustomProps } from 'vue';
import { InputStatus } from '../_util/statusUtils';
import { CustomSlotsType, VueNode } from '../_util/type';
import { ButtonSize } from '../button';
import { SelectValue, DefaultOptionType, LabeledValue } from '../select';
import { SelectHandler, FieldNames } from '../vc-select/Select';
import { RenderDOMFunc, CustomTagProps, DropdownRender } from '../vc-select/BaseSelect';
import { AlignType } from '../vc-trigger/interface';
import { VueTypeValidableDef } from 'vue-types';
import { OptionFC } from './Option';
import { OptionGroupFC } from './OptGroup';
export declare const autoCompleteProps: () => {
    dataSource: PropType<{
        value: any;
        text: any;
    }[] | string[]>;
    dropdownMenuStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    dropdownMatchSelectWidth: {
        type: (BooleanConstructor | NumberConstructor)[];
        default: boolean;
    };
    prefixCls: StringConstructor;
    showSearch: {
        type: BooleanConstructor;
        default: undefined;
    };
    transitionName: StringConstructor;
    choiceTransitionName: {
        type: StringConstructor;
        default: string;
    };
    autofocus: {
        type: BooleanConstructor;
        default: undefined;
    };
    backfill: {
        type: BooleanConstructor;
        default: undefined;
    };
    filterOption: {
        type: (FunctionConstructor | BooleanConstructor)[];
        default: boolean;
    };
    defaultActiveFirstOption: {
        type: BooleanConstructor;
        default: boolean;
    };
    status: PropType<InputStatus>;
    open: {
        type: BooleanConstructor;
        default: undefined;
    };
    size: {
        type: PropType< ButtonSize>;
        default: ButtonSize;
    };
    value: {
        type: PropType< SelectValue>;
        default: SelectValue;
    };
    animation: StringConstructor;
    direction: {
        type: PropType<"ltr" | "rtl">;
    };
    disabled: {
        type: BooleanConstructor;
        default: undefined;
    };
    onFocus: {
        type: PropType<(e: FocusEvent) => void>;
    };
    onBlur: {
        type: PropType<(e: FocusEvent) => void>;
    };
    onChange: PropType<(value: SelectValue, option: DefaultOptionType | DefaultOptionType[]) => void>;
    onKeydown: PropType<(e: KeyboardEvent) => void>;
    onKeyup: PropType<(e: KeyboardEvent) => void>;
    onMousedown: PropType<(e: MouseEvent) => void>;
    onMouseenter: PropType<(e: MouseEvent) => void>;
    onMouseleave: PropType<(e: MouseEvent) => void>;
    onSelect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
    onClick: PropType<(e: MouseEvent) => void>;
    children: PropType< VueNode[]>;
    listHeight: NumberConstructor;
    id: StringConstructor;
    getPopupContainer: {
        type: PropType< RenderDOMFunc>;
    };
    virtual: {
        type: BooleanConstructor;
        default: undefined;
    };
    bordered: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultValue: {
        type: PropType< SelectValue>;
        default: SelectValue;
    };
    tabindex: NumberConstructor;
    showAction: {
        type: PropType<("focus" | "click")[]>;
    };
    popupClassName: StringConstructor;
    dropdownClassName: StringConstructor;
    dropdownAlign: PropType< AlignType>;
    placeholder: VueTypeValidableDef<any>;
    allowClear: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultOpen: {
        type: BooleanConstructor;
        default: undefined;
    };
    suffixIcon: VueTypeValidableDef<any>;
    clearIcon: VueTypeValidableDef<any>;
    'onUpdate:value': {
        type: PropType<(val: SelectValue) => void>;
        default: (val: SelectValue) => void;
    };
    placement: {
        type: PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
        default: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
    };
    notFoundContent: VueTypeValidableDef<any>;
    fieldNames: PropType< FieldNames>;
    tagRender: {
        type: PropType<(props: CustomTagProps) => any>;
    };
    optionLabelRender: {
        type: PropType<(option: Record<string, any>) => any>;
    };
    onClear: PropType<() => void>;
    onDropdownVisibleChange: {
        type: PropType<(open: boolean) => void>;
    };
    maxTagTextLength: NumberConstructor;
    maxTagCount: {
        type: PropType<number | "responsive">;
    };
    maxTagPlaceholder: VueTypeValidableDef<any>;
    tokenSeparators: {
        type: PropType<string[]>;
    };
    showArrow: {
        type: BooleanConstructor;
        default: undefined;
    };
    removeIcon: VueTypeValidableDef<any>;
    dropdownStyle: {
        type: PropType<CSSProperties>;
    };
    dropdownRender: {
        type: PropType< DropdownRender>;
    };
    onPopupScroll: PropType<(e: UIEvent) => void>;
    onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
    searchValue: StringConstructor;
    onSearch: PropType<(value: string) => void>;
    menuItemSelectedIcon: VueTypeValidableDef<any>;
    listItemHeight: NumberConstructor;
    options: PropType< DefaultOptionType[]>;
    inputValue: StringConstructor;
    autoClearSearchValue: {
        type: BooleanConstructor;
        default: undefined;
    };
    onDeselect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
    filterSort: PropType<(optionA: DefaultOptionType, optionB: DefaultOptionType) => number>;
    optionFilterProp: StringConstructor;
    itemIcon: VueTypeValidableDef<any>;
};
export type AutoCompleteProps = Partial<ExtractPropTypes<ReturnType<typeof autoCompleteProps>>>;
export declare const AutoCompleteOption: OptionFC;
export declare const AutoCompleteOptGroup: OptionGroupFC;
declare const _default: {
    new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes<{
        dataSource: PropType<{
            value: any;
            text: any;
        }[] | string[]>;
        dropdownMenuStyle: {
            type: PropType<CSSProperties>;
            default: CSSProperties;
        };
        dropdownMatchSelectWidth: {
            type: (BooleanConstructor | NumberConstructor)[];
            default: boolean;
        };
        prefixCls: StringConstructor;
        showSearch: {
            type: BooleanConstructor;
            default: undefined;
        };
        transitionName: StringConstructor;
        choiceTransitionName: {
            type: StringConstructor;
            default: string;
        };
        autofocus: {
            type: BooleanConstructor;
            default: undefined;
        };
        backfill: {
            type: BooleanConstructor;
            default: undefined;
        };
        filterOption: {
            type: (FunctionConstructor | BooleanConstructor)[];
            default: boolean;
        };
        defaultActiveFirstOption: {
            type: BooleanConstructor;
            default: boolean;
        };
        status: PropType<InputStatus>;
        open: {
            type: BooleanConstructor;
            default: undefined;
        };
        size: {
            type: PropType< ButtonSize>;
            default: ButtonSize;
        };
        value: {
            type: PropType< SelectValue>;
            default: SelectValue;
        };
        animation: StringConstructor;
        direction: {
            type: PropType<"ltr" | "rtl">;
        };
        disabled: {
            type: BooleanConstructor;
            default: undefined;
        };
        onFocus: {
            type: PropType<(e: FocusEvent) => void>;
        };
        onBlur: {
            type: PropType<(e: FocusEvent) => void>;
        };
        onChange: PropType<(value: SelectValue, option: DefaultOptionType | DefaultOptionType[]) => void>;
        onKeydown: PropType<(e: KeyboardEvent) => void>;
        onKeyup: PropType<(e: KeyboardEvent) => void>;
        onMousedown: PropType<(e: MouseEvent) => void>;
        onMouseenter: PropType<(e: MouseEvent) => void>;
        onMouseleave: PropType<(e: MouseEvent) => void>;
        onSelect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
        onClick: PropType<(e: MouseEvent) => void>;
        children: PropType< VueNode[]>;
        listHeight: NumberConstructor;
        id: StringConstructor;
        getPopupContainer: {
            type: PropType< RenderDOMFunc>;
        };
        virtual: {
            type: BooleanConstructor;
            default: undefined;
        };
        bordered: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultValue: {
            type: PropType< SelectValue>;
            default: SelectValue;
        };
        tabindex: NumberConstructor;
        showAction: {
            type: PropType<("focus" | "click")[]>;
        };
        popupClassName: StringConstructor;
        dropdownClassName: StringConstructor;
        dropdownAlign: PropType< AlignType>;
        placeholder: VueTypeValidableDef<any>;
        allowClear: {
            type: BooleanConstructor;
            default: undefined;
        };
        defaultOpen: {
            type: BooleanConstructor;
            default: undefined;
        };
        suffixIcon: VueTypeValidableDef<any>;
        clearIcon: VueTypeValidableDef<any>;
        'onUpdate:value': {
            type: PropType<(val: SelectValue) => void>;
            default: (val: SelectValue) => void;
        };
        placement: {
            type: PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
            default: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
        };
        notFoundContent: VueTypeValidableDef<any>;
        fieldNames: PropType< FieldNames>;
        tagRender: {
            type: PropType<(props: CustomTagProps) => any>;
        };
        optionLabelRender: {
            type: PropType<(option: Record<string, any>) => any>;
        };
        onClear: PropType<() => void>;
        onDropdownVisibleChange: {
            type: PropType<(open: boolean) => void>;
        };
        maxTagTextLength: NumberConstructor;
        maxTagCount: {
            type: PropType<number | "responsive">;
        };
        maxTagPlaceholder: VueTypeValidableDef<any>;
        tokenSeparators: {
            type: PropType<string[]>;
        };
        showArrow: {
            type: BooleanConstructor;
            default: undefined;
        };
        removeIcon: VueTypeValidableDef<any>;
        dropdownStyle: {
            type: PropType<CSSProperties>;
        };
        dropdownRender: {
            type: PropType< DropdownRender>;
        };
        onPopupScroll: PropType<(e: UIEvent) => void>;
        onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
        searchValue: StringConstructor;
        onSearch: PropType<(value: string) => void>;
        menuItemSelectedIcon: VueTypeValidableDef<any>;
        listItemHeight: NumberConstructor;
        options: PropType< DefaultOptionType[]>;
        inputValue: StringConstructor;
        autoClearSearchValue: {
            type: BooleanConstructor;
            default: undefined;
        };
        onDeselect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
        filterSort: PropType<(optionA: DefaultOptionType, optionB: DefaultOptionType) => number>;
        optionFilterProp: StringConstructor;
        itemIcon: VueTypeValidableDef<any>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
        open: boolean;
        size: ButtonSize;
        value: SelectValue;
        disabled: boolean;
        autofocus: boolean;
        virtual: boolean;
        dropdownMatchSelectWidth: number | boolean;
        bordered: boolean;
        defaultValue: SelectValue;
        allowClear: boolean;
        defaultOpen: boolean;
        'onUpdate:value': (val: SelectValue) => void;
        placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
        showSearch: boolean;
        choiceTransitionName: string;
        showArrow: boolean;
        backfill: boolean;
        autoClearSearchValue: boolean;
        filterOption: boolean | Function;
        defaultActiveFirstOption: boolean;
        dropdownMenuStyle: CSSProperties;
    }, true, {}, CustomSlotsType<{
        option: any;
        options: any;
        default: any;
        notFoundContent: any;
        dataSource: any;
        clearIcon: any;
    }>, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<ExtractPropTypes<{
        dataSource: PropType<{
            value: any;
            text: any;
        }[] | string[]>;
        dropdownMenuStyle: {
            type: PropType<CSSProperties>;
            default: CSSProperties;
        };
        dropdownMatchSelectWidth: {
            type: (BooleanConstructor | NumberConstructor)[];
            default: boolean;
        };
        prefixCls: StringConstructor;
        showSearch: {
            type: BooleanConstructor;
            default: undefined;
        };
        transitionName: StringConstructor;
        choiceTransitionName: {
            type: StringConstructor;
            default: string;
        };
        autofocus: {
            type: BooleanConstructor;
            default: undefined;
        };
        backfill: {
            type: BooleanConstructor;
            default: undefined;
        };
        filterOption: {
            type: (FunctionConstructor | BooleanConstructor)[];
            default: boolean;
        };
        defaultActiveFirstOption: {
            type: BooleanConstructor;
            default: boolean;
        };
        status: PropType<InputStatus>;
        open: {
            type: BooleanConstructor;
            default: undefined;
        };
        size: {
            type: PropType< ButtonSize>;
            default: ButtonSize;
        };
        value: {
            type: PropType< SelectValue>;
            default: SelectValue;
        };
        animation: StringConstructor;
        direction: {
            type: PropType<"ltr" | "rtl">;
        };
        disabled: {
            type: BooleanConstructor;
            default: undefined;
        };
        onFocus: {
            type: PropType<(e: FocusEvent) => void>;
        };
        onBlur: {
            type: PropType<(e: FocusEvent) => void>;
        };
        onChange: PropType<(value: SelectValue, option: DefaultOptionType | DefaultOptionType[]) => void>;
        onKeydown: PropType<(e: KeyboardEvent) => void>;
        onKeyup: PropType<(e: KeyboardEvent) => void>;
        onMousedown: PropType<(e: MouseEvent) => void>;
        onMouseenter: PropType<(e: MouseEvent) => void>;
        onMouseleave: PropType<(e: MouseEvent) => void>;
        onSelect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
        onClick: PropType<(e: MouseEvent) => void>;
        children: PropType< VueNode[]>;
        listHeight: NumberConstructor;
        id: StringConstructor;
        getPopupContainer: {
            type: PropType< RenderDOMFunc>;
        };
        virtual: {
            type: BooleanConstructor;
            default: undefined;
        };
        bordered: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultValue: {
            type: PropType< SelectValue>;
            default: SelectValue;
        };
        tabindex: NumberConstructor;
        showAction: {
            type: PropType<("focus" | "click")[]>;
        };
        popupClassName: StringConstructor;
        dropdownClassName: StringConstructor;
        dropdownAlign: PropType< AlignType>;
        placeholder: VueTypeValidableDef<any>;
        allowClear: {
            type: BooleanConstructor;
            default: undefined;
        };
        defaultOpen: {
            type: BooleanConstructor;
            default: undefined;
        };
        suffixIcon: VueTypeValidableDef<any>;
        clearIcon: VueTypeValidableDef<any>;
        'onUpdate:value': {
            type: PropType<(val: SelectValue) => void>;
            default: (val: SelectValue) => void;
        };
        placement: {
            type: PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
            default: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
        };
        notFoundContent: VueTypeValidableDef<any>;
        fieldNames: PropType< FieldNames>;
        tagRender: {
            type: PropType<(props: CustomTagProps) => any>;
        };
        optionLabelRender: {
            type: PropType<(option: Record<string, any>) => any>;
        };
        onClear: PropType<() => void>;
        onDropdownVisibleChange: {
            type: PropType<(open: boolean) => void>;
        };
        maxTagTextLength: NumberConstructor;
        maxTagCount: {
            type: PropType<number | "responsive">;
        };
        maxTagPlaceholder: VueTypeValidableDef<any>;
        tokenSeparators: {
            type: PropType<string[]>;
        };
        showArrow: {
            type: BooleanConstructor;
            default: undefined;
        };
        removeIcon: VueTypeValidableDef<any>;
        dropdownStyle: {
            type: PropType<CSSProperties>;
        };
        dropdownRender: {
            type: PropType< DropdownRender>;
        };
        onPopupScroll: PropType<(e: UIEvent) => void>;
        onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
        searchValue: StringConstructor;
        onSearch: PropType<(value: string) => void>;
        menuItemSelectedIcon: VueTypeValidableDef<any>;
        listItemHeight: NumberConstructor;
        options: PropType< DefaultOptionType[]>;
        inputValue: StringConstructor;
        autoClearSearchValue: {
            type: BooleanConstructor;
            default: undefined;
        };
        onDeselect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
        filterSort: PropType<(optionA: DefaultOptionType, optionB: DefaultOptionType) => number>;
        optionFilterProp: StringConstructor;
        itemIcon: VueTypeValidableDef<any>;
    }>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        open: boolean;
        size: ButtonSize;
        value: SelectValue;
        disabled: boolean;
        autofocus: boolean;
        virtual: boolean;
        dropdownMatchSelectWidth: number | boolean;
        bordered: boolean;
        defaultValue: SelectValue;
        allowClear: boolean;
        defaultOpen: boolean;
        'onUpdate:value': (val: SelectValue) => void;
        placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
        showSearch: boolean;
        choiceTransitionName: string;
        showArrow: boolean;
        backfill: boolean;
        autoClearSearchValue: boolean;
        filterOption: boolean | Function;
        defaultActiveFirstOption: boolean;
        dropdownMenuStyle: CSSProperties;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & ComponentOptionsBase<Readonly<ExtractPropTypes<{
    dataSource: PropType<{
        value: any;
        text: any;
    }[] | string[]>;
    dropdownMenuStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    dropdownMatchSelectWidth: {
        type: (BooleanConstructor | NumberConstructor)[];
        default: boolean;
    };
    prefixCls: StringConstructor;
    showSearch: {
        type: BooleanConstructor;
        default: undefined;
    };
    transitionName: StringConstructor;
    choiceTransitionName: {
        type: StringConstructor;
        default: string;
    };
    autofocus: {
        type: BooleanConstructor;
        default: undefined;
    };
    backfill: {
        type: BooleanConstructor;
        default: undefined;
    };
    filterOption: {
        type: (FunctionConstructor | BooleanConstructor)[];
        default: boolean;
    };
    defaultActiveFirstOption: {
        type: BooleanConstructor;
        default: boolean;
    };
    status: PropType<InputStatus>;
    open: {
        type: BooleanConstructor;
        default: undefined;
    };
    size: {
        type: PropType< ButtonSize>;
        default: ButtonSize;
    };
    value: {
        type: PropType< SelectValue>;
        default: SelectValue;
    };
    animation: StringConstructor;
    direction: {
        type: PropType<"ltr" | "rtl">;
    };
    disabled: {
        type: BooleanConstructor;
        default: undefined;
    };
    onFocus: {
        type: PropType<(e: FocusEvent) => void>;
    };
    onBlur: {
        type: PropType<(e: FocusEvent) => void>;
    };
    onChange: PropType<(value: SelectValue, option: DefaultOptionType | DefaultOptionType[]) => void>;
    onKeydown: PropType<(e: KeyboardEvent) => void>;
    onKeyup: PropType<(e: KeyboardEvent) => void>;
    onMousedown: PropType<(e: MouseEvent) => void>;
    onMouseenter: PropType<(e: MouseEvent) => void>;
    onMouseleave: PropType<(e: MouseEvent) => void>;
    onSelect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
    onClick: PropType<(e: MouseEvent) => void>;
    children: PropType< VueNode[]>;
    listHeight: NumberConstructor;
    id: StringConstructor;
    getPopupContainer: {
        type: PropType< RenderDOMFunc>;
    };
    virtual: {
        type: BooleanConstructor;
        default: undefined;
    };
    bordered: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultValue: {
        type: PropType< SelectValue>;
        default: SelectValue;
    };
    tabindex: NumberConstructor;
    showAction: {
        type: PropType<("focus" | "click")[]>;
    };
    popupClassName: StringConstructor;
    dropdownClassName: StringConstructor;
    dropdownAlign: PropType< AlignType>;
    placeholder: VueTypeValidableDef<any>;
    allowClear: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultOpen: {
        type: BooleanConstructor;
        default: undefined;
    };
    suffixIcon: VueTypeValidableDef<any>;
    clearIcon: VueTypeValidableDef<any>;
    'onUpdate:value': {
        type: PropType<(val: SelectValue) => void>;
        default: (val: SelectValue) => void;
    };
    placement: {
        type: PropType<"bottomLeft" | "bottomRight" | "topLeft" | "topRight">;
        default: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
    };
    notFoundContent: VueTypeValidableDef<any>;
    fieldNames: PropType< FieldNames>;
    tagRender: {
        type: PropType<(props: CustomTagProps) => any>;
    };
    optionLabelRender: {
        type: PropType<(option: Record<string, any>) => any>;
    };
    onClear: PropType<() => void>;
    onDropdownVisibleChange: {
        type: PropType<(open: boolean) => void>;
    };
    maxTagTextLength: NumberConstructor;
    maxTagCount: {
        type: PropType<number | "responsive">;
    };
    maxTagPlaceholder: VueTypeValidableDef<any>;
    tokenSeparators: {
        type: PropType<string[]>;
    };
    showArrow: {
        type: BooleanConstructor;
        default: undefined;
    };
    removeIcon: VueTypeValidableDef<any>;
    dropdownStyle: {
        type: PropType<CSSProperties>;
    };
    dropdownRender: {
        type: PropType< DropdownRender>;
    };
    onPopupScroll: PropType<(e: UIEvent) => void>;
    onInputKeyDown: PropType<(e: KeyboardEvent) => void>;
    searchValue: StringConstructor;
    onSearch: PropType<(value: string) => void>;
    menuItemSelectedIcon: VueTypeValidableDef<any>;
    listItemHeight: NumberConstructor;
    options: PropType< DefaultOptionType[]>;
    inputValue: StringConstructor;
    autoClearSearchValue: {
        type: BooleanConstructor;
        default: undefined;
    };
    onDeselect: PropType< SelectHandler<(string | number) | LabeledValue | undefined, DefaultOptionType>>;
    filterSort: PropType<(optionA: DefaultOptionType, optionB: DefaultOptionType) => number>;
    optionFilterProp: StringConstructor;
    itemIcon: VueTypeValidableDef<any>;
}>> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
    open: boolean;
    size: ButtonSize;
    value: SelectValue;
    disabled: boolean;
    autofocus: boolean;
    virtual: boolean;
    dropdownMatchSelectWidth: number | boolean;
    bordered: boolean;
    defaultValue: SelectValue;
    allowClear: boolean;
    defaultOpen: boolean;
    'onUpdate:value': (val: SelectValue) => void;
    placement: "bottomLeft" | "bottomRight" | "topLeft" | "topRight";
    showSearch: boolean;
    choiceTransitionName: string;
    showArrow: boolean;
    backfill: boolean;
    autoClearSearchValue: boolean;
    filterOption: boolean | Function;
    defaultActiveFirstOption: boolean;
    dropdownMenuStyle: CSSProperties;
}, {}, string, CustomSlotsType<{
    option: any;
    options: any;
    default: any;
    notFoundContent: any;
    dataSource: any;
    clearIcon: any;
}>, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & VNodeProps & AllowedComponentProps & ComponentCustomProps & {
    Option: OptionFC;
    OptGroup: OptionGroupFC;
    install(app: App): App<any>;
};
export default _default;
