import React from 'react'; import { SubMenuNavigationTemplate } from './CustomContextMenu'; /** * Custom hook to handle context menu navigation. Return 3 handler functions. * * @param { number } transitionSpeed - speed of context menu transition when navigating between submenus. * @param { React.Dispatch> } setTransitionSpeed - setState function to update the transition speed. * @param { string[] } menuLabelStack - stack of menu labels representing the current path in the context menu. * @param { React.Dispatch> } setMenuLabelStack - setState function to update the menu label stack. * @param { string | undefined } activeMenuLabel - label of the currently active menu. * @param { React.Dispatch> } setActiveMenuLabel - setState function to update the active menu label. * @param { React.Dispatch> } setActiveMenuWidth - setState function to update the width of active menu's DOM element. * @param { React.Dispatch> } setSelectedIndex - setState function to update the selected index. * @param { SubMenuNavigationTemplate[] } menuCollection - array of all menus. * @param @optional { (height: number, width: number) => void } onMenuResize - function to handle menu resize behavior. * @returns { { handleNavigateToSubmenu: (parentLabel: string) => void, handleNavigateBackToParent: () => Promise, handleNavigateToBase: () => void } } */ export declare const useContextMenuNavigation: (transitionSpeed: number, setTransitionSpeed: React.Dispatch>, menuLabelStack: string[], setMenuLabelStack: React.Dispatch>, activeMenuLabel: string | undefined, setActiveMenuLabel: React.Dispatch>, setActiveMenuDimensions: React.Dispatch>, setSelectedIndex: React.Dispatch>, menuCollection: SubMenuNavigationTemplate[], onMenuResize?: ((height: number, width: number) => void) | undefined) => { handleNavigateToSubmenu: (parentLabel: string) => void; handleNavigateBackToParent: (submenuLabel: string, method?: 'click' | 'keyboard') => void; handleNavigateToBase: () => void; };