export declare function useSessionStorage(key: string, initialValue: T, options?: { /** * If true, value can be set to `undefined` and clearing the entry will set state to `undefined` */ allowUndefined?: T extends undefined ? boolean : never; /** * A function that alters the behavior of the stringification process of `JSON.stringify` * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#the_replacer_parameter */ replacer?: (key: string, value: any) => any; /** * A function that tranforms the value computed by `JSON.parse` * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse#the_reviver_parameter */ reviver?: (key: string, value: any) => any; }): readonly [T, (value: T | ((val: T) => T)) => void, () => void];