/**
 * The `auro-menuoption` element provides users a way to define a menu option.
 * @customElement auro-menuoption
 *
 * @attr {Boolean} static - When present, marks the option as non-interactive — it renders but is skipped during keyboard navigation and cannot be selected. Useful for section headers, informational rows inside a menu, or attaching event listeners.
 * @slot default - The default slot for the menu option text.
 *
 * @event auroMenuOption-mouseover - Notifies that this option has been hovered over.
 * @event auroMenuOption-click - Notifies that this option has been clicked.
 */
export class AuroMenuOption extends AuroElement {
    static get properties(): {
        noCheckmark: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        /**
         * **Deprecated.** Use the `value` attribute on `auro-menu` to set the selected option when the menu renders (or call `menu.selectByValue(value)` programmatically). Support for the child-level `selected` attribute will be removed in a future major release.
         *
         * @deprecated Use the `value` attribute on `auro-menu` instead.
         */
        selected: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        value: {
            type: StringConstructor;
            reflect: boolean;
        };
        tabIndex: {
            type: NumberConstructor;
            reflect: boolean;
        };
        /**
         * @private
         */
        event: {
            type: StringConstructor;
            reflect: boolean;
        };
        /**
         * When true, marks this option as the "no matching results" placeholder shown by combobox
         * when the user's input does not match any available options.
         */
        noMatch: {
            type: BooleanConstructor;
            reflect: boolean;
            attribute: string;
        };
        /** When true, this option is excluded from `matchWord` DOM rewriting — useful for utility rows (e.g., "Add new…") that must render identically regardless of the current filter. */
        persistent: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        layout: {
            type: StringConstructor;
            attribute: string;
            reflect: boolean;
        };
    };
    static get styles(): import("lit").CSSResult[];
    /**
     * This will register this element with the browser.
     * @param {string} [name="auro-menuoption"] - The name of element that you want to register to.
     *
     * @example
     * AuroMenuOption.register("custom-menuoption") // this will register this element to <custom-menuoption/>
     *
     */
    static register(name?: string): void;
    /**
     * @private
     */
    private shape;
    /**
     * @private
     */
    private size;
    iconTag: any;
    selected: boolean;
    noCheckmark: boolean;
    disabled: boolean;
    noMatch: boolean;
    persistent: boolean;
    /**
     * @private
     */
    private runtimeUtils;
    /**
     * Returns whether the menu option is currently active and selectable.
     * @returns {boolean}
     */
    get isActive(): boolean;
    firstUpdated(): void;
    updated(changedProperties: any): void;
    handleMenuChange(): void;
    setSelected(value: any): void;
    updateActive(active: any): void;
    active: any;
    attachTo(): void;
    /**
     * Handles click events on the menu option.
     * @private
     */
    private handleClick;
    /**
     * Generates an HTML element containing an SVG icon based on the provided `svgContent`.
     *
     * @private
     * @param {string} svgContent - The SVG content to be embedded.
     * @returns {Element} The HTML element containing the SVG icon.
     */
    private generateIconHtml;
    /**
     * Logic to determine the layout of the component.
     * @protected
     * @returns {void}
     */
    protected renderLayout(): void;
}
import { AuroElement } from "../../layoutElement/src/auroElement.js";
