UNPKG

981 BTypeScriptView Raw
1/// <reference types="node" />
2import { EventEmitter } from "events";
3import { ILoginInputOptions, ISessionInfo, IStorage } from "@inrupt/solid-client-authn-core";
4import ClientAuthentication from "./ClientAuthentication";
5export interface ISessionOptions {
6 secureStorage: IStorage;
7 insecureStorage: IStorage;
8 sessionInfo: ISessionInfo;
9 clientAuthentication: ClientAuthentication;
10}
11export declare class Session extends EventEmitter {
12 readonly info: ISessionInfo;
13 private clientAuthentication;
14 private tokenRequestInProgress;
15 constructor(sessionOptions?: Partial<ISessionOptions>, sessionId?: string);
16 login: (options: ILoginInputOptions) => Promise<void>;
17 fetch: (url: RequestInfo, init?: RequestInit | undefined) => Promise<Response>;
18 logout: () => Promise<void>;
19 handleIncomingRedirect: (url: string) => Promise<ISessionInfo | undefined>;
20 onLogin(callback: () => unknown): void;
21 onLogout(callback: () => unknown): void;
22}