/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { DropDownStateBase, InternalState } from './../common/settings'; import { FormComponentValidity } from '@progress/kendo-vue-common'; import { PropType } from 'vue'; /** * @hidden */ export interface AutoCompleteState extends DropDownStateBase { focusedItem?: any; value?: string; currentValue?: string; } /** * @hidden */ export interface AutoCompleteInternalState extends InternalState { data: AutoCompleteState; } /** * @hidden */ export interface AutoCompleteMethods { [key: string]: any; focus: (e: any) => void; computedValue: () => any; validity: () => FormComponentValidity; handleItemSelect: (index: number, state: AutoCompleteInternalState) => void; itemFocus: (index: number, state: AutoCompleteInternalState) => void; togglePopup: (state: InternalState) => void; onNavigate: (state: AutoCompleteInternalState, keyCode: number) => void; applyInputValue: (value: string, state: AutoCompleteInternalState, eventKey?: number) => void; setValidity: () => void; handleItemClick: (index: number, event: any) => void; onChangeHandler: (event: any) => void; clearButtonClick: (event: any) => void; onInputKeyDown: (event: any) => void; handleBlur: (event: any) => void; triggerOnChange: (newValue: string, state: AutoCompleteInternalState, eventArgs?: any) => void; applyState: (state: AutoCompleteInternalState) => void; suggestValue: (value: string) => void; focusedIndex: (value?: string) => any; } /** * @hidden */ export interface AutoCompleteState extends DropDownStateBase { anchor: string; typingTimeout: any; base: any; input: any; element: any; inputId: string; virtualHasChanged: any; prevOpened: any; prevCurrentOpened: any; prevData: any; prevFocusedItem: any; inputRef: any; listRef: any; filterInputRef: any; scrollElementRef: any; scrollerRef: any; kendoAnchorRef: any; } /** * @hidden */ declare const AutoComplete: import('vue').DefineComponent; defaultValue: { type: PropType; default: any; }; name: PropType; modelValue: { type: PropType; default: any; }; value: { type: PropType; default: any; }; label: { type: PropType; }; placeholder: PropType; required: { type: PropType; default: boolean; }; valid: { type: PropType; default: any; }; validationMessage: { type: PropType; default: any; }; validityStyles: { type: PropType; default: boolean; }; opened: { type: PropType; default: any; }; disabled: PropType; dir: { type: PropType; default: any; }; tabIndex: { type: PropType; default: any; }; readonly: PropType; accessKey: PropType; dataItems: PropType; textField: PropType; loading: PropType; popupSettings: { type: PropType; default: () => { animate: boolean; height: string; anchor: string; }; }; itemRender: PropType; groupHeaderItemRender: PropType; groupStickyHeaderItemRender: (ObjectConstructor | StringConstructor | FunctionConstructor)[]; listNoDataRender: PropType; focusedItemIndex: PropType<(data: any, inputText: string, textField?: string) => number>; header: PropType; footer: PropType; suggest: { type: PropType; default: boolean; }; ariaLabel: { type: PropType; default: any; }; ariaLabelledBy: PropType; ariaDescribedBy: PropType; rounded: { type: PropType<"small" | "medium" | "large" | "full" | "none">; validator: (value: string) => boolean; }; fillMode: { type: PropType<"flat" | "solid" | "outline">; validator: (value: string) => boolean; }; size: { type: PropType<"small" | "medium" | "large">; validator: (value: string) => boolean; }; groupField: { type: PropType; }; inputAttributes: PropType; }>, { inputRef: import('vue').Ref; kendoAnchorRef: import('vue').Ref; }, { hasMounted: boolean; currentText: string; currentValue: string; currentFocused: boolean; currentOpened: boolean; focusedItem: any; searchState: { word: string; last: string; }; valueDuringOnChange: {}; suggested: string; group: any; isScrolling: boolean; popupWidth: any; itemHeight: number; }, { spanClassNames(): { 'k-floating-label-container': boolean; 'k-focus': any; 'k-empty': boolean; 'k-invalid': boolean; 'k-rtl': boolean; }; }, { focus(): void; computedValue(): any; primitiveValue(): any; validity(): FormComponentValidity; handleItemSelect(index: number, state: AutoCompleteInternalState): void; itemFocus(index: number, state: AutoCompleteInternalState): void; togglePopup(state: InternalState): void; onNavigate(state: AutoCompleteInternalState, keyCode: number): void; /** * @hidden */ applyInputValue(value: string, state: AutoCompleteInternalState, eventKey?: number): void; setValidity(): void; handleItemClick(index: number, event: any): void; onChangeHandler(event: any): void; clearButtonClick(event: any): void; onInputKeyDown(event: any): void; handleBlur(event: any): void; triggerOnChange(newValue: string, state: AutoCompleteInternalState, eventArgs?: any): void; triggerOnSelect(state: AutoCompleteInternalState, eventArgs?: any): void; applyState(state: AutoCompleteInternalState): void; suggestValue(value: string): void; focusedIndex(value?: string): any; repositionPopup(): void; onScroll(event: any): void; }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly; defaultValue: { type: PropType; default: any; }; name: PropType; modelValue: { type: PropType; default: any; }; value: { type: PropType; default: any; }; label: { type: PropType; }; placeholder: PropType; required: { type: PropType; default: boolean; }; valid: { type: PropType; default: any; }; validationMessage: { type: PropType; default: any; }; validityStyles: { type: PropType; default: boolean; }; opened: { type: PropType; default: any; }; disabled: PropType; dir: { type: PropType; default: any; }; tabIndex: { type: PropType; default: any; }; readonly: PropType; accessKey: PropType; dataItems: PropType; textField: PropType; loading: PropType; popupSettings: { type: PropType; default: () => { animate: boolean; height: string; anchor: string; }; }; itemRender: PropType; groupHeaderItemRender: PropType; groupStickyHeaderItemRender: (ObjectConstructor | StringConstructor | FunctionConstructor)[]; listNoDataRender: PropType; focusedItemIndex: PropType<(data: any, inputText: string, textField?: string) => number>; header: PropType; footer: PropType; suggest: { type: PropType; default: boolean; }; ariaLabel: { type: PropType; default: any; }; ariaLabelledBy: PropType; ariaDescribedBy: PropType; rounded: { type: PropType<"small" | "medium" | "large" | "full" | "none">; validator: (value: string) => boolean; }; fillMode: { type: PropType<"flat" | "solid" | "outline">; validator: (value: string) => boolean; }; size: { type: PropType<"small" | "medium" | "large">; validator: (value: string) => boolean; }; groupField: { type: PropType; }; inputAttributes: PropType; }>> & Readonly<{}>, { required: boolean; dir: string; value: string; ariaLabel: string; tabIndex: number; defaultValue: string; opened: boolean; popupSettings: import('./../common/settings').DropDownsPopupSettings; modelValue: string; valid: boolean; validationMessage: string; validityStyles: boolean; suggest: string | boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>; export { AutoComplete };