import { type HTMLAttributes, type InputHTMLAttributes } from "vue"; import { type BaseInteractiveProps, type LabelProps, type LinkableByIdProps, type MultiValueProps, type SuggestionsProps, type TailwindClassProp, type WrapperProps } from "../shared/props.js"; type WrapperTypes = WrapperProps<"suggestions", HTMLAttributes> & WrapperProps<"wrapper", HTMLAttributes> & WrapperProps<"inner-wrapper", HTMLAttributes>; type RealProps = SuggestionsProps & LinkableByIdProps & LabelProps & BaseInteractiveProps & MultiValueProps & { suggestions?: SuggestionsProps["suggestions"]; valid?: boolean; }; interface Props extends /** @vue-ignore */ Partial & TailwindClassProp>, /** @vue-ignore */ Partial, RealProps { } declare const _default: __VLS_WithTemplateSlots string; isOpen: boolean; open: () => void; close: () => void; enterSelected: () => void; enterSuggestion: (num: number) => void; toggle: () => void; cancel: () => void; select: (num: number) => void; prev: () => void; next: () => void; first: () => void; last: () => void; }; el: HTMLElement | null; inputKeydownHandler: (e: KeyboardEvent) => void; inputBlurHandler: (e: MouseEvent) => void; inputFocusHandler: (e: FocusEvent) => void; } | null, import("vue").ShallowUnwrapRef<{ suggestions: { list: any[] | undefined; filtered: any[] | undefined; active: number; available: boolean; moreThanOneAvailable: boolean; hasExactlyMatching: string | object | undefined; hasValidSuggestion: boolean; openable: boolean | undefined; getLabel: (item: string | object) => string; isOpen: boolean; open: () => void; close: () => void; enterSelected: () => void; enterSuggestion: (num: number) => void; toggle: () => void; cancel: () => void; select: (num: number) => void; prev: () => void; next: () => void; first: () => void; last: () => void; }; el: import("vue").Ref; inputKeydownHandler: (e: KeyboardEvent) => void; inputBlurHandler: (e: MouseEvent) => void; inputFocusHandler: (e: FocusEvent) => void; }> | { suggestions: { list: any[] | undefined; filtered: any[] | undefined; active: number; available: boolean; moreThanOneAvailable: boolean; hasExactlyMatching: string | object | undefined; hasValidSuggestion: boolean; openable: boolean | undefined; getLabel: (item: string | object) => string; isOpen: boolean; open: () => void; close: () => void; enterSelected: () => void; enterSuggestion: (num: number) => void; toggle: () => void; cancel: () => void; select: (num: number) => void; prev: () => void; next: () => void; first: () => void; last: () => void; }; el: HTMLElement | null; inputKeydownHandler: (e: KeyboardEvent) => void; inputBlurHandler: (e: MouseEvent) => void; inputFocusHandler: (e: FocusEvent) => void; } | null>; el: import("vue").Ref; inputValue: import("vue").Ref; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "update:values": (values: string[] | undefined) => any; "update:modelValue": (modelValue: string) => any; } & { blur: (val: FocusEvent) => any; focus: (val: FocusEvent) => any; input: (val: InputEvent) => any; keydown: (val: KeyboardEvent) => any; submit: (val: string, suggestion?: any) => any; indicatorClick: (val: MouseEvent) => any; }, string, import("vue").PublicProps, Readonly<{ values?: string[] | undefined; modelValue: string; } & Props> & Readonly<{ onBlur?: ((val: FocusEvent) => any) | undefined; onFocus?: ((val: FocusEvent) => any) | undefined; onInput?: ((val: InputEvent) => any) | undefined; onKeydown?: ((val: KeyboardEvent) => any) | undefined; onSubmit?: ((val: string, suggestion?: any) => any) | undefined; "onUpdate:values"?: ((values: string[] | undefined) => any) | undefined; "onUpdate:modelValue"?: ((modelValue: string) => any) | undefined; onIndicatorClick?: ((val: MouseEvent) => any) | undefined; }>, { disabled: boolean; readonly: boolean; border: boolean; unstyle: boolean; valid: boolean; suggestions: any[]; updateOnlyOnSubmit: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, { label?(_: { label: string | undefined; id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; }): any; default?(_: { id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; }): any; left?(_: { id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; }): any; input?(_: { suggestionsIndicatorClickHandler: (e: MouseEvent) => void; id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; class: undefined; canEdit: boolean; "aria-autocomplete": "both" | undefined; "aria-controls": string | undefined; role: string | undefined; "aria-expanded": boolean | undefined; "aria-activedescendant": string | undefined; border: boolean; isValid: boolean; onKeydown: (e: KeyboardEvent) => void; onBlur: (e: FocusEvent) => void; onFocus: (e: FocusEvent) => void; modelValue: any; "onUpdate:modelValue": (e: string) => void; onSubmit: (e: string) => void; }): any; indicator?(_: { isOpen: boolean; suggestionsIndicatorClickHandler: (e: MouseEvent) => void; }): any; values?(_: { id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; class: undefined; hasSlotRight: boolean; label: string | undefined; border: boolean; values: string[] | undefined; "onUpdate:values": (e: string[]) => string[]; }): any; right?(_: { id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; }): any; suggestions?(_: { id: string; isOpen: boolean; valid: boolean; disabled: boolean; readonly: boolean; class: undefined; suggestions: any[] | undefined; allowOpenEmpty: boolean; restrictToSuggestions: boolean; suggestionLabel: ((item: any) => string) | undefined; suggestionsFilter: ((input: string | number, items: any[]) => any[]) | undefined; modelValue: string; inputValue: any; isValid: boolean; "onUpdate:inputValue": (e: string) => string; onSubmit: (e: string, suggestion: any) => void; "onUpdate:isOpen": (e: boolean) => void; "onUpdate:activeSuggestion": (e: number) => number; }): any; "suggestion-item"?(_: { item: any; index: number; }): any; }>; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=LibInput.vue.d.ts.map