import { PropType, CSSProperties } from 'vue-demi';
import { autocomplete } from '@company-ui/core';

declare const _default: import('vue-demi').DefineComponent<{
    modelValue: {
        type: StringConstructor;
        default: string;
    };
    api: {
        type: PropType<autocomplete.Type.ApiType>;
        default: autocomplete.Type.ApiType;
    };
    queryDelay: {
        type: NumberConstructor;
        default: number;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
    clearable: {
        type: BooleanConstructor;
        default: Boolean;
    };
    backFill: {
        type: BooleanConstructor;
        default: boolean;
    };
    popupAppendToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    autoFocus: {
        type: BooleanConstructor;
        default: Boolean;
    };
    showSubmitButton: {
        type: BooleanConstructor;
        default: boolean;
    };
    submitButtonLabel: {
        type: StringConstructor;
        default: string;
    };
    offsetTop: {
        type: NumberConstructor;
        default: number;
    };
    autoFlip: {
        type: BooleanConstructor;
        default: boolean;
    };
    historyEnabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    historyType: {
        type: PropType<autocomplete.Type.HistoryType>;
        default: autocomplete.Type.HistoryType;
    };
    historyStorageKey: {
        type: StringConstructor;
        default: string;
    };
    historyClearable: {
        type: BooleanConstructor;
        default: boolean;
    };
}, unknown, {
    isVue3: boolean;
    abortController: AbortController | undefined;
    latestKeyword: string;
    selectSuggestion: autocomplete.Type.CompanyDataType | undefined;
    suggestionVisible: boolean;
    suggestionType: string;
    suggestions: autocomplete.Type.CompanyDataType[];
    keyboardActiveIndex: number | undefined;
    floatingWidth: string | undefined;
    floatingStyles: CSSProperties;
    clearIcon: string;
    historyClearIcon: string;
    historyItemIcon: string;
}, {
    nativeInputValue(): string;
}, {
    handleFocus(): void;
    handleCalculatePosition(): void;
    handleCancelQuerySuggestion(): void;
    handleQuerySuggestion(value: string): Promise<void>;
    setNativeInputValue(): void;
    handleInput(event: Event): void;
    handleInputClick(): void;
    handleInputChange(event: Event): void;
    handleInputFocus(): void;
    handleInputBlur(): void;
    handleShowHistory(): void;
    clearSuggestion(): void;
    showSuggestion(type?: string): void;
    hideSuggestion(): void;
    handleSubmit(): void;
    handleInputClear(): void;
    handleClickOutside(): void;
    handleKeyDown(event: KeyboardEvent): void;
    handleFillInput(): void;
    handleHistoryClear(): void;
    handleSuggestionClick(company: autocomplete.Type.CompanyDataType): void;
    handleUpdateModelValue(value: string): void;
}, import('vue-demi').ComponentOptionsMixin, import('vue-demi').ComponentOptionsMixin, ("blur" | "change" | "focus" | "input" | "select" | "submit" | "clear" | "modelChange" | "update:modelValue" | "fetch" | "abortFetch" | "dropdownVisibleChange")[], "blur" | "change" | "focus" | "input" | "select" | "submit" | "clear" | "modelChange" | "update:modelValue" | "fetch" | "abortFetch" | "dropdownVisibleChange", import('vue-demi').PublicProps, Readonly<import('vue-demi').ExtractPropTypes<{
    modelValue: {
        type: StringConstructor;
        default: string;
    };
    api: {
        type: PropType<autocomplete.Type.ApiType>;
        default: autocomplete.Type.ApiType;
    };
    queryDelay: {
        type: NumberConstructor;
        default: number;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
    clearable: {
        type: BooleanConstructor;
        default: Boolean;
    };
    backFill: {
        type: BooleanConstructor;
        default: boolean;
    };
    popupAppendToBody: {
        type: BooleanConstructor;
        default: boolean;
    };
    autoFocus: {
        type: BooleanConstructor;
        default: Boolean;
    };
    showSubmitButton: {
        type: BooleanConstructor;
        default: boolean;
    };
    submitButtonLabel: {
        type: StringConstructor;
        default: string;
    };
    offsetTop: {
        type: NumberConstructor;
        default: number;
    };
    autoFlip: {
        type: BooleanConstructor;
        default: boolean;
    };
    historyEnabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    historyType: {
        type: PropType<autocomplete.Type.HistoryType>;
        default: autocomplete.Type.HistoryType;
    };
    historyStorageKey: {
        type: StringConstructor;
        default: string;
    };
    historyClearable: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & {
    onFocus?: ((...args: any[]) => any) | undefined;
    onBlur?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
    onInput?: ((...args: any[]) => any) | undefined;
    onSubmit?: ((...args: any[]) => any) | undefined;
    onSelect?: ((...args: any[]) => any) | undefined;
    onClear?: ((...args: any[]) => any) | undefined;
    onModelChange?: ((...args: any[]) => any) | undefined;
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    onFetch?: ((...args: any[]) => any) | undefined;
    onAbortFetch?: ((...args: any[]) => any) | undefined;
    onDropdownVisibleChange?: ((...args: any[]) => any) | undefined;
}, {
    modelValue: string;
    api: autocomplete.Type.ApiType;
    queryDelay: number;
    placeholder: string;
    clearable: boolean;
    backFill: boolean;
    popupAppendToBody: boolean;
    autoFocus: boolean;
    showSubmitButton: boolean;
    submitButtonLabel: string;
    offsetTop: number;
    autoFlip: boolean;
    historyEnabled: boolean;
    historyType: autocomplete.Type.HistoryType;
    historyStorageKey: string;
    historyClearable: boolean;
}, {}>;
export default _default;
