import { ButtonProps } from '../Button';
import { IconProps } from '../Icon';
import { DataTrackingId } from '../../types';
import { MenuCommonProps } from './types';
/**
 * Props for the Menu component
 * @extends Omit<ButtonProps, "icon">
 * @extends MenuCommonProps
 */
export type MenuProps = Omit<ButtonProps, "icon"> & MenuCommonProps & {
    /**
     * Icon to display on the menu button
     */
    icon?: IconProps["svg"];
} & DataTrackingId;
/**
 * Menu component for displaying dropdown menus with navigation and actions.
 *
 * Features:
 * - Supports both controlled and uncontrolled modes
 * - Automatic positioning with fallback strategies
 * - Keyboard navigation with arrow keys and escape
 * - Custom trigger elements
 * - Nested menu support
 * - Automatic height adjustment
 * - Scroll indicators for overflow content
 * - Fully accessible with proper ARIA attributes
 * - Outside click detection and handling
 *
 * @example
 * <Menu label="Edit">
 *   <Menu.Item label="Cut" onClick={() => console.log('Cut clicked')} />
 *   <Menu.Item label="Copy" onClick={() => console.log('Copy clicked')} />
 *   <Menu label="Copy as">
 *     <Menu.Item label="Text" onClick={() => console.log('Copy as Text')} />
 *     <Menu.Item label="Video" onClick={() => console.log('Copy as Video')} />
 *     <Menu label="Image">
 *       <Menu.Item label=".png" onClick={() => console.log('Copy as PNG')} />
 *       <Menu.Item label=".jpg" onClick={() => console.log('Copy as JPG')} />
 *     </Menu>
 *   </Menu>
 */
export declare const Menu: ((props: MenuProps) => import("react/jsx-runtime").JSX.Element) & {
    /**
     * MenuItem component for individual menu options.
     *
     * Features:
     * - Supports icons and labels
     * - Keyboard navigation support
     * - Disabled state handling
     * - Automatic menu closing on selection
     * - Fully accessible with proper ARIA attributes
     * - Focus management and tab index handling
     * - Click and mouse enter event handling
     *
     * @example
     * <Menu.Item
     *   label="Edit Profile"
     *   icon={EditIcon}
     *   onClick={() => console.log('Edit profile clicked')}
     * />
     */
    Item: import('react').ForwardRefExoticComponent<{
        icon?: IconProps["svg"];
        label: import('react').ReactNode;
        disabled?: boolean;
    } & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & DataTrackingId & import('react').ButtonHTMLAttributes<HTMLButtonElement> & import('react').RefAttributes<HTMLButtonElement>>;
};
