import type { QueryChangeCtx, SelectOptionProxy } from './token';
export declare function useSelectStates(props: any): {
    options: Map<any, any>;
    cachedOptions: Map<any, any>;
    createdLabel: null;
    createdSelected: boolean;
    selected: any;
    inputLength: number;
    inputWidth: number;
    initialInputHeight: number;
    optionsCount: number;
    filteredOptionsCount: number;
    visible: boolean;
    softFocus: boolean;
    selectedLabel: string;
    hoverIndex: number;
    query: string;
    previousQuery: null;
    inputHovering: boolean;
    cachedPlaceHolder: string;
    currentPlaceholder: string;
    menuVisibleOnFocus: boolean;
    isOnComposition: boolean;
    isSilentBlur: boolean;
    prefixWidth: null;
    tagInMultiLine: boolean;
};
declare type States = ReturnType<typeof useSelectStates>;
export declare const useSelect: (props: any, states: States, ctx: any) => {
    optionsArray: import("vue").ComputedRef<any[]>;
    selectSize: import("vue").ComputedRef<"" | "mini" | import("../../../utils/types").ComponentSize>;
    handleResize: () => void;
    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;
    readonly: import("vue").ComputedRef<any>;
    resetInputHeight: () => void;
    showClose: import("vue").ComputedRef<any>;
    iconComponent: import("vue").ComputedRef<any>;
    iconReverse: import("vue").ComputedRef<"" | "is-reverse">;
    showNewOption: import("vue").ComputedRef<any>;
    collapseTagSize: import("vue").ComputedRef<() => "" | "large" | "medium" | "mini">;
    setSelected: () => void;
    managePlaceholder: () => void;
    selectDisabled: import("vue").ComputedRef<any>;
    emptyText: import("vue").ComputedRef<any>;
    toggleLastOptionHitState: (hit?: boolean | undefined) => any;
    resetInputState: (e: KeyboardEvent) => void;
    handleComposition: (event: any) => void;
    onOptionCreate: (vm: SelectOptionProxy) => void;
    onOptionDestroy: (key: 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>;
    queryChange: import("@vue/reactivity").ShallowRef<QueryChangeCtx>;
    groupQueryChange: import("@vue/reactivity").ShallowRef<string>;
    reference: import("vue").Ref<null>;
    input: import("vue").Ref<null>;
    popper: import("vue").Ref<null>;
    tags: import("vue").Ref<null>;
    selectWrapper: import("vue").Ref<HTMLElement | null>;
    scrollbar: import("vue").Ref<null>;
};
export {};
