import {Event} from '../../event/Event' import {SecurityContext} from '../SecurityContext' import {Awaitable, JSONState} from '../../util' import {Authenticatable} from '../types' /** * Event fired when a security context for a given user is resumed. */ export class UserAuthenticationResumedEvent extends Event { constructor( public readonly user: Authenticatable, public readonly context: SecurityContext, ) { super() } async dehydrate(): Promise { return { user: await this.user.dehydrate(), contextName: this.context.name, } } rehydrate(state: JSONState): Awaitable { // eslint-disable-line @typescript-eslint/no-unused-vars // TODO fill this in } }