import { useState, useEffect } from "react"; function useLocalStorage(key: string, initialValue: T): [T, (value: T) => void] { const [value, setValue] = useState(() => { const item = localStorage.getItem(key); return item ? JSON.parse(item) : initialValue; }); useEffect(() => { localStorage.setItem(key, JSON.stringify(value)); }, [key, value]); return [value, setValue]; } export default useLocalStorage;