import { AutoCompleteTextSearchMode } from '../Types/AutoCompleteTextSearchMode'; import { ControllerBase, type ControllerHost } from './Abstracts/ControllerBase'; /** * Represents the `AutoCompleteFilterCallback` type. * * @public */ export type AutoCompleteFilterCallback = ((items: Array) => void) | null; /** * Represents the `IAutoCompleteControllerConfig` interface. * * @public */ export interface IAutoCompleteControllerConfig { filterCallback?: (items: Array) => void; filterBehavior?: 'empty' | 'full'; selectCallback?: (item: unknown) => void; } /** * Represents the `AutoCompleteController` class. * * @public */ export declare class AutoCompleteController> extends ControllerBase { private readonly _filterCallback; private readonly _selectCallback; private readonly _filterBehavior; private _searchText; private _filteredItems; /** * Constructs a new instance of the `AutoCompleteController` class. * * @public */ constructor(host: ControllerHost, config?: IAutoCompleteControllerConfig); /** * @public * @override */ hostUpdated(): void; updateSearchText(items: Array, text: string, minimumPrefixLength: number, mode: AutoCompleteTextSearchMode, displayMemberPath: string): void; selectItem(item: T): void; get filteredItems(): Array; getDisplayValue(item: T, displayMemberPath: string): string; private filterItems; } /** * Adds a auto complete controller to the given host. * * @param host - The host element. * @param options - The configuration options. * @returns The auto complete controller instance. * * @public */ export declare function addAutoCompleteController(host: ControllerHost, options?: IAutoCompleteControllerConfig): AutoCompleteController; //# sourceMappingURL=AutoCompleteController.d.ts.map