@leancodepl/kratos
Version:
Headless React components library for building Ory Kratos authentication flows
89 lines • 2.74 kB
TypeScript
import { SessionDevice } from './SessionDevice';
import { SessionAuthenticationMethod } from './SessionAuthenticationMethod';
import { AuthenticatorAssuranceLevel } from './AuthenticatorAssuranceLevel';
import { Identity } from './Identity';
/**
* A Session
* @export
* @interface Session
*/
export interface Session {
/**
* Active state. If false the session is no longer active.
* @type {boolean}
* @memberof Session
*/
active?: boolean;
/**
* The Session Authentication Timestamp
*
* When this session was authenticated at. If multi-factor authentication was used this
* is the time when the last factor was authenticated (e.g. the TOTP code challenge was completed).
* @type {Date}
* @memberof Session
*/
authenticated_at?: Date;
/**
* A list of authenticators which were used to authenticate the session.
* @type {Array<SessionAuthenticationMethod>}
* @memberof Session
*/
authentication_methods?: Array<SessionAuthenticationMethod>;
/**
*
* @type {AuthenticatorAssuranceLevel}
* @memberof Session
*/
authenticator_assurance_level?: AuthenticatorAssuranceLevel;
/**
* Devices has history of all endpoints where the session was used
* @type {Array<SessionDevice>}
* @memberof Session
*/
devices?: Array<SessionDevice>;
/**
* The Session Expiry
*
* When this session expires at.
* @type {Date}
* @memberof Session
*/
expires_at?: Date;
/**
* Session ID
* @type {string}
* @memberof Session
*/
id: string;
/**
*
* @type {Identity}
* @memberof Session
*/
identity?: Identity;
/**
* The Session Issuance Timestamp
*
* When this session was issued at. Usually equal or close to `authenticated_at`.
* @type {Date}
* @memberof Session
*/
issued_at?: Date;
/**
* Tokenized is the tokenized (e.g. JWT) version of the session.
*
* It is only set when the `tokenize` query parameter was set to a valid tokenize template during calls to `/session/whoami`.
* @type {string}
* @memberof Session
*/
tokenized?: string;
}
/**
* Check if a given object implements the Session interface.
*/
export declare function instanceOfSession(value: object): value is Session;
export declare function SessionFromJSON(json: any): Session;
export declare function SessionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Session;
export declare function SessionToJSON(json: any): Session;
export declare function SessionToJSONTyped(value?: Session | null, ignoreDiscriminator?: boolean): any;
//# sourceMappingURL=Session.d.ts.map