/** * Throttles a function call, ensuring it's only called once within the specified delay period. * Useful for rate-limiting event handlers like scroll, resize, or mousemove. * * @template T - The function type to be throttled * @param callback - The function to throttle * @param delay - The minimum time in milliseconds between function calls (default: 300ms) * @returns A throttled version of the callback function * * @example * ```tsx * function ScrollComponent() { * const handleScroll = useThrottle(() => { * console.log('Scrolled'); * }, 100); * * return
Content
; * } * ``` * * @example * ```tsx * function ResizeObserver() { * const handleResize = useThrottle((width: number, height: number) => { * console.log('Window resized:', width, height); * }, 200); * * useEffect(() => { * const listener = () => handleResize(window.innerWidth, window.innerHeight); * window.addEventListener('resize', listener); * return () => window.removeEventListener('resize', listener); * }, [handleResize]); * } * ``` */ export declare function useThrottle(callback: (...args: TArgs) => void, delay?: number): (...args: TArgs) => void; //# sourceMappingURL=useThrottle.d.ts.map