import type { Direction, ResizeEvent } from '../types'; /** * Options for the useResizer hook. */ export interface UseResizerOptions { direction: Direction; sizes: number[]; minSizes: number[]; maxSizes: number[]; snapPoints?: number[] | undefined; snapTolerance?: number | undefined; step?: number | undefined; onResizeStart?: ((event: ResizeEvent) => void) | undefined; onResize?: ((sizes: number[], event: ResizeEvent) => void) | undefined; onResizeEnd?: ((sizes: number[], event: ResizeEvent) => void) | undefined; } /** * Return type for the useResizer hook. */ export interface UseResizerResult { isDragging: boolean; currentSizes: number[]; handlePointerDown: (dividerIndex: number) => (e: React.PointerEvent) => void; } /** * Hook that handles pointer-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. * * Features: * - Unified pointer events (handles mouse, touch, and pen input) * - Pointer capture for reliable drag behavior * - RAF-throttled updates for smooth performance * - Snap points support * - Step-based resizing * * @param options - Configuration options for the resizer * @returns Handlers and state for resize interactions */ export declare function useResizer(options: UseResizerOptions): UseResizerResult; //# sourceMappingURL=useResizer.d.ts.map