import { SelectProps } from 'element-plus'; import { VNode } from 'vue'; export interface XSelectEvents { blur: [e: FocusEvent]; change: [value: V]; focus: [e: FocusEvent]; } export interface XSelectOptionProps { disabled?: boolean; label?: number | string; render?: () => VNode; value: V; } export interface XSelectProps { allowCreate?: SelectProps['allowCreate']; clearable?: SelectProps['clearable']; collapseTags?: SelectProps['collapseTags']; collapseTagsTooltip?: SelectProps['collapseTagsTooltip']; data?: D[]; defaultFirstOption?: SelectProps['defaultFirstOption']; disabled?: SelectProps['disabled']; factory: (option: D) => XSelectOptionProps; filterable?: SelectProps['filterable']; identify?: (value: V) => number | string; loading?: SelectProps['loading']; multiple?: SelectProps['multiple']; placeholder?: SelectProps['placeholder']; remote?: SelectProps['remote']; remoteMethod?: (query: string) => void; size?: SelectProps['size']; supplement?: (lacks: V[]) => D[] | PromiseLike; } declare const __VLS_export: (__VLS_props: NonNullable>["props"], __VLS_ctx?: __VLS_PrettifyLocal>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable>["expose"], __VLS_setup?: Promise<{ props: import('vue').PublicProps & __VLS_PrettifyLocal<(XSelectProps & { modelValue?: MV; }) & { "onUpdate:modelValue"?: ((value: MV | undefined) => any) | undefined; onFocus?: ((e: FocusEvent) => any) | undefined; onBlur?: ((e: FocusEvent) => any) | undefined; onChange?: ((value: V) => any) | undefined; }> & (typeof globalThis extends { __VLS_PROPS_FALLBACK: infer P; } ? P : {}); expose: (exposed: {}) => void; attrs: any; slots: {}; emit: (((evt: "focus", e: FocusEvent) => void) & ((evt: "blur", e: FocusEvent) => void) & ((evt: "change", value: V) => void)) & ((event: "update:modelValue", value: MV | undefined) => void); }>) => import('vue').VNode & { __ctx?: NonNullable>; }; declare const _default: typeof __VLS_export; export default _default; type __VLS_PrettifyLocal = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};