import type { AutoCompleteInputPresenterParams, IAutoCompleteInputPresenter } from "./AutoCompleteInputPresenter.js"; import type { IAutoCompleteListOptionsPresenter } from "./AutoCompleteListOptionsPresenter.js"; import type { AutoCompleteOption } from "../../domains/index.js"; interface AutoCompletePresenterParams { emptyMessage?: any; loadingMessage?: any; initialMessage?: any; onOpenChange?: (open: boolean) => void; onValueChange: (value: string) => void; onValueReset?: () => void; onValueSearch?: (value: string) => void; options?: AutoCompleteOption[]; value?: string; } interface IAutoCompletePresenterParams { vm: { inputVm: IAutoCompleteInputPresenter["vm"]; optionsListVm: IAutoCompleteListOptionsPresenter["vm"]; }; init: (params: AutoCompletePresenterParams) => void; initInput: (params: AutoCompleteInputPresenterParams) => void; setListOpenState: (open: boolean) => void; setSelectedOption: (value: string) => void; showSelectedOption: () => void; searchOption: (value: string) => void; resetSelectedOption: () => void; } declare class AutoCompletePresenter implements IAutoCompletePresenterParams { private params?; private inputPresenter; private optionsListPresenter; constructor(inputPresenter: IAutoCompleteInputPresenter, optionsListPresenter: IAutoCompleteListOptionsPresenter); init(params: AutoCompletePresenterParams): void; initInput(params: AutoCompleteInputPresenterParams): void; get vm(): { inputVm: { placeholder: string; value: string; displayResetAction: boolean; }; optionsListVm: { options: import("../../../Command/index.js").CommandOptionFormatted[]; emptyMessage: any; loadingMessage: any; open: boolean; empty: boolean; }; }; setListOpenState: (open: boolean) => void; searchOption: (value: string) => void; setSelectedOption: (value: string) => void; resetSelectedOption: () => void; showSelectedOption: () => void; private getListOptions; private getSelectedOption; } export { AutoCompletePresenter, type AutoCompletePresenterParams };