/**
 * @file TopNavMenu.tsx
 * @input Uses React, StyleX, usePopover, useMenuHover, useListFocus,
 *   useTypeahead, TopNavItem tokens
 * @output Exports TopNavMenu component and related types
 * @position Navigation item with hover-triggered overflow menu for TopNav
 *
 * SYNC: When modified, update these files to stay in sync:
 * - /packages/core/src/TopNav/TopNav.doc.mjs
 * - /packages/core/src/TopNav/TopNavMenu.test.tsx
 * - /packages/core/src/TopNav/index.ts
 * - /packages/cli/assets/templates/blocks/components/TopNav/ (showcase blocks)
 */
import React, { type ReactNode } from 'react';
import type { BaseProps } from '../BaseProps';
/**
 * An item in the TopNav overflow menu.
 */
export interface TopNavMenuItemData {
    /**
     * Display title for the menu item.
     */
    title: string;
    /**
     * Optional description text displayed below the title.
     */
    description?: string;
    /**
     * Optional icon element displayed to the left.
     */
    icon?: ReactNode;
    /**
     * URL to navigate to when clicked.
     */
    href?: string;
    /**
     * Callback when item is clicked.
     */
    onClick?: () => void;
}
export interface TopNavMenuProps extends BaseProps<HTMLButtonElement> {
    ref?: React.Ref<HTMLButtonElement>;
    /**
     * The visible label for the nav item trigger.
     */
    label: string;
    /**
     * Menu items to display in the hover popover.
     */
    items: TopNavMenuItemData[];
    /**
     * Delay before showing the menu on hover (ms).
     * @default 150
     */
    delay?: number;
    /**
     * Delay before hiding the menu after mouse leaves (ms).
     * @default 200
     */
    hideDelay?: number;
}
/**
 * A navigation item that displays a hover-triggered overflow menu.
 *
 * Renders as a nav item in TopNav's startContent slot. On hover,
 * shows a popover with rich menu items containing an icon, title,
 * and optional description.
 *
 * @example
 * ```
 * <TopNav
 *   startContent={
 *     <>
 *       <TopNavItem label="Home" href="/" isSelected />
 *       <TopNavMenu
 *         label="Products"
 *         items={[
 *           {
 *             title: 'Analytics',
 *             description: 'Track and analyze user behavior',
 *             icon: <ChartBarIcon />,
 *             href: '/products/analytics',
 *           },
 *           {
 *             title: 'Messaging',
 *             description: 'Real-time communication tools',
 *             icon: <ChatBubbleIcon />,
 *             href: '/products/messaging',
 *           },
 *         ]}
 *       />
 *     </>
 *   }
 * />
 * ```
 */
export declare function TopNavMenu({ ref, label, items, delay, hideDelay, }: TopNavMenuProps): React.JSX.Element | null;
export declare namespace TopNavMenu {
    var displayName: string;
}
//# sourceMappingURL=TopNavMenu.d.ts.map