/** * @hidden * @packageDocumentation */ import type { EventEmitter } from "events"; import type ILoginInputOptions from "../ILoginInputOptions"; /** * We extend our public login option interface to add data and/or constraints * necessary for our internal use. * * @hidden */ export default interface ILoginOptions extends ILoginInputOptions { sessionId: string; /** * Specify whether the Solid Identity Provider may, or may not, interact with the user (for example, * the normal login process **_requires_** human interaction for them to enter their credentials, * but if a user simply refreshes the current page in their browser, we'll want to log them in again * automatically, i.e., without prompting them to manually provide their credentials again). */ prompt?: string; tokenType: "DPoP" | "Bearer"; /** * Event emitter enabling calling user-specified callbacks. */ eventEmitter?: EventEmitter; /** * Whether the session is refreshed in the background or not. */ keepAlive?: boolean; }