/**
* 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