import { BaseComponent } from '../utils/baseComponent'; import type { CustomElement } from '../utils/custom-element'; export declare const ECK_AUTOCOMPLETE_OPTION_TAG_NAME = "eck-autocomplete-option"; export interface EckAutocompleteOptionSelectEvent { /** * Optionally provided by the user via the `value` property. */ value: T; /** * Either the label that the user optionally provided via the `label` attribute * or otherwise the `innerHTML` of this option. */ label: string; } export interface EckAutocompleteOptionHighlightEvent extends EckAutocompleteOptionSelectEvent { _tbhfo: boolean; } export declare class EckAutocompleteOption extends BaseComponent implements CustomElement { /** * RESERVED FOR INTERNAL USE ONLY! NOT PART OF THE PUBLIC API! * Used to identify this element. * The name of the tag can be changed on registration. * This id allows us to uniquely identify element of type EckAutocompleteOption no matter the tag name. */ readonly identity = "eck-aco"; /** * Optional data that is attached to an option. */ value: unknown; /** * Optional string that is used to display the option in contexts * that only allow strings (e.g. inputs) * If not provided the innerHtml is used. */ private _label; static get observedAttributes(): string[]; constructor(); attributeChangedCallback(attrName: string, _oldVal: string | null, newVal: string | null): void; connectedCallback(): void; highlight(highlight: boolean, triggeredByHighlightFirstOption: boolean): void; fireSelectionEvent(): void; /** * The label is either provided explicitly or we use the innerHTML * @returns {string} */ private _getLabel; }