/*! * devextreme-angular * Version: 25.2.6 * Build date: Mon Mar 30 2026 * * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/DevExtreme */ import { TransferState, ElementRef, NgZone, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, QueryList } from '@angular/core'; import DataSource from 'devextreme/data/data_source'; import { DropDownPredefinedButton } from 'devextreme/ui/drop_down_editor/ui.drop_down_editor'; import { TextEditorButton, LabelMode, SimplifiedSearchMode, EditorStyle, ValidationMessageMode, Mode, Position, ValidationStatus } from 'devextreme/common'; import { CollectionWidgetItem } from 'devextreme/ui/collection/ui.collection_widget.base'; import { DataSourceOptions } from 'devextreme/data/data_source'; import { Store } from 'devextreme/data/store'; import { dxPopupOptions } from 'devextreme/ui/popup'; import { ChangeEvent, ClosedEvent, ContentReadyEvent, CopyEvent, CutEvent, DisposingEvent, EnterKeyEvent, FocusInEvent, FocusOutEvent, InitializedEvent, InputEvent, ItemClickEvent, KeyDownEvent, KeyUpEvent, OpenedEvent, OptionChangedEvent, PasteEvent, SelectionChangedEvent, ValueChangedEvent } from 'devextreme/ui/autocomplete'; import DxAutocomplete from 'devextreme/ui/autocomplete'; import { ControlValueAccessor } from '@angular/forms'; import { DxComponent, DxTemplateHost, NestedOptionHost, IterableDifferHelper, WatcherHelper, CollectionNestedOption } from 'devextreme-angular/core'; import type * as DxAutocompleteTypes from "devextreme/ui/autocomplete_types"; import * as i0 from "@angular/core"; import * as i1 from "devextreme-angular/ui/nested"; import * as i2 from "devextreme-angular/ui/autocomplete/nested"; import * as i3 from "devextreme-angular/core"; /** * The AutoComplete UI component is a textbox that provides suggestions while a user types into it. */ export declare class DxAutocompleteComponent extends DxComponent implements OnDestroy, ControlValueAccessor, OnChanges, DoCheck { private _watcherHelper; private _idh; set _buttonsContentChildren(value: QueryList); set _itemsContentChildren(value: QueryList); set _toolbarItemsContentChildren(value: QueryList); instance: DxAutocomplete; /** * Specifies the shortcut key that sets focus on the UI component. */ get accessKey(): string | undefined; set accessKey(value: string | undefined); /** * Specifies whether the UI component changes its visual state as a result of user interaction. */ get activeStateEnabled(): boolean; set activeStateEnabled(value: boolean); /** * Allows you to add custom buttons to the input text field. */ get buttons(): Array; set buttons(value: Array); /** * Binds the UI component to data. */ get dataSource(): Array | DataSource | DataSourceOptions | null | Store | string; set dataSource(value: Array | DataSource | DataSourceOptions | null | Store | string); /** * Specifies whether to render the drop-down field's content when it is displayed. If false, the content is rendered immediately. */ get deferRendering(): boolean; set deferRendering(value: boolean); /** * Specifies whether the UI component responds to user interaction. */ get disabled(): boolean; set disabled(value: boolean); /** * Returns the value currently displayed by the UI component. */ get displayValue(): string | undefined; set displayValue(value: string | undefined); /** * Specifies a custom template for the drop-down button. */ get dropDownButtonTemplate(): any; set dropDownButtonTemplate(value: any); /** * Configures the drop-down field which holds the content. */ get dropDownOptions(): dxPopupOptions; set dropDownOptions(value: dxPopupOptions); /** * Specifies the global attributes to be attached to the UI component's container element. */ get elementAttr(): Record; set elementAttr(value: Record); /** * Specifies whether the UI component can be focused using keyboard navigation. */ get focusStateEnabled(): boolean; set focusStateEnabled(value: boolean); /** * Specifies whether data items should be grouped. */ get grouped(): boolean; set grouped(value: boolean); /** * Specifies a custom template for group captions. */ get groupTemplate(): any; set groupTemplate(value: any); /** * Specifies the UI component's height. */ get height(): number | string | undefined; set height(value: number | string | undefined); /** * Specifies text for a hint that appears when a user pauses on the UI component. */ get hint(): string | undefined; set hint(value: string | undefined); /** * Specifies whether the UI component changes its state when a user pauses on it. */ get hoverStateEnabled(): boolean; set hoverStateEnabled(value: boolean); /** * Specifies the attributes to be passed on to the underlying HTML element. */ get inputAttr(): any; set inputAttr(value: any); /** * Specifies whether the component's current value differs from the initial value. */ get isDirty(): boolean; set isDirty(value: boolean); /** * Specifies or indicates whether the editor's value is valid. */ get isValid(): boolean; set isValid(value: boolean); /** * An array of items displayed by the UI component. */ get items(): Array; set items(value: Array); /** * Specifies a custom template for items. */ get itemTemplate(): any; set itemTemplate(value: any); /** * Specifies a text string used to annotate the editor's value. */ get label(): string; set label(value: string); /** * Specifies the label's display mode. */ get labelMode(): LabelMode; set labelMode(value: LabelMode); /** * Specifies the maximum count of items displayed by the UI component. */ get maxItemCount(): number; set maxItemCount(value: number); /** * Specifies the maximum number of characters you can enter into the textbox. */ get maxLength(): number | string; set maxLength(value: number | string); /** * The minimum number of characters that must be entered into the text box to begin a search. */ get minSearchLength(): number; set minSearchLength(value: number); /** * The value to be assigned to the `name` attribute of the underlying HTML element. */ get name(): string; set name(value: string); /** * Specifies whether or not the drop-down editor is displayed. */ get opened(): boolean; set opened(value: boolean); /** * Specifies whether a user can open the drop-down list by clicking a text field. */ get openOnFieldClick(): boolean; set openOnFieldClick(value: boolean); /** * Specifies a text string displayed when the editor's value is empty. */ get placeholder(): string; set placeholder(value: string); /** * Specifies whether the editor is read-only. */ get readOnly(): boolean; set readOnly(value: boolean); /** * Switches the UI component to a right-to-left representation. */ get rtlEnabled(): boolean; set rtlEnabled(value: boolean); /** * Specifies the name of a data source item field or an expression whose value is compared to the search criterion. */ get searchExpr(): Array | Function | string; set searchExpr(value: Array | Function | string); /** * Specifies a comparison operation used to search UI component items. */ get searchMode(): SimplifiedSearchMode; set searchMode(value: SimplifiedSearchMode); /** * Specifies the time delay, in milliseconds, after the last character has been typed in, before a search is executed. */ get searchTimeout(): number; set searchTimeout(value: number); /** * Gets the currently selected item. */ get selectedItem(): any; set selectedItem(value: any); /** * Specifies whether to display the Clear button in the UI component. */ get showClearButton(): boolean; set showClearButton(value: boolean); /** * Specifies whether the drop-down button is visible. */ get showDropDownButton(): boolean; set showDropDownButton(value: boolean); /** * Specifies whether or not the UI component checks the inner text for spelling mistakes. */ get spellcheck(): boolean; set spellcheck(value: boolean); /** * Specifies how the UI component's text field is styled. */ get stylingMode(): EditorStyle; set stylingMode(value: EditorStyle); /** * Specifies the number of the element when the Tab key is used for navigating. */ get tabIndex(): number; set tabIndex(value: number); /** * The read-only property that holds the text displayed by the UI component input element. */ get text(): string; set text(value: string); /** * Specifies whether the widget uses item's text a title attribute. */ get useItemTextAsTitle(): boolean; set useItemTextAsTitle(value: boolean); /** * Information on the broken validation rule. Contains the first item from the validationErrors array. */ get validationError(): any; set validationError(value: any); /** * An array of validation errors. */ get validationErrors(): Array; set validationErrors(value: Array); /** * Specifies how the message about the validation rules that are not satisfied by this editor's value is displayed. */ get validationMessageMode(): ValidationMessageMode; set validationMessageMode(value: ValidationMessageMode); /** * Specifies the position of a validation message relative to the component. The validation message describes the validation rules that this component's value does not satisfy. */ get validationMessagePosition(): Mode | Position; set validationMessagePosition(value: Mode | Position); /** * Indicates or specifies the current validation status. */ get validationStatus(): ValidationStatus; set validationStatus(value: ValidationStatus); /** * Specifies the current value displayed by the UI component. */ get value(): null | string; set value(value: null | string); /** * Specifies the DOM events after which the UI component's value should be updated. */ get valueChangeEvent(): string; set valueChangeEvent(value: string); /** * Specifies which data field provides unique values to the UI component's value. */ get valueExpr(): ((item: any) => string | number | boolean) | string; set valueExpr(value: ((item: any) => string | number | boolean) | string); /** * Specifies whether the UI component is visible. */ get visible(): boolean; set visible(value: boolean); /** * Specifies the UI component's width. */ get width(): number | string | undefined; set width(value: number | string | undefined); /** * Specifies whether text that exceeds the drop-down list width should be wrapped. */ get wrapItemText(): boolean; set wrapItemText(value: boolean); /** * A function that is executed when the UI component loses focus after the text field's content was changed using the keyboard. */ onChange: EventEmitter; /** * A function that is executed once the drop-down editor is closed. */ onClosed: EventEmitter; /** * A function that is executed when the UI component is rendered and each time the component is repainted. */ onContentReady: EventEmitter; /** * A function that is executed when the UI component's input has been copied. */ onCopy: EventEmitter; /** * A function that is executed when the UI component's input has been cut. */ onCut: EventEmitter; /** * A function that is executed before the UI component is disposed of. */ onDisposing: EventEmitter; /** * A function that is executed when the Enter key has been pressed while the UI component is focused. */ onEnterKey: EventEmitter; /** * A function that is executed when the UI component gets focus. */ onFocusIn: EventEmitter; /** * A function that is executed when the UI component loses focus. */ onFocusOut: EventEmitter; /** * A function used in JavaScript frameworks to save the UI component instance. */ onInitialized: EventEmitter; /** * A function that is executed each time the UI component's input is changed while the UI component is focused. */ onInput: EventEmitter; /** * A function that is executed when a list item is clicked or tapped. */ onItemClick: EventEmitter; /** * A function that is executed when a user is pressing a key on the keyboard. */ onKeyDown: EventEmitter; /** * A function that is executed when a user releases a key on the keyboard. */ onKeyUp: EventEmitter; /** * A function that is executed once the drop-down editor is opened. */ onOpened: EventEmitter; /** * A function that is executed after a UI component property is changed. */ onOptionChanged: EventEmitter; /** * A function that is executed when the UI component's input has been pasted. */ onPaste: EventEmitter; /** * A function that is executed when a list item is selected or selection is canceled. */ onSelectionChanged: EventEmitter; /** * A function that is executed after the UI component's value is changed. */ onValueChanged: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ accessKeyChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ activeStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ buttonsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ dataSourceChange: EventEmitter | DataSource | DataSourceOptions | null | Store | string>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ deferRenderingChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ disabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ displayValueChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ dropDownButtonTemplateChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ dropDownOptionsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ elementAttrChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ focusStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ groupedChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ groupTemplateChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ heightChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ hintChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ hoverStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ inputAttrChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ isDirtyChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ isValidChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ itemsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ itemTemplateChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ labelChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ labelModeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ maxItemCountChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ maxLengthChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ minSearchLengthChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ nameChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ openedChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ openOnFieldClickChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ placeholderChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ readOnlyChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ rtlEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ searchExprChange: EventEmitter | Function | string>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ searchModeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ searchTimeoutChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ selectedItemChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showClearButtonChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showDropDownButtonChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ spellcheckChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ stylingModeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ tabIndexChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ textChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ useItemTextAsTitleChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ validationErrorChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ validationErrorsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ validationMessageModeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ validationMessagePositionChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ validationStatusChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ valueChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ valueChangeEventChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ valueExprChange: EventEmitter<((item: any) => string | number | boolean) | string>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ visibleChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ widthChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ wrapItemTextChange: EventEmitter; /** * */ onBlur: EventEmitter; change(_: any): void; touched: (_: any) => void; constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, _watcherHelper: WatcherHelper, _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, platformId: any); protected _createInstance(element: any, options: any): DxAutocomplete; writeValue(value: any): void; setDisabledState(isDisabled: boolean): void; registerOnChange(fn: (_: any) => void): void; registerOnTouched(fn: () => void): void; _createWidget(element: any): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; setupChanges(prop: string, changes: SimpleChanges): void; ngDoCheck(): void; _setOption(name: string, value: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export declare class DxAutocompleteModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export * from 'devextreme-angular/ui/autocomplete/nested'; export { DxAutocompleteTypes };