{"version":3,"file":"token.mjs","sources":["../../../../../../packages/components/select/src/token.ts"],"sourcesContent":["import type { InjectionKey, Ref } from 'vue'\n\ninterface SelectGroupContext {\n  disabled: boolean\n}\n\nexport interface QueryChangeCtx {\n  query: string\n}\n\nexport interface SelectContext {\n  props: {\n    multiple?: boolean\n    multipleLimit?: number\n    valueKey?: string\n    modelValue?: string | number | unknown | unknown[]\n    popperClass?: string\n    remote?: boolean\n    fitInputWidth?: boolean\n  }\n  queryChange: Ref<QueryChangeCtx>\n  groupQueryChange: Ref<string>\n  selectWrapper: HTMLElement\n  cachedOptions: Map<any, any>\n  hoverIndex: number\n  optionsCount: number\n  filteredOptionsCount: number\n  options: Map<any, any>\n  optionsArray: any[]\n  selected: any | any[]\n  setSelected(): void\n  onOptionCreate(vm: SelectOptionProxy): void\n  onOptionDestroy(key: number | string | Record<string, any>): void\n  handleOptionSelect(vm: unknown, byClick: boolean): void\n}\n\n// For individual build sharing injection key, we had to make `Symbol` to string\nexport const selectGroupKey =\n  'ElSelectGroup' as unknown as InjectionKey<SelectGroupContext>\n\nexport const selectKey = 'ElSelect' as unknown as InjectionKey<SelectContext>\n\nexport interface SelectOptionProxy {\n  value: string | number | Record<string, string>\n  label: string | number\n  created: boolean\n  disabled: boolean\n  currentLabel: string\n  itemSelected: boolean\n  isDisabled: boolean\n  select: SelectContext\n  hoverItem: () => void\n  visible: boolean\n  hover: boolean\n  selectOptionClick: () => void\n}\n"],"names":[],"mappings":"AAAY,MAAC,cAAc,GAAG,gBAAgB;AAClC,MAAC,SAAS,GAAG;;;;"}