import type { InjectionKey } from 'vue'; import type { Emitter } from 'mitt'; interface SelectGroupContext { disabled: boolean; } export interface SelectContext { props: { multiple?: boolean; multipleLimit?: number; valueKey?: string; modelValue?: string | number | unknown | unknown[]; popperClass?: string; remote?: boolean; }; selectWrapper: HTMLElement; cachedOptions: Map; hoverIndex: number; optionsCount: number; filteredOptionsCount: number; options: Map; optionsArray: any[]; selected: any | any[]; selectEmitter: Emitter; setSelected(): void; onOptionCreate(vm: SelectOptionProxy): void; onOptionDestroy(key: number | string | Record): void; handleOptionSelect(vm: unknown, byClick: boolean): void; } export declare const selectGroupKey: InjectionKey; export declare const selectKey: InjectionKey; export declare const selectEvents: { queryChange: string; groupQueryChange: string; }; export interface SelectOptionProxy { value: string | number | Record; label: string | number; created: boolean; disabled: boolean; currentLabel: string; itemSelected: boolean; isDisabled: boolean; select: SelectContext; hoverItem: () => void; visible: boolean; hover: boolean; selectOptionClick: () => void; } export {};