rooks
Version:
Essential React custom hooks ⚓ to super charge your components!
18 lines • 1.02 kB
TypeScript
import type { SetStateAction, Dispatch } from "react";
type UseDebouncedValueOptions<TInitializeWithNull extends boolean = false> = Partial<{
initializeWithNull: TInitializeWithNull;
}>;
type UseDebouncedValueReturnType<TValue = unknown, TInitializeWithNull extends boolean = false> = [
debouncedValue: TInitializeWithNull extends true ? TValue | null : TValue,
immediatelyUpdateDebouncedValue: Dispatch<SetStateAction<TInitializeWithNull extends true ? TValue | null : TValue>>
];
/**
* useDebouncedValue
* @param value The value to debounce
* @param timeout The duration to debounce
* @param options The options object.
* @see https://rooks.vercel.app/docs/hooks/useDebouncedValue
*/
export declare const useDebouncedValue: <TValue = unknown, TInitializeWithNull extends boolean = false>(value: TValue, timeout: number, options?: UseDebouncedValueOptions<TInitializeWithNull>) => UseDebouncedValueReturnType<TValue, TInitializeWithNull>;
export {};
//# sourceMappingURL=useDebouncedValue.d.ts.map