import { SelectOption, SelectGroup } from './select'; declare function __VLS_template(): { attrs: Partial<{}>; slots: { prefix?(_: {}): any; tag?(_: { key: any; tag: { value: any; label: string; }; remove: () => void; }): any; suffix?(_: {}): any; option?(_: { option: any; label: string; value: any; selected: boolean; }): any; option?(_: { option: any; label: string; value: any; selected: boolean; }): any; empty?(_: {}): any; }; refs: { triggerRef: HTMLDivElement; searchRef: HTMLInputElement; panelRef: HTMLDivElement; listRef: HTMLDivElement; }; rootEl: HTMLDivElement; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent; readonly default: null; }; readonly options: { readonly type: import('vue').PropType<(SelectOption | SelectGroup | string)[]>; readonly default: () => never[]; }; readonly placeholder: { readonly type: StringConstructor; readonly default: "Select..."; }; readonly disabled: { readonly type: BooleanConstructor; readonly default: false; }; readonly clearable: { readonly type: BooleanConstructor; readonly default: false; }; readonly searchable: { readonly type: BooleanConstructor; readonly default: false; }; readonly multiple: { readonly type: BooleanConstructor; readonly default: false; }; readonly collapseTags: { readonly type: BooleanConstructor; readonly default: true; }; readonly maxTags: { readonly type: NumberConstructor; readonly default: 1; }; readonly size: { readonly type: import('vue').PropType; readonly default: "default"; }; readonly emptyText: { readonly type: StringConstructor; readonly default: "No options"; }; readonly labelField: { readonly type: StringConstructor; readonly default: "label"; }; readonly valueField: { readonly type: StringConstructor; readonly default: "value"; }; readonly fetchOptions: { readonly type: import('vue').PropType<(query: string, page: number) => Promise<(SelectOption | string)[]>>; readonly default: undefined; }; readonly loading: { readonly type: BooleanConstructor; readonly default: false; }; readonly creatable: { readonly type: BooleanConstructor; readonly default: false; }; readonly closeOnSelect: { readonly type: BooleanConstructor; readonly default: undefined; }; readonly reserveKeyword: { readonly type: BooleanConstructor; readonly default: false; }; readonly defaultFirstOption: { readonly type: BooleanConstructor; readonly default: false; }; readonly debounce: { readonly type: NumberConstructor; readonly default: 0; }; readonly maxSelection: { readonly type: NumberConstructor; readonly default: 0; }; readonly pageCount: { readonly type: NumberConstructor; readonly default: 0; }; readonly scrollDistance: { readonly type: NumberConstructor; readonly default: 20; }; readonly destroyOnClose: { readonly type: BooleanConstructor; readonly default: false; }; readonly prefixIcon: { readonly type: import('vue').PropType; readonly default: undefined; }; readonly triggerClass: { readonly type: import('vue').PropType>; readonly default: ""; }; readonly triggerStyle: { readonly type: import('vue').PropType>; readonly default: undefined; }; readonly teleport: { readonly type: import('vue').PropType; readonly default: false; }; }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { search: (query: string) => any; "update:modelValue": (value: any) => any; focus: (e: FocusEvent) => any; blur: (e: FocusEvent) => any; change: (value: any) => any; create: (value: string) => any; loadMore: (page: number) => any; }, string, import('vue').PublicProps, Readonly; readonly default: null; }; readonly options: { readonly type: import('vue').PropType<(SelectOption | SelectGroup | string)[]>; readonly default: () => never[]; }; readonly placeholder: { readonly type: StringConstructor; readonly default: "Select..."; }; readonly disabled: { readonly type: BooleanConstructor; readonly default: false; }; readonly clearable: { readonly type: BooleanConstructor; readonly default: false; }; readonly searchable: { readonly type: BooleanConstructor; readonly default: false; }; readonly multiple: { readonly type: BooleanConstructor; readonly default: false; }; readonly collapseTags: { readonly type: BooleanConstructor; readonly default: true; }; readonly maxTags: { readonly type: NumberConstructor; readonly default: 1; }; readonly size: { readonly type: import('vue').PropType; readonly default: "default"; }; readonly emptyText: { readonly type: StringConstructor; readonly default: "No options"; }; readonly labelField: { readonly type: StringConstructor; readonly default: "label"; }; readonly valueField: { readonly type: StringConstructor; readonly default: "value"; }; readonly fetchOptions: { readonly type: import('vue').PropType<(query: string, page: number) => Promise<(SelectOption | string)[]>>; readonly default: undefined; }; readonly loading: { readonly type: BooleanConstructor; readonly default: false; }; readonly creatable: { readonly type: BooleanConstructor; readonly default: false; }; readonly closeOnSelect: { readonly type: BooleanConstructor; readonly default: undefined; }; readonly reserveKeyword: { readonly type: BooleanConstructor; readonly default: false; }; readonly defaultFirstOption: { readonly type: BooleanConstructor; readonly default: false; }; readonly debounce: { readonly type: NumberConstructor; readonly default: 0; }; readonly maxSelection: { readonly type: NumberConstructor; readonly default: 0; }; readonly pageCount: { readonly type: NumberConstructor; readonly default: 0; }; readonly scrollDistance: { readonly type: NumberConstructor; readonly default: 20; }; readonly destroyOnClose: { readonly type: BooleanConstructor; readonly default: false; }; readonly prefixIcon: { readonly type: import('vue').PropType; readonly default: undefined; }; readonly triggerClass: { readonly type: import('vue').PropType>; readonly default: ""; }; readonly triggerStyle: { readonly type: import('vue').PropType>; readonly default: undefined; }; readonly teleport: { readonly type: import('vue').PropType; readonly default: false; }; }>> & Readonly<{ onSearch?: ((query: string) => any) | undefined; "onUpdate:modelValue"?: ((value: any) => any) | undefined; onFocus?: ((e: FocusEvent) => any) | undefined; onBlur?: ((e: FocusEvent) => any) | undefined; onChange?: ((value: any) => any) | undefined; onCreate?: ((value: string) => any) | undefined; onLoadMore?: ((page: number) => any) | undefined; }>, { readonly size: import('./select').SelectSize; readonly disabled: boolean; readonly loading: boolean; readonly modelValue: string | number | boolean | (string | number | boolean)[] | null; readonly placeholder: string; readonly clearable: boolean; readonly debounce: number; readonly destroyOnClose: boolean; readonly options: (string | SelectOption | SelectGroup)[]; readonly emptyText: string; readonly labelField: string; readonly valueField: string; readonly triggerClass: string | string[] | Record; readonly triggerStyle: Record; readonly collapseTags: boolean; readonly maxTags: number; readonly searchable: boolean; readonly multiple: boolean; readonly fetchOptions: (query: string, page: number) => Promise<(SelectOption | string)[]>; readonly creatable: boolean; readonly closeOnSelect: boolean; readonly reserveKeyword: boolean; readonly defaultFirstOption: boolean; readonly maxSelection: number; readonly pageCount: number; readonly scrollDistance: number; readonly prefixIcon: import('vue').Component; readonly teleport: string | boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, { triggerRef: HTMLDivElement; searchRef: HTMLInputElement; panelRef: HTMLDivElement; listRef: HTMLDivElement; }, HTMLDivElement>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };