export type StorageType = 'localStorage' | 'sessionStorage';
/**
 * A custom hook for managing state stored in localStorage.
 *
 * @param key The key under which the state will be stored in localStorage.
 * @param defaultValue The initial value for the state, or a function that returns the initial value.
 *
 * @returns A tuple containing the state value, a function to update the state, and a function
 *          to remove the value from localStorage.
 */
export declare const useLocalStorage: <T>(key: string, defaultValue: T | (() => T)) => [T | undefined, React.Dispatch<React.SetStateAction<T | undefined>>, () => void];
/**
 * A custom hook for managing state stored in sessionStorage.
 *
 * @param key The key under which the state will be stored in sessionStorage.
 * @param defaultValue The initial value for the state, or a function that returns the initial value.
 *
 * @returns A tuple containing the state value, a function to update the state,
 *          and a function to remove the value from sessionStorage.
 */
export declare const useSessionStorage: <T>(key: string, defaultValue: T | (() => T)) => [T | undefined, React.Dispatch<React.SetStateAction<T | undefined>>, () => void];
