import { SelectValue } from './type';
import { PopupVisibleChangeContext } from '../popup';
declare const _default: import("vue").DefineComponent<{
    autoWidth: BooleanConstructor;
    autofocus: BooleanConstructor;
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    collapsedItems: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: import("./type").SelectOption[];
            collapsedSelectedItems: import("./type").SelectOption[];
            count: number;
        }) => import("..").SlotReturnValue>;
    };
    creatable: BooleanConstructor;
    disabled: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    filter: {
        type: import("vue").PropType<(filterWords: string, option: import("./type").SelectOption) => boolean | Promise<boolean>>;
    };
    filterable: BooleanConstructor;
    inputProps: {
        type: import("vue").PropType<import("..").TdInputProps>;
    };
    inputValue: {
        type: import("vue").PropType<string>;
        default: string;
    };
    defaultInputValue: {
        type: import("vue").PropType<string>;
    };
    keys: {
        type: import("vue").PropType<import("..").KeysType>;
    };
    label: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    loading: BooleanConstructor;
    loadingText: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    minCollapsedNum: {
        type: NumberConstructor;
        default: number;
    };
    multiple: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("./type").SelectOption[]>;
    };
    panelBottomContent: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    panelTopContent: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    placeholder: {
        type: StringConstructor;
        default: any;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup").TdPopupProps>;
    };
    popupVisible: {
        type: BooleanConstructor;
        default: any;
    };
    defaultPopupVisible: BooleanConstructor;
    prefixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("..").SlotReturnValue>;
    };
    readonly: BooleanConstructor;
    reserveKeyword: BooleanConstructor;
    scroll: {
        type: import("vue").PropType<import("..").TScroll>;
    };
    selectInputProps: {
        type: import("vue").PropType<import("../select-input").TdSelectInputProps>;
    };
    showArrow: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<import("..").SizeEnum>;
        default: import("..").SizeEnum;
        validator(val: import("..").SizeEnum): boolean;
    };
    status: {
        type: import("vue").PropType<"error" | "default" | "success" | "warning">;
        default: "error" | "default" | "success" | "warning";
        validator(val: "error" | "default" | "success" | "warning"): boolean;
    };
    suffix: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    suffixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("..").SlotReturnValue>;
    };
    tagInputProps: {
        type: import("vue").PropType<import("..").TdTagInputProps>;
    };
    tagProps: {
        type: import("vue").PropType<import("..").TdTagProps>;
    };
    tips: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    value: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: SelectValue<import("./type").SelectOption>;
    };
    modelValue: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: SelectValue<import("./type").SelectOption>;
    };
    defaultValue: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: any;
    };
    valueDisplay: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h, props: {
            value: SelectValue<import("./type").SelectOption>;
            onClose: (index: number) => void;
            displayValue?: SelectValue<import("./type").SelectOption>;
        }) => import("..").SlotReturnValue)>;
    };
    valueType: {
        type: import("vue").PropType<"object" | "value">;
        default: "object" | "value";
        validator(val: "object" | "value"): boolean;
    };
    onBlur: import("vue").PropType<(context: {
        value: SelectValue<import("./type").SelectOption>;
        e: FocusEvent | KeyboardEvent;
    }) => void>;
    onChange: import("vue").PropType<(value: SelectValue<import("./type").SelectOption>, context: {
        option?: import("./type").SelectOption;
        selectedOptions: import("./type").SelectOption[];
        trigger: import("./type").SelectValueChangeTrigger;
        e?: MouseEvent | KeyboardEvent;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onCreate: import("vue").PropType<(value: string | number) => void>;
    onEnter: import("vue").PropType<(context: {
        inputValue: string;
        e: KeyboardEvent;
        value: SelectValue<import("./type").SelectOption>;
    }) => void>;
    onFocus: import("vue").PropType<(context: {
        value: SelectValue<import("./type").SelectOption>;
        e: FocusEvent | KeyboardEvent;
    }) => void>;
    onInputChange: import("vue").PropType<(value: string, context?: import("../select-input").SelectInputValueChangeContext) => void>;
    onPopupVisibleChange: import("vue").PropType<(visible: boolean, context: PopupVisibleChangeContext) => void>;
    onRemove: import("vue").PropType<(options: import("./type").SelectRemoveContext<import("./type").SelectOption>) => void>;
    onSearch: import("vue").PropType<(filterWords: string, context: {
        e: KeyboardEvent;
    }) => void>;
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    autoWidth: BooleanConstructor;
    autofocus: BooleanConstructor;
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    collapsedItems: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: import("./type").SelectOption[];
            collapsedSelectedItems: import("./type").SelectOption[];
            count: number;
        }) => import("..").SlotReturnValue>;
    };
    creatable: BooleanConstructor;
    disabled: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    filter: {
        type: import("vue").PropType<(filterWords: string, option: import("./type").SelectOption) => boolean | Promise<boolean>>;
    };
    filterable: BooleanConstructor;
    inputProps: {
        type: import("vue").PropType<import("..").TdInputProps>;
    };
    inputValue: {
        type: import("vue").PropType<string>;
        default: string;
    };
    defaultInputValue: {
        type: import("vue").PropType<string>;
    };
    keys: {
        type: import("vue").PropType<import("..").KeysType>;
    };
    label: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    loading: BooleanConstructor;
    loadingText: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    minCollapsedNum: {
        type: NumberConstructor;
        default: number;
    };
    multiple: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("./type").SelectOption[]>;
    };
    panelBottomContent: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    panelTopContent: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    placeholder: {
        type: StringConstructor;
        default: any;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup").TdPopupProps>;
    };
    popupVisible: {
        type: BooleanConstructor;
        default: any;
    };
    defaultPopupVisible: BooleanConstructor;
    prefixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("..").SlotReturnValue>;
    };
    readonly: BooleanConstructor;
    reserveKeyword: BooleanConstructor;
    scroll: {
        type: import("vue").PropType<import("..").TScroll>;
    };
    selectInputProps: {
        type: import("vue").PropType<import("../select-input").TdSelectInputProps>;
    };
    showArrow: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<import("..").SizeEnum>;
        default: import("..").SizeEnum;
        validator(val: import("..").SizeEnum): boolean;
    };
    status: {
        type: import("vue").PropType<"error" | "default" | "success" | "warning">;
        default: "error" | "default" | "success" | "warning";
        validator(val: "error" | "default" | "success" | "warning"): boolean;
    };
    suffix: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    suffixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("..").SlotReturnValue>;
    };
    tagInputProps: {
        type: import("vue").PropType<import("..").TdTagInputProps>;
    };
    tagProps: {
        type: import("vue").PropType<import("..").TdTagProps>;
    };
    tips: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    value: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: SelectValue<import("./type").SelectOption>;
    };
    modelValue: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: SelectValue<import("./type").SelectOption>;
    };
    defaultValue: {
        type: import("vue").PropType<SelectValue<import("./type").SelectOption>>;
        default: any;
    };
    valueDisplay: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h, props: {
            value: SelectValue<import("./type").SelectOption>;
            onClose: (index: number) => void;
            displayValue?: SelectValue<import("./type").SelectOption>;
        }) => import("..").SlotReturnValue)>;
    };
    valueType: {
        type: import("vue").PropType<"object" | "value">;
        default: "object" | "value";
        validator(val: "object" | "value"): boolean;
    };
    onBlur: import("vue").PropType<(context: {
        value: SelectValue<import("./type").SelectOption>;
        e: FocusEvent | KeyboardEvent;
    }) => void>;
    onChange: import("vue").PropType<(value: SelectValue<import("./type").SelectOption>, context: {
        option?: import("./type").SelectOption;
        selectedOptions: import("./type").SelectOption[];
        trigger: import("./type").SelectValueChangeTrigger;
        e?: MouseEvent | KeyboardEvent;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onCreate: import("vue").PropType<(value: string | number) => void>;
    onEnter: import("vue").PropType<(context: {
        inputValue: string;
        e: KeyboardEvent;
        value: SelectValue<import("./type").SelectOption>;
    }) => void>;
    onFocus: import("vue").PropType<(context: {
        value: SelectValue<import("./type").SelectOption>;
        e: FocusEvent | KeyboardEvent;
    }) => void>;
    onInputChange: import("vue").PropType<(value: string, context?: import("../select-input").SelectInputValueChangeContext) => void>;
    onPopupVisibleChange: import("vue").PropType<(visible: boolean, context: PopupVisibleChangeContext) => void>;
    onRemove: import("vue").PropType<(options: import("./type").SelectRemoveContext<import("./type").SelectOption>) => void>;
    onSearch: import("vue").PropType<(filterWords: string, context: {
        e: KeyboardEvent;
    }) => void>;
}>>, {
    max: number;
    value: string | number | boolean | import("..").PlainObject | import("./type").TdOptionProps | import("./type").SelectOptionGroup | SelectValue<import("./type").SelectOption>[];
    loading: boolean;
    autofocus: boolean;
    disabled: boolean;
    multiple: boolean;
    size: import("..").SizeEnum;
    readonly: boolean;
    status: "error" | "default" | "success" | "warning";
    placeholder: string;
    modelValue: string | number | boolean | import("..").PlainObject | import("./type").TdOptionProps | import("./type").SelectOptionGroup | SelectValue<import("./type").SelectOption>[];
    defaultValue: any;
    showArrow: boolean;
    autoWidth: boolean;
    clearable: boolean;
    inputValue: string;
    minCollapsedNum: number;
    borderless: boolean;
    popupVisible: boolean;
    defaultPopupVisible: boolean;
    reserveKeyword: boolean;
    valueType: "object" | "value";
    creatable: boolean;
    filterable: boolean;
}, {}>;
export default _default;
