PresentmentSource

abstract class PresentmentSource(val documentStore: DocumentStore, val documentTypeRepository: DocumentTypeRepository, val readerTrustManager: TrustManager, val zkSystemRepository: ZkSystemRepository? = null, val skipConsentPrompt: Boolean = false, val dynamicMetadataResolver: (requester: Requester) -> TrustMetadata? = { requester -> null })

The source of truth used for credential presentment.

Inheritors

Constructors

Link copied to clipboard
constructor(documentStore: DocumentStore, documentTypeRepository: DocumentTypeRepository, readerTrustManager: TrustManager, zkSystemRepository: ZkSystemRepository? = null, skipConsentPrompt: Boolean = false, dynamicMetadataResolver: (requester: Requester) -> TrustMetadata? = { requester -> null })

Properties

Link copied to clipboard

the DocumentStore which holds credentials that can be presented.

Link copied to clipboard

a DocumentTypeRepository which holds metadata for document types.

Link copied to clipboard

a function which can be used to calculate TrustMetadata on a per-request basis, which may used in credential prompts.

Link copied to clipboard

the TrustManager used to determine if a reader is trusted.

Link copied to clipboard
open val skipConsentPrompt: Boolean = false

set to true to not show a consent dialog.

Link copied to clipboard

Functions

Link copied to clipboard
abstract suspend fun selectCredential(document: Document, requestedClaims: List<RequestedClaim>, keyAgreementPossible: List<EcCurve>): Credential?
abstract suspend fun selectCredential(document: Document?, request: Request, keyAgreementPossible: List<EcCurve>): Credential?

Chooses a credential from a document.