/**
 * useKeyboardNav Hook
 *
 * Provides keyboard navigation for lists and tabs
 */
export interface UseKeyboardNavOptions {
    itemCount: number;
    initialIndex?: number;
    wrap?: boolean;
    onSelect?: (index: number) => void;
    onBack?: () => void;
    enabled?: boolean;
}
export interface KeyboardNavState {
    selectedIndex: number;
    setSelectedIndex: (index: number) => void;
    moveUp: () => void;
    moveDown: () => void;
    moveToTop: () => void;
    moveToBottom: () => void;
    select: () => void;
}
/**
 * Hook for keyboard navigation in lists
 */
export declare function useKeyboardNav({ itemCount, initialIndex, wrap, onSelect, onBack, enabled }: UseKeyboardNavOptions): KeyboardNavState;
/**
 * Hook for tab navigation
 */
export interface UseTabNavOptions {
    tabCount: number;
    initialTab?: number;
    onTabChange?: (index: number) => void;
    /** Optional validator — return false to block a tab switch (v2.2.6) */
    onTabValidate?: (index: number) => boolean;
    enabled?: boolean;
}
export interface TabNavState {
    activeTab: number;
    setActiveTab: (index: number) => void;
    nextTab: () => void;
    prevTab: () => void;
}
export declare function useTabNav({ tabCount, initialTab, onTabChange, onTabValidate, enabled }: UseTabNavOptions): TabNavState;
//# sourceMappingURL=useKeyboardNav.d.ts.map