/// <reference types="lodash" />
import type { PropType } from 'vue';
declare const _default: import("vue").DefineComponent<{
    name: StringConstructor;
    id: StringConstructor;
    modelValue: (BooleanConstructor | ObjectConstructor | StringConstructor | ArrayConstructor | NumberConstructor)[];
    autocomplete: {
        type: StringConstructor;
        default: string;
    };
    automaticDropdown: BooleanConstructor;
    size: {
        type: PropType<ComponentSize>;
        validator: (val: string) => boolean;
    };
    disabled: BooleanConstructor;
    clearable: BooleanConstructor;
    filterable: BooleanConstructor;
    allowCreate: BooleanConstructor;
    loading: BooleanConstructor;
    popperClass: {
        type: StringConstructor;
        default: string;
    };
    remote: BooleanConstructor;
    loadingText: StringConstructor;
    noMatchText: StringConstructor;
    noDataText: StringConstructor;
    remoteMethod: FunctionConstructor;
    filterMethod: FunctionConstructor;
    multiple: BooleanConstructor;
    multipleLimit: {
        type: NumberConstructor;
        default: number;
    };
    placeholder: {
        type: StringConstructor;
    };
    defaultFirstOption: BooleanConstructor;
    reserveKeyword: BooleanConstructor;
    valueKey: {
        type: StringConstructor;
        default: string;
    };
    collapseTags: BooleanConstructor;
    popperAppendToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    clearIcon: {
        type: StringConstructor;
        default: string;
    };
}, {
    tagInMultiLine: import("vue").Ref<boolean>;
    prefixWidth: any;
    selectSize: import("vue").ComputedRef<any>;
    readonly: import("vue").ComputedRef<any>;
    handleResize: () => void;
    collapseTagSize: import("vue").ComputedRef<"small" | "mini">;
    debouncedOnInputChange: import("lodash").DebouncedFunc<() => void>;
    debouncedQueryChange: import("lodash").DebouncedFunc<(e: any) => void>;
    deletePrevTag: (e: any) => void;
    deleteTag: (event: any, tag: any) => void;
    deleteSelected: (event: any) => void;
    handleOptionSelect: (option: any, byClick: any) => void;
    scrollToOption: (option: any) => void;
    inputWidth: import("vue").Ref<number>;
    selected: any;
    inputLength: import("vue").Ref<number>;
    filteredOptionsCount: import("vue").Ref<number>;
    visible: import("vue").Ref<boolean>;
    softFocus: import("vue").Ref<boolean>;
    selectedLabel: import("vue").Ref<string>;
    hoverIndex: import("vue").Ref<number>;
    query: import("vue").Ref<string>;
    inputHovering: import("vue").Ref<boolean>;
    currentPlaceholder: import("vue").Ref<string>;
    menuVisibleOnFocus: import("vue").Ref<boolean>;
    isOnComposition: import("vue").Ref<boolean>;
    isSilentBlur: import("vue").Ref<boolean>;
    options: import("vue").Ref<Map<any, any>>;
    resetInputHeight: () => void;
    managePlaceholder: () => void;
    showClose: import("vue").ComputedRef<boolean>;
    selectDisabled: import("vue").ComputedRef<any>;
    iconClass: import("vue").ComputedRef<"" | "arrow-up is-reverse" | "arrow-up">;
    showNewOption: import("vue").ComputedRef<boolean>;
    emptyText: import("vue").ComputedRef<any>;
    toggleLastOptionHitState: (hit?: boolean) => any;
    resetInputState: (e: KeyboardEvent) => void;
    handleComposition: (event: any) => void;
    handleMenuEnter: () => void;
    handleFocus: (event: any) => void;
    blur: () => void;
    handleBlur: (event: Event) => void;
    handleClearClick: (event: Event) => void;
    handleClose: () => void;
    toggleMenu: () => void;
    selectOption: () => void;
    getValueKey: (item: any) => any;
    navigateOptions: (direction: any) => void;
    dropMenuVisible: import("vue").ComputedRef<boolean>;
    focus: () => void;
    reference: any;
    input: any;
    popper: any;
    popperPaneRef: import("vue").ComputedRef<any>;
    tags: any;
    selectWrapper: import("vue").Ref<HTMLElement>;
    scrollbar: any;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "remove-tag" | "clear" | "visible-change" | "focus" | "blur")[], "update:modelValue" | "change" | "remove-tag" | "clear" | "visible-change" | "focus" | "blur", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    autocomplete: unknown;
    automaticDropdown: boolean;
    disabled: boolean;
    clearable: boolean;
    filterable: boolean;
    allowCreate: boolean;
    loading: boolean;
    popperClass: unknown;
    remote: boolean;
    multiple: boolean;
    multipleLimit: unknown;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    valueKey: unknown;
    collapseTags: boolean;
    popperAppendToBody: boolean;
    clearIcon: unknown;
} & {
    name?: unknown;
    id?: unknown;
    modelValue?: unknown;
    size?: unknown;
    loadingText?: unknown;
    noMatchText?: unknown;
    noDataText?: unknown;
    remoteMethod?: unknown;
    filterMethod?: unknown;
    placeholder?: unknown;
}>, {
    autocomplete: unknown;
    automaticDropdown: boolean;
    disabled: boolean;
    clearable: boolean;
    filterable: boolean;
    allowCreate: boolean;
    loading: boolean;
    popperClass: unknown;
    remote: boolean;
    multiple: boolean;
    multipleLimit: unknown;
    defaultFirstOption: boolean;
    reserveKeyword: boolean;
    valueKey: unknown;
    collapseTags: boolean;
    popperAppendToBody: boolean;
    clearIcon: unknown;
}>;
export default _default;
