{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "use-debounce",
  "type": "registry:hook",
  "title": "useDebounce",
  "description": "Debounces a changing value (KokonutUI, MIT).",
  "files": [
    {
      "path": "registry/hooks/use-debounce.ts",
      "type": "registry:hook",
      "content": "/* use-debounce — KokonutUI (MIT). https://github.com/kokonut-labs/kokonutui\n   Debounces a changing value; returns the settled value after `delay` ms. */\nimport { useEffect, useState } from \"react\";\n\nfunction useDebounce<T>(value: T, delay = 500): T {\n  const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n  useEffect(() => {\n    const timer = setTimeout(() => {\n      setDebouncedValue(value);\n    }, delay);\n\n    return () => {\n      clearTimeout(timer);\n    };\n  }, [value, delay]);\n\n  return debouncedValue;\n}\n\nexport default useDebounce;\n"
    }
  ]
}
