export interface UseStableScrollOptions { /** * Maximum time (in ms) to wait for stability before scrolling anyway * @default 10000 */ maxStabilityWaitTime?: number; /** * Time to wait (in ms) after the last resize event before considering the layout stable * @default 200 */ stabilityWaitTime?: number; } export interface UseStableScrollReturn { /** * Cleans up all timers and observers */ cleanup: () => void; /** * Starts monitoring the container for stability and calls the callback when stable */ waitForStability: (container: HTMLElement, onStable: () => void) => void; } /** * Hook that provides functionality to wait for layout stability before performing an action. * Uses ResizeObserver to detect when a container has stopped resizing (e.g., images finished loading). */ export declare const useStableScroll: (options?: UseStableScrollOptions) => UseStableScrollReturn;