import type { SFCWithInstall } from 'element-plus/es/utils/types';
declare const _Select: SFCWithInstall<import("vue").DefineComponent<{
    allowCreate: BooleanConstructor;
    autocomplete: {
        type: import("vue").PropType<"none" | "both" | "list" | "inline">;
        default: string;
    };
    automaticDropdown: BooleanConstructor;
    clearable: BooleanConstructor;
    clearIcon: {
        type: StringConstructor;
        default: string;
    };
    collapseTags: BooleanConstructor;
    defaultFirstOption: BooleanConstructor;
    disabled: BooleanConstructor;
    estimatedOptionHeight: {
        type: NumberConstructor;
        default: any;
    };
    filterable: BooleanConstructor;
    filterMethod: FunctionConstructor;
    height: {
        type: NumberConstructor;
        default: number;
    };
    itemHeight: {
        type: NumberConstructor;
        default: number;
    };
    id: StringConstructor;
    loading: BooleanConstructor;
    loadingText: StringConstructor;
    label: StringConstructor;
    modelValue: import("vue").PropType<any>;
    multiple: BooleanConstructor;
    multipleLimit: {
        type: NumberConstructor;
        default: number;
    };
    name: StringConstructor;
    noDataText: StringConstructor;
    noMatchText: StringConstructor;
    remoteMethod: FunctionConstructor;
    reserveKeyword: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("./src/select.types").OptionType<any>[]>;
        required: boolean;
    };
    placeholder: {
        type: StringConstructor;
    };
    popperAppendToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    popperClass: {
        type: StringConstructor;
        default: string;
    };
    popperOptions: {
        type: ObjectConstructor;
        default: () => {};
    };
    remote: BooleanConstructor;
    size: {
        type: import("vue").PropType<import("element-plus/es/utils/types").ComponentSize>;
        validator: (val: string) => boolean;
    };
    valueKey: {
        type: StringConstructor;
        default: string;
    };
}, {
    collapseTagSize: import("vue").ComputedRef<"small" | "mini">;
    currentPlaceholder: import("vue").ComputedRef<string>;
    expanded: import("vue").Ref<boolean>;
    emptyText: import("vue").ComputedRef<string | false>;
    popupHeight: import("vue").ComputedRef<number>;
    debounce: import("vue").ComputedRef<0 | 300>;
    filteredOptions: import("vue").ComputedRef<any[]>;
    iconClass: import("vue").ComputedRef<"" | "arrow-up is-reverse" | "arrow-up">;
    inputWrapperStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
    popperSize: import("vue").Ref<number>;
    shouldShowPlaceholder: import("vue").ComputedRef<boolean>;
    selectDisabled: import("vue").ComputedRef<boolean>;
    selectSize: import("vue").ComputedRef<any>;
    showClearBtn: import("vue").ComputedRef<boolean>;
    states: {
        inputValue: string;
        displayInputValue: string;
        calculatedWidth: number;
        cachedPlaceholder: string;
        cachedOptions: {
            [x: string]: any;
            label: string;
            created?: boolean;
            value: any;
        }[];
        createdOptions: {
            [x: string]: any;
            label: string;
            created?: boolean;
            value: any;
        }[];
        createdLabel: string;
        createdSelected: boolean;
        currentPlaceholder: string;
        hoveringIndex: number;
        comboBoxHovering: boolean;
        isOnComposition: boolean;
        isSilentBlur: boolean;
        isComposing: boolean;
        inputLength: number;
        inputWidth: number;
        initialInputHeight: number;
        previousQuery: any;
        query: string;
        selectedLabel: string;
        softFocus: boolean;
        tagInMultiLine: boolean;
    };
    calculatorRef: import("vue").Ref<HTMLElement>;
    controlRef: any;
    inputRef: any;
    menuRef: any;
    popper: any;
    selectRef: any;
    selectionRef: any;
    popperRef: import("vue").ComputedRef<any>;
    debouncedOnInputChange: import("lodash").DebouncedFunc<() => void>;
    debouncedQueryChange: import("lodash").DebouncedFunc<(e: any) => void>;
    deleteTag: (event: MouseEvent, tag: import("./src/select.types").Option<any>) => void;
    getLabel: (item: unknown) => any;
    getValueKey: (item: unknown) => unknown;
    handleBlur: () => void;
    handleClear: () => void;
    handleClickOutside: () => void;
    handleDel: (e: KeyboardEvent) => void;
    handleEsc: () => void;
    handleFocus: (event: FocusEvent) => void;
    handleInputBoxClick: () => void;
    handleMenuEnter: () => void;
    toggleMenu: () => void;
    scrollTo: (index: number) => void;
    onCompositionUpdate: (e: CompositionEvent) => void;
    onInput: () => void;
    onKeyboardNavigate: (direction: "forward" | "backward") => void;
    onKeyboardSelect: () => void;
    onSelect: (option: import("./src/select.types").Option<any>, idx: number, byClick?: boolean) => void;
    onUpdateInputValue: (val: string) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "blur" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag")[], "change" | "blur" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    allowCreate?: unknown;
    autocomplete?: unknown;
    automaticDropdown?: unknown;
    clearable?: unknown;
    clearIcon?: unknown;
    collapseTags?: unknown;
    defaultFirstOption?: unknown;
    disabled?: unknown;
    estimatedOptionHeight?: unknown;
    filterable?: unknown;
    filterMethod?: unknown;
    height?: unknown;
    itemHeight?: unknown;
    id?: unknown;
    loading?: unknown;
    loadingText?: unknown;
    label?: unknown;
    modelValue?: unknown;
    multiple?: unknown;
    multipleLimit?: unknown;
    name?: unknown;
    noDataText?: unknown;
    noMatchText?: unknown;
    remoteMethod?: unknown;
    reserveKeyword?: unknown;
    options?: unknown;
    placeholder?: unknown;
    popperAppendToBody?: unknown;
    popperClass?: unknown;
    popperOptions?: unknown;
    remote?: unknown;
    size?: unknown;
    valueKey?: unknown;
} & {
    height: number;
    disabled: boolean;
    popperOptions: Record<string, any>;
    popperClass: string;
    loading: boolean;
    autocomplete: "none" | "both" | "list" | "inline";
    clearable: boolean;
    valueKey: string;
    popperAppendToBody: boolean;
    clearIcon: string;
    multiple: boolean;
    filterable: boolean;
    collapseTags: boolean;
    remote: boolean;
    automaticDropdown: boolean;
    allowCreate: boolean;
    multipleLimit: number;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    itemHeight: number;
} & {
    label?: string;
    name?: string;
    size?: import("element-plus/es/utils/types").ComponentSize;
    options?: import("./src/select.types").OptionType<any>[];
    placeholder?: string;
    modelValue?: unknown;
    id?: string;
    filterMethod?: Function;
    loadingText?: string;
    noMatchText?: string;
    noDataText?: string;
    remoteMethod?: Function;
    estimatedOptionHeight?: number;
}> & {
    onChange?: (...args: any[]) => any;
    "onUpdate:modelValue"?: (...args: any[]) => any;
    onFocus?: (...args: any[]) => any;
    onBlur?: (...args: any[]) => any;
    onClear?: (...args: any[]) => any;
    "onVisible-change"?: (...args: any[]) => any;
    "onRemove-tag"?: (...args: any[]) => any;
}, {
    height: number;
    disabled: boolean;
    popperOptions: Record<string, any>;
    popperClass: string;
    loading: boolean;
    autocomplete: "none" | "both" | "list" | "inline";
    clearable: boolean;
    valueKey: string;
    popperAppendToBody: boolean;
    clearIcon: string;
    multiple: boolean;
    filterable: boolean;
    collapseTags: boolean;
    remote: boolean;
    automaticDropdown: boolean;
    allowCreate: boolean;
    multipleLimit: number;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    estimatedOptionHeight: number;
    itemHeight: number;
}>>;
export default _Select;
export declare const ElSelectV2: SFCWithInstall<import("vue").DefineComponent<{
    allowCreate: BooleanConstructor;
    autocomplete: {
        type: import("vue").PropType<"none" | "both" | "list" | "inline">;
        default: string;
    };
    automaticDropdown: BooleanConstructor;
    clearable: BooleanConstructor;
    clearIcon: {
        type: StringConstructor;
        default: string;
    };
    collapseTags: BooleanConstructor;
    defaultFirstOption: BooleanConstructor;
    disabled: BooleanConstructor;
    estimatedOptionHeight: {
        type: NumberConstructor;
        default: any;
    };
    filterable: BooleanConstructor;
    filterMethod: FunctionConstructor;
    height: {
        type: NumberConstructor;
        default: number;
    };
    itemHeight: {
        type: NumberConstructor;
        default: number;
    };
    id: StringConstructor;
    loading: BooleanConstructor;
    loadingText: StringConstructor;
    label: StringConstructor;
    modelValue: import("vue").PropType<any>;
    multiple: BooleanConstructor;
    multipleLimit: {
        type: NumberConstructor;
        default: number;
    };
    name: StringConstructor;
    noDataText: StringConstructor;
    noMatchText: StringConstructor;
    remoteMethod: FunctionConstructor;
    reserveKeyword: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("./src/select.types").OptionType<any>[]>;
        required: boolean;
    };
    placeholder: {
        type: StringConstructor;
    };
    popperAppendToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    popperClass: {
        type: StringConstructor;
        default: string;
    };
    popperOptions: {
        type: ObjectConstructor;
        default: () => {};
    };
    remote: BooleanConstructor;
    size: {
        type: import("vue").PropType<import("element-plus/es/utils/types").ComponentSize>;
        validator: (val: string) => boolean;
    };
    valueKey: {
        type: StringConstructor;
        default: string;
    };
}, {
    collapseTagSize: import("vue").ComputedRef<"small" | "mini">;
    currentPlaceholder: import("vue").ComputedRef<string>;
    expanded: import("vue").Ref<boolean>;
    emptyText: import("vue").ComputedRef<string | false>;
    popupHeight: import("vue").ComputedRef<number>;
    debounce: import("vue").ComputedRef<0 | 300>;
    filteredOptions: import("vue").ComputedRef<any[]>;
    iconClass: import("vue").ComputedRef<"" | "arrow-up is-reverse" | "arrow-up">;
    inputWrapperStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
    popperSize: import("vue").Ref<number>;
    shouldShowPlaceholder: import("vue").ComputedRef<boolean>;
    selectDisabled: import("vue").ComputedRef<boolean>;
    selectSize: import("vue").ComputedRef<any>;
    showClearBtn: import("vue").ComputedRef<boolean>;
    states: {
        inputValue: string;
        displayInputValue: string;
        calculatedWidth: number;
        cachedPlaceholder: string;
        cachedOptions: {
            [x: string]: any;
            label: string;
            created?: boolean;
            value: any;
        }[];
        createdOptions: {
            [x: string]: any;
            label: string;
            created?: boolean;
            value: any;
        }[];
        createdLabel: string;
        createdSelected: boolean;
        currentPlaceholder: string;
        hoveringIndex: number;
        comboBoxHovering: boolean;
        isOnComposition: boolean;
        isSilentBlur: boolean;
        isComposing: boolean;
        inputLength: number;
        inputWidth: number;
        initialInputHeight: number;
        previousQuery: any;
        query: string;
        selectedLabel: string;
        softFocus: boolean;
        tagInMultiLine: boolean;
    };
    calculatorRef: import("vue").Ref<HTMLElement>;
    controlRef: any;
    inputRef: any;
    menuRef: any;
    popper: any;
    selectRef: any;
    selectionRef: any;
    popperRef: import("vue").ComputedRef<any>;
    debouncedOnInputChange: import("lodash").DebouncedFunc<() => void>;
    debouncedQueryChange: import("lodash").DebouncedFunc<(e: any) => void>;
    deleteTag: (event: MouseEvent, tag: import("./src/select.types").Option<any>) => void;
    getLabel: (item: unknown) => any;
    getValueKey: (item: unknown) => unknown;
    handleBlur: () => void;
    handleClear: () => void;
    handleClickOutside: () => void;
    handleDel: (e: KeyboardEvent) => void;
    handleEsc: () => void;
    handleFocus: (event: FocusEvent) => void;
    handleInputBoxClick: () => void;
    handleMenuEnter: () => void;
    toggleMenu: () => void;
    scrollTo: (index: number) => void;
    onCompositionUpdate: (e: CompositionEvent) => void;
    onInput: () => void;
    onKeyboardNavigate: (direction: "forward" | "backward") => void;
    onKeyboardSelect: () => void;
    onSelect: (option: import("./src/select.types").Option<any>, idx: number, byClick?: boolean) => void;
    onUpdateInputValue: (val: string) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "blur" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag")[], "change" | "blur" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    allowCreate?: unknown;
    autocomplete?: unknown;
    automaticDropdown?: unknown;
    clearable?: unknown;
    clearIcon?: unknown;
    collapseTags?: unknown;
    defaultFirstOption?: unknown;
    disabled?: unknown;
    estimatedOptionHeight?: unknown;
    filterable?: unknown;
    filterMethod?: unknown;
    height?: unknown;
    itemHeight?: unknown;
    id?: unknown;
    loading?: unknown;
    loadingText?: unknown;
    label?: unknown;
    modelValue?: unknown;
    multiple?: unknown;
    multipleLimit?: unknown;
    name?: unknown;
    noDataText?: unknown;
    noMatchText?: unknown;
    remoteMethod?: unknown;
    reserveKeyword?: unknown;
    options?: unknown;
    placeholder?: unknown;
    popperAppendToBody?: unknown;
    popperClass?: unknown;
    popperOptions?: unknown;
    remote?: unknown;
    size?: unknown;
    valueKey?: unknown;
} & {
    height: number;
    disabled: boolean;
    popperOptions: Record<string, any>;
    popperClass: string;
    loading: boolean;
    autocomplete: "none" | "both" | "list" | "inline";
    clearable: boolean;
    valueKey: string;
    popperAppendToBody: boolean;
    clearIcon: string;
    multiple: boolean;
    filterable: boolean;
    collapseTags: boolean;
    remote: boolean;
    automaticDropdown: boolean;
    allowCreate: boolean;
    multipleLimit: number;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    itemHeight: number;
} & {
    label?: string;
    name?: string;
    size?: import("element-plus/es/utils/types").ComponentSize;
    options?: import("./src/select.types").OptionType<any>[];
    placeholder?: string;
    modelValue?: unknown;
    id?: string;
    filterMethod?: Function;
    loadingText?: string;
    noMatchText?: string;
    noDataText?: string;
    remoteMethod?: Function;
    estimatedOptionHeight?: number;
}> & {
    onChange?: (...args: any[]) => any;
    "onUpdate:modelValue"?: (...args: any[]) => any;
    onFocus?: (...args: any[]) => any;
    onBlur?: (...args: any[]) => any;
    onClear?: (...args: any[]) => any;
    "onVisible-change"?: (...args: any[]) => any;
    "onRemove-tag"?: (...args: any[]) => any;
}, {
    height: number;
    disabled: boolean;
    popperOptions: Record<string, any>;
    popperClass: string;
    loading: boolean;
    autocomplete: "none" | "both" | "list" | "inline";
    clearable: boolean;
    valueKey: string;
    popperAppendToBody: boolean;
    clearIcon: string;
    multiple: boolean;
    filterable: boolean;
    collapseTags: boolean;
    remote: boolean;
    automaticDropdown: boolean;
    allowCreate: boolean;
    multipleLimit: number;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    estimatedOptionHeight: number;
    itemHeight: number;
}>>;
export * from './src/token';
