import { ReactThrottlerOptions } from "./useThrottler.js"; import { AnyFunction } from "@tanstack/pacer/types"; //#region src/throttler/useThrottledCallback.d.ts /** * A React hook that creates a throttled version of a callback function. * This hook is essentially a wrapper around the basic `throttle` function * that is exported from `@tanstack/pacer`, * but optimized for React with reactive options and a stable function reference. * * The throttled function will execute at most once within the specified wait time period, * regardless of how many times it is called. If called multiple times during the wait period, * only the first invocation will execute, and subsequent calls will be ignored until * the wait period has elapsed. * * This hook provides a simpler API compared to `useThrottler`, making it ideal for basic * throttling needs. However, it does not expose the underlying Throttler instance. * * For advanced usage requiring features like: * - Manual cancellation * - Access to execution counts * - Custom useCallback dependencies * * Consider using the `useThrottler` hook instead. * * @example * ```tsx * // Throttle a window resize handler * const handleResize = useThrottledCallback(() => { * updateLayoutMeasurements(); * }, { * wait: 100 // Execute at most once every 100ms * }); * * // Use in an event listener * useEffect(() => { * window.addEventListener('resize', handleResize); * return () => window.removeEventListener('resize', handleResize); * }, [handleResize]); * ``` */ declare function useThrottledCallback(fn: TFn, options: ReactThrottlerOptions): (...args: Parameters) => void; //#endregion export { useThrottledCallback }; //# sourceMappingURL=useThrottledCallback.d.ts.map