interface MenuKeyboardEvent { key: string; currentTarget: EventTarget | null; preventDefault: () => void; stopPropagation: () => void; } export declare const handleMenuItemKeydown: (event: MenuKeyboardEvent, activate: () => void) => void; /** * The first menu item directly inside `list`. Nested submenu lists and group lists own * their items, so they are skipped. Unlike sibling navigation this does not require a * laid-out box, because it runs right after the list has just been opened. */ export declare const firstMenuItemOf: (list: HTMLElement | null) => HTMLElement | null; /** * Expands a submenu with the arrow that belongs to the orientation of the list holding it * (ArrowDown inside a horizontal menubar, ArrowRight inside a vertical/inline menu), and * with Enter/Space while it is still closed. Returns `true` when the event was consumed. */ export declare const handleSubMenuTitleKeydown: (event: MenuKeyboardEvent, state: { isMenubarItem: boolean; opened: boolean; }, actions: { expandAndFocusFirst: () => void; }) => boolean; /** * Escape inside an open submenu closes just that level and hands focus back to its * trigger, so nested levels unwind one step at a time. */ export declare const handleSubMenuListKeydown: (event: MenuKeyboardEvent, closeAndRefocusTrigger: () => void) => boolean; export {};