import { CardBackgroundProps } from '../CardBackground/CardBackground'; import { AvoidElement, OffsetXY, Placement } from '../../hooks/useFloatingPosition'; import { MenuHandle } from './useMenuControl'; type MenuVariant = "list" | "drawer"; interface MenuProps { variant?: MenuVariant; cardBackground?: CardBackgroundProps; className?: string; children: React.ReactNode; triggerRef?: React.RefObject; anchorRef?: React.RefObject; placement?: Placement; offset?: number | OffsetXY; matchTriggerWidth?: boolean; attachToParent?: boolean; closeOnScroll?: boolean; closeOnClickOutside?: boolean; zIndex?: number; avoidElements?: AvoidElement[]; /** Si el panel tapa el trigger tras reposicionar, scrollea para destaparlo. */ scrollTriggerWhenCovered?: boolean; snapPoints?: (string | number | "auto")[]; /** Whether the drawer shows a modal overlay. Default: true. Only applies to drawer variant. */ modal?: boolean; /** Whether clicking the overlay closes the drawer. Default: true. Only applies to drawer variant. */ closeOnOverlayClick?: boolean; /**Menu Drawer: Whether to hide the close button. Default: false. */ hideCloseButton?: boolean; /**Menu Drawer: Whether to hide the close button. Default: false. */ hideOnClose?: boolean; /**Menu Drawer: Whether to unmount the children when the drawer is closed. Default: true. */ unmountChildrenOnClose?: boolean; onClose?: () => void; onOpen?: (context?: TContext) => void; } type MenuRootComponent = { (props: MenuProps & React.RefAttributes | null>): React.ReactElement | null; }; declare const Menu: MenuRootComponent & { Header: import('react').NamedExoticComponent; Content: import('react').NamedExoticComponent; Footer: import('react').NamedExoticComponent; }; export default Menu; export type { MenuProps }; export type { MenuHandle } from './useMenuControl';