Skip to content

TypeScript API / @laikacms/server/oauth2 / PasskeyCallbacks

Interface: PasskeyCallbacks ​

Callbacks for passkey storage operations

Methods ​

consumeChallenge() ​

ts
consumeChallenge(challenge): Promise<StoredChallenge | null>;

Get and delete a challenge (one-time use)

Parameters ​

ParameterType
challengestring

Returns ​

Promise<StoredChallenge | null>


deleteCredential() ​

ts
deleteCredential(credentialId): Promise<void>;

Delete a credential

Parameters ​

ParameterType
credentialIdstring

Returns ​

Promise<void>


getCredentialById() ​

ts
getCredentialById(credentialId): Promise<StoredCredential | null>;

Get credential by credential ID

Parameters ​

ParameterType
credentialIdstring

Returns ​

Promise<StoredCredential | null>


getCredentialsByUserId() ​

ts
getCredentialsByUserId(userId): Promise<StoredCredential[]>;

Get all credentials for a user

Parameters ​

ParameterType
userIdstring

Returns ​

Promise<StoredCredential[]>


getPendingPasskeySetupSession() ​

ts
getPendingPasskeySetupSession(sessionId): Promise<
  | {
  userId: string;
}
| null>;

Get a pending passkey setup session. Returns the userId if the session is valid and not expired, null otherwise.

Parameters ​

ParameterType
sessionIdstring

Returns ​

Promise< | { userId: string; } | null>


getUserByEmail() ​

ts
getUserByEmail(email): Promise<
  | {
  email: string;
  id: string;
  name?: string;
}
| null>;

Get user by email

Parameters ​

ParameterType
emailstring

Returns ​

Promise< | { email: string; id: string; name?: string; } | null>


getUserById() ​

ts
getUserById(userId): Promise<
  | {
  email: string;
  id: string;
  name?: string;
}
| null>;

Get user by ID

Parameters ​

ParameterType
userIdstring

Returns ​

Promise< | { email: string; id: string; name?: string; } | null>


storeChallenge() ​

ts
storeChallenge(challenge): Promise<void>;

Store a challenge temporarily

Parameters ​

ParameterType
challengeStoredChallenge

Returns ​

Promise<void>


storeCredential() ​

ts
storeCredential(credential): Promise<void>;

Store a credential

Parameters ​

ParameterType
credentialStoredCredential

Returns ​

Promise<void>


storePendingPasskeySetupSession() ​

ts
storePendingPasskeySetupSession(
   sessionId, 
   userId, 
   expiresAt
): Promise<void>;

Store a pending passkey setup session (after password verification, before passkey registration). This is separate from TOTP sessions to maintain clear security boundaries.

Parameters ​

ParameterType
sessionIdstring
userIdstring
expiresAtnumber

Returns ​

Promise<void>


updateCredential() ​

ts
updateCredential(credentialId, updates): Promise<void>;

Update credential (e.g., sign count)

Parameters ​

ParameterType
credentialIdstring
updatesPartial<StoredCredential>

Returns ​

Promise<void>

Released under the MIT License.