execute

suspend fun execute(presentmentSource: PresentmentSource, keyAgreementPossible: List<EcCurve> = emptyList()): DcqlResponse

Executes the DCQL query.

If successful, this returns a DcqlResponse object which contains a DcqlResponse which is also a org.multipaz.presentment.CredentialPresentmentData. The intent is that the application can show an user interface for the user to select which combination of credentials to return, see CredentialPresentmentModalBottomSheet in the multipaz-compose library for an example.

If the query cannot be satisfied, DcqlCredentialQueryException is thrown.

Return

the resulting DcqlResponse if the query was successful.

Parameters

presentmentSource

the PresentmentSource to use as a source of truth for presentment.

keyAgreementPossible

if non-empty, a credential using Key Agreement may be returned provided its private key is using one of the given curves.

Throws

if it's not possible satisfy the query.