import { debounce } from 'lodash'; /** * Creates a debounced version of a callback function that automatically cleans up on unmount. * The debounced function is recreated when delay or options change. * * @template T - The type of the callback function * @param callback - The callback function to debounce * @param delay - The delay in milliseconds for the debounce * @param options - Optional lodash debounce options (leading, trailing, maxWait) * @returns A debounced version of the callback that cancels on unmount * * @example * ```tsx * const handleSearch = useDebouncedCallback((value: string) => { * onSearchChange(value); * }, 250); * * // With options * const handleClick = useDebouncedCallback(() => { * onClick(); * }, 1000, { leading: true, trailing: false }); * ``` */ export declare const useDebouncedCallback: any>(callback: T, delay: number, options?: Parameters[2]) => import("lodash").DebouncedFunc<(...args: Parameters) => any>; //# sourceMappingURL=useDebouncedCallback.d.ts.map