import { Storage } from './Storage'; export declare class SessionStorage extends Storage { /** * Get a value from the session storage. * @param key - The storage key. * @param defaultValue - The default value to return if the key is not found. * @returns the value from the session storage. * @throws if the session storage is not supported. * @example * ```typescript * const storage = new SessionStorage('oauth') * storage.set('test', 'value') * expect(storage.get('test')).toBe('value') * ``` */ get(key: string, defaultValue?: string): string | undefined; /** * Set a value in the session storage. * @param key - The storage key. * @param value - The value to store. * @throws if the session storage is not supported. * @example * ```typescript * const storage = new SessionStorage('oauth') * storage.set('test', 'value') * expect(storage.get('test')).toBe('value') * ``` */ set(key: string, value?: string | null): void; /** * Delete a value from the session storage. * @param key - The storage key. * @throws if the session storage is not supported. * @example * ```typescript * const storage = new SessionStorage('oauth') * storage.set('test', 'value') * expect(storage.get('test')).toBe('value') * storage.delete('test') * expect(storage.get('test')).toBeNull() * ``` */ delete(key: string): void; /** * Clear all values from the session storage. * @throws if the session storage is not supported. * @example * ```typescript * const storage = new SessionStorage('oauth') * storage.set('test', 'value') * expect(storage.get('test')).toBe('value') * storage.clear() * expect(storage.get('test')).toBeNull() * ``` */ clear(): void; /** * Determines if the current browser supports session storage. * @returns true if the session storage is supported. * @example * ```typescript * expect(SessionStorage.supported()).toBe(true) * ``` */ static supported(): boolean; private _checkSupport; }