import { EnabledItemProvider, LabelProvider, MultiLangText } from '../../model/CommonTypes'; declare const _default: (__VLS_props: { maxHeight?: string | undefined; labelProvider: LabelProvider; items: T[] | Promise; valueProvider: (item: T) => V; enabledItemProvider?: EnabledItemProvider | undefined; baseElement: HTMLElement | null; popupDirection?: "right" | "down" | "up" | "auto-down" | "auto-right" | undefined; popupAlign?: "center" | "left" | "right" | "auto" | undefined; readonly onRequestClose?: (() => any) | undefined; readonly onItemSelected?: ((item?: T | undefined) => any) | undefined; initialItem?: T | undefined; selectedItems?: T[] | undefined; allowNull?: boolean | undefined; nullLabel?: MultiLangText | undefined; showSearch?: boolean | "auto" | undefined; } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, __VLS_ctx?: { attrs: any; slots: {}; emit: { (e: 'itemSelected', item?: T): void; (e: 'requestClose'): void; }; } | undefined, __VLS_expose?: ((exposed: import('vue').ShallowUnwrapRef<{ handleKeyboard: (event: KeyboardEvent) => void; }>) => void) | undefined, __VLS_setup?: Promise<{ props: { maxHeight?: string | undefined; labelProvider: LabelProvider; items: T[] | Promise; valueProvider: (item: T) => V; enabledItemProvider?: EnabledItemProvider | undefined; baseElement: HTMLElement | null; popupDirection?: "right" | "down" | "up" | "auto-down" | "auto-right" | undefined; popupAlign?: "center" | "left" | "right" | "auto" | undefined; readonly onRequestClose?: (() => any) | undefined; readonly onItemSelected?: ((item?: T | undefined) => any) | undefined; initialItem?: T | undefined; selectedItems?: T[] | undefined; allowNull?: boolean | undefined; nullLabel?: MultiLangText | undefined; showSearch?: boolean | "auto" | undefined; } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps; expose(exposed: import('vue').ShallowUnwrapRef<{ handleKeyboard: (event: KeyboardEvent) => void; }>): void; attrs: any; slots: {}; emit: { (e: 'itemSelected', item?: T): void; (e: 'requestClose'): void; }; }>) => import('vue').VNode & { __ctx?: { props: { maxHeight?: string | undefined; labelProvider: LabelProvider; items: T[] | Promise; valueProvider: (item: T) => V; enabledItemProvider?: EnabledItemProvider | undefined; baseElement: HTMLElement | null; popupDirection?: "right" | "down" | "up" | "auto-down" | "auto-right" | undefined; popupAlign?: "center" | "left" | "right" | "auto" | undefined; readonly onRequestClose?: (() => any) | undefined; readonly onItemSelected?: ((item?: T | undefined) => any) | undefined; initialItem?: T | undefined; selectedItems?: T[] | undefined; allowNull?: boolean | undefined; nullLabel?: MultiLangText | undefined; showSearch?: boolean | "auto" | undefined; } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps; expose(exposed: import('vue').ShallowUnwrapRef<{ handleKeyboard: (event: KeyboardEvent) => void; }>): void; attrs: any; slots: {}; emit: { (e: 'itemSelected', item?: T): void; (e: 'requestClose'): void; }; } | undefined; }; export default _default; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {};