import { LitElement } from 'lit';
import '../badge/Badge.js';
import '../icon/Icon.js';
export interface DropdownItemProps {
    label?: string;
    value?: string;
    type?: 'default' | 'divider' | 'subhead';
    symbol?: string;
    shortcut?: string;
    disabled?: boolean;
    selected?: boolean;
    favorited?: boolean;
    error?: boolean;
}
declare const DropdownItem_base: (new (...args: any[]) => import("../../util/EventEmitterMixin.js").EventEmitterMixinInterface) & (new (...args: any[]) => import("../../util/ReadyMixin.js").ReadyMixinInterface) & typeof LitElement;
/**
 * A menu item component for use inside `btu-dropdown-menu`.
 *
 * Renders as a menu item, divider, or subhead depending on the `type` property.
 * Supports checkbox mode (inherited from parent menu), icons, keyboard shortcuts,
 * and favorite toggles.
 *
 * @element btu-dropdown-item
 *
 * @fires {CustomEvent} btu-dropdown-item-ready - Fired after first render
 * @fires {CustomEvent<{label: string, value: string, selected: boolean}>} btu-dropdown-item-select - Fired when item is activated
 * @fires {CustomEvent<{label: string, favorited: boolean}>} btu-dropdown-item-favorite - Fired when favorite is toggled
 *
 * @cssprop --dropdown-item-font-size - Item font size (default: theme fontSize.sm)
 * @cssprop --dropdown-item-color - Item text color (default: gray-700)
 * @cssprop --dropdown-item-background - Item background color (default: transparent)
 * @cssprop --dropdown-item-hover-background - Background on hover (default: gray-100)
 * @cssprop --dropdown-item-hover-color - Text color on hover (default: gray-900)
 * @cssprop --dropdown-item-selected-background - Background when selected (default: primary-50)
 * @cssprop --dropdown-item-selected-color - Text color when selected (default: primary-700)
 *
 * @example
 * ```html
 * <!-- Basic item -->
 * <btu-dropdown-item label="Edit"></btu-dropdown-item>
 *
 * <!-- Item with icon and shortcut -->
 * <btu-dropdown-item label="Save" symbol="save" shortcut="Ctrl+S"></btu-dropdown-item>
 * ```
 */
export default class DropdownItem extends DropdownItem_base {
    /**
     * Display text for the item.
     * @attr
     */
    label: string;
    /**
     * Item type: 'default', 'divider', or 'subhead'.
     * @attr
     */
    type: 'default' | 'divider' | 'subhead';
    /**
     * Lucide icon symbol.
     * @attr
     */
    symbol: string;
    /**
     * Keyboard shortcut display text.
     * @attr
     */
    shortcut: string;
    /**
     * Optional data value associated with the item.
     * @attr
     */
    value: string;
    /**
     * Whether the item is disabled.
     * @attr
     */
    disabled: boolean;
    /**
     * Whether the item is selected/checked.
     * @attr
     */
    selected: boolean;
    /**
     * Whether the item is favorited.
     * @attr
     */
    favorited: boolean;
    /**
     * Whether the item has an error.
     * @attr
     */
    error: boolean;
    /** @internal */
    private _generatedId;
    /** @internal */
    private _checkboxMode;
    /** @internal */
    private _showIcon;
    /** @internal */
    private _showFavorites;
    /** @internal */
    private _showShortcuts;
    /** @internal */
    private _parentMenuSymbol;
    createRenderRoot(): this;
    /** @internal Called by DropdownMenu to configure inherited settings */
    _configure(opts: {
        checkbox: boolean;
        icon: boolean;
        symbol: string;
        favorites: boolean;
        shortcuts: boolean;
    }): void;
    /** @internal Whether this item is focusable (not a divider or subhead) */
    get focusable(): boolean;
    firstUpdated(): void;
    /** @internal Activate this item (Enter/click) */
    activate(): void;
    /** Toggle favorite state */
    private _toggleFavorite;
    render(): import("lit-html").TemplateResult<1>;
    private _handleClick;
}
declare global {
    interface HTMLElementTagNameMap {
        'btu-dropdown-item': DropdownItem;
    }
}
export {};
//# sourceMappingURL=DropdownItem.d.ts.map