import { type FocusEvent, type FocusEventHandler, type KeyboardEvent, type MouseEvent, type MouseEventHandler } from "react"; import type { OverflowItem } from "../responsive"; type orientationType = "horizontal" | "vertical"; export interface ContainerNavigationProps { onBlur: FocusEventHandler; onFocus: FocusEventHandler; onMouseDownCapture: MouseEventHandler; onMouseLeave: MouseEventHandler; } interface TabstripNavigationHookProps { defaultHighlightedIdx?: number; highlightedIdx?: number; indexPositions: OverflowItem[]; keyBoardActivation?: "manual" | "automatic"; orientation: orientationType; selectedIndex: number | null; } interface TabstripNavigationHookResult { containerProps: ContainerNavigationProps; highlightedIdx: number; focusTab: (tabIndex: number, immediateFocus?: boolean, withKeyboard?: boolean) => void; focusVisible: number; focusIsWithinComponent: boolean; onClick: (evt: MouseEvent, tabIndex: number) => void; onFocus: (evt: FocusEvent) => void; onKeyDown: (evt: KeyboardEvent) => void; } export declare const useKeyboardNavigation: ({ defaultHighlightedIdx, highlightedIdx: highlightedIdxProp, indexPositions, keyBoardActivation, orientation, selectedIndex: selectedTabIndex, }: TabstripNavigationHookProps) => TabstripNavigationHookResult; export {};