UNPKG

@analog-tools/auth

Version:

Authentication module for AnalogJS applications

27 lines (26 loc) 1.12 kB
import { H3Event } from 'h3'; import { AuthSessionData, SessionWithSave, SessionWithHandler } from '../types/auth-session.types'; import { SessionStorageConfig } from '../types/auth.types'; export declare class SessionService { static readonly INJECTABLE = true; private readonly storageConfig; private store; private logger; constructor(config: SessionStorageConfig); initSession(event: H3Event): Promise<void>; /** * Get a session by session ID * @param sessionId The session ID * @returns The session object or null if not found */ getSession(sessionId: string): Promise<SessionWithSave | null>; /** * Get all active sessions from storage * @returns Array of session objects with update capability */ getActiveSessions(): Promise<SessionWithHandler[]>; destroyAuthSession(event: H3Event): Promise<void>; getSessionData<T>(event: H3Event, key: keyof AuthSessionData): Promise<T | null>; setSessionData<T>(event: H3Event, key: keyof AuthSessionData, value: T): Promise<void>; isValidSession(event: H3Event): Promise<boolean>; }