/** * Returns value after a specified time period has passed without any further changes * * @param {T} value - value to be debounced * @param {number} delay - wait time before updating debounce value * @param {object} options - set of options to tweak behavior * @param {boolean} options.instantClear - with !value, instantly update debouncedValue * @returns {T} debouncedValue */ export default function useDebounce(value: T, delay: number, options?: { instantClear?: boolean; }): T;