/** * @hidden * @packageDocumentation */ import type { ISessionInfo, ISessionInternalInfo } from "./ISessionInfo"; import type { AuthorizationRequestState } from "../SessionEventListener"; /** * @hidden */ export interface ISessionInfoManagerOptions { loggedIn?: boolean; webId?: string; } /** * @hidden */ export interface ISessionInfoManager { update(sessionId: string, options: ISessionInfoManagerOptions): Promise; /** * Sets complete session information in storage. * @param sessionId The ID of the session to update * @param sessionInfo The session information to store */ set(sessionId: string, sessionInfo: Partial): Promise; /** * Returns all information about a registered session * @param sessionId */ get(sessionId: string): Promise<(ISessionInfo & ISessionInternalInfo) | undefined>; /** * Returns all information about all registered sessions */ getAll(): Promise<(ISessionInfo & ISessionInternalInfo)[]>; /** * Registers a new session, so that its ID can be retrieved. * @param sessionId */ register(sessionId: string): Promise; /** * Returns all the registered session IDs. Differs from getAll, which also * returns additional session information. */ getRegisteredSessionIdAll(): Promise; /** * Deletes all information regarding one session, including its registration. * @param sessionId */ clear(sessionId: string): Promise; /** * Deletes all information about all sessions, including their registrations. */ clearAll(): Promise; /** * Sets authorization request state in storage for a given session ID. * * @param {string} sessionId - The ID of the session to update * @param {AuthorizationRequestState} authorizationRequestState - The state representing the authorization request context for OIDC */ setOidcContext(sessionId: string, authorizationRequestState: AuthorizationRequestState): Promise; } export declare const USER_SESSION_PREFIX = "solidClientAuthenticationUser";