28 lines
777 B
TypeScript
28 lines
777 B
TypeScript
|
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<JSONState> {
|
||
|
return {
|
||
|
user: await this.user.dehydrate(),
|
||
|
contextName: this.context.name,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
rehydrate(state: JSONState): Awaitable<void> { // eslint-disable-line @typescript-eslint/no-unused-vars
|
||
|
// TODO fill this in
|
||
|
}
|
||
|
}
|