/// export declare type ScopeElement = HTMLElement | React.RefObject | React.MutableRefObject; export interface SelectorOptions { selector?: string; extendSelector?: string; } export interface UseArrowNavProps { /** Completely disables any activity of the hook */ disabled?: boolean; /** Called on each arrow keydown (before focus move) */ onKeyDown?: (event: KeyboardEvent, data: { /** Returns currently active element */ active?: HTMLElement; /** Returns element to be focused in the next moment */ next?: HTMLElement; /** May be called conditionaly to override default behavior of focus move */ disableOnce?: () => void; }) => void; /** Povides control over focusable elements */ focusableSelector?: SelectorOptions; scope?: ScopeElement | ScopeElement[]; handleX?: boolean; handleY?: boolean; loop?: boolean; tabIndexGroup?: boolean; } export declare const useArrowNav: (props?: UseArrowNavProps) => React.RefObject;