import { PropertyValues, TemplateResult } from 'lit';
import Menu from './Menu.js';
import UiListItem from '../../list/internals/ListItem.js';
import type { MenuItem } from '../../../index.js';
/**
 * Material Design 3 Sub-Menu component.
 * Extends the main Menu component to provide sub-menu functionality.
 * Uses Popover API and Anchor Positioning API for modern positioning.
 *
 * @slot - The sub-menu items
 * @fires select - Dispatched when a sub-menu item is selected
 * @fires close - Dispatched when the sub-menu is closed
 */
export default class UiSubMenu extends Menu {
    /**
     * The ID of the anchor element (parent menu item)
     * @attribute
     */
    accessor anchor: string | undefined;
    /**
     * Reference to the parent menu
     */
    parentMenu: Menu | null;
    /**
     * Reference to the anchor element
     */
    get anchorElement(): MenuItem | null;
    connectedCallback(): void;
    protected updated(changedProperties: PropertyValues<this>): void;
    /**
     * Updates anchor positioning using CSS Anchor Positioning API
     */
    protected updateAnchorPositioning(): void;
    /**
     * Shows the submenu
     */
    show(): void;
    /**
     * Hides the submenu
     */
    hide(): void;
    /**
     * Sets the parent menu reference
     */
    setParentMenu(menu: Menu): void;
    /**
     * Handles selection events - bubbles them up to parent menu
     */
    notifySelect(item: UiListItem): boolean;
    /**
     * Handles keyboard navigation specific to submenus
     */
    handleKeydown(e: KeyboardEvent): void;
    render(): TemplateResult;
}
//# sourceMappingURL=SubMenu.d.ts.map