import '../nui-icon/nui-icon.js'; import { type TemplateResult } from 'lit'; import type { NuiType } from '../../types/nui-type.js'; import type { AutoCompleteDropdownMode, AutoCompleteSize, AutoCompleteSuggestion, AutoCompleteVariant } from './types.js'; export interface NuiAutoCompleteViewState { suggestions: AutoCompleteSuggestion[]; visibleSuggestions: AutoCompleteSuggestion[]; query: string; optionLabel: string; optionValue: string; optionDisabled: string; placeholder: string; disabled: boolean; invalid: boolean; readonly: boolean; fluid: boolean; size: AutoCompleteSize | ''; variant: AutoCompleteVariant | ''; dropdown: boolean; dropdownMode: AutoCompleteDropdownMode; panelScrollHeight: string; emptyMessage: string; dropdownIcon: string; overlayVisible: boolean; focusedIndex: number; name: string; inputId: string; ariaLabel: string; ariaLabelledby: string; nuiType: NuiType; autoCompleteClass: string; } export interface AutoCompleteRenderHandlers { onInput: (event: Event) => void; onChange: (event: Event) => void; onFocus: (event: Event) => void; onBlur: (event: Event) => void; onKeydown: (event: KeyboardEvent) => void; onDropdownClick: (event: Event) => void; onOptionClick: (index: number) => void; onOptionMouseDown: (event: Event) => void; } export declare function getAutoCompleteClass(autoCompleteClass: string): string; export declare function renderAutoComplete(state: NuiAutoCompleteViewState, handlers: AutoCompleteRenderHandlers): TemplateResult; export declare function getSelectedSuggestionValue(state: Pick, index: number): string; //# sourceMappingURL=logic.d.ts.map