import { SFCWithInstall } from "../../../utils/vue/typescript.js"; import { EpPropFinalized, EpPropMergeType } from "../../../utils/vue/props/types.js"; import { Arrayable } from "../../../utils/typescript.js"; import "../../../utils/index.js"; import { PopperEffect, PopperInstance, roleTypes } from "../../popper/src/popper.js"; import { TagProps } from "../../tag/src/tag.js"; import "../../tag/index.js"; import { TooltipTriggerType } from "../../tooltip/src/trigger.js"; import { TooltipContentInstance } from "../../tooltip/src/content.js"; import { TooltipInstance, UseTooltipProps } from "../../tooltip/src/tooltip.js"; import "../../tooltip/index.js"; import { ScrollbarDirection, ScrollbarInstance, ScrollbarProps } from "../../scrollbar/src/scrollbar.js"; import "../../scrollbar/index.js"; import { IconProps } from "../../icon/src/icon.js"; import "../../icon/index.js"; import { Option } from "../../select-v2/src/select.types.js"; import { Props } from "../../select-v2/src/useProps.js"; import { TagTooltipProps } from "./select.js"; import { OptionBasic, OptionPublicInstance, OptionValue, SelectContext, SelectStates } from "./type.js"; import "../../../index.js"; import { Options, Placement } from "../../popper/index.js"; import * as vue from "vue"; import { VNode } from "vue"; import * as _vueuse_core0 from "@vueuse/core"; //#region ../../packages/components/select/src/select.vue.d.ts declare const _default: typeof __VLS_export; declare const __VLS_export: vue.DefineComponent string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown, undefined, boolean>; name: StringConstructor; id: StringConstructor; modelValue: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null) | (((new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null)) | null)[], unknown, unknown, undefined, boolean>; autocomplete: EpPropFinalized; automaticDropdown: BooleanConstructor; size: { readonly type: vue.PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, string, boolean>; disabled: EpPropFinalized; clearable: BooleanConstructor; filterable: BooleanConstructor; allowCreate: BooleanConstructor; loading: BooleanConstructor; popperClass: EpPropFinalized; popperStyle: { readonly type: vue.PropType string | vue.CSSProperties) | (() => string | vue.CSSProperties) | (((new (...args: any[]) => string | vue.CSSProperties) | (() => string | vue.CSSProperties)) | null)[], unknown, unknown>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; popperOptions: EpPropFinalized<(new (...args: any[]) => Partial) | (() => Partial) | (((new (...args: any[]) => Partial) | (() => Partial)) | null)[], unknown, unknown, () => Partial, boolean>; remote: BooleanConstructor; debounce: EpPropFinalized; loadingText: StringConstructor; noMatchText: StringConstructor; noDataText: StringConstructor; remoteMethod: { readonly type: vue.PropType<(query: string) => void>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; filterMethod: { readonly type: vue.PropType<(query: string) => void>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; multiple: BooleanConstructor; multipleLimit: EpPropFinalized; placeholder: { readonly type: vue.PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; defaultFirstOption: BooleanConstructor; reserveKeyword: EpPropFinalized; valueKey: EpPropFinalized; collapseTags: BooleanConstructor; collapseTagsTooltip: BooleanConstructor; tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | (((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps)) | null)[], unknown, unknown, () => {}, boolean>; maxCollapseTags: EpPropFinalized; teleported: EpPropFinalized; persistent: EpPropFinalized; clearIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>; fitInputWidth: BooleanConstructor; suffixIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>; tagType: { default: string; type: vue.PropType>; required: false; validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; tagEffect: { default: string; type: vue.PropType>; required: false; validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; validateEvent: EpPropFinalized; remoteShowSuffix: BooleanConstructor; showArrow: EpPropFinalized; offset: EpPropFinalized; placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown, string, boolean>; fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, string[], boolean>; tabindex: EpPropFinalized<(StringConstructor | NumberConstructor)[], unknown, unknown, number, boolean>; appendTo: { readonly type: vue.PropType string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>) | (((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>)) | null)[], unknown, unknown>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; options: { readonly type: vue.PropType[]>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required, boolean>; }>, { modelValue: vue.ComputedRef | null | undefined>; selectedLabel: vue.ComputedRef; calculatorRef: vue.ShallowRef; inputStyle: vue.ComputedRef<{ minWidth: string; }>; getLabel: (option: Option) => any; getValue: (option: Option) => any; getOptions: (option: Option) => any; getDisabled: (option: Option) => any; getOptionProps: (option: Record) => { label: any; value: any; disabled: any; }; inputId: vue.Ref; contentId: vue.Ref; nsSelect: { namespace: vue.ComputedRef; b: (blockSuffix?: string) => string; e: (element?: string) => string; m: (modifier?: string) => string; be: (blockSuffix?: string, element?: string) => string; em: (element?: string, modifier?: string) => string; bm: (blockSuffix?: string, modifier?: string) => string; bem: (blockSuffix?: string, element?: string, modifier?: string) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; nsInput: { namespace: vue.ComputedRef; b: (blockSuffix?: string) => string; e: (element?: string) => string; m: (modifier?: string) => string; be: (blockSuffix?: string, element?: string) => string; em: (element?: string, modifier?: string) => string; bm: (blockSuffix?: string, modifier?: string) => string; bem: (blockSuffix?: string, element?: string, modifier?: string) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; states: { inputValue: string; options: Map, OptionPublicInstance> & Omit, OptionPublicInstance>, keyof Map>; cachedOptions: Map, OptionPublicInstance> & Omit, OptionPublicInstance>, keyof Map>; optionValues: OptionValue[]; selected: { index: number; value: OptionValue; currentLabel: OptionPublicInstance["currentLabel"]; isDisabled?: OptionPublicInstance["isDisabled"] | undefined; }[]; hoveringIndex: number; inputHovering: boolean; selectionWidth: number; collapseItemWidth: number; previousQuery: string | null; selectedLabel: string; menuVisibleOnFocus: boolean; isBeforeHide: boolean; }; isFocused: vue.Ref; expanded: vue.Ref; optionsArray: vue.ComputedRef; hoverOption: vue.Ref; selectSize: vue.ComputedRef<"" | "default" | "small" | "large">; filteredOptionsCount: vue.ComputedRef; updateTooltip: () => void; updateTagTooltip: () => void; debouncedOnInputChange: _vueuse_core0.PromisifyFn<() => void>; onInput: (event: Event) => void; deletePrevTag: (e: KeyboardEvent) => void; deleteTag: (event: MouseEvent, tag: OptionBasic) => void; deleteSelected: (event: Event) => void; handleOptionSelect: (option: OptionPublicInstance) => void; scrollToOption: (option: OptionPublicInstance | OptionPublicInstance[] | SelectStates["selected"]) => void; hasModelValue: vue.ComputedRef; shouldShowPlaceholder: vue.ComputedRef; currentPlaceholder: vue.ComputedRef; mouseEnterEventName: vue.ComputedRef<"mouseenter" | null>; needStatusIcon: vue.ComputedRef; showClearBtn: vue.ComputedRef; iconComponent: vue.ComputedRef (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown>>; iconReverse: vue.ComputedRef; validateState: vue.ComputedRef<"" | "error" | "success" | "validating">; validateIcon: vue.ComputedRef<"" | vue.Component>; showNewOption: vue.ComputedRef; updateOptions: () => void; collapseTagSize: vue.ComputedRef<"default" | "small">; setSelected: () => void; selectDisabled: vue.ComputedRef; emptyText: vue.ComputedRef; handleCompositionStart: (event: CompositionEvent) => void; handleCompositionUpdate: (event: CompositionEvent) => void; handleCompositionEnd: (event: CompositionEvent) => void; handleKeydown: (e: KeyboardEvent) => void; onOptionCreate: (vm: OptionPublicInstance) => void; onOptionDestroy: (key: OptionValue, vm: OptionPublicInstance) => void; handleMenuEnter: () => void; focus: () => void; blur: () => void; handleClearClick: (event: Event) => void; handleClickOutside: (event: Event) => void; handleEsc: () => void; toggleMenu: (event?: Event) => void; selectOption: () => void; getValueKey: (item: OptionPublicInstance | SelectStates["selected"][0]) => any; navigateOptions: (direction: "prev" | "next") => void; dropdownMenuVisible: vue.WritableComputedRef; showTagList: vue.ComputedRef<{ index: number; value: OptionValue; currentLabel: OptionPublicInstance["currentLabel"]; isDisabled?: OptionPublicInstance["isDisabled"] | undefined; }[]>; collapseTagList: vue.ComputedRef<{ index: number; value: OptionValue; currentLabel: OptionPublicInstance["currentLabel"]; isDisabled?: OptionPublicInstance["isDisabled"] | undefined; }[]>; popupScroll: (data: { scrollTop: number; scrollLeft: number; }) => void; getOption: (value: OptionValue) => { index: number; value: EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>; currentLabel: any; } | { index: number; value: EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>; currentLabel: string | number | boolean; readonly isDisabled: boolean; }; tagStyle: vue.ComputedRef<{ maxWidth: string; }>; collapseTagStyle: vue.ComputedRef<{ maxWidth: string; }>; popperRef: vue.ComputedRef; inputRef: vue.Ref; tooltipRef: vue.Ref; tagTooltipRef: vue.Ref; prefixRef: vue.Ref; suffixRef: vue.Ref; selectRef: vue.Ref; wrapperRef: vue.ShallowRef; selectionRef: vue.Ref; scrollbarRef: vue.Ref; menuRef: vue.Ref; tagMenuRef: vue.Ref; collapseItemRef: vue.Ref; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, ("blur" | "change" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag" | "popup-scroll")[], "blur" | "change" | "focus" | "update:modelValue" | "clear" | "visible-change" | "remove-tag" | "popup-scroll", vue.PublicProps, Readonly string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown, undefined, boolean>; name: StringConstructor; id: StringConstructor; modelValue: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null) | (((new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null)) | null)[], unknown, unknown, undefined, boolean>; autocomplete: EpPropFinalized; automaticDropdown: BooleanConstructor; size: { readonly type: vue.PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, string, boolean>; disabled: EpPropFinalized; clearable: BooleanConstructor; filterable: BooleanConstructor; allowCreate: BooleanConstructor; loading: BooleanConstructor; popperClass: EpPropFinalized; popperStyle: { readonly type: vue.PropType string | vue.CSSProperties) | (() => string | vue.CSSProperties) | (((new (...args: any[]) => string | vue.CSSProperties) | (() => string | vue.CSSProperties)) | null)[], unknown, unknown>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; popperOptions: EpPropFinalized<(new (...args: any[]) => Partial) | (() => Partial) | (((new (...args: any[]) => Partial) | (() => Partial)) | null)[], unknown, unknown, () => Partial, boolean>; remote: BooleanConstructor; debounce: EpPropFinalized; loadingText: StringConstructor; noMatchText: StringConstructor; noDataText: StringConstructor; remoteMethod: { readonly type: vue.PropType<(query: string) => void>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; filterMethod: { readonly type: vue.PropType<(query: string) => void>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; multiple: BooleanConstructor; multipleLimit: EpPropFinalized; placeholder: { readonly type: vue.PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; defaultFirstOption: BooleanConstructor; reserveKeyword: EpPropFinalized; valueKey: EpPropFinalized; collapseTags: BooleanConstructor; collapseTagsTooltip: BooleanConstructor; tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | (((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps)) | null)[], unknown, unknown, () => {}, boolean>; maxCollapseTags: EpPropFinalized; teleported: EpPropFinalized; persistent: EpPropFinalized; clearIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>; fitInputWidth: BooleanConstructor; suffixIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>; tagType: { default: string; type: vue.PropType>; required: false; validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; tagEffect: { default: string; type: vue.PropType>; required: false; validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; validateEvent: EpPropFinalized; remoteShowSuffix: BooleanConstructor; showArrow: EpPropFinalized; offset: EpPropFinalized; placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown, string, boolean>; fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, string[], boolean>; tabindex: EpPropFinalized<(StringConstructor | NumberConstructor)[], unknown, unknown, number, boolean>; appendTo: { readonly type: vue.PropType string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>) | (((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>)) | null)[], unknown, unknown>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; options: { readonly type: vue.PropType[]>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required, boolean>; }>> & Readonly<{ onChange?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onFocus?: ((...args: any[]) => any) | undefined; onBlur?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; "onVisible-change"?: ((...args: any[]) => any) | undefined; "onRemove-tag"?: ((...args: any[]) => any) | undefined; "onPopup-scroll"?: ((...args: any[]) => any) | undefined; }>, { modelValue: EpPropMergeType<(new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null) | (((new (...args: any[]) => string | number | boolean | Record | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>[] | null)) | null)[], unknown, unknown>; disabled: EpPropMergeType; tabindex: EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>; validateEvent: EpPropMergeType; props: Props; loading: boolean; effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>; offset: number; placement: EpPropMergeType<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "bottom-start" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown>; popperClass: string; popperOptions: Partial; showArrow: EpPropMergeType; multiple: boolean; teleported: EpPropMergeType; valueKey: string; debounce: number; fitInputWidth: boolean; autocomplete: string; clearable: boolean; clearIcon: EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown>; suffixIcon: EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown>; fallbackPlacements: Placement[]; persistent: EpPropMergeType; valueOnClear: EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown>; filterable: boolean; collapseTags: boolean; maxCollapseTags: number; collapseTagsTooltip: boolean; tagType: EpPropMergeType; tagEffect: EpPropMergeType; automaticDropdown: boolean; allowCreate: boolean; remote: boolean; multipleLimit: number; defaultFirstOption: boolean; reserveKeyword: EpPropMergeType; tagTooltip: TagTooltipProps; remoteShowSuffix: boolean; }, {}, { ElSelectMenu: vue.DefineComponent<{}, { ns: { namespace: vue.ComputedRef; b: (blockSuffix?: string) => string; e: (element?: string) => string; m: (modifier?: string) => string; be: (blockSuffix?: string, element?: string) => string; em: (element?: string, modifier?: string) => string; bm: (blockSuffix?: string, modifier?: string) => string; bem: (blockSuffix?: string, element?: string, modifier?: string) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; minWidth: vue.Ref; popperClass: vue.ComputedRef; isMultiple: vue.ComputedRef; isFitInputWidth: vue.ComputedRef; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>; ElOption: vue.DefineComponent>; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; label: { readonly type: vue.PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; created: BooleanConstructor; disabled: BooleanConstructor; }>, { ns: { namespace: vue.ComputedRef; b: (blockSuffix?: string) => string; e: (element?: string) => string; m: (modifier?: string) => string; be: (blockSuffix?: string, element?: string) => string; em: (element?: string, modifier?: string) => string; bm: (blockSuffix?: string, modifier?: string) => string; bem: (blockSuffix?: string, element?: string, modifier?: string) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; id: vue.Ref; containerKls: vue.ComputedRef; currentLabel: vue.ComputedRef>; itemSelected: vue.ComputedRef; isDisabled: vue.ComputedRef; select: SelectContext; visible: vue.Ref; hover: vue.Ref; states: { index: number; groupDisabled: boolean; visible: boolean; hover: boolean; }; hoverItem: () => void; updateOption: (query: string) => void; selectOptionClick: () => void; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly>; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; label: { readonly type: vue.PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; created: BooleanConstructor; disabled: BooleanConstructor; }>> & Readonly<{}>, { disabled: boolean; created: boolean; }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>; ElOptions: vue.DefineComponent<{}, () => VNode[], {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>; ElOptionGroup: vue.DefineComponent, { groupRef: vue.Ref; visible: vue.ComputedRef; ns: { namespace: vue.ComputedRef; b: (blockSuffix?: string) => string; e: (element?: string) => string; m: (modifier?: string) => string; be: (blockSuffix?: string, element?: string) => string; em: (element?: string, modifier?: string) => string; bm: (blockSuffix?: string, modifier?: string) => string; bem: (blockSuffix?: string, element?: string, modifier?: string) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly> & Readonly<{}>, { disabled: boolean; }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>; ElTag: SFCWithInstall<{ new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins & Readonly<{ onClick?: ((evt: MouseEvent) => any) | undefined; onClose?: ((evt: MouseEvent) => any) | undefined; }>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { click: (evt: MouseEvent) => void; close: (evt: MouseEvent) => void; }, vue.PublicProps, { type: "primary" | "success" | "info" | "warning" | "danger"; effect: "dark" | "light" | "plain"; }, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly & Readonly<{ onClick?: ((evt: MouseEvent) => any) | undefined; onClose?: ((evt: MouseEvent) => any) | undefined; }>, {}, {}, {}, {}, { type: "primary" | "success" | "info" | "warning" | "danger"; effect: "dark" | "light" | "plain"; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & vue.ComponentOptionsBase & Readonly<{ onClick?: ((evt: MouseEvent) => any) | undefined; onClose?: ((evt: MouseEvent) => any) | undefined; }>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { click: (evt: MouseEvent) => void; close: (evt: MouseEvent) => void; }, string, { type: "primary" | "success" | "info" | "warning" | "danger"; effect: "dark" | "light" | "plain"; }, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => { $slots: { default?: (props: {}) => any; } & { default?: (props: {}) => any; }; })>; ElScrollbar: SFCWithInstall<{ new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins & Readonly<{ onScroll?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined; "onEnd-reached"?: ((direction: ScrollbarDirection) => any) | undefined; }>, { wrapRef: vue.Ref; update: () => void; scrollTo: { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; }; setScrollTop: (value: number) => void; setScrollLeft: (value: number) => void; handleScroll: () => void; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { scroll: (args_0: { scrollTop: number; scrollLeft: number; }) => void; "end-reached": (direction: ScrollbarDirection) => void; }, vue.PublicProps, { tabindex: number | string; tag: keyof HTMLElementTagNameMap | (string & {}); height: number | string; maxHeight: number | string; distance: number; wrapStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; wrapClass: string | string[]; viewClass: string | string[]; viewStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; minSize: number; }, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly & Readonly<{ onScroll?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined; "onEnd-reached"?: ((direction: ScrollbarDirection) => any) | undefined; }>, { wrapRef: vue.Ref; update: () => void; scrollTo: { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; }; setScrollTop: (value: number) => void; setScrollLeft: (value: number) => void; handleScroll: () => void; }, {}, {}, {}, { tabindex: number | string; tag: keyof HTMLElementTagNameMap | (string & {}); height: number | string; maxHeight: number | string; distance: number; wrapStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; wrapClass: string | string[]; viewClass: string | string[]; viewStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; minSize: number; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & vue.ComponentOptionsBase & Readonly<{ onScroll?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined; "onEnd-reached"?: ((direction: ScrollbarDirection) => any) | undefined; }>, { wrapRef: vue.Ref; update: () => void; scrollTo: { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; }; setScrollTop: (value: number) => void; setScrollLeft: (value: number) => void; handleScroll: () => void; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { scroll: (args_0: { scrollTop: number; scrollLeft: number; }) => void; "end-reached": (direction: ScrollbarDirection) => void; }, string, { tabindex: number | string; tag: keyof HTMLElementTagNameMap | (string & {}); height: number | string; maxHeight: number | string; distance: number; wrapStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; wrapClass: string | string[]; viewClass: string | string[]; viewStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; minSize: number; }, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => { $slots: { default?: (props: {}) => any; }; })>; ElTooltip: SFCWithInstall<{ new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins & Readonly<{ onClose?: ((...args: any[]) => any) | undefined; onHide?: ((...args: any[]) => any) | undefined; onShow?: ((...args: any[]) => any) | undefined; onOpen?: ((...args: any[]) => any) | undefined; "onUpdate:visible"?: ((...args: any[]) => any) | undefined; "onBefore-show"?: ((...args: any[]) => any) | undefined; "onBefore-hide"?: ((...args: any[]) => any) | undefined; }>, { popperRef: vue.Ref; contentRef: vue.Ref; isFocusInsideContent: (event?: FocusEvent) => boolean | undefined; updatePopper: () => void; onOpen: (event?: Event, delay?: number) => void; onClose: (event?: Event, delay?: number) => void; hide: (event?: Event) => void; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { close: (...args: any[]) => void; hide: (...args: any[]) => void; show: (...args: any[]) => void; open: (...args: any[]) => void; "update:visible": (...args: any[]) => void; "before-show": (...args: any[]) => void; "before-hide": (...args: any[]) => void; }, vue.PublicProps, { effect: PopperEffect; enterable: boolean; hideAfter: number; offset: number; placement: Placement; popperOptions: Partial; showAfter: number; showArrow: boolean; visible: boolean | null; content: string; style: string | false | vue.CSSProperties | vue.StyleValue[] | null; teleported: boolean; popperStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; pure: boolean; focusOnShow: boolean; trapping: boolean; stopPopperMouseEvent: boolean; virtualTriggering: boolean; loop: boolean; boundariesPadding: number; gpuAcceleration: boolean; strategy: "fixed" | "absolute"; arrowOffset: number; role: typeof roleTypes[number]; autoClose: number; trigger: Arrayable; triggerKeys: string[]; }, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly & Readonly<{ onClose?: ((...args: any[]) => any) | undefined; onHide?: ((...args: any[]) => any) | undefined; onShow?: ((...args: any[]) => any) | undefined; onOpen?: ((...args: any[]) => any) | undefined; "onUpdate:visible"?: ((...args: any[]) => any) | undefined; "onBefore-show"?: ((...args: any[]) => any) | undefined; "onBefore-hide"?: ((...args: any[]) => any) | undefined; }>, { popperRef: vue.Ref; contentRef: vue.Ref; isFocusInsideContent: (event?: FocusEvent) => boolean | undefined; updatePopper: () => void; onOpen: (event?: Event, delay?: number) => void; onClose: (event?: Event, delay?: number) => void; hide: (event?: Event) => void; }, {}, {}, {}, { effect: PopperEffect; enterable: boolean; hideAfter: number; offset: number; placement: Placement; popperOptions: Partial; showAfter: number; showArrow: boolean; visible: boolean | null; content: string; style: string | false | vue.CSSProperties | vue.StyleValue[] | null; teleported: boolean; popperStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; pure: boolean; focusOnShow: boolean; trapping: boolean; stopPopperMouseEvent: boolean; virtualTriggering: boolean; loop: boolean; boundariesPadding: number; gpuAcceleration: boolean; strategy: "fixed" | "absolute"; arrowOffset: number; role: typeof roleTypes[number]; autoClose: number; trigger: Arrayable; triggerKeys: string[]; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & vue.ComponentOptionsBase & Readonly<{ onClose?: ((...args: any[]) => any) | undefined; onHide?: ((...args: any[]) => any) | undefined; onShow?: ((...args: any[]) => any) | undefined; onOpen?: ((...args: any[]) => any) | undefined; "onUpdate:visible"?: ((...args: any[]) => any) | undefined; "onBefore-show"?: ((...args: any[]) => any) | undefined; "onBefore-hide"?: ((...args: any[]) => any) | undefined; }>, { popperRef: vue.Ref; contentRef: vue.Ref; isFocusInsideContent: (event?: FocusEvent) => boolean | undefined; updatePopper: () => void; onOpen: (event?: Event, delay?: number) => void; onClose: (event?: Event, delay?: number) => void; hide: (event?: Event) => void; }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { close: (...args: any[]) => void; hide: (...args: any[]) => void; show: (...args: any[]) => void; open: (...args: any[]) => void; "update:visible": (...args: any[]) => void; "before-show": (...args: any[]) => void; "before-hide": (...args: any[]) => void; }, string, { effect: PopperEffect; enterable: boolean; hideAfter: number; offset: number; placement: Placement; popperOptions: Partial; showAfter: number; showArrow: boolean; visible: boolean | null; content: string; style: string | false | vue.CSSProperties | vue.StyleValue[] | null; teleported: boolean; popperStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null; pure: boolean; focusOnShow: boolean; trapping: boolean; stopPopperMouseEvent: boolean; virtualTriggering: boolean; loop: boolean; boundariesPadding: number; gpuAcceleration: boolean; strategy: "fixed" | "absolute"; arrowOffset: number; role: typeof roleTypes[number]; autoClose: number; trigger: Arrayable; triggerKeys: string[]; }, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => { $slots: { default?: (props: {}) => any; } & { content?: (props: {}) => any; }; })>; ElIcon: SFCWithInstall<{ new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins & Readonly<{}>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, vue.PublicProps, { size: number | string; }, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly & Readonly<{}>, {}, {}, {}, {}, { size: number | string; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & vue.ComponentOptionsBase & Readonly<{}>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, { size: number | string; }, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => { $slots: { default?: (props: {}) => any; }; })>; }, { ClickOutside: vue.ObjectDirective; }, string, vue.ComponentProvideOptions, true, {}, any>; //#endregion export { _default };