/**
 * ScrollableBox Component
 *
 * A container with fixed height that supports internal scrolling
 * Uses up/down arrow keys or j/k to scroll when focused
 */
import type React from 'react';
export interface ScrollableBoxProps {
    /** Child elements to render */
    children: React.ReactNode;
    /** Fixed height in lines (if not set, uses maxHeight) */
    height?: number;
    /** Maximum height in lines (default: calculated from terminal) */
    maxHeight?: number;
    /** Current scroll offset (controlled mode) */
    scrollOffset?: number;
    /** Callback when scroll offset changes */
    onScroll?: (offset: number) => void;
    /** Whether to show scroll indicators */
    showScrollIndicators?: boolean;
}
export declare function ScrollableBox({ children, height, maxHeight, scrollOffset: controlledOffset, onScroll, showScrollIndicators }: ScrollableBoxProps): React.ReactElement;
/**
 * Hook for managing scroll state with keyboard navigation
 */
export declare function useScrollNavigation(totalItems: number, visibleItems: number, enabled?: boolean): {
    scrollOffset: number;
    setScrollOffset: React.Dispatch<React.SetStateAction<number>>;
    scrollUp: () => void;
    scrollDown: () => void;
    scrollToTop: () => void;
    scrollToBottom: () => void;
    canScrollUp: boolean;
    canScrollDown: boolean;
};
//# sourceMappingURL=ScrollableBox.d.ts.map