import type { Direction, ResizeEvent } from '../types';
/**
 * Options for the useKeyboardResize hook.
 */
export interface UseKeyboardResizeOptions {
    direction: Direction;
    sizes: number[];
    minSizes: number[];
    maxSizes: number[];
    step?: number | undefined;
    largeStep?: number | undefined;
    onResize?: ((sizes: number[], event: ResizeEvent) => void) | undefined;
    onResizeEnd?: ((sizes: number[], event: ResizeEvent) => void) | undefined;
}
/**
 * Hook that handles keyboard-based resizing of panes.
 *
 * This is a low-level hook used internally by SplitPane. For most use cases,
 * you should use the SplitPane component directly.
 *
 * Supported keys:
 * - Arrow keys: Resize by step (default 10px)
 * - Shift + Arrow: Resize by large step (default 50px)
 * - Home: Minimize the left/top pane to its minimum size
 * - End: Maximize the left/top pane to its maximum size
 * - Escape: Restore pane sizes to what they were when keyboard interaction started
 *
 * @param options - Configuration options for keyboard resize
 * @returns Handler for keyboard events
 */
export declare function useKeyboardResize(options: UseKeyboardResizeOptions): {
    handleKeyDown: (dividerIndex: number) => (e: React.KeyboardEvent) => void;
};
//# sourceMappingURL=useKeyboardResize.d.ts.map