import { RadiantElement } from '@ecopages/radiant'; import { type TextFilterSensitivity } from '@/lib/text-filter'; export type RuiAutocompleteProps = { /** Filter sensitivity. Default: `base` (case-insensitive contains). */ sensitivity?: TextFilterSensitivity; /** Controlled filter query. When unset, reads from the composed input. */ inputValue?: string; }; /** * `` — filters a composed collection from a text input. * * Wrap a search field (`data-autocomplete-input`) and a collection * (`data-autocomplete-collection` or default slot) containing `[role="option"]`, * `[role="menuitem"]`, or `[data-tag]` items. * * @remarks When nested in `rui-combobox`, the combobox input acts as the filter * field. `rui-select` uses a dedicated search input inside the popup instead. * * @see https://react-aria.adobe.com/Autocomplete * * @element rui-autocomplete * * @attr {string} sensitivity - Filter sensitivity: `base` (case-insensitive contains), `case`, or `accent`. Default: `base`. * @attr {string} input-value - Controlled filter query; when unset, reads from the composed input. Default: `''`. * * @cssclass rui-autocomplete - Filter host. */ export declare class RuiAutocomplete extends RadiantElement { sensitivity: TextFilterSensitivity; inputValue: string; private externalInput; private readonly onExternalInput; private getInput; private bindExternalInput; private unbindExternalInput; syncFilter(): void; private getCollection; private getFilterableItems; private getItemText; private getQuery; private applyFilter; private initialize; protected onConnected(): void; disconnectedCallback(): void; onPropsUpdated(): void; onInput(): void; }