import { CSSResultArray, PropertyValues, TemplateResult } from 'lit'; import { Focusable } from '../../utils/focusable'; export type OptionChildren = { icon: Element[]; content: Node[]; }; declare const LuzmoOption_base: typeof Focusable & { new (...args: any[]): import("../../utils/observe-slot-presence").SlotPresenceObservingInterface; prototype: import("../../utils/observe-slot-presence").SlotPresenceObservingInterface; } & { new (...args: any[]): import("../../utils/observe-slot-text").SlotTextObservingInterface; prototype: import("../../utils/observe-slot-text").SlotTextObservingInterface; } & { new (...args: any[]): import("../../utils/like-anchor").LikeAnchorInterface; prototype: import("../../utils/like-anchor").LikeAnchorInterface; }; /** * @element luzmo-option * * @slot - text content to display within the Menu Item * @slot description - description to be placed below the label of the Menu Item * @slot icon - icon element to be placed at the start of the Menu Item * @slot value - content placed at the end of the Menu Item like values, keyboard shortcuts, etc. * @fires luzmo-option-added - announces the item has been added so a parent menu can take ownerships */ export declare class LuzmoOption extends LuzmoOption_base { static get styles(): CSSResultArray; active: boolean; focused: boolean; selected: boolean; emphasized: boolean; /** * Whether this option has children and can be expanded/collapsed. */ expandable: boolean; /** * Whether this expandable option is currently expanded. */ expanded: boolean; /** * Whether this option is a child of an expandable parent. */ childOption: boolean; /** * Whether this expandable parent has at least one selected child. */ hasSelectedChild: boolean; /** * Type of visual selection */ variant?: 'checkmarks' | 'checkboxes' | 'highlight'; get value(): string | number | undefined; set value(value: string); private _value; /** * @private */ get itemText(): string; contentSlot: HTMLSlotElement; iconSlot: HTMLSlotElement; noWrap: boolean; private anchorElement; protected renderCheckIcon: (selected: boolean, hasIcon: boolean) => TemplateResult; get focusElement(): HTMLElement; protected get hasIcon(): boolean; get itemChildren(): OptionChildren; private _itemChildren?; constructor(); click(): void; private handleClickCapture; private proxyFocus; private shouldProxyClick; protected breakItemChildrenCache(): void; protected render(): TemplateResult; private handlePointerdown; protected firstUpdated(changes: PropertyValues): void; updateAriaSelected(): void; setRole(role: string): void; protected updated(changes: PropertyValues): void; connectedCallback(): void; _parentElement: HTMLElement; private willDispatchUpdate; triggerUpdate(): Promise; dispatchUpdate(): void; } export {};