import { PropType } from 'vue';
import { TriggerProps } from '../trigger';
import { FilterOption, SelectOptionData, SelectOptionGroup } from '../select/interface';
import { VirtualListProps } from '../_components/virtual-list-v2/interface';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    modelValue: {
        type: StringConstructor;
        default: undefined;
    };
    defaultValue: {
        type: StringConstructor;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    data: {
        type: PropType<(string | number | SelectOptionData | SelectOptionGroup)[]>;
        default: () => never[];
    };
    popupContainer: {
        type: PropType<string | HTMLElement | null | undefined>;
    };
    strict: {
        type: BooleanConstructor;
        default: boolean;
    };
    filterOption: {
        type: PropType<FilterOption>;
        default: boolean;
    };
    triggerProps: {
        type: PropType<TriggerProps>;
    };
    allowClear: {
        type: BooleanConstructor;
        default: boolean;
    };
    virtualListProps: {
        type: PropType<VirtualListProps>;
    };
}>, {
    inputRef: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
    render: () => import("vue/jsx-runtime").JSX.Element;
}, {}, {}, {
    focus(): void;
    blur(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: string) => true;
    change: (value: string) => true;
    search: (value: string) => true;
    select: (value: string) => true;
    clear: (ev: Event) => true;
    dropdownScroll: (ev: Event) => true;
    dropdownReachBottom: (ev: Event) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    modelValue: {
        type: StringConstructor;
        default: undefined;
    };
    defaultValue: {
        type: StringConstructor;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    data: {
        type: PropType<(string | number | SelectOptionData | SelectOptionGroup)[]>;
        default: () => never[];
    };
    popupContainer: {
        type: PropType<string | HTMLElement | null | undefined>;
    };
    strict: {
        type: BooleanConstructor;
        default: boolean;
    };
    filterOption: {
        type: PropType<FilterOption>;
        default: boolean;
    };
    triggerProps: {
        type: PropType<TriggerProps>;
    };
    allowClear: {
        type: BooleanConstructor;
        default: boolean;
    };
    virtualListProps: {
        type: PropType<VirtualListProps>;
    };
}>> & Readonly<{
    onClear?: ((ev: Event) => any) | undefined;
    onChange?: ((value: string) => any) | undefined;
    "onUpdate:modelValue"?: ((value: string) => any) | undefined;
    onSelect?: ((value: string) => any) | undefined;
    onSearch?: ((value: string) => any) | undefined;
    onDropdownScroll?: ((ev: Event) => any) | undefined;
    onDropdownReachBottom?: ((ev: Event) => any) | undefined;
}>, {
    disabled: boolean;
    allowClear: boolean;
    defaultValue: string;
    modelValue: string;
    data: (string | number | SelectOptionData | SelectOptionGroup)[];
    strict: boolean;
    filterOption: FilterOption;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
