Skip to main content

Abstract Class: BaseAuthOTPRoute<U, A, S>

Defined in: src/routes/BaseAuthOTPRoute.ts:21

Extended by

Type Parameters

U

U extends User

A

A extends Alias

S

S extends Secret

Constructors

Constructor

new BaseAuthOTPRoute<U, A, S>(): BaseAuthOTPRoute<U, A, S>

Returns

BaseAuthOTPRoute<U, A, S>

Properties

aliasClass

abstract protected aliasClass: any

Defined in: src/routes/BaseAuthOTPRoute.ts:22


aliasRepo?

protected optional aliasRepo?: RepoUtils<A>

Defined in: src/routes/BaseAuthOTPRoute.ts:26


authMiddleware?

protected optional authMiddleware?: AuthMiddleware

Defined in: src/routes/BaseAuthOTPRoute.ts:29


jwtConfig?

protected optional jwtConfig?: any

Defined in: src/routes/BaseAuthOTPRoute.ts:32


messagingUtils?

protected optional messagingUtils?: MessagingUtils

Defined in: src/routes/BaseAuthOTPRoute.ts:38


objectFactory?

protected optional objectFactory?: ObjectFactory

Defined in: src/routes/BaseAuthOTPRoute.ts:35


secretClass

abstract protected secretClass: any

Defined in: src/routes/BaseAuthOTPRoute.ts:23


secretRepo?

protected optional secretRepo?: RepoUtils<S>

Defined in: src/routes/BaseAuthOTPRoute.ts:40


template

protected template: string = "login-otp"

Defined in: src/routes/BaseAuthOTPRoute.ts:43

The name of the messaging template to use for sending notifications.


userClass

abstract protected userClass: any

Defined in: src/routes/BaseAuthOTPRoute.ts:24


userRepo?

protected optional userRepo?: RepoUtils<U>

Defined in: src/routes/BaseAuthOTPRoute.ts:45


userUtils?

protected optional userUtils?: UserUtils<U, A>

Defined in: src/routes/BaseAuthOTPRoute.ts:47

Methods

authenticate()

authenticate(user): Promise<AuthResult | undefined>

Defined in: src/routes/BaseAuthOTPRoute.ts:112

Authenticates the user using OTP and returns a JSON Web Token access token to be used with future API requests.

Parameters

user

JWTUser

Returns

Promise<AuthResult | undefined>


convertAliasType()

protected convertAliasType(type): OTPContactType

Defined in: src/routes/BaseAuthOTPRoute.ts:120

Parameters

type

AliasType

Returns

OTPContactType


getContact()

protected getContact(id): Promise<OTPContact | undefined>

Defined in: src/routes/BaseAuthOTPRoute.ts:136

Retrieves the alias with the given unique id.

Parameters

id

string

The unique id of the alias to retrieve.

Returns

Promise<OTPContact | undefined>

The alias if found, otherwise undefined.


getContacts()

protected getContacts(id): Promise<OTPContact[]>

Defined in: src/routes/BaseAuthOTPRoute.ts:156

Retrieves all aliases for the user with the given id.

Parameters

id

string

The unique id of the user to lookup.

Returns

Promise<OTPContact[]>


getUser()

protected getUser(uid): Promise<JWTUser | undefined>

Defined in: src/routes/BaseAuthOTPRoute.ts:196

Retrieves the user with the given unique id.

Parameters

uid

string

The unique id of the user to retrieve.

Returns

Promise<JWTUser | undefined>

The user if found, otherwise undefined.


initialize()

protected initialize(): Promise<void>

Defined in: src/routes/BaseAuthOTPRoute.ts:53

Called on server startup to initialize the route with any defaults.

Returns

Promise<void>


notifyContact()

protected notifyContact(contact, totp): Promise<void>

Defined in: src/routes/BaseAuthOTPRoute.ts:203

Parameters

contact

OTPContact

totp

string

Returns

Promise<void>