UNPKG

sdk-simple-auth

Version:

Universal JavaScript/TypeScript authentication SDK with multi-backend support, automatic token refresh, and React integration

77 lines 2.09 kB
import { StorageAdapter } from '../storage/StorageAdapter'; import { AuthConfig, AuthTokens, AuthUser } from '../types'; /** * Enhanced StorageManager with session persistence and automatic cleanup */ export declare class StorageManager { private storageAdapter; private config; constructor(config: Required<AuthConfig>['storage']); private createStorageAdapter; /** * Store tokens with enhanced metadata for session management */ storeTokens(tokens: AuthTokens): Promise<void>; /** * Store user information with session tracking */ storeUser(user: AuthUser): Promise<void>; /** * Retrieve stored tokens with validation and cleanup */ getStoredTokens(): Promise<AuthTokens | null>; /** * Retrieve stored user information */ getStoredUser(): Promise<AuthUser | null>; /** * Get token metadata for validation and session management */ getTokenMetadata(): Promise<{ storedAt?: number; lastRefreshed?: number; sessionId?: string; version?: string; } | null>; /** * Update last refresh timestamp when tokens are renewed */ updateLastRefreshTime(): Promise<void>; /** * Clear only token storage */ clearTokens(): Promise<void>; /** * Clear only user storage */ clearUser(): Promise<void>; /** * Clear all authentication storage */ clearAll(): Promise<void>; /** * Check if storage contains valid session data */ hasValidSession(): Promise<boolean>; /** * Generate unique session ID */ private generateSessionId; /** * Get current session ID */ private getCurrentSessionId; /** * Migrate from old storage format to new format */ migrateStorage(): Promise<void>; /** * Get storage adapter for advanced operations */ getAdapter(): StorageAdapter; /** * Get storage configuration */ getConfig(): Required<AuthConfig>['storage']; } //# sourceMappingURL=StorageManager.d.ts.map