MobileWalletConfig

data class MobileWalletConfig(val walletId: String = "default", val attestationConfig: WalletAttestationConfig? = null, val persistence: MobileWalletPersistence = MobileWalletPersistence(), val onEvent: suspend (MobileWalletEvent) -> Unit = {}, val preferredLocales: List<String> = emptyList(), val transactionDataProfiles: List<MobileWalletTransactionDataProfile> = emptyList(), val paymentCredentialIssuers: List<PaymentCredentialIssuer> = emptyList(), val credentialIssuerMetadataTrustResolver: CredentialIssuerMetadataTrustResolver? = null, val credentialRegistry: MobileWalletCredentialRegistry = UnavailableMobileWalletCredentialRegistry, val readerTrustEvaluator: ReaderTrustEvaluator = MdocReaderAuthenticationTrustEvaluator, val crossProcessAccess: MobileWalletCrossProcessAccess? = null, val onDigitalCredentialRegistryChanged: suspend () -> Unit = {}, val defaultKeyUseAuthorizationPolicy: KeyUseAuthorizationPolicy = KeyUseAuthorizationPolicy.BiometricCurrentSet, val keyUseAuthorizationPrompt: KeyUseAuthorizationPrompt = KeyUseAuthorizationPrompt(), val signingIdentity: SigningIdentityConfiguration = id.walt.wallet2.mobile.identity.SigningIdentityConfiguration())

Configuration for creating a MobileWallet.

Constructors

Link copied to clipboard
constructor(walletId: String = "default", attestationConfig: WalletAttestationConfig? = null, persistence: MobileWalletPersistence = MobileWalletPersistence(), onEvent: suspend (MobileWalletEvent) -> Unit = {}, preferredLocales: List<String> = emptyList(), transactionDataProfiles: List<MobileWalletTransactionDataProfile> = emptyList(), paymentCredentialIssuers: List<PaymentCredentialIssuer> = emptyList(), credentialIssuerMetadataTrustResolver: CredentialIssuerMetadataTrustResolver? = null, credentialRegistry: MobileWalletCredentialRegistry = UnavailableMobileWalletCredentialRegistry, readerTrustEvaluator: ReaderTrustEvaluator = MdocReaderAuthenticationTrustEvaluator, crossProcessAccess: MobileWalletCrossProcessAccess? = null, onDigitalCredentialRegistryChanged: suspend () -> Unit = {}, defaultKeyUseAuthorizationPolicy: KeyUseAuthorizationPolicy = KeyUseAuthorizationPolicy.BiometricCurrentSet, keyUseAuthorizationPrompt: KeyUseAuthorizationPrompt = KeyUseAuthorizationPrompt(), signingIdentity: SigningIdentityConfiguration = id.walt.wallet2.mobile.identity.SigningIdentityConfiguration())

Properties

Link copied to clipboard

Optional client-attestation configuration for issuer deployments that require it.

Link copied to clipboard
val credentialIssuerMetadataTrustResolver: CredentialIssuerMetadataTrustResolver?

Optional trust boundary for signed Credential Issuer Metadata. When absent, signed metadata is neither requested nor accepted.

Link copied to clipboard

Platform metadata registry. Platform factories install their native default when omitted.

Link copied to clipboard

Optional shared-container/keychain configuration for provider extensions.

Link copied to clipboard
val defaultKeyUseAuthorizationPolicy: KeyUseAuthorizationPolicy

Authorization policy used for newly created keys. The policy never changes an existing persisted key.

Link copied to clipboard
val keyUseAuthorizationPrompt: KeyUseAuthorizationPrompt

Prompt text used for protected signing operations.

Link copied to clipboard

Called after a credential-set mutation republishes platform registration metadata. Failures do not roll back the committed wallet mutation.

Link copied to clipboard
val onEvent: suspend (MobileWalletEvent) -> Unit

Optional callback for observing wallet issuance and presentation session events.

Link copied to clipboard
val paymentCredentialIssuers: List<PaymentCredentialIssuer>

Independent verification keys for issuers whose SD-JWT payment consent this wallet accepts.

Link copied to clipboard

Persistence mode used for wallet-local state.

Link copied to clipboard

Ordered BCP 47 locale preferences used for progressive language-tag lookup. Display metadata falls back to an unlocalized entry and then the first entry. Payment consent instead requires a complete catalogue in a preferred exact or base language and blocks when none matches.

Link copied to clipboard
val readerTrustEvaluator: ReaderTrustEvaluator

Application trust policy for verified ISO 18013-7 Annex C reader authentication.

Link copied to clipboard

Signing identity lifecycle and opt-in recovery integrations.

Link copied to clipboard

Transaction data profiles this mobile wallet accepts in OpenID4VP requests.

Link copied to clipboard

Stable wallet identifier used for database naming and persisted wallet state.