/** * Copyright Aquera Inc 2023 * * This source code is licensed under the BSD-3-Clause license found in the * LICENSE file in the root directory of this source tree. */ import NileElement from '../internal/nile-element'; import type { CSSResultGroup } from 'lit'; /** * An individual selectable command inside a `nile-command-menu`. * * @tag nile-command-menu-item * * @summary Represents a single command/action entry within a command menu. * @status stable * @since 2.0 * * @slot - The item's label. * @slot icon - Used to prepend an icon (or similar element) before the label. * @slot suffix - Used to append content (e.g. a hint) after the label, before the shortcut. * * @csspart base - The component's base wrapper. * @csspart icon - The leading icon container. * @csspart label - The item label. * @csspart suffix - The trailing suffix container. * @csspart shortcut - The keyboard-shortcut container. */ export declare class NileCommandMenuItem extends NileElement { static styles: CSSResultGroup; private cachedTextLabel; defaultSlot: HTMLSlotElement; /** Controls vertical padding of the item. */ size: 'small' | 'medium'; /** A unique value used to identify the item when it is selected. */ value: string; /** Draws the item in a disabled state, preventing selection. */ disabled: boolean; /** Draws the item in an active/highlighted state. Managed by the parent menu for keyboard navigation. */ active: boolean; /** * Extra keywords used by the parent menu when filtering, in addition to the visible label. * Useful for matching synonyms or abbreviations. */ keywords: string; /** * The search scope this item belongs to. When the menu has active scopes (the "Searching for" row), * an item is shown only if it has no scope or its scope is among the active ones. */ scope: string; /** * A keyboard shortcut hint shown on the trailing edge of the item. Separate keys with a * space to render each one in its own key box (e.g. `"⌘ K"`). */ shortcut: string; connectedCallback(): void; disconnectedCallback(): void; private handleHostClick; private handleDefaultSlotChange; handleDisabledChange(): void; handleActiveChange(): void; /** Returns the plain-text label based on the default slot's content. */ getTextLabel(): string; /** Returns the string the parent menu uses to match this item against a search query. */ getFilterText(): string; private renderShortcut; render(): import("lit-html").TemplateResult<1>; } export default NileCommandMenuItem; declare global { interface HTMLElementTagNameMap { 'nile-command-menu-item': NileCommandMenuItem; } }