type SessionStorageOptions = { serialize?: (value: T) => string; deserialize?: (value: string) => T; }; type SetSessionStorageStateAction = T | ((previousValue: T) => T); declare function useSessionStorageState(key: string, initialValue: T | (() => T), options?: SessionStorageOptions): readonly [T, (value: SetSessionStorageStateAction) => void, () => void]; export { useSessionStorageState }; export type { SessionStorageOptions, SetSessionStorageStateAction };