import { RefObject } from 'react'; interface UseResizeObserverOptions { /** * Callback function called when element is resized */ onResize: (entry: ResizeObserverEntry) => void; /** * Existing ref to observe (optional - will create one if not provided) */ ref?: RefObject; /** * Debounce delay in milliseconds (default: 100ms) */ debounceMs?: number; /** * Whether to observe box model (default: 'content-box') */ box?: ResizeObserverBoxOptions; } /** * Shared ResizeObserver hook with debouncing for performance * Prevents excessive reflows and layout thrashing * * @example * // With existing ref * const containerRef = useRef(null) * useResizeObserver({ ref: containerRef, onResize: () => console.log('resized') }) * * @example * // Without ref (returns a ref) * const resizeRef = useResizeObserver({ onResize: () => console.log('resized') }) */ export declare function useResizeObserver(options: UseResizeObserverOptions): RefObject; export {};