Package-level declarations

Types

Link copied to clipboard
@Serializable
data class DCQLAmbiguousClaimsQuery(val id: DCQLClaimsQueryIdentifier? = null, val values: List<DCQLExpectedClaimValue>? = null, val path: DCQLClaimsPathPointer) : DCQLClaimsQuery
Link copied to clipboard
Link copied to clipboard
@Serializable(with = DCQLClaimsQuerySerializer::class)
sealed interface DCQLClaimsQuery
Link copied to clipboard
@Serializable
value class DCQLClaimsQueryIdentifier(val string: String)

A string identifying the particular claim. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the particular claims array, the same id MUST NOT be present more than once.

Link copied to clipboard

A non-empty array of objects as defined in Section 6.3 that specifies claims in the requested Credential.

Link copied to clipboard
sealed interface DCQLClaimsQueryResult
Link copied to clipboard
object DCQLClaimsQuerySerializer : JsonContentPolymorphicSerializer<DCQLClaimsQuery>
Link copied to clipboard
sealed interface DCQLCredential
Link copied to clipboard
Link copied to clipboard
sealed interface DCQLCredentialQuery
Link copied to clipboard
@Serializable
value class DCQLCredentialQueryIdentifier(val string: String)

A string identifying the Credential in the response and, if provided, the constraints in credential_sets. The value MUST be a non-empty string consisting of alphanumeric, underscore (_) or hyphen (-) characters. Within the Authorization Request, the same id MUST NOT be present more than once.

Link copied to clipboard

Relevant references: OID4VP draft 23: A non-empty array of Credential Queries as defined in Section 6.1 that specify the requested Verifiable Credentials.

Link copied to clipboard
Link copied to clipboard
object DCQLCredentialQuerySerializer : JsonContentPolymorphicSerializer<DCQLCredentialQuery>
Link copied to clipboard
@Serializable
data class DCQLCredentialSetQuery(val options: NonEmptyList<List<DCQLCredentialQueryIdentifier>>, val required: Boolean = true)

6.2. Credential Set Query

Link copied to clipboard
@Serializable
data class DCQLCredentialSubmissionOption<Credential : Any>(val credential: Credential, val matchingResult: DCQLCredentialQueryMatchingResult)

Passes an empty constraint object as per https://github.com/openid/OpenID4VP/issues/590

Link copied to clipboard
Link copied to clipboard
@Serializable
data class DCQLIsoMdocClaimsQuery(val id: DCQLClaimsQueryIdentifier? = null, val values: List<DCQLExpectedClaimValue>? = null, val path: DCQLClaimsPathPointer, val intentToRetain: Boolean? = null) : DCQLClaimsQuery
Link copied to clipboard
data class DCQLIsoMdocCredential(val claimStructure: DCQLCredentialClaimStructure.IsoMdocStructure, val documentType: String, val satisfiesCryptographicHolderBinding: Boolean, val authorityKeyIdentifiers: Collection<DCQLAuthorityKeyIdentifier>) : DCQLCredential
Link copied to clipboard
@Serializable
data class DCQLIsoMdocCredentialQuery(val id: DCQLCredentialQueryIdentifier, val meta: DCQLIsoMdocCredentialMetadataAndValidityConstraints, val claims: DCQLClaimsQueryList<DCQLIsoMdocClaimsQuery>? = null, val claimSets: NonEmptyList<List<DCQLClaimsQueryIdentifier>>? = null, val multiple: Boolean = DCQLCredentialQuery.Defaults.MULTIPLE, val trustedAuthorities: NonEmptyList<DCQLTrustedAuthorityQueryEntry>? = null, val requireCryptographicHolderBinding: Boolean = DCQLCredentialQuery.Defaults.REQUIRE_CRYPTOGRAPHIC_HOLDER_BINDING, val format: CredentialFormatEnum = CREDENTIAL_FORMAT) : DCQLCredentialQuery
Link copied to clipboard
@Serializable
data class DCQLJsonClaimsQuery(val id: DCQLClaimsQueryIdentifier? = null, val values: List<DCQLExpectedClaimValue>? = null, val path: DCQLClaimsPathPointer) : DCQLClaimsQuery
Link copied to clipboard
@Serializable
data class DCQLJwtVcCredentialQuery(val id: DCQLCredentialQueryIdentifier, val meta: DCQLJwtVcCredentialMetadataAndValidityConstraints, val claims: DCQLClaimsQueryList<DCQLJsonClaimsQuery>? = null, val claimSets: NonEmptyList<List<DCQLClaimsQueryIdentifier>>? = null, val multiple: Boolean = DCQLCredentialQuery.Defaults.MULTIPLE, val trustedAuthorities: NonEmptyList<DCQLTrustedAuthorityQueryEntry>? = null, val requireCryptographicHolderBinding: Boolean = DCQLCredentialQuery.Defaults.REQUIRE_CRYPTOGRAPHIC_HOLDER_BINDING, val format: CredentialFormatEnum = CREDENTIAL_FORMAT) : DCQLCredentialQuery

6.1. Credential Query

Link copied to clipboard
@Serializable
data class DCQLQuery(val credentials: DCQLCredentialQueryList<DCQLCredentialQuery>, val credentialSets: NonEmptyList<DCQLCredentialSetQuery>? = null)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class DCQLSdJwtCredential(val claimStructure: DCQLCredentialClaimStructure.JsonBasedStructure, val type: String, val satisfiesCryptographicHolderBinding: Boolean, val authorityKeyIdentifiers: Collection<DCQLAuthorityKeyIdentifier>) : DCQLCredential
Link copied to clipboard
@Serializable
data class DCQLSdJwtCredentialQuery(val id: DCQLCredentialQueryIdentifier, val meta: DCQLSdJwtCredentialMetadataAndValidityConstraints, val claims: DCQLClaimsQueryList<DCQLJsonClaimsQuery>? = null, val claimSets: NonEmptyList<List<DCQLClaimsQueryIdentifier>>? = null, val multiple: Boolean = DCQLCredentialQuery.Defaults.MULTIPLE, val trustedAuthorities: NonEmptyList<DCQLTrustedAuthorityQueryEntry>? = null, val requireCryptographicHolderBinding: Boolean = DCQLCredentialQuery.Defaults.REQUIRE_CRYPTOGRAPHIC_HOLDER_BINDING, val format: CredentialFormatEnum = CREDENTIAL_FORMAT) : DCQLCredentialQuery

6.1. Credential Query

Link copied to clipboard
@Serializable
data class DCQLTrustedAuthority(val type: DCQLTrustedAuthorityType, val values: List<String>)
@Serializable
data class DCQLTrustedAuthorityQueryEntryETSITrustedList(val values: NonEmptyList<String>, val type: DCQLTrustedAuthorityType = DCQL_TRUSTED_AUTHORITY_TYPE) : DCQLTrustedAuthorityQueryEntry
@Serializable
data class DCQLTrustedAuthorityQueryEntryOpenIDFederation(val values: NonEmptyList<String>, val type: DCQLTrustedAuthorityType = DCQL_TRUSTED_AUTHORITY_TYPE) : DCQLTrustedAuthorityQueryEntry
Link copied to clipboard
data class DCQLVcJwsCredential(val claimStructure: DCQLCredentialClaimStructure.JsonBasedStructure, val satisfiesCryptographicHolderBinding: Boolean, val authorityKeyIdentifiers: Collection<DCQLAuthorityKeyIdentifier>, val types: Collection<String>) : DCQLCredential