WalletSdkBridge

iOS-facing bridge around MobileWallet operations.

The bridge keeps errors and results explicit for Swift callers while preserving the small cross-platform wallet API shape.

Constructors

Link copied to clipboard
constructor(wallet: MobileWallet)

Creates a bridge backed by the supplied MobileWallet.

Properties

Link copied to clipboard
val events: Flow<MobileWalletEvent>

Buffered stream of recent issuance and presentation events emitted by the bridged wallet.

Functions

Link copied to clipboard
suspend fun beginAuthorizationIssuance(sessionId: String): WalletBridgeResult<WalletIssuanceAuthorization>

Starts the authorization-code browser request for an accepted issuance session.

Link copied to clipboard
suspend fun bootstrap(keyType: MobileWalletKeyType? = null, didMethod: String = "key", keyUseAuthorizationPolicy: WalletBridgeKeyUseAuthorizationPolicy? = null): WalletBridgeResult<MobileWalletBootstrapResult>

Initializes the bridged wallet and returns the persisted key and DID information.

Link copied to clipboard
suspend fun cancelIssuance(sessionId: String): WalletBridgeResult<WalletIssuanceOutcome>

Cancels one active issuance session and discards its continuation material.

Link copied to clipboard
suspend fun continueAuthorizationIssuance(sessionId: String, callbackUri: String): WalletBridgeResult<WalletIssuanceOutcome>

Continues one authorization-code issuance session after its browser callback.

Link copied to clipboard
suspend fun continuePreAuthorizedIssuance(sessionId: String, transactionCode: String? = null): WalletBridgeResult<WalletIssuanceOutcome>

Continues one reviewed pre-authorized issuance session.

Link copied to clipboard
suspend fun credentials(): WalletBridgeResult<List<MobileWalletCredential>>

Lists credential summaries stored in the bridged wallet.

Link copied to clipboard

Deletes wallet-local state and managed persistence material.

Link copied to clipboard
fun digitalCredentialCapabilities(): MobileWalletDigitalCredentialCapabilities

Returns the current iOS IdentityDocumentServices capability snapshot.

Link copied to clipboard
suspend fun discardPresentationPreview(previewHandle: MobileWalletPresentationPreviewHandle): WalletBridgeResult<Unit>

Discards one reviewed presentation locally.

Link copied to clipboard
suspend fun keyUseAuthorizationPreflight(keyType: MobileWalletKeyType = MobileWalletKeyType.secp256r1, policy: WalletBridgeKeyUseAuthorizationPolicy = WalletBridgeKeyUseAuthorizationPolicy.BiometricCurrentSet): WalletBridgeResult<WalletBridgeKeyPreflight>

Checks whether a key-use authorization request is supported without creating a key.

Link copied to clipboard
suspend fun present(requestUrl: String, did: String? = null, runPolicies: Boolean? = null): WalletBridgeResult<MobileWalletPresentationResult>

Presents matching wallet credentials to an OpenID4VP verifier request.

Link copied to clipboard
suspend fun previewAnnexCPresentation(request: MobileWalletAnnexCRequest): WalletBridgeResult<MobileWalletAnnexCPreview>

Retains a parsed Annex C request for explicit native consent.

Link copied to clipboard
suspend fun previewPresentation(requestUrl: String): WalletBridgeResult<MobileWalletPresentationPreviewResult>

Resolves and previews an OpenID4VP presentation request without submitting credentials.

Link copied to clipboard
suspend fun rejectPresentation(previewHandle: MobileWalletPresentationPreviewHandle, errorCode: MobileWalletPresentationErrorCode? = null, errorDescription: String? = null): WalletBridgeResult<MobileWalletPresentationResult>

Rejects one reviewed presentation and consumes its preview.

Link copied to clipboard
suspend fun resumeDeferredIssuance(deferredCredentialId: String): WalletBridgeResult<WalletIssuanceOutcome>

Resumes one deferred credential issuance result.

Link copied to clipboard
suspend fun startIssuance(request: MobileWalletIssuanceRequest): WalletBridgeResult<WalletIssuanceSession>

Resolves an offer and starts its bound OpenID4VCI issuance session.

Link copied to clipboard
suspend fun submitAnnexCPresentation(submission: MobileWalletAnnexCSubmission): WalletBridgeResult<MobileWalletDigitalCredentialResponse>

Verifies the post-consent raw request and builds the encrypted Annex C response.

Link copied to clipboard
suspend fun submitPresentation(previewHandle: MobileWalletPresentationPreviewHandle, selectedCredentialOptions: List<MobileWalletPresentationCredentialSelection>, selectedDisclosureOptions: List<MobileWalletPresentationDisclosureSelection>? = null, did: String? = null, runPolicies: Boolean? = null): WalletBridgeResult<MobileWalletPresentationResult>

Submits a presentation using user-selected wallet credential options.