import { KeyboardEvent, RefObject } from 'react'; import { type IconName } from '../icon'; export interface MenuOption { label: string; iconName?: IconName; options?: MenuItem[]; disabled?: boolean; onClick?(): void; } export interface MenuGroup { groupLabel: string; groupOptions: MenuOption[]; } export type MenuItem = MenuGroup | MenuOption; interface ListOption extends MenuOption { focusIndex: number; options?: ListItem[]; ref: RefObject; } interface ListGroup extends MenuGroup { groupOptions: ListOption[]; } type ListItem = ListGroup | ListOption; export interface MenuProps { className?: string; id?: string; numberOfVisibleItems?: number; options: MenuItem[]; onKeyDown?(event: KeyboardEvent): void; onOptionSelect?(option: ListOption): void; } export declare const Menu: import("react").ForwardRefExoticComponent>; export {};