interface UseLocalStorage<T> {
    key: string;
    defaultValue: T;
    getInitialValueInEffect?: boolean;
    serialize?(value: T): string;
    deserialize?(value?: string): T;
}
export declare function useLocalStorage<T = string>({ key, defaultValue, getInitialValueInEffect, deserialize, serialize, }: UseLocalStorage<T>): readonly [T, (val: T | ((prevState: T) => T)) => void];
export {};
