/**
 * @fileoverview Menu component with glassmorphic styling
 */
import React from 'react';
export interface MenuItem {
    /** Unique identifier */
    id: string;
    /** Menu item label */
    label: string;
    /** Optional icon */
    icon?: React.ReactNode;
    /** Whether item is disabled */
    disabled?: boolean;
    /** Whether item is a divider */
    divider?: boolean;
    /** Submenu items */
    children?: MenuItem[];
    /** Click handler */
    onClick?: () => void;
    /** Custom className */
    className?: string;
    /** Badge content */
    badge?: string | number;
    /** Keyboard shortcut */
    shortcut?: string;
}
export interface MenuProps {
    /** Menu items */
    items: MenuItem[];
    /** Trigger element */
    trigger: React.ReactNode;
    /** Menu placement */
    placement?: 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end' | 'left-start' | 'left-end' | 'right-start' | 'right-end';
    /** Glass effect intensity */
    glassIntensity?: 'light' | 'medium' | 'heavy';
    /** Whether menu is disabled */
    disabled?: boolean;
    /** Trigger mode */
    triggerMode?: 'click' | 'hover' | 'contextmenu';
    /** Whether menu is open (controlled) */
    open?: boolean;
    /** Open change handler */
    onOpenChange?: (open: boolean) => void;
    /** Item select handler */
    onSelect?: (item: MenuItem) => void;
    /** Whether to close on item select */
    closeOnSelect?: boolean;
    /** Menu width */
    width?: string | number;
    /** Maximum height */
    maxHeight?: string | number;
    /** Custom className */
    className?: string;
    /** Offset from trigger */
    offset?: number;
    /** Whether to show arrow */
    showArrow?: boolean;
    /** Z-index */
    zIndex?: number;
}
export declare const Menu: React.FC<MenuProps>;
