import { LitElement, PropertyValues } from 'lit'; import type { Popup } from './popup.js'; import type { Menu, MenuActionEvent } from './menu.js'; declare const Base: Constructor & Constructor & typeof LitElement; export type AutocompleteMode = 'none' | 'list' | 'both'; /** * TODO: Check if manually dispatching input/change events on input is necessary */ export declare class Autocomplete extends Base { #private; open: boolean; mode: AutocompleteMode; $popup: Popup; $menu: Menu; inputSlotElements: HTMLElement[]; itemSlotElements: HTMLElement[]; private get $input(); render(): import("lit-html").TemplateResult<1>; /** * Check example content from the m3 implementation */ renderMenu(): import("lit-html").TemplateResult<1>; constructor(); private handleInputSlotChange; protected handleItemsSlotChange(): Promise; private handleInput; private applyInlineAutoComplete; private filterOptions; private handleInputKeydown; protected handleMenuAction(event: MenuActionEvent): void; protected updated(changed: PropertyValues): void; } export {};