register

suspend fun register(displayName: String? = null): Result<CredentialInfo>

Register a new passkey via WebAuthn ceremony.

Flow:

  1. Begin registration with backend

  2. Create passkey with platform authenticator

  3. Finish registration with backend (gets tokens)

  4. Store credential in registry

  5. Store access/refresh tokens

Return

CredentialInfo for the newly registered passkey

Parameters

displayName

Optional display name for the credential (e.g., "iPhone 15")