import { SetStateAction } from 'react'; export interface UseDebouncedStateOptions { /** * If `true`, the state will be updated immediately on the first call (leading edge). * Subsequent calls within the delay period will be debounced. * @default false */ leading?: boolean; } export type UseDebouncedStateReturnValue = [ T, (newValue: SetStateAction) => void ]; /** * A hook that debounces the state update. * @param defaultValue - The default value of the state. * @param delay - The delay time in milliseconds. * @param options - The options for the hook. * @returns A tuple containing the current value and the debounced set value function. * * @example * const [value, setValue] = useDebouncedState('Hello', 1000); * @example * const [value, setValue] = useDebouncedState('Hello', 1000, { leading: true }); */ export declare function useDebouncedState(defaultValue: T, delay: number, options?: UseDebouncedStateOptions): UseDebouncedStateReturnValue; //# sourceMappingURL=useDebouncedState.d.ts.map