import { type PropertyValues } from 'lit'; import { LuxenElement } from '../../shared/luxen-element.js'; /** * A menu item for use inside ``. * * @slot - Label text. * @slot prefix - Leading content (e.g. icon). A `type="checkbox"` item ignores it unless `check-placement="end"` frees the leading column. * @slot suffix - Trailing content. * @slot submenu - Nested `l-dropdown-item` elements rendered in a submenu panel anchored to this item. Drop an `
` between them for a separator. * * @csspart submenu - The floating submenu panel. * * @cssproperty --color - Text color. * * @attribute variant - destructive — Renders the item as a destructive action (red), for delete-style entries. * * @customElement l-dropdown-item */ export declare class DropdownItem extends LuxenElement { static styles: import("lit").CSSResult[]; private _submenuFloating; /** The value associated with this item. */ accessor value: string; /** Disables the item. */ accessor disabled: boolean; /** The type of item: `normal` or `checkbox`. */ accessor type: 'normal' | 'checkbox'; /** Visual variant. `destructive` marks a delete-style action in red. */ accessor variant: 'destructive' | undefined; /** Whether the checkbox item is checked. */ accessor checked: boolean; /** Whether this item's submenu is open. Managed by the parent `l-dropdown`. */ accessor submenuOpen: boolean; /** * Which side of a `type="checkbox"` item carries the check mark. `start` (the * default) puts it in the leading column, where it takes the place of any * `prefix`. `end` moves it to the trailing edge, freeing that column so the * item can show its own icon alongside the state. */ accessor checkPlacement: 'start' | 'end'; private accessor _hasSubmenu; /** Whether this item has nested `slot="submenu"` items. */ get hasSubmenu(): boolean; connectedCallback(): void; private get _submenuEl(); /** Returns the text label of this item (excludes nested submenu items). */ getTextLabel(): string; /** Returns the enabled `l-dropdown-item` elements slotted into this item's submenu. */ getSubmenuItems(): DropdownItem[]; /** Opens this item's submenu panel. No-op without submenu items. */ openSubmenu(): void; /** Closes this item's submenu panel, including any open nested submenus. */ closeSubmenu(): void; updated(changed: PropertyValues): void; private _getDuration; private _handleSubmenuOpenChange; private _renderCheck; private _onSubmenuSlotChange; render(): import("lit").TemplateResult<1>; } //# sourceMappingURL=dropdown-item.d.ts.map