diff --git a/docs/build/identity.rs/1.3/docs/references/api/wasm.mdx b/docs/build/identity.rs/1.3/docs/references/api/wasm.mdx index 6e15083c3bc..bc555312919 100644 --- a/docs/build/identity.rs/1.3/docs/references/api/wasm.mdx +++ b/docs/build/identity.rs/1.3/docs/references/api/wasm.mdx @@ -27,6 +27,10 @@ if the object is being concurrently modified.
A method agnostic DID Url.
A cryptographically verified decoded token from a JWS.
Contains the decoded headers and the raw claims.
@@ -77,11 +81,41 @@ if the object is being concurrently modified.An extension interface that provides helper functions for publication and resolution of DID documents in Alias Outputs.
A JSON Proof Token (JPT).
+Options to declare validation criteria for Jpt.
+Utility functions for validating JPT credentials.
+Options to declare validation criteria for a Jpt presentation.
+Utility functions for verifying JPT presentations.
+The result of a key generation in JwkStorage
.
Options to be set in the JWT claims of a verifiable presentation.
+A wrapper around a JSON Web Signature (JWS).
pack
and unpack
instead.
Supported verification method types.
Represents a cryptographic proof that can be used to validate verifiable credentials and presentations.
@@ -144,6 +184,8 @@ can be utilized to implement standards or user-defined proofs. The presence of tNote that this proof is not related to JWT and can be used in combination or as an alternative to it.
Convenience type for resolving DID documents from different DID methods.
Also provides methods for resolving DID Documents associated with
@@ -154,6 +196,9 @@ verifiable Credentials and Pre
A compressed bitmap for managing credential revocation. Information used to determine the current status of a Credential. Representation of an SD-JWT of the format
<Issuer-signed JWT>~<Disclosure 1>~<Disclosure 2>~...~<Disclosure N>~<optional KB-JWT>
.
Note: digests are created using the sha-256 algorithm.
Used to construct a JwpPresentedBuilder and handle the selective disclosure of attributes
+A DID Document Service used to enable trusted interactions associated with a DID subject.
Declares when validation should return if an error occurs.
+Return all errors that occur during validation.
+Return after the first error occurs.
+Controls validation behaviour when checking whether or not a credential has been revoked by its
credentialStatus
.
Skip all status checks.
Purpose of a StatusList2021.
+Declares how credential subjects must relate to the presentation holder.
See also the Subject-Holder Relationship section of the specification.
@@ -231,38 +319,20 @@ This variant is the default.The holder is not required to have any kind of relationship to any credential subject.
Declares when validation should return if an error occurs.
-Return all errors that occur during validation.
-Return after the first error occurs.
-Purpose of a StatusList2021.
-Initializes the console error panic hook for better error messages
-string
Encode the given bytes in url-safe base64.
Uint8Array
Decode the given url-safe base64-encoded slice into its raw bytes.
Initializes the console error panic hook for better error messages
+Verify a JWS signature secured with the EdDSA
algorithm and curve Ed25519
.
This function is useful when one is composing a IJwsVerifier
that delegates
@@ -487,14 +557,14 @@ if the object is being concurrently modified.
* [.insertService(service)](#CoreDocument+insertService)
* [.removeService(didUrl)](#CoreDocument+removeService) ⇒ [Service
](#Service) \| undefined
* [.resolveService(query)](#CoreDocument+resolveService) ⇒ [Service
](#Service) \| undefined
- * [.methods(scope)](#CoreDocument+methods) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
+ * [.methods([scope])](#CoreDocument+methods) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
* [.verificationRelationships()](#CoreDocument+verificationRelationships) ⇒ Array.<(DIDUrl\|VerificationMethod)>
* [.insertMethod(method, scope)](#CoreDocument+insertMethod)
* [.removeMethod(did)](#CoreDocument+removeMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
- * [.resolveMethod(query, scope)](#CoreDocument+resolveMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
+ * [.resolveMethod(query, [scope])](#CoreDocument+resolveMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
* [.attachMethodRelationship(didUrl, relationship)](#CoreDocument+attachMethodRelationship) ⇒ boolean
* [.detachMethodRelationship(didUrl, relationship)](#CoreDocument+detachMethodRelationship) ⇒ boolean
- * [.verifyJws(jws, options, signatureVerifier, detachedPayload)](#CoreDocument+verifyJws) ⇒ [DecodedJws
](#DecodedJws)
+ * [.verifyJws(jws, options, signatureVerifier, [detachedPayload])](#CoreDocument+verifyJws) ⇒ [DecodedJws
](#DecodedJws)
* [.revokeCredentials(serviceQuery, indices)](#CoreDocument+revokeCredentials)
* [.unrevokeCredentials(serviceQuery, indices)](#CoreDocument+unrevokeCredentials)
* [.clone()](#CoreDocument+clone) ⇒ [CoreDocument
](#CoreDocument)
@@ -504,7 +574,7 @@ if the object is being concurrently modified.
* [.generateMethod(storage, keyType, alg, fragment, scope)](#CoreDocument+generateMethod) ⇒ Promise.<string>
* [.purgeMethod(storage, id)](#CoreDocument+purgeMethod) ⇒ Promise.<void>
* [.createJws(storage, fragment, payload, options)](#CoreDocument+createJws) ⇒ [Promise.<Jws>
](#Jws)
- * [.createCredentialJwt(storage, fragment, credential, options, custom_claims)](#CoreDocument+createCredentialJwt) ⇒ [Promise.<Jwt>
](#Jwt)
+ * [.createCredentialJwt(storage, fragment, credential, options, [custom_claims])](#CoreDocument+createCredentialJwt) ⇒ [Promise.<Jwt>
](#Jwt)
* [.createPresentationJwt(storage, fragment, presentation, signature_options, presentation_options)](#CoreDocument+createPresentationJwt) ⇒ [Promise.<Jwt>
](#Jwt)
* _static_
* [.fromJSON(json)](#CoreDocument.fromJSON) ⇒ [CoreDocument
](#CoreDocument)
@@ -684,7 +754,7 @@ if present.
-### coreDocument.methods(scope) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
+### coreDocument.methods([scope]) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
Returns a list of all [VerificationMethod](#VerificationMethod) in the DID Document,
whose verification relationship matches `scope`.
@@ -694,7 +764,7 @@ If `scope` is not set, a list over the **embedded** methods is returned.
| Param | Type |
| --- | --- |
-| scope | [MethodScope
](#MethodScope) \| undefined
|
+| [scope] | [MethodScope
](#MethodScope) \| undefined
|
@@ -727,7 +797,7 @@ Removes all references to the specified Verification Method.
-### coreDocument.resolveMethod(query, scope) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
+### coreDocument.resolveMethod(query, [scope]) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
Returns a copy of the first verification method with an `id` property
matching the provided `query` and the verification relationship
specified by `scope`, if present.
@@ -737,7 +807,7 @@ specified by `scope`, if present.
| Param | Type |
| --- | --- |
| query | [DIDUrl
](#DIDUrl) \| string
|
-| scope | [MethodScope
](#MethodScope) \| undefined
|
+| [scope] | [MethodScope
](#MethodScope) \| undefined
|
@@ -752,7 +822,7 @@ so it cannot be an embedded one.
| Param | Type |
| --- | --- |
| didUrl | [DIDUrl
](#DIDUrl) |
-| relationship | number
|
+| relationship | [MethodRelationship
](#MethodRelationship) |
@@ -764,11 +834,11 @@ Detaches the given relationship from the given method, if the method exists.
| Param | Type |
| --- | --- |
| didUrl | [DIDUrl
](#DIDUrl) |
-| relationship | number
|
+| relationship | [MethodRelationship
](#MethodRelationship) |
-### coreDocument.verifyJws(jws, options, signatureVerifier, detachedPayload) ⇒ [DecodedJws
](#DecodedJws)
+### coreDocument.verifyJws(jws, options, signatureVerifier, [detachedPayload]) ⇒ [DecodedJws
](#DecodedJws)
Decodes and verifies the provided JWS according to the passed `options` and `signatureVerifier`.
If no `signatureVerifier` argument is provided a default verifier will be used that is (only) capable of
verifying EdDSA signatures.
@@ -786,7 +856,7 @@ or set explicitly in the `options`.
| jws | [Jws
](#Jws) |
| options | [JwsVerificationOptions
](#JwsVerificationOptions) |
| signatureVerifier | IJwsVerifier
|
-| detachedPayload | string
\| undefined
|
+| [detachedPayload] | string
\| undefined
|
@@ -895,7 +965,7 @@ See [RFC7515 section 3.1](https://www.rfc-editor.org/rfc/rfc7515#section-3.1).
-### coreDocument.createCredentialJwt(storage, fragment, credential, options, custom_claims) ⇒ [Promise.<Jwt>
](#Jwt)
+### coreDocument.createCredentialJwt(storage, fragment, credential, options, [custom_claims]) ⇒ [Promise.<Jwt>
](#Jwt)
Produces a JWT where the payload is produced from the given `credential`
in accordance with [VC Data Model v1.1](https://www.w3.org/TR/vc-data-model/#json-web-token).
@@ -913,7 +983,7 @@ The `custom_claims` can be used to set additional claims on the resulting JWT.
| fragment | string
|
| credential | [Credential
](#Credential) |
| options | [JwsSignatureOptions
](#JwsSignatureOptions) |
-| custom_claims | Record.<string, any>
\| undefined
|
+| [custom_claims] | Record.<string, any>
\| undefined
|
@@ -969,8 +1039,8 @@ Deserializes an instance from a plain JS representation.
* [.nonTransferable()](#Credential+nonTransferable) ⇒ boolean
\| undefined
* [.proof()](#Credential+proof) ⇒ [Proof
](#Proof) \| undefined
* [.properties()](#Credential+properties) ⇒ Map.<string, any>
- * [.setProof(proof)](#Credential+setProof)
- * [.toJwtClaims(custom_claims)](#Credential+toJwtClaims) ⇒ Record.<string, any>
+ * [.setProof([proof])](#Credential+setProof)
+ * [.toJwtClaims([custom_claims])](#Credential+toJwtClaims) ⇒ Record.<string, any>
* [.toJSON()](#Credential+toJSON) ⇒ any
* [.clone()](#Credential+clone) ⇒ [Credential
](#Credential)
* _static_
@@ -1082,7 +1152,7 @@ Returns a copy of the miscellaneous properties on the [Credential](#Credential).
**Kind**: instance method of [Credential
](#Credential)
-### credential.setProof(proof)
+### credential.setProof([proof])
Sets the `proof` property of the [Credential](#Credential).
Note that this proof is not related to JWT.
@@ -1091,11 +1161,11 @@ Note that this proof is not related to JWT.
| Param | Type |
| --- | --- |
-| proof | [Proof
](#Proof) \| undefined
|
+| [proof] | [Proof
](#Proof) \| undefined
|
-### credential.toJwtClaims(custom_claims) ⇒ Record.<string, any>
+### credential.toJwtClaims([custom_claims]) ⇒ Record.<string, any>
Serializes the `Credential` as a JWT claims set
in accordance with [VC Data Model v1.1](https://www.w3.org/TR/vc-data-model/#json-web-token).
@@ -1105,7 +1175,7 @@ The resulting object can be used as the payload of a JWS when issuing the creden
| Param | Type |
| --- | --- |
-| custom_claims | Record.<string, any>
\| undefined
|
+| [custom_claims] | Record.<string, any>
\| undefined
|
@@ -1210,11 +1280,11 @@ A method agnostic DID Url.
* [.did()](#DIDUrl+did) ⇒ [CoreDID
](#CoreDID)
* [.urlStr()](#DIDUrl+urlStr) ⇒ string
* [.fragment()](#DIDUrl+fragment) ⇒ string
\| undefined
- * [.setFragment(value)](#DIDUrl+setFragment)
+ * [.setFragment([value])](#DIDUrl+setFragment)
* [.path()](#DIDUrl+path) ⇒ string
\| undefined
- * [.setPath(value)](#DIDUrl+setPath)
+ * [.setPath([value])](#DIDUrl+setPath)
* [.query()](#DIDUrl+query) ⇒ string
\| undefined
- * [.setQuery(value)](#DIDUrl+setQuery)
+ * [.setQuery([value])](#DIDUrl+setQuery)
* [.join(segment)](#DIDUrl+join) ⇒ [DIDUrl
](#DIDUrl)
* [.toString()](#DIDUrl+toString) ⇒ string
* [.toJSON()](#DIDUrl+toJSON) ⇒ any
@@ -1243,14 +1313,14 @@ Returns a copy of the [DIDUrl](#DIDUrl) method fragment, if any. Excludes the le
**Kind**: instance method of [DIDUrl
](#DIDUrl)
-### didUrl.setFragment(value)
+### didUrl.setFragment([value])
Sets the `fragment` component of the [DIDUrl](#DIDUrl).
**Kind**: instance method of [DIDUrl
](#DIDUrl)
| Param | Type |
| --- | --- |
-| value | string
\| undefined
|
+| [value] | string
\| undefined
|
@@ -1260,14 +1330,14 @@ Returns a copy of the [DIDUrl](#DIDUrl) path.
**Kind**: instance method of [DIDUrl
](#DIDUrl)
-### didUrl.setPath(value)
+### didUrl.setPath([value])
Sets the `path` component of the [DIDUrl](#DIDUrl).
**Kind**: instance method of [DIDUrl
](#DIDUrl)
| Param | Type |
| --- | --- |
-| value | string
\| undefined
|
+| [value] | string
\| undefined
|
@@ -1277,14 +1347,14 @@ Returns a copy of the [DIDUrl](#DIDUrl) method query, if any. Excludes the leadi
**Kind**: instance method of [DIDUrl
](#DIDUrl)
-### didUrl.setQuery(value)
+### didUrl.setQuery([value])
Sets the `query` component of the [DIDUrl](#DIDUrl).
**Kind**: instance method of [DIDUrl
](#DIDUrl)
| Param | Type |
| --- | --- |
-| value | string
\| undefined
|
+| [value] | string
\| undefined
|
@@ -1345,6 +1415,74 @@ Deserializes an instance from a JSON object.
| --- | --- |
| json | any
|
+
+
+## DecodedJptCredential
+**Kind**: global class
+
+* [DecodedJptCredential](#DecodedJptCredential)
+ * [.clone()](#DecodedJptCredential+clone) ⇒ [DecodedJptCredential
](#DecodedJptCredential)
+ * [.credential()](#DecodedJptCredential+credential) ⇒ [Credential
](#Credential)
+ * [.customClaims()](#DecodedJptCredential+customClaims) ⇒ Map.<string, any>
+ * [.decodedJwp()](#DecodedJptCredential+decodedJwp) ⇒ [JwpIssued
](#JwpIssued)
+
+
+
+### decodedJptCredential.clone() ⇒ [DecodedJptCredential
](#DecodedJptCredential)
+Deep clones the object.
+
+**Kind**: instance method of [DecodedJptCredential
](#DecodedJptCredential)
+
+
+### decodedJptCredential.credential() ⇒ [Credential
](#Credential)
+Returns the [Credential](#Credential) embedded into this JPT.
+
+**Kind**: instance method of [DecodedJptCredential
](#DecodedJptCredential)
+
+
+### decodedJptCredential.customClaims() ⇒ Map.<string, any>
+Returns the custom claims parsed from the JPT.
+
+**Kind**: instance method of [DecodedJptCredential
](#DecodedJptCredential)
+
+
+### decodedJptCredential.decodedJwp() ⇒ [JwpIssued
](#JwpIssued)
+**Kind**: instance method of [DecodedJptCredential
](#DecodedJptCredential)
+
+
+## DecodedJptPresentation
+**Kind**: global class
+
+* [DecodedJptPresentation](#DecodedJptPresentation)
+ * [.clone()](#DecodedJptPresentation+clone) ⇒ [DecodedJptPresentation
](#DecodedJptPresentation)
+ * [.credential()](#DecodedJptPresentation+credential) ⇒ [Credential
](#Credential)
+ * [.customClaims()](#DecodedJptPresentation+customClaims) ⇒ Map.<string, any>
+ * [.aud()](#DecodedJptPresentation+aud) ⇒ string
\| undefined
+
+
+
+### decodedJptPresentation.clone() ⇒ [DecodedJptPresentation
](#DecodedJptPresentation)
+Deep clones the object.
+
+**Kind**: instance method of [DecodedJptPresentation
](#DecodedJptPresentation)
+
+
+### decodedJptPresentation.credential() ⇒ [Credential
](#Credential)
+Returns the [Credential](#Credential) embedded into this JPT.
+
+**Kind**: instance method of [DecodedJptPresentation
](#DecodedJptPresentation)
+
+
+### decodedJptPresentation.customClaims() ⇒ Map.<string, any>
+Returns the custom claims parsed from the JPT.
+
+**Kind**: instance method of [DecodedJptPresentation
](#DecodedJptPresentation)
+
+
+### decodedJptPresentation.aud() ⇒ string
\| undefined
+Returns the `aud` property parsed from the JWT claims.
+
+**Kind**: instance method of [DecodedJptPresentation
](#DecodedJptPresentation)
## DecodedJws
@@ -2036,13 +2174,13 @@ if the object is being concurrently modified.
* [.insertService(service)](#IotaDocument+insertService)
* [.removeService(did)](#IotaDocument+removeService) ⇒ [Service
](#Service) \| undefined
* [.resolveService(query)](#IotaDocument+resolveService) ⇒ [Service
](#Service) \| undefined
- * [.methods(scope)](#IotaDocument+methods) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
+ * [.methods([scope])](#IotaDocument+methods) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
* [.insertMethod(method, scope)](#IotaDocument+insertMethod)
* [.removeMethod(did)](#IotaDocument+removeMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
- * [.resolveMethod(query, scope)](#IotaDocument+resolveMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
+ * [.resolveMethod(query, [scope])](#IotaDocument+resolveMethod) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
* [.attachMethodRelationship(didUrl, relationship)](#IotaDocument+attachMethodRelationship) ⇒ boolean
* [.detachMethodRelationship(didUrl, relationship)](#IotaDocument+detachMethodRelationship) ⇒ boolean
- * [.verifyJws(jws, options, signatureVerifier, detachedPayload)](#IotaDocument+verifyJws) ⇒ [DecodedJws
](#DecodedJws)
+ * [.verifyJws(jws, options, signatureVerifier, [detachedPayload])](#IotaDocument+verifyJws) ⇒ [DecodedJws
](#DecodedJws)
* [.pack()](#IotaDocument+pack) ⇒ Uint8Array
* [.packWithEncoding(encoding)](#IotaDocument+packWithEncoding) ⇒ Uint8Array
* [.metadata()](#IotaDocument+metadata) ⇒ [IotaDocumentMetadata
](#IotaDocumentMetadata)
@@ -2051,7 +2189,7 @@ if the object is being concurrently modified.
* [.metadataUpdated()](#IotaDocument+metadataUpdated) ⇒ [Timestamp
](#Timestamp) \| undefined
* [.setMetadataUpdated(timestamp)](#IotaDocument+setMetadataUpdated)
* [.metadataDeactivated()](#IotaDocument+metadataDeactivated) ⇒ boolean
\| undefined
- * [.setMetadataDeactivated(deactivated)](#IotaDocument+setMetadataDeactivated)
+ * [.setMetadataDeactivated([deactivated])](#IotaDocument+setMetadataDeactivated)
* [.metadataStateControllerAddress()](#IotaDocument+metadataStateControllerAddress) ⇒ string
\| undefined
* [.metadataGovernorAddress()](#IotaDocument+metadataGovernorAddress) ⇒ string
\| undefined
* [.setMetadataPropertyUnchecked(key, value)](#IotaDocument+setMetadataPropertyUnchecked)
@@ -2066,8 +2204,13 @@ if the object is being concurrently modified.
* [.purgeMethod(storage, id)](#IotaDocument+purgeMethod) ⇒ Promise.<void>
* ~~[.createJwt(storage, fragment, payload, options)](#IotaDocument+createJwt) ⇒ [Promise.<Jws>
](#Jws)~~
* [.createJws(storage, fragment, payload, options)](#IotaDocument+createJws) ⇒ [Promise.<Jws>
](#Jws)
- * [.createCredentialJwt(storage, fragment, credential, options, custom_claims)](#IotaDocument+createCredentialJwt) ⇒ [Promise.<Jwt>
](#Jwt)
+ * [.createCredentialJwt(storage, fragment, credential, options, [custom_claims])](#IotaDocument+createCredentialJwt) ⇒ [Promise.<Jwt>
](#Jwt)
* [.createPresentationJwt(storage, fragment, presentation, signature_options, presentation_options)](#IotaDocument+createPresentationJwt) ⇒ [Promise.<Jwt>
](#Jwt)
+ * [.generateMethodJwp(storage, alg, fragment, scope)](#IotaDocument+generateMethodJwp) ⇒ Promise.<string>
+ * [.createIssuedJwp(storage, fragment, jpt_claims, options)](#IotaDocument+createIssuedJwp) ⇒ Promise.<string>
+ * [.createPresentedJwp(presentation, method_id, options)](#IotaDocument+createPresentedJwp) ⇒ Promise.<string>
+ * [.createCredentialJpt(credential, storage, fragment, options, [custom_claims])](#IotaDocument+createCredentialJpt) ⇒ [Promise.<Jpt>
](#Jpt)
+ * [.createPresentationJpt(presentation, method_id, options)](#IotaDocument+createPresentationJpt) ⇒ [Promise.<Jpt>
](#Jpt)
* _static_
* [.newWithId(id)](#IotaDocument.newWithId) ⇒ [IotaDocument
](#IotaDocument)
* [.unpackFromOutput(did, aliasOutput, allowEmpty)](#IotaDocument.unpackFromOutput) ⇒ [IotaDocument
](#IotaDocument)
@@ -2200,7 +2343,7 @@ if present.
-### iotaDocument.methods(scope) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
+### iotaDocument.methods([scope]) ⇒ [Array.<VerificationMethod>
](#VerificationMethod)
Returns a list of all [VerificationMethod](#VerificationMethod) in the DID Document,
whose verification relationship matches `scope`.
@@ -2210,7 +2353,7 @@ If `scope` is not set, a list over the **embedded** methods is returned.
| Param | Type |
| --- | --- |
-| scope | [MethodScope
](#MethodScope) \| undefined
|
+| [scope] | [MethodScope
](#MethodScope) \| undefined
|
@@ -2237,7 +2380,7 @@ Removes all references to the specified Verification Method.
-### iotaDocument.resolveMethod(query, scope) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
+### iotaDocument.resolveMethod(query, [scope]) ⇒ [VerificationMethod
](#VerificationMethod) \| undefined
Returns a copy of the first verification method with an `id` property
matching the provided `query` and the verification relationship
specified by `scope`, if present.
@@ -2247,7 +2390,7 @@ specified by `scope`, if present.
| Param | Type |
| --- | --- |
| query | [DIDUrl
](#DIDUrl) \| string
|
-| scope | [MethodScope
](#MethodScope) \| undefined
|
+| [scope] | [MethodScope
](#MethodScope) \| undefined
|
@@ -2262,7 +2405,7 @@ so it cannot be an embedded one.
| Param | Type |
| --- | --- |
| didUrl | [DIDUrl
](#DIDUrl) |
-| relationship | number
|
+| relationship | [MethodRelationship
](#MethodRelationship) |
@@ -2274,11 +2417,11 @@ Detaches the given relationship from the given method, if the method exists.
| Param | Type |
| --- | --- |
| didUrl | [DIDUrl
](#DIDUrl) |
-| relationship | number
|
+| relationship | [MethodRelationship
](#MethodRelationship) |
-### iotaDocument.verifyJws(jws, options, signatureVerifier, detachedPayload) ⇒ [DecodedJws
](#DecodedJws)
+### iotaDocument.verifyJws(jws, options, signatureVerifier, [detachedPayload]) ⇒ [DecodedJws
](#DecodedJws)
Decodes and verifies the provided JWS according to the passed `options` and `signatureVerifier`.
If no `signatureVerifier` argument is provided a default verifier will be used that is (only) capable of
verifying EdDSA signatures.
@@ -2295,7 +2438,7 @@ take place.
| jws | [Jws
](#Jws) |
| options | [JwsVerificationOptions
](#JwsVerificationOptions) |
| signatureVerifier | IJwsVerifier
|
-| detachedPayload | string
\| undefined
|
+| [detachedPayload] | string
\| undefined
|
@@ -2313,7 +2456,7 @@ Serializes the document for inclusion in an Alias Output's state metadata.
| Param | Type |
| --- | --- |
-| encoding | number
|
+| encoding | [StateMetadataEncoding
](#StateMetadataEncoding) |
@@ -2366,14 +2509,14 @@ Returns a copy of the deactivated status of the DID document.
**Kind**: instance method of [IotaDocument
](#IotaDocument)
-### iotaDocument.setMetadataDeactivated(deactivated)
+### iotaDocument.setMetadataDeactivated([deactivated])
Sets the deactivated status of the DID document.
**Kind**: instance method of [IotaDocument
](#IotaDocument)
| Param | Type |
| --- | --- |
-| deactivated | boolean
\| undefined
|
+| [deactivated] | boolean
\| undefined
|
@@ -2533,7 +2676,7 @@ See [RFC7515 section 3.1](https://www.rfc-editor.org/rfc/rfc7515#section-3.1).
-### iotaDocument.createCredentialJwt(storage, fragment, credential, options, custom_claims) ⇒ [Promise.<Jwt>
](#Jwt)
+### iotaDocument.createCredentialJwt(storage, fragment, credential, options, [custom_claims]) ⇒ [Promise.<Jwt>
](#Jwt)
Produces a JWS where the payload is produced from the given `credential`
in accordance with [VC Data Model v1.1](https://www.w3.org/TR/vc-data-model/#json-web-token).
@@ -2551,7 +2694,7 @@ The `custom_claims` can be used to set additional claims on the resulting JWT.
| fragment | string
|
| credential | [Credential
](#Credential) |
| options | [JwsSignatureOptions
](#JwsSignatureOptions) |
-| custom_claims | Record.<string, any>
\| undefined
|
+| [custom_claims] | Record.<string, any>
\| undefined
|
@@ -2573,6 +2716,65 @@ private key backed by the `storage` in accordance with the passed `options`.
| signature_options | [JwsSignatureOptions
](#JwsSignatureOptions) |
| presentation_options | [JwtPresentationOptions
](#JwtPresentationOptions) |
+
+
+### iotaDocument.generateMethodJwp(storage, alg, fragment, scope) ⇒ Promise.<string>
+**Kind**: instance method of [IotaDocument
](#IotaDocument)
+
+| Param | Type |
+| --- | --- |
+| storage | [Storage
](#Storage) |
+| alg | [ProofAlgorithm
](#ProofAlgorithm) |
+| fragment | string
\| undefined
|
+| scope | [MethodScope
](#MethodScope) |
+
+
+
+### iotaDocument.createIssuedJwp(storage, fragment, jpt_claims, options) ⇒ Promise.<string>
+**Kind**: instance method of [IotaDocument
](#IotaDocument)
+
+| Param | Type |
+| --- | --- |
+| storage | [Storage
](#Storage) |
+| fragment | string
|
+| jpt_claims | JptClaims
|
+| options | [JwpCredentialOptions
](#JwpCredentialOptions) |
+
+
+
+### iotaDocument.createPresentedJwp(presentation, method_id, options) ⇒ Promise.<string>
+**Kind**: instance method of [IotaDocument
](#IotaDocument)
+
+| Param | Type |
+| --- | --- |
+| presentation | [SelectiveDisclosurePresentation
](#SelectiveDisclosurePresentation) |
+| method_id | string
|
+| options | [JwpPresentationOptions
](#JwpPresentationOptions) |
+
+
+
+### iotaDocument.createCredentialJpt(credential, storage, fragment, options, [custom_claims]) ⇒ [Promise.<Jpt>
](#Jpt)
+**Kind**: instance method of [IotaDocument
](#IotaDocument)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+| storage | [Storage
](#Storage) |
+| fragment | string
|
+| options | [JwpCredentialOptions
](#JwpCredentialOptions) |
+| [custom_claims] | Map.<string, any>
\| undefined
|
+
+
+
+### iotaDocument.createPresentationJpt(presentation, method_id, options) ⇒ [Promise.<Jpt>
](#Jpt)
+**Kind**: instance method of [IotaDocument
](#IotaDocument)
+
+| Param | Type |
+| --- | --- |
+| presentation | [SelectiveDisclosurePresentation
](#SelectiveDisclosurePresentation) |
+| method_id | string
|
+| options | [JwpPresentationOptions
](#JwpPresentationOptions) |
+
### IotaDocument.newWithId(id) ⇒ [IotaDocument
](#IotaDocument)
@@ -2720,7 +2922,7 @@ and resolution of DID documents in Alias Outputs.
**Kind**: global class
* [IotaIdentityClientExt](#IotaIdentityClientExt)
- * [.newDidOutput(client, address, document, rentStructure)](#IotaIdentityClientExt.newDidOutput) ⇒ Promise.<AliasOutputBuilderParams>
+ * [.newDidOutput(client, address, document, [rentStructure])](#IotaIdentityClientExt.newDidOutput) ⇒ Promise.<AliasOutputBuilderParams>
* [.updateDidOutput(client, document)](#IotaIdentityClientExt.updateDidOutput) ⇒ Promise.<AliasOutputBuilderParams>
* [.deactivateDidOutput(client, did)](#IotaIdentityClientExt.deactivateDidOutput) ⇒ Promise.<AliasOutputBuilderParams>
* [.resolveDid(client, did)](#IotaIdentityClientExt.resolveDid) ⇒ [Promise.<IotaDocument>
](#IotaDocument)
@@ -2728,7 +2930,7 @@ and resolution of DID documents in Alias Outputs.
-### IotaIdentityClientExt.newDidOutput(client, address, document, rentStructure) ⇒ Promise.<AliasOutputBuilderParams>
+### IotaIdentityClientExt.newDidOutput(client, address, document, [rentStructure]) ⇒ Promise.<AliasOutputBuilderParams>
Create a DID with a new Alias Output containing the given `document`.
The `address` will be set as the state controller and governor unlock conditions.
@@ -2745,7 +2947,7 @@ NOTE: this does *not* publish the Alias Output.
| client | IIotaIdentityClient
|
| address | Address
|
| document | [IotaDocument
](#IotaDocument) |
-| rentStructure | IRent
\| undefined
|
+| [rentStructure] | IRent
\| undefined
|
@@ -2807,165 +3009,539 @@ Fetches the `IAliasOutput` associated with the given DID.
| client | IIotaIdentityClient
|
| did | [IotaDID
](#IotaDID) |
-
+
-## Jwk
+## IssuerProtectedHeader
**Kind**: global class
-* [Jwk](#Jwk)
- * [new Jwk(jwk)](#new_Jwk_new)
- * _instance_
- * [.kty()](#Jwk+kty) ⇒ JwkType
- * [.use()](#Jwk+use) ⇒ JwkUse
\| undefined
- * [.keyOps()](#Jwk+keyOps) ⇒ Array.<JwkOperation>
- * [.alg()](#Jwk+alg) ⇒ JwsAlgorithm
\| undefined
- * [.kid()](#Jwk+kid) ⇒ string
\| undefined
- * [.x5u()](#Jwk+x5u) ⇒ string
\| undefined
- * [.x5c()](#Jwk+x5c) ⇒ Array.<string>
- * [.x5t()](#Jwk+x5t) ⇒ string
\| undefined
- * [.x5t256()](#Jwk+x5t256) ⇒ string
\| undefined
- * [.paramsEc()](#Jwk+paramsEc) ⇒ JwkParamsEc
\| undefined
- * [.paramsOkp()](#Jwk+paramsOkp) ⇒ JwkParamsOkp
\| undefined
- * [.paramsOct()](#Jwk+paramsOct) ⇒ JwkParamsOct
\| undefined
- * [.paramsRsa()](#Jwk+paramsRsa) ⇒ JwkParamsRsa
\| undefined
- * [.toPublic()](#Jwk+toPublic) ⇒ [Jwk
](#Jwk) \| undefined
- * [.isPublic()](#Jwk+isPublic) ⇒ boolean
- * [.isPrivate()](#Jwk+isPrivate) ⇒ boolean
- * [.toJSON()](#Jwk+toJSON) ⇒ any
- * [.clone()](#Jwk+clone) ⇒ [Jwk
](#Jwk)
- * _static_
- * [.fromJSON(json)](#Jwk.fromJSON) ⇒ [Jwk
](#Jwk)
+* [IssuerProtectedHeader](#IssuerProtectedHeader)
+ * [.typ](#IssuerProtectedHeader+typ) ⇒ string
\| undefined
+ * [.typ](#IssuerProtectedHeader+typ)
+ * [.alg](#IssuerProtectedHeader+alg) ⇒ [ProofAlgorithm
](#ProofAlgorithm)
+ * [.alg](#IssuerProtectedHeader+alg)
+ * [.kid](#IssuerProtectedHeader+kid) ⇒ string
\| undefined
+ * [.kid](#IssuerProtectedHeader+kid)
+ * [.cid](#IssuerProtectedHeader+cid) ⇒ string
\| undefined
+ * [.cid](#IssuerProtectedHeader+cid)
+ * [.claims()](#IssuerProtectedHeader+claims) ⇒ Array.<string>
-
+
-### new Jwk(jwk)
+### issuerProtectedHeader.typ ⇒ string
\| undefined
+JWP type (JPT).
+
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
+
+
+### issuerProtectedHeader.typ
+JWP type (JPT).
+
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
| Param | Type |
| --- | --- |
-| jwk | IJwkParams
|
-
-
+| [arg0] | string
\| undefined
|
-### jwk.kty() ⇒ JwkType
-Returns the value for the key type parameter (kty).
+
-**Kind**: instance method of [Jwk
](#Jwk)
-
+### issuerProtectedHeader.alg ⇒ [ProofAlgorithm
](#ProofAlgorithm)
+Algorithm used for the JWP.
-### jwk.use() ⇒ JwkUse
\| undefined
-Returns the value for the use property (use).
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
+
-**Kind**: instance method of [Jwk
](#Jwk)
-
+### issuerProtectedHeader.alg
+Algorithm used for the JWP.
-### jwk.keyOps() ⇒ Array.<JwkOperation>
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
-### jwk.alg() ⇒ JwsAlgorithm
\| undefined
-Returns the value for the algorithm property (alg).
+| Param | Type |
+| --- | --- |
+| arg0 | [ProofAlgorithm
](#ProofAlgorithm) |
-**Kind**: instance method of [Jwk
](#Jwk)
-
+
-### jwk.kid() ⇒ string
\| undefined
-Returns the value of the key ID property (kid).
+### issuerProtectedHeader.kid ⇒ string
\| undefined
+ID for the key used for the JWP.
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
+
-### jwk.x5u() ⇒ string
\| undefined
-Returns the value of the X.509 URL property (x5u).
+### issuerProtectedHeader.kid
+ID for the key used for the JWP.
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
-### jwk.x5c() ⇒ Array.<string>
-Returns the value of the X.509 certificate chain property (x5c).
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
-**Kind**: instance method of [Jwk
](#Jwk)
-
+
-### jwk.x5t() ⇒ string
\| undefined
-Returns the value of the X.509 certificate SHA-1 thumbprint property (x5t).
+### issuerProtectedHeader.cid ⇒ string
\| undefined
+Not handled for now. Will be used in the future to resolve external claims
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
+
-### jwk.x5t256() ⇒ string
\| undefined
-Returns the value of the X.509 certificate SHA-256 thumbprint property (x5t#S256).
+### issuerProtectedHeader.cid
+Not handled for now. Will be used in the future to resolve external claims
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance property of [IssuerProtectedHeader
](#IssuerProtectedHeader)
-### jwk.paramsEc() ⇒ JwkParamsEc
\| undefined
-If this JWK is of kty EC, returns those parameters.
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
-**Kind**: instance method of [Jwk
](#Jwk)
-
+
-### jwk.paramsOkp() ⇒ JwkParamsOkp
\| undefined
-If this JWK is of kty OKP, returns those parameters.
+### issuerProtectedHeader.claims() ⇒ Array.<string>
+**Kind**: instance method of [IssuerProtectedHeader
](#IssuerProtectedHeader)
+
-**Kind**: instance method of [Jwk
](#Jwk)
-
+## Jpt
+A JSON Proof Token (JPT).
-### jwk.paramsOct() ⇒ JwkParamsOct
\| undefined
-If this JWK is of kty OCT, returns those parameters.
+**Kind**: global class
-**Kind**: instance method of [Jwk
](#Jwk)
-
+* [Jpt](#Jpt)
+ * [new Jpt(jpt_string)](#new_Jpt_new)
+ * [.toString()](#Jpt+toString) ⇒ string
+ * [.clone()](#Jpt+clone) ⇒ [Jpt
](#Jpt)
-### jwk.paramsRsa() ⇒ JwkParamsRsa
\| undefined
-If this JWK is of kty RSA, returns those parameters.
+
-**Kind**: instance method of [Jwk
](#Jwk)
-
+### new Jpt(jpt_string)
+Creates a new [Jpt](#Jpt).
-### jwk.toPublic() ⇒ [Jwk
](#Jwk) \| undefined
-Returns a clone of the [Jwk](#Jwk) with _all_ private key components unset.
-Nothing is returned when `kty = oct` as this key type is not considered public by this library.
-**Kind**: instance method of [Jwk
](#Jwk)
-
+| Param | Type |
+| --- | --- |
+| jpt_string | string
|
-### jwk.isPublic() ⇒ boolean
-Returns `true` if _all_ private key components of the key are unset, `false` otherwise.
+
-**Kind**: instance method of [Jwk
](#Jwk)
-
+### jpt.toString() ⇒ string
+**Kind**: instance method of [Jpt
](#Jpt)
+
-### jwk.isPrivate() ⇒ boolean
-Returns `true` if _all_ private key components of the key are set, `false` otherwise.
+### jpt.clone() ⇒ [Jpt
](#Jpt)
+Deep clones the object.
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: instance method of [Jpt
](#Jpt)
+
-### jwk.toJSON() ⇒ any
-Serializes this to a JSON object.
+## JptCredentialValidationOptions
+Options to declare validation criteria for [Jpt](#Jpt).
-**Kind**: instance method of [Jwk
](#Jwk)
-
+**Kind**: global class
-### jwk.clone() ⇒ [Jwk
](#Jwk)
-Deep clones the object.
+* [JptCredentialValidationOptions](#JptCredentialValidationOptions)
+ * [new JptCredentialValidationOptions([opts])](#new_JptCredentialValidationOptions_new)
+ * _instance_
+ * [.clone()](#JptCredentialValidationOptions+clone) ⇒ [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+ * [.toJSON()](#JptCredentialValidationOptions+toJSON) ⇒ any
+ * _static_
+ * [.fromJSON(json)](#JptCredentialValidationOptions.fromJSON) ⇒ [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
-**Kind**: instance method of [Jwk
](#Jwk)
-
+
-### Jwk.fromJSON(json) ⇒ [Jwk
](#Jwk)
-Deserializes an instance from a JSON object.
+### new JptCredentialValidationOptions([opts])
+Creates a new default istance.
-**Kind**: static method of [Jwk
](#Jwk)
| Param | Type |
| --- | --- |
-| json | any
|
+| [opts] | IJptCredentialValidationOptions
\| undefined
|
-
+
-## JwkGenOutput
-The result of a key generation in `JwkStorage`.
+### jptCredentialValidationOptions.clone() ⇒ [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+Deep clones the object.
+
+**Kind**: instance method of [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+
+
+### jptCredentialValidationOptions.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+
+
+### JptCredentialValidationOptions.fromJSON(json) ⇒ [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [JptCredentialValidationOptions
](#JptCredentialValidationOptions)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+## JptCredentialValidator
+**Kind**: global class
+
+
+### JptCredentialValidator.validate(credential_jpt, issuer, options, fail_fast) ⇒ [DecodedJptCredential
](#DecodedJptCredential)
+**Kind**: static method of [JptCredentialValidator
](#JptCredentialValidator)
+
+| Param | Type |
+| --- | --- |
+| credential_jpt | [Jpt
](#Jpt) |
+| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
+| options | [JptCredentialValidationOptions
](#JptCredentialValidationOptions) |
+| fail_fast | [FailFast
](#FailFast) |
+
+
+
+## JptCredentialValidatorUtils
+Utility functions for validating JPT credentials.
+
+**Kind**: global class
+
+* [JptCredentialValidatorUtils](#JptCredentialValidatorUtils)
+ * [.extractIssuer(credential)](#JptCredentialValidatorUtils.extractIssuer) ⇒ [CoreDID
](#CoreDID)
+ * [.extractIssuerFromIssuedJpt(credential)](#JptCredentialValidatorUtils.extractIssuerFromIssuedJpt) ⇒ [CoreDID
](#CoreDID)
+ * [.checkTimeframesWithValidityTimeframe2024(credential, validity_timeframe, status_check)](#JptCredentialValidatorUtils.checkTimeframesWithValidityTimeframe2024)
+ * [.checkRevocationWithValidityTimeframe2024(credential, issuer, status_check)](#JptCredentialValidatorUtils.checkRevocationWithValidityTimeframe2024)
+ * [.checkTimeframesAndRevocationWithValidityTimeframe2024(credential, issuer, validity_timeframe, status_check)](#JptCredentialValidatorUtils.checkTimeframesAndRevocationWithValidityTimeframe2024)
+
+
+
+### JptCredentialValidatorUtils.extractIssuer(credential) ⇒ [CoreDID
](#CoreDID)
+Utility for extracting the issuer field of a [`Credential`](`Credential`) as a DID.
+# Errors
+Fails if the issuer field is not a valid DID.
+
+**Kind**: static method of [JptCredentialValidatorUtils
](#JptCredentialValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+
+
+
+### JptCredentialValidatorUtils.extractIssuerFromIssuedJpt(credential) ⇒ [CoreDID
](#CoreDID)
+Utility for extracting the issuer field of a credential in JPT representation as DID.
+# Errors
+If the JPT decoding fails or the issuer field is not a valid DID.
+
+**Kind**: static method of [JptCredentialValidatorUtils
](#JptCredentialValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Jpt
](#Jpt) |
+
+
+
+### JptCredentialValidatorUtils.checkTimeframesWithValidityTimeframe2024(credential, validity_timeframe, status_check)
+**Kind**: static method of [JptCredentialValidatorUtils
](#JptCredentialValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+| validity_timeframe | [Timestamp
](#Timestamp) \| undefined
|
+| status_check | [StatusCheck
](#StatusCheck) |
+
+
+
+### JptCredentialValidatorUtils.checkRevocationWithValidityTimeframe2024(credential, issuer, status_check)
+Checks whether the credential status has been revoked.
+
+Only supports `RevocationTimeframe2024`.
+
+**Kind**: static method of [JptCredentialValidatorUtils
](#JptCredentialValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
+| status_check | [StatusCheck
](#StatusCheck) |
+
+
+
+### JptCredentialValidatorUtils.checkTimeframesAndRevocationWithValidityTimeframe2024(credential, issuer, validity_timeframe, status_check)
+Checks whether the credential status has been revoked or the timeframe interval is INVALID
+
+Only supports `RevocationTimeframe2024`.
+
+**Kind**: static method of [JptCredentialValidatorUtils
](#JptCredentialValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
+| validity_timeframe | [Timestamp
](#Timestamp) \| undefined
|
+| status_check | [StatusCheck
](#StatusCheck) |
+
+
+
+## JptPresentationValidationOptions
+Options to declare validation criteria for a [Jpt](#Jpt) presentation.
+
+**Kind**: global class
+
+* [JptPresentationValidationOptions](#JptPresentationValidationOptions)
+ * [new JptPresentationValidationOptions([opts])](#new_JptPresentationValidationOptions_new)
+ * _instance_
+ * [.clone()](#JptPresentationValidationOptions+clone) ⇒ [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+ * [.toJSON()](#JptPresentationValidationOptions+toJSON) ⇒ any
+ * _static_
+ * [.fromJSON(json)](#JptPresentationValidationOptions.fromJSON) ⇒ [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+
+
+
+### new JptPresentationValidationOptions([opts])
+
+| Param | Type |
+| --- | --- |
+| [opts] | IJptPresentationValidationOptions
\| undefined
|
+
+
+
+### jptPresentationValidationOptions.clone() ⇒ [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+Deep clones the object.
+
+**Kind**: instance method of [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+
+
+### jptPresentationValidationOptions.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+
+
+### JptPresentationValidationOptions.fromJSON(json) ⇒ [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [JptPresentationValidationOptions
](#JptPresentationValidationOptions)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+## JptPresentationValidator
+**Kind**: global class
+
+
+### JptPresentationValidator.validate(presentation_jpt, issuer, options, fail_fast) ⇒ [DecodedJptPresentation
](#DecodedJptPresentation)
+Decodes and validates a Presented [Credential](#Credential) issued as a JPT (JWP Presented Form). A
+[DecodedJptPresentation](#DecodedJptPresentation) is returned upon success.
+
+The following properties are validated according to `options`:
+- the holder's proof on the JWP,
+- the expiration date,
+- the issuance date,
+- the semantic structure.
+
+**Kind**: static method of [JptPresentationValidator
](#JptPresentationValidator)
+
+| Param | Type |
+| --- | --- |
+| presentation_jpt | [Jpt
](#Jpt) |
+| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
+| options | [JptPresentationValidationOptions
](#JptPresentationValidationOptions) |
+| fail_fast | [FailFast
](#FailFast) |
+
+
+
+## JptPresentationValidatorUtils
+Utility functions for verifying JPT presentations.
+
+**Kind**: global class
+
+* [JptPresentationValidatorUtils](#JptPresentationValidatorUtils)
+ * [.extractIssuerFromPresentedJpt(presentation)](#JptPresentationValidatorUtils.extractIssuerFromPresentedJpt) ⇒ [CoreDID
](#CoreDID)
+ * [.checkTimeframesWithValidityTimeframe2024(credential, validity_timeframe, status_check)](#JptPresentationValidatorUtils.checkTimeframesWithValidityTimeframe2024)
+
+
+
+### JptPresentationValidatorUtils.extractIssuerFromPresentedJpt(presentation) ⇒ [CoreDID
](#CoreDID)
+Utility for extracting the issuer field of a credential in JPT representation as DID.
+# Errors
+If the JPT decoding fails or the issuer field is not a valid DID.
+
+**Kind**: static method of [JptPresentationValidatorUtils
](#JptPresentationValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| presentation | [Jpt
](#Jpt) |
+
+
+
+### JptPresentationValidatorUtils.checkTimeframesWithValidityTimeframe2024(credential, validity_timeframe, status_check)
+Check timeframe interval in credentialStatus with `RevocationTimeframeStatus`.
+
+**Kind**: static method of [JptPresentationValidatorUtils
](#JptPresentationValidatorUtils)
+
+| Param | Type |
+| --- | --- |
+| credential | [Credential
](#Credential) |
+| validity_timeframe | [Timestamp
](#Timestamp) \| undefined
|
+| status_check | [StatusCheck
](#StatusCheck) |
+
+
+
+## Jwk
+**Kind**: global class
+
+* [Jwk](#Jwk)
+ * [new Jwk(jwk)](#new_Jwk_new)
+ * _instance_
+ * [.kty()](#Jwk+kty) ⇒ JwkType
+ * [.use()](#Jwk+use) ⇒ JwkUse
\| undefined
+ * [.keyOps()](#Jwk+keyOps) ⇒ Array.<JwkOperation>
+ * [.alg()](#Jwk+alg) ⇒ JwsAlgorithm
\| undefined
+ * [.kid()](#Jwk+kid) ⇒ string
\| undefined
+ * [.x5u()](#Jwk+x5u) ⇒ string
\| undefined
+ * [.x5c()](#Jwk+x5c) ⇒ Array.<string>
+ * [.x5t()](#Jwk+x5t) ⇒ string
\| undefined
+ * [.x5t256()](#Jwk+x5t256) ⇒ string
\| undefined
+ * [.paramsEc()](#Jwk+paramsEc) ⇒ JwkParamsEc
\| undefined
+ * [.paramsOkp()](#Jwk+paramsOkp) ⇒ JwkParamsOkp
\| undefined
+ * [.paramsOct()](#Jwk+paramsOct) ⇒ JwkParamsOct
\| undefined
+ * [.paramsRsa()](#Jwk+paramsRsa) ⇒ JwkParamsRsa
\| undefined
+ * [.toPublic()](#Jwk+toPublic) ⇒ [Jwk
](#Jwk) \| undefined
+ * [.isPublic()](#Jwk+isPublic) ⇒ boolean
+ * [.isPrivate()](#Jwk+isPrivate) ⇒ boolean
+ * [.toJSON()](#Jwk+toJSON) ⇒ any
+ * [.clone()](#Jwk+clone) ⇒ [Jwk
](#Jwk)
+ * _static_
+ * [.fromJSON(json)](#Jwk.fromJSON) ⇒ [Jwk
](#Jwk)
+
+
+
+### new Jwk(jwk)
+
+| Param | Type |
+| --- | --- |
+| jwk | IJwkParams
|
+
+
+
+### jwk.kty() ⇒ JwkType
+Returns the value for the key type parameter (kty).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.use() ⇒ JwkUse
\| undefined
+Returns the value for the use property (use).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.keyOps() ⇒ Array.<JwkOperation>
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.alg() ⇒ JwsAlgorithm
\| undefined
+Returns the value for the algorithm property (alg).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.kid() ⇒ string
\| undefined
+Returns the value of the key ID property (kid).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.x5u() ⇒ string
\| undefined
+Returns the value of the X.509 URL property (x5u).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.x5c() ⇒ Array.<string>
+Returns the value of the X.509 certificate chain property (x5c).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.x5t() ⇒ string
\| undefined
+Returns the value of the X.509 certificate SHA-1 thumbprint property (x5t).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.x5t256() ⇒ string
\| undefined
+Returns the value of the X.509 certificate SHA-256 thumbprint property (x5t#S256).
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.paramsEc() ⇒ JwkParamsEc
\| undefined
+If this JWK is of kty EC, returns those parameters.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.paramsOkp() ⇒ JwkParamsOkp
\| undefined
+If this JWK is of kty OKP, returns those parameters.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.paramsOct() ⇒ JwkParamsOct
\| undefined
+If this JWK is of kty OCT, returns those parameters.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.paramsRsa() ⇒ JwkParamsRsa
\| undefined
+If this JWK is of kty RSA, returns those parameters.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.toPublic() ⇒ [Jwk
](#Jwk) \| undefined
+Returns a clone of the [Jwk](#Jwk) with _all_ private key components unset.
+Nothing is returned when `kty = oct` as this key type is not considered public by this library.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.isPublic() ⇒ boolean
+Returns `true` if _all_ private key components of the key are unset, `false` otherwise.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.isPrivate() ⇒ boolean
+Returns `true` if _all_ private key components of the key are set, `false` otherwise.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### jwk.clone() ⇒ [Jwk
](#Jwk)
+Deep clones the object.
+
+**Kind**: instance method of [Jwk
](#Jwk)
+
+
+### Jwk.fromJSON(json) ⇒ [Jwk
](#Jwk)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [Jwk
](#Jwk)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+## JwkGenOutput
+The result of a key generation in `JwkStorage`.
**Kind**: global class
@@ -3023,6 +3599,217 @@ Deserializes an instance from a JSON object.
| --- | --- |
| json | any
|
+
+
+## JwpCredentialOptions
+**Kind**: global class
+
+* [JwpCredentialOptions](#JwpCredentialOptions)
+ * _instance_
+ * [.kid](#JwpCredentialOptions+kid) ⇒ string
\| undefined
+ * [.kid](#JwpCredentialOptions+kid)
+ * [.toJSON()](#JwpCredentialOptions+toJSON) ⇒ any
+ * _static_
+ * [.fromJSON(value)](#JwpCredentialOptions.fromJSON) ⇒ [JwpCredentialOptions
](#JwpCredentialOptions)
+
+
+
+### jwpCredentialOptions.kid ⇒ string
\| undefined
+**Kind**: instance property of [JwpCredentialOptions
](#JwpCredentialOptions)
+
+
+### jwpCredentialOptions.kid
+**Kind**: instance property of [JwpCredentialOptions
](#JwpCredentialOptions)
+
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
+
+
+
+### jwpCredentialOptions.toJSON() ⇒ any
+**Kind**: instance method of [JwpCredentialOptions
](#JwpCredentialOptions)
+
+
+### JwpCredentialOptions.fromJSON(value) ⇒ [JwpCredentialOptions
](#JwpCredentialOptions)
+**Kind**: static method of [JwpCredentialOptions
](#JwpCredentialOptions)
+
+| Param | Type |
+| --- | --- |
+| value | any
|
+
+
+
+## JwpIssued
+**Kind**: global class
+
+* [JwpIssued](#JwpIssued)
+ * _instance_
+ * [.toJSON()](#JwpIssued+toJSON) ⇒ any
+ * [.clone()](#JwpIssued+clone) ⇒ [JwpIssued
](#JwpIssued)
+ * [.encode(serialization)](#JwpIssued+encode) ⇒ string
+ * [.setProof(proof)](#JwpIssued+setProof)
+ * [.getProof()](#JwpIssued+getProof) ⇒ Uint8Array
+ * [.getPayloads()](#JwpIssued+getPayloads) ⇒ [Payloads
](#Payloads)
+ * [.setPayloads(payloads)](#JwpIssued+setPayloads)
+ * [.getIssuerProtectedHeader()](#JwpIssued+getIssuerProtectedHeader) ⇒ [IssuerProtectedHeader
](#IssuerProtectedHeader)
+ * _static_
+ * [.fromJSON(json)](#JwpIssued.fromJSON) ⇒ [JwpIssued
](#JwpIssued)
+
+
+
+### jwpIssued.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+
+### jwpIssued.clone() ⇒ [JwpIssued
](#JwpIssued)
+Deep clones the object.
+
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+
+### jwpIssued.encode(serialization) ⇒ string
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+| Param | Type |
+| --- | --- |
+| serialization | [SerializationType
](#SerializationType) |
+
+
+
+### jwpIssued.setProof(proof)
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+| Param | Type |
+| --- | --- |
+| proof | Uint8Array
|
+
+
+
+### jwpIssued.getProof() ⇒ Uint8Array
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+
+### jwpIssued.getPayloads() ⇒ [Payloads
](#Payloads)
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+
+### jwpIssued.setPayloads(payloads)
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+| Param | Type |
+| --- | --- |
+| payloads | [Payloads
](#Payloads) |
+
+
+
+### jwpIssued.getIssuerProtectedHeader() ⇒ [IssuerProtectedHeader
](#IssuerProtectedHeader)
+**Kind**: instance method of [JwpIssued
](#JwpIssued)
+
+
+### JwpIssued.fromJSON(json) ⇒ [JwpIssued
](#JwpIssued)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [JwpIssued
](#JwpIssued)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+## JwpPresentationOptions
+Options to be set in the JWT claims of a verifiable presentation.
+
+**Kind**: global class
+
+* [JwpPresentationOptions](#JwpPresentationOptions)
+ * [.audience](#JwpPresentationOptions+audience) ⇒ string
\| undefined
+ * [.audience](#JwpPresentationOptions+audience)
+ * [.nonce](#JwpPresentationOptions+nonce) ⇒ string
\| undefined
+ * [.nonce](#JwpPresentationOptions+nonce)
+
+
+
+### jwpPresentationOptions.audience ⇒ string
\| undefined
+Sets the audience for presentation (`aud` property in JWP Presentation Header).
+
+**Kind**: instance property of [JwpPresentationOptions
](#JwpPresentationOptions)
+
+
+### jwpPresentationOptions.audience
+Sets the audience for presentation (`aud` property in JWP Presentation Header).
+
+**Kind**: instance property of [JwpPresentationOptions
](#JwpPresentationOptions)
+
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
+
+
+
+### jwpPresentationOptions.nonce ⇒ string
\| undefined
+The nonce to be placed in the Presentation Protected Header.
+
+**Kind**: instance property of [JwpPresentationOptions
](#JwpPresentationOptions)
+
+
+### jwpPresentationOptions.nonce
+The nonce to be placed in the Presentation Protected Header.
+
+**Kind**: instance property of [JwpPresentationOptions
](#JwpPresentationOptions)
+
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
+
+
+
+## JwpVerificationOptions
+**Kind**: global class
+
+* [JwpVerificationOptions](#JwpVerificationOptions)
+ * _instance_
+ * [.clone()](#JwpVerificationOptions+clone) ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+ * [.toJSON()](#JwpVerificationOptions+toJSON) ⇒ any
+ * _static_
+ * [.fromJSON(json)](#JwpVerificationOptions.fromJSON) ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+ * [.new([opts])](#JwpVerificationOptions.new) ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+
+
+
+### jwpVerificationOptions.clone() ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+Deep clones the object.
+
+**Kind**: instance method of [JwpVerificationOptions
](#JwpVerificationOptions)
+
+
+### jwpVerificationOptions.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [JwpVerificationOptions
](#JwpVerificationOptions)
+
+
+### JwpVerificationOptions.fromJSON(json) ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [JwpVerificationOptions
](#JwpVerificationOptions)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+### JwpVerificationOptions.new([opts]) ⇒ [JwpVerificationOptions
](#JwpVerificationOptions)
+**Kind**: static method of [JwpVerificationOptions
](#JwpVerificationOptions)
+
+| Param | Type |
+| --- | --- |
+| [opts] | IJwpVerificationOptions
\| undefined
|
+
## Jws
@@ -3394,7 +4181,7 @@ Deserializes an instance from a JSON object.
**Kind**: global class
* [JwsSignatureOptions](#JwsSignatureOptions)
- * [new JwsSignatureOptions(options)](#new_JwsSignatureOptions_new)
+ * [new JwsSignatureOptions([options])](#new_JwsSignatureOptions_new)
* _instance_
* [.setAttachJwk(value)](#JwsSignatureOptions+setAttachJwk)
* [.setB64(value)](#JwsSignatureOptions+setB64)
@@ -3412,11 +4199,11 @@ Deserializes an instance from a JSON object.
-### new JwsSignatureOptions(options)
+### new JwsSignatureOptions([options])
| Param | Type |
| --- | --- |
-| options | IJwsSignatureOptions
\| undefined
|
+| [options] | IJwsSignatureOptions
\| undefined
|
@@ -3546,7 +4333,7 @@ Deserializes an instance from a JSON object.
**Kind**: global class
* [JwsVerificationOptions](#JwsVerificationOptions)
- * [new JwsVerificationOptions(options)](#new_JwsVerificationOptions_new)
+ * [new JwsVerificationOptions([options])](#new_JwsVerificationOptions_new)
* _instance_
* [.setNonce(value)](#JwsVerificationOptions+setNonce)
* [.setMethodScope(value)](#JwsVerificationOptions+setMethodScope)
@@ -3558,13 +4345,13 @@ Deserializes an instance from a JSON object.
-### new JwsVerificationOptions(options)
+### new JwsVerificationOptions([options])
Creates a new [JwsVerificationOptions](#JwsVerificationOptions) from the given fields.
| Param | Type |
| --- | --- |
-| options | IJwsVerificationOptions
\| undefined
|
+| [options] | IJwsVerificationOptions
\| undefined
|
@@ -3685,7 +4472,7 @@ Options to declare validation criteria when validating credentials.
**Kind**: global class
* [JwtCredentialValidationOptions](#JwtCredentialValidationOptions)
- * [new JwtCredentialValidationOptions(options)](#new_JwtCredentialValidationOptions_new)
+ * [new JwtCredentialValidationOptions([options])](#new_JwtCredentialValidationOptions_new)
* _instance_
* [.toJSON()](#JwtCredentialValidationOptions+toJSON) ⇒ any
* [.clone()](#JwtCredentialValidationOptions+clone) ⇒ [JwtCredentialValidationOptions
](#JwtCredentialValidationOptions)
@@ -3694,11 +4481,11 @@ Options to declare validation criteria when validating credentials.
-### new JwtCredentialValidationOptions(options)
+### new JwtCredentialValidationOptions([options])
| Param | Type |
| --- | --- |
-| options | IJwtCredentialValidationOptions
\| undefined
|
+| [options] | IJwtCredentialValidationOptions
\| undefined
|
@@ -3791,7 +4578,7 @@ An error is returned whenever a validated condition is not satisfied.
| credential_jwt | [Jwt
](#Jwt) |
| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
| options | [JwtCredentialValidationOptions
](#JwtCredentialValidationOptions) |
-| fail_fast | number
|
+| fail_fast | [FailFast
](#FailFast) |
@@ -3857,7 +4644,7 @@ Validate that the relationship between the `holder` and the credential subjects
| --- | --- |
| credential | [Credential
](#Credential) |
| holder | string
|
-| relationship | number
|
+| relationship | [SubjectHolderRelationship
](#SubjectHolderRelationship) |
@@ -3872,7 +4659,7 @@ Only supports `RevocationBitmap2022`.
| --- | --- |
| credential | [Credential
](#Credential) |
| trustedIssuers | Array.<(CoreDocument\|IToCoreDocument)>
|
-| statusCheck | number
|
+| statusCheck | [StatusCheck
](#StatusCheck) |
@@ -3885,7 +4672,7 @@ Checks wheter the credential status has been revoked using `StatusList2021`.
| --- | --- |
| credential | [Credential
](#Credential) |
| status_list | [StatusList2021Credential
](#StatusList2021Credential) |
-| status_check | number
|
+| status_check | [StatusCheck
](#StatusCheck) |
@@ -3991,7 +4778,7 @@ Error will be thrown in case the validation fails.
**Kind**: global class
* [JwtPresentationOptions](#JwtPresentationOptions)
- * [new JwtPresentationOptions(options)](#new_JwtPresentationOptions_new)
+ * [new JwtPresentationOptions([options])](#new_JwtPresentationOptions_new)
* _instance_
* [.toJSON()](#JwtPresentationOptions+toJSON) ⇒ any
* [.clone()](#JwtPresentationOptions+clone) ⇒ [JwtPresentationOptions
](#JwtPresentationOptions)
@@ -4000,7 +4787,7 @@ Error will be thrown in case the validation fails.
-### new JwtPresentationOptions(options)
+### new JwtPresentationOptions([options])
Creates a new [JwtPresentationOptions](#JwtPresentationOptions) from the given fields.
Throws an error if any of the options are invalid.
@@ -4008,7 +4795,7 @@ Throws an error if any of the options are invalid.
| Param | Type |
| --- | --- |
-| options | IJwtPresentationOptions
\| undefined
|
+| [options] | IJwtPresentationOptions
\| undefined
|
@@ -4041,7 +4828,7 @@ Options to declare validation criteria when validating presentation.
**Kind**: global class
* [JwtPresentationValidationOptions](#JwtPresentationValidationOptions)
- * [new JwtPresentationValidationOptions(options)](#new_JwtPresentationValidationOptions_new)
+ * [new JwtPresentationValidationOptions([options])](#new_JwtPresentationValidationOptions_new)
* _instance_
* [.toJSON()](#JwtPresentationValidationOptions+toJSON) ⇒ any
* [.clone()](#JwtPresentationValidationOptions+clone) ⇒ [JwtPresentationValidationOptions
](#JwtPresentationValidationOptions)
@@ -4050,7 +4837,7 @@ Options to declare validation criteria when validating presentation.
-### new JwtPresentationValidationOptions(options)
+### new JwtPresentationValidationOptions([options])
Creates a new [JwtPresentationValidationOptions](#JwtPresentationValidationOptions) from the given fields.
Throws an error if any of the options are invalid.
@@ -4058,7 +4845,7 @@ Throws an error if any of the options are invalid.
| Param | Type |
| --- | --- |
-| options | IJwtPresentationValidationOptions
\| undefined
|
+| [options] | IJwtPresentationValidationOptions
\| undefined
|
@@ -4178,7 +4965,7 @@ Options to declare validation criteria when validating credentials.
**Kind**: global class
* [KeyBindingJWTValidationOptions](#KeyBindingJWTValidationOptions)
- * [new KeyBindingJWTValidationOptions(options)](#new_KeyBindingJWTValidationOptions_new)
+ * [new KeyBindingJWTValidationOptions([options])](#new_KeyBindingJWTValidationOptions_new)
* _instance_
* [.toJSON()](#KeyBindingJWTValidationOptions+toJSON) ⇒ any
* [.clone()](#KeyBindingJWTValidationOptions+clone) ⇒ [KeyBindingJWTValidationOptions
](#KeyBindingJWTValidationOptions)
@@ -4187,11 +4974,11 @@ Options to declare validation criteria when validating credentials.
-### new KeyBindingJWTValidationOptions(options)
+### new KeyBindingJWTValidationOptions([options])
| Param | Type |
| --- | --- |
-| options | IKeyBindingJWTValidationOptions
\| undefined
|
+| [options] | IKeyBindingJWTValidationOptions
\| undefined
|
@@ -4224,7 +5011,7 @@ Claims set for key binding JWT.
**Kind**: global class
* [KeyBindingJwtClaims](#KeyBindingJwtClaims)
- * [new KeyBindingJwtClaims(jwt, disclosures, nonce, aud, issued_at, custom_properties)](#new_KeyBindingJwtClaims_new)
+ * [new KeyBindingJwtClaims(jwt, disclosures, nonce, aud, [issued_at], [custom_properties])](#new_KeyBindingJwtClaims_new)
* _instance_
* [.toString()](#KeyBindingJwtClaims+toString) ⇒ string
* [.iat()](#KeyBindingJwtClaims+iat) ⇒ bigint
@@ -4240,7 +5027,7 @@ Claims set for key binding JWT.
-### new KeyBindingJwtClaims(jwt, disclosures, nonce, aud, issued_at, custom_properties)
+### new KeyBindingJwtClaims(jwt, disclosures, nonce, aud, [issued_at], [custom_properties])
Creates a new [`KeyBindingJwtClaims`].
When `issued_at` is left as None, it will automatically default to the current time.
@@ -4254,8 +5041,8 @@ When `issued_at` is set to `None` and the system returns time earlier than `Syst
| disclosures | Array.<string>
|
| nonce | string
|
| aud | string
|
-| issued_at | [Timestamp
](#Timestamp) \| undefined
|
-| custom_properties | Record.<string, any>
\| undefined
|
+| [issued_at] | [Timestamp
](#Timestamp) \| undefined
|
+| [custom_properties] | Record.<string, any>
\| undefined
|
@@ -4649,7 +5436,8 @@ Supported verification method types.
* _static_
* [.Ed25519VerificationKey2018()](#MethodType.Ed25519VerificationKey2018) ⇒ [MethodType
](#MethodType)
* [.X25519KeyAgreementKey2019()](#MethodType.X25519KeyAgreementKey2019) ⇒ [MethodType
](#MethodType)
- * [.JsonWebKey()](#MethodType.JsonWebKey) ⇒ [MethodType
](#MethodType)
+ * ~~[.JsonWebKey()](#MethodType.JsonWebKey)~~
+ * [.JsonWebKey2020()](#MethodType.JsonWebKey2020) ⇒ [MethodType
](#MethodType)
* [.custom(type_)](#MethodType.custom) ⇒ [MethodType
](#MethodType)
* [.fromJSON(json)](#MethodType.fromJSON) ⇒ [MethodType
](#MethodType)
@@ -4681,7 +5469,13 @@ Deep clones the object.
**Kind**: static method of [MethodType
](#MethodType)
-### MethodType.JsonWebKey() ⇒ [MethodType
](#MethodType)
+### ~~MethodType.JsonWebKey()~~
+***Deprecated***
+
+**Kind**: static method of [MethodType
](#MethodType)
+
+
+### MethodType.JsonWebKey2020() ⇒ [MethodType
](#MethodType)
A verification method for use with JWT verification as prescribed by the [Jwk](#Jwk)
in the `publicKeyJwk` entry.
@@ -4708,6 +5502,143 @@ Deserializes an instance from a JSON object.
| --- | --- |
| json | any
|
+
+
+## PayloadEntry
+**Kind**: global class
+
+* [PayloadEntry](#PayloadEntry)
+ * [.1](#PayloadEntry+1) ⇒ [PayloadType
](#PayloadType)
+ * [.1](#PayloadEntry+1)
+ * [.value](#PayloadEntry+value)
+ * [.value](#PayloadEntry+value) ⇒ any
+
+
+
+### payloadEntry.1 ⇒ [PayloadType
](#PayloadType)
+**Kind**: instance property of [PayloadEntry
](#PayloadEntry)
+
+
+### payloadEntry.1
+**Kind**: instance property of [PayloadEntry
](#PayloadEntry)
+
+| Param | Type |
+| --- | --- |
+| arg0 | [PayloadType
](#PayloadType) |
+
+
+
+### payloadEntry.value
+**Kind**: instance property of [PayloadEntry
](#PayloadEntry)
+
+| Param | Type |
+| --- | --- |
+| value | any
|
+
+
+
+### payloadEntry.value ⇒ any
+**Kind**: instance property of [PayloadEntry
](#PayloadEntry)
+
+
+## Payloads
+**Kind**: global class
+
+* [Payloads](#Payloads)
+ * [new Payloads(entries)](#new_Payloads_new)
+ * _instance_
+ * [.toJSON()](#Payloads+toJSON) ⇒ any
+ * [.clone()](#Payloads+clone) ⇒ [Payloads
](#Payloads)
+ * [.getValues()](#Payloads+getValues) ⇒ Array.<any>
+ * [.getUndisclosedIndexes()](#Payloads+getUndisclosedIndexes) ⇒ Uint32Array
+ * [.getDisclosedIndexes()](#Payloads+getDisclosedIndexes) ⇒ Uint32Array
+ * [.getUndisclosedPayloads()](#Payloads+getUndisclosedPayloads) ⇒ Array.<any>
+ * [.getDisclosedPayloads()](#Payloads+getDisclosedPayloads) ⇒ [Payloads
](#Payloads)
+ * [.setUndisclosed(index)](#Payloads+setUndisclosed)
+ * [.replacePayloadAtIndex(index, value)](#Payloads+replacePayloadAtIndex) ⇒ any
+ * _static_
+ * [.fromJSON(json)](#Payloads.fromJSON) ⇒ [Payloads
](#Payloads)
+ * [.newFromValues(values)](#Payloads.newFromValues) ⇒ [Payloads
](#Payloads)
+
+
+
+### new Payloads(entries)
+
+| Param | Type |
+| --- | --- |
+| entries | [Array.<PayloadEntry>
](#PayloadEntry) |
+
+
+
+### payloads.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.clone() ⇒ [Payloads
](#Payloads)
+Deep clones the object.
+
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.getValues() ⇒ Array.<any>
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.getUndisclosedIndexes() ⇒ Uint32Array
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.getDisclosedIndexes() ⇒ Uint32Array
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.getUndisclosedPayloads() ⇒ Array.<any>
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.getDisclosedPayloads() ⇒ [Payloads
](#Payloads)
+**Kind**: instance method of [Payloads
](#Payloads)
+
+
+### payloads.setUndisclosed(index)
+**Kind**: instance method of [Payloads
](#Payloads)
+
+| Param | Type |
+| --- | --- |
+| index | number
|
+
+
+
+### payloads.replacePayloadAtIndex(index, value) ⇒ any
+**Kind**: instance method of [Payloads
](#Payloads)
+
+| Param | Type |
+| --- | --- |
+| index | number
|
+| value | any
|
+
+
+
+### Payloads.fromJSON(json) ⇒ [Payloads
](#Payloads)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [Payloads
](#Payloads)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+### Payloads.newFromValues(values) ⇒ [Payloads
](#Payloads)
+**Kind**: static method of [Payloads
](#Payloads)
+
+| Param | Type |
+| --- | --- |
+| values | Array.<any>
|
+
## Presentation
@@ -4724,7 +5655,7 @@ Deserializes an instance from a JSON object.
* [.refreshService()](#Presentation+refreshService) ⇒ Array.<RefreshService>
* [.termsOfUse()](#Presentation+termsOfUse) ⇒ Array.<Policy>
* [.proof()](#Presentation+proof) ⇒ [Proof
](#Proof) \| undefined
- * [.setProof(proof)](#Presentation+setProof)
+ * [.setProof([proof])](#Presentation+setProof)
* [.properties()](#Presentation+properties) ⇒ Map.<string, any>
* [.toJSON()](#Presentation+toJSON) ⇒ any
* [.clone()](#Presentation+clone) ⇒ [Presentation
](#Presentation)
@@ -4793,7 +5724,7 @@ Optional cryptographic proof, unrelated to JWT.
**Kind**: instance method of [Presentation
](#Presentation)
-### presentation.setProof(proof)
+### presentation.setProof([proof])
Sets the proof property of the [Presentation](#Presentation).
Note that this proof is not related to JWT.
@@ -4802,48 +5733,127 @@ Note that this proof is not related to JWT.
| Param | Type |
| --- | --- |
-| proof | [Proof
](#Proof) \| undefined
|
+| [proof] | [Proof
](#Proof) \| undefined
|
### presentation.properties() ⇒ Map.<string, any>
Returns a copy of the miscellaneous properties on the presentation.
-**Kind**: instance method of [Presentation
](#Presentation)
-
+**Kind**: instance method of [Presentation
](#Presentation)
+
+
+### presentation.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [Presentation
](#Presentation)
+
+
+### presentation.clone() ⇒ [Presentation
](#Presentation)
+Deep clones the object.
+
+**Kind**: instance method of [Presentation
](#Presentation)
+
+
+### Presentation.BaseContext() ⇒ string
+Returns the base JSON-LD context.
+
+**Kind**: static method of [Presentation
](#Presentation)
+
+
+### Presentation.BaseType() ⇒ string
+Returns the base type.
+
+**Kind**: static method of [Presentation
](#Presentation)
+
+
+### Presentation.fromJSON(json) ⇒ [Presentation
](#Presentation)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [Presentation
](#Presentation)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
+
+
+## PresentationProtectedHeader
+**Kind**: global class
+
+* [PresentationProtectedHeader](#PresentationProtectedHeader)
+ * [.alg](#PresentationProtectedHeader+alg) ⇒ [PresentationProofAlgorithm
](#PresentationProofAlgorithm)
+ * [.alg](#PresentationProtectedHeader+alg)
+ * [.kid](#PresentationProtectedHeader+kid) ⇒ string
\| undefined
+ * [.kid](#PresentationProtectedHeader+kid)
+ * [.aud](#PresentationProtectedHeader+aud) ⇒ string
\| undefined
+ * [.aud](#PresentationProtectedHeader+aud)
+ * [.nonce](#PresentationProtectedHeader+nonce) ⇒ string
\| undefined
+ * [.nonce](#PresentationProtectedHeader+nonce)
+
+
+
+### presentationProtectedHeader.alg ⇒ [PresentationProofAlgorithm
](#PresentationProofAlgorithm)
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
+
+### presentationProtectedHeader.alg
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
+| Param | Type |
+| --- | --- |
+| arg0 | [PresentationProofAlgorithm
](#PresentationProofAlgorithm) |
+
+
+
+### presentationProtectedHeader.kid ⇒ string
\| undefined
+ID for the key used for the JWP.
+
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
+
+### presentationProtectedHeader.kid
+ID for the key used for the JWP.
+
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
-### presentation.toJSON() ⇒ any
-Serializes this to a JSON object.
+
-**Kind**: instance method of [Presentation
](#Presentation)
-
+### presentationProtectedHeader.aud ⇒ string
\| undefined
+Who have received the JPT.
-### presentation.clone() ⇒ [Presentation
](#Presentation)
-Deep clones the object.
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
-**Kind**: instance method of [Presentation
](#Presentation)
-
+### presentationProtectedHeader.aud
+Who have received the JPT.
-### Presentation.BaseContext() ⇒ string
-Returns the base JSON-LD context.
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
-**Kind**: static method of [Presentation
](#Presentation)
-
+| Param | Type |
+| --- | --- |
+| [arg0] | string
\| undefined
|
-### Presentation.BaseType() ⇒ string
-Returns the base type.
+
-**Kind**: static method of [Presentation
](#Presentation)
-
+### presentationProtectedHeader.nonce ⇒ string
\| undefined
+For replay attacks.
-### Presentation.fromJSON(json) ⇒ [Presentation
](#Presentation)
-Deserializes an instance from a JSON object.
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
+
-**Kind**: static method of [Presentation
](#Presentation)
+### presentationProtectedHeader.nonce
+For replay attacks.
+
+**Kind**: instance property of [PresentationProtectedHeader
](#PresentationProtectedHeader)
| Param | Type |
| --- | --- |
-| json | any
|
+| [arg0] | string
\| undefined
|
@@ -4914,6 +5924,146 @@ Deserializes an instance from a JSON object.
| --- | --- |
| json | any
|
+
+
+## ProofUpdateCtx
+**Kind**: global class
+
+* [ProofUpdateCtx](#ProofUpdateCtx)
+ * [.old_start_validity_timeframe](#ProofUpdateCtx+old_start_validity_timeframe) ⇒ Uint8Array
+ * [.old_start_validity_timeframe](#ProofUpdateCtx+old_start_validity_timeframe)
+ * [.new_start_validity_timeframe](#ProofUpdateCtx+new_start_validity_timeframe) ⇒ Uint8Array
+ * [.new_start_validity_timeframe](#ProofUpdateCtx+new_start_validity_timeframe)
+ * [.old_end_validity_timeframe](#ProofUpdateCtx+old_end_validity_timeframe) ⇒ Uint8Array
+ * [.old_end_validity_timeframe](#ProofUpdateCtx+old_end_validity_timeframe)
+ * [.new_end_validity_timeframe](#ProofUpdateCtx+new_end_validity_timeframe) ⇒ Uint8Array
+ * [.new_end_validity_timeframe](#ProofUpdateCtx+new_end_validity_timeframe)
+ * [.index_start_validity_timeframe](#ProofUpdateCtx+index_start_validity_timeframe) ⇒ number
+ * [.index_start_validity_timeframe](#ProofUpdateCtx+index_start_validity_timeframe)
+ * [.index_end_validity_timeframe](#ProofUpdateCtx+index_end_validity_timeframe) ⇒ number
+ * [.index_end_validity_timeframe](#ProofUpdateCtx+index_end_validity_timeframe)
+ * [.number_of_signed_messages](#ProofUpdateCtx+number_of_signed_messages) ⇒ number
+ * [.number_of_signed_messages](#ProofUpdateCtx+number_of_signed_messages)
+
+
+
+### proofUpdateCtx.old\_start\_validity\_timeframe ⇒ Uint8Array
+Old `startValidityTimeframe` value
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.old\_start\_validity\_timeframe
+Old `startValidityTimeframe` value
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | Uint8Array
|
+
+
+
+### proofUpdateCtx.new\_start\_validity\_timeframe ⇒ Uint8Array
+New `startValidityTimeframe` value to be signed
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.new\_start\_validity\_timeframe
+New `startValidityTimeframe` value to be signed
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | Uint8Array
|
+
+
+
+### proofUpdateCtx.old\_end\_validity\_timeframe ⇒ Uint8Array
+Old `endValidityTimeframe` value
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.old\_end\_validity\_timeframe
+Old `endValidityTimeframe` value
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | Uint8Array
|
+
+
+
+### proofUpdateCtx.new\_end\_validity\_timeframe ⇒ Uint8Array
+New `endValidityTimeframe` value to be signed
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.new\_end\_validity\_timeframe
+New `endValidityTimeframe` value to be signed
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | Uint8Array
|
+
+
+
+### proofUpdateCtx.index\_start\_validity\_timeframe ⇒ number
+Index of `startValidityTimeframe` claim inside the array of Claims
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.index\_start\_validity\_timeframe
+Index of `startValidityTimeframe` claim inside the array of Claims
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | number
|
+
+
+
+### proofUpdateCtx.index\_end\_validity\_timeframe ⇒ number
+Index of `endValidityTimeframe` claim inside the array of Claims
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.index\_end\_validity\_timeframe
+Index of `endValidityTimeframe` claim inside the array of Claims
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | number
|
+
+
+
+### proofUpdateCtx.number\_of\_signed\_messages ⇒ number
+Number of signed messages, number of payloads in a JWP
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+
+### proofUpdateCtx.number\_of\_signed\_messages
+Number of signed messages, number of payloads in a JWP
+
+**Kind**: instance property of [ProofUpdateCtx
](#ProofUpdateCtx)
+
+| Param | Type |
+| --- | --- |
+| arg0 | number
|
+
## Resolver
@@ -5082,6 +6232,85 @@ if it is a valid Revocation Bitmap Service.
| --- | --- |
| service | [Service
](#Service) |
+
+
+## RevocationTimeframeStatus
+Information used to determine the current status of a [Credential](#Credential).
+
+**Kind**: global class
+
+* [RevocationTimeframeStatus](#RevocationTimeframeStatus)
+ * [new RevocationTimeframeStatus(id, index, duration, [start_validity])](#new_RevocationTimeframeStatus_new)
+ * _instance_
+ * [.clone()](#RevocationTimeframeStatus+clone) ⇒ [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+ * [.toJSON()](#RevocationTimeframeStatus+toJSON) ⇒ any
+ * [.startValidityTimeframe()](#RevocationTimeframeStatus+startValidityTimeframe) ⇒ [Timestamp
](#Timestamp)
+ * [.endValidityTimeframe()](#RevocationTimeframeStatus+endValidityTimeframe) ⇒ [Timestamp
](#Timestamp)
+ * [.id()](#RevocationTimeframeStatus+id) ⇒ string
+ * [.index()](#RevocationTimeframeStatus+index) ⇒ number
\| undefined
+ * _static_
+ * [.fromJSON(json)](#RevocationTimeframeStatus.fromJSON) ⇒ [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+
+### new RevocationTimeframeStatus(id, index, duration, [start_validity])
+Creates a new `RevocationTimeframeStatus`.
+
+
+| Param | Type |
+| --- | --- |
+| id | string
|
+| index | number
|
+| duration | [Duration
](#Duration) |
+| [start_validity] | [Timestamp
](#Timestamp) \| undefined
|
+
+
+
+### revocationTimeframeStatus.clone() ⇒ [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+Deep clones the object.
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### revocationTimeframeStatus.toJSON() ⇒ any
+Serializes this to a JSON object.
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### revocationTimeframeStatus.startValidityTimeframe() ⇒ [Timestamp
](#Timestamp)
+Get startValidityTimeframe value.
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### revocationTimeframeStatus.endValidityTimeframe() ⇒ [Timestamp
](#Timestamp)
+Get endValidityTimeframe value.
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### revocationTimeframeStatus.id() ⇒ string
+Return the URL fo the `RevocationBitmapStatus`.
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### revocationTimeframeStatus.index() ⇒ number
\| undefined
+Return the index of the credential in the issuer's revocation bitmap
+
+**Kind**: instance method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+
+### RevocationTimeframeStatus.fromJSON(json) ⇒ [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+Deserializes an instance from a JSON object.
+
+**Kind**: static method of [RevocationTimeframeStatus
](#RevocationTimeframeStatus)
+
+| Param | Type |
+| --- | --- |
+| json | any
|
+
## SdJwt
@@ -5091,7 +6320,7 @@ Representation of an SD-JWT of the format
**Kind**: global class
* [SdJwt](#SdJwt)
- * [new SdJwt(jwt, disclosures, key_binding_jwt)](#new_SdJwt_new)
+ * [new SdJwt(jwt, disclosures, [key_binding_jwt])](#new_SdJwt_new)
* _instance_
* [.presentation()](#SdJwt+presentation) ⇒ string
* [.toString()](#SdJwt+toString) ⇒ string
@@ -5104,7 +6333,7 @@ Representation of an SD-JWT of the format
-### new SdJwt(jwt, disclosures, key_binding_jwt)
+### new SdJwt(jwt, disclosures, [key_binding_jwt])
Creates a new `SdJwt` from its components.
@@ -5112,7 +6341,7 @@ Creates a new `SdJwt` from its components.
| --- | --- |
| jwt | string
|
| disclosures | Array.<string>
|
-| key_binding_jwt | string
\| undefined
|
+| [key_binding_jwt] | string
\| undefined
|
@@ -5227,7 +6456,7 @@ An error is returned whenever a validated condition is not satisfied.
| sd_jwt | [SdJwt
](#SdJwt) |
| issuer | [CoreDocument
](#CoreDocument) \| IToCoreDocument
|
| options | [JwtCredentialValidationOptions
](#JwtCredentialValidationOptions) |
-| fail_fast | number
|
+| fail_fast | [FailFast
](#FailFast) |
@@ -5320,7 +6549,7 @@ Note: digests are created using the sha-256 algorithm.
* [SdObjectEncoder](#SdObjectEncoder)
* [new SdObjectEncoder(object)](#new_SdObjectEncoder_new)
- * [.conceal(path, salt)](#SdObjectEncoder+conceal) ⇒ [Disclosure
](#Disclosure)
+ * [.conceal(path, [salt])](#SdObjectEncoder+conceal) ⇒ [Disclosure
](#Disclosure)
* [.addSdAlgProperty()](#SdObjectEncoder+addSdAlgProperty)
* [.encodeToString()](#SdObjectEncoder+encodeToString) ⇒ string
* [.toString()](#SdObjectEncoder+toString) ⇒ string
@@ -5340,7 +6569,7 @@ Creates a new `SdObjectEncoder` with `sha-256` hash function.
-### sdObjectEncoder.conceal(path, salt) ⇒ [Disclosure
](#Disclosure)
+### sdObjectEncoder.conceal(path, [salt]) ⇒ [Disclosure
](#Disclosure)
Substitutes a value with the digest of its disclosure.
If no salt is provided, the disclosure will be created with a random salt value.
@@ -5373,7 +6602,7 @@ Path "/claim2/0" conceals `val_1`
| Param | Type |
| --- | --- |
| path | string
|
-| salt | string
\| undefined
|
+| [salt] | string
\| undefined
|
@@ -5419,6 +6648,93 @@ If path is an empty slice, decoys will be added to the top level.
| path | string
|
| number_of_decoys | number
|
+
+
+## SelectiveDisclosurePresentation
+Used to construct a JwpPresentedBuilder and handle the selective disclosure of attributes
+- @context MUST NOT be blinded
+- id MUST be blinded
+- type MUST NOT be blinded
+- issuer MUST NOT be blinded
+- issuanceDate MUST be blinded (if Timeframe Revocation mechanism is used)
+- expirationDate MUST be blinded (if Timeframe Revocation mechanism is used)
+- credentialSubject (User have to choose which attribute must be blinded)
+- credentialSchema MUST NOT be blinded
+- credentialStatus MUST NOT be blinded
+- refreshService MUST NOT be blinded (probably will be used for Timeslot Revocation mechanism)
+- termsOfUse NO reason to use it in ZK VC (will be in any case blinded)
+- evidence (User have to choose which attribute must be blinded)
+
+**Kind**: global class
+
+* [SelectiveDisclosurePresentation](#SelectiveDisclosurePresentation)
+ * [new SelectiveDisclosurePresentation(issued_jwp)](#new_SelectiveDisclosurePresentation_new)
+ * [.concealInSubject(path)](#SelectiveDisclosurePresentation+concealInSubject)
+ * [.concealInEvidence(path)](#SelectiveDisclosurePresentation+concealInEvidence)
+ * [.setPresentationHeader(header)](#SelectiveDisclosurePresentation+setPresentationHeader)
+
+
+
+### new SelectiveDisclosurePresentation(issued_jwp)
+Initialize a presentation starting from an Issued JWP.
+The properties `jti`, `nbf`, `issuanceDate`, `expirationDate` and `termsOfUse` are concealed by default.
+
+
+| Param | Type |
+| --- | --- |
+| issued_jwp | [JwpIssued
](#JwpIssued) |
+
+
+
+### selectiveDisclosurePresentation.concealInSubject(path)
+Selectively disclose "credentialSubject" attributes.
+# Example
+```
+{
+ "id": 1234,
+ "name": "Alice",
+ "mainCourses": ["Object-oriented Programming", "Mathematics"],
+ "degree": {
+ "type": "BachelorDegree",
+ "name": "Bachelor of Science and Arts",
+ },
+ "GPA": "4.0",
+}
+```
+If you want to undisclose for example the Mathematics course and the name of the degree:
+```
+undisclose_subject("mainCourses[1]");
+undisclose_subject("degree.name");
+```
+
+**Kind**: instance method of [SelectiveDisclosurePresentation
](#SelectiveDisclosurePresentation)
+
+| Param | Type |
+| --- | --- |
+| path | string
|
+
+
+
+### selectiveDisclosurePresentation.concealInEvidence(path)
+Undiscloses "evidence" attributes.
+
+**Kind**: instance method of [SelectiveDisclosurePresentation
](#SelectiveDisclosurePresentation)
+
+| Param | Type |
+| --- | --- |
+| path | string
|
+
+
+
+### selectiveDisclosurePresentation.setPresentationHeader(header)
+Sets presentation protected header.
+
+**Kind**: instance method of [SelectiveDisclosurePresentation
](#SelectiveDisclosurePresentation)
+
+| Param | Type |
+| --- | --- |
+| header | [PresentationProtectedHeader
](#PresentationProtectedHeader) |
+
## Service
@@ -5501,7 +6817,7 @@ StatusList2021 data structure as described in [W3C's VC status list 2021](https:
**Kind**: global class
* [StatusList2021](#StatusList2021)
- * [new StatusList2021(size)](#new_StatusList2021_new)
+ * [new StatusList2021([size])](#new_StatusList2021_new)
* _instance_
* [.clone()](#StatusList2021+clone) ⇒ [StatusList2021
](#StatusList2021)
* [.len()](#StatusList2021+len) ⇒ number
@@ -5513,13 +6829,13 @@ StatusList2021 data structure as described in [W3C's VC status list 2021](https:
-### new StatusList2021(size)
+### new StatusList2021([size])
Creates a new [StatusList2021](#StatusList2021) of `size` entries.
| Param | Type |
| --- | --- |
-| size | number
\| undefined
|
+| [size] | number
\| undefined
|
@@ -5586,8 +6902,8 @@ A parsed [StatusList2021Credential](https://www.w3.org/TR/2023/WD-vc-status-list
* _instance_
* [.id()](#StatusList2021Credential+id) ⇒ string
* [.setCredentialStatus(credential, index, revoked_or_suspended)](#StatusList2021Credential+setCredentialStatus) ⇒ [StatusList2021Entry
](#StatusList2021Entry)
- * [.purpose()](#StatusList2021Credential+purpose) ⇒ number
- * [.entry(index)](#StatusList2021Credential+entry) ⇒ number
+ * [.purpose()](#StatusList2021Credential+purpose) ⇒ [StatusPurpose
](#StatusPurpose)
+ * [.entry(index)](#StatusList2021Credential+entry) ⇒ [CredentialStatus
](#CredentialStatus)
* [.clone()](#StatusList2021Credential+clone) ⇒ [StatusList2021Credential
](#StatusList2021Credential)
* [.toJSON()](#StatusList2021Credential+toJSON) ⇒ any
* _static_
@@ -5623,13 +6939,13 @@ Returns the created `credentialStatus`.
-### statusList2021Credential.purpose() ⇒ number
+### statusList2021Credential.purpose() ⇒ [StatusPurpose
](#StatusPurpose)
Returns the [StatusPurpose](#StatusPurpose) of this [StatusList2021Credential](#StatusList2021Credential).
**Kind**: instance method of [StatusList2021Credential
](#StatusList2021Credential)
-### statusList2021Credential.entry(index) ⇒ number
+### statusList2021Credential.entry(index) ⇒ [CredentialStatus
](#CredentialStatus)
Returns the state of the `index`-th entry, if any.
**Kind**: instance method of [StatusList2021Credential
](#StatusList2021Credential)
@@ -5663,7 +6979,7 @@ Builder type to construct valid [StatusList2021Credential](#StatusList2021Creden
**Kind**: global class
* [StatusList2021CredentialBuilder](#StatusList2021CredentialBuilder)
- * [new StatusList2021CredentialBuilder(status_list)](#new_StatusList2021CredentialBuilder_new)
+ * [new StatusList2021CredentialBuilder([status_list])](#new_StatusList2021CredentialBuilder_new)
* [.purpose(purpose)](#StatusList2021CredentialBuilder+purpose) ⇒ [StatusList2021CredentialBuilder
](#StatusList2021CredentialBuilder)
* [.subjectId(id)](#StatusList2021CredentialBuilder+subjectId) ⇒ [StatusList2021CredentialBuilder
](#StatusList2021CredentialBuilder)
* [.expirationDate(time)](#StatusList2021CredentialBuilder+expirationDate) ⇒ [StatusList2021CredentialBuilder
](#StatusList2021CredentialBuilder)
@@ -5675,13 +6991,13 @@ Builder type to construct valid [StatusList2021Credential](#StatusList2021Creden
-### new StatusList2021CredentialBuilder(status_list)
+### new StatusList2021CredentialBuilder([status_list])
Creates a new [StatusList2021CredentialBuilder](#StatusList2021CredentialBuilder).
| Param | Type |
| --- | --- |
-| status_list | [StatusList2021
](#StatusList2021) \| undefined
|
+| [status_list] | [StatusList2021
](#StatusList2021) \| undefined
|
@@ -5692,7 +7008,7 @@ Sets the purpose of the [StatusList2021Credential](#StatusList2021Credential) th
| Param | Type |
| --- | --- |
-| purpose | number
|
+| purpose | [StatusPurpose
](#StatusPurpose) |
@@ -5774,10 +7090,10 @@ Attempts to build a valid [StatusList2021Credential](#StatusList2021Credential)
**Kind**: global class
* [StatusList2021Entry](#StatusList2021Entry)
- * [new StatusList2021Entry(status_list, purpose, index, id)](#new_StatusList2021Entry_new)
+ * [new StatusList2021Entry(status_list, purpose, index, [id])](#new_StatusList2021Entry_new)
* _instance_
* [.id()](#StatusList2021Entry+id) ⇒ string
- * [.purpose()](#StatusList2021Entry+purpose) ⇒ number
+ * [.purpose()](#StatusList2021Entry+purpose) ⇒ [StatusPurpose
](#StatusPurpose)
* [.index()](#StatusList2021Entry+index) ⇒ number
* [.statusListCredential()](#StatusList2021Entry+statusListCredential) ⇒ string
* [.toStatus()](#StatusList2021Entry+toStatus) ⇒ Status
@@ -5788,16 +7104,16 @@ Attempts to build a valid [StatusList2021Credential](#StatusList2021Credential)
-### new StatusList2021Entry(status_list, purpose, index, id)
+### new StatusList2021Entry(status_list, purpose, index, [id])
Creates a new [StatusList2021Entry](#StatusList2021Entry).
| Param | Type |
| --- | --- |
| status_list | string
|
-| purpose | number
|
+| purpose | [StatusPurpose
](#StatusPurpose) |
| index | number
|
-| id | string
\| undefined
|
+| [id] | string
\| undefined
|
@@ -5807,7 +7123,7 @@ Returns this `credentialStatus`'s `id`.
**Kind**: instance method of [StatusList2021Entry
](#StatusList2021Entry)
-### statusList2021Entry.purpose() ⇒ number
+### statusList2021Entry.purpose() ⇒ [StatusPurpose
](#StatusPurpose)
Returns the purpose of this entry.
**Kind**: instance method of [StatusList2021Entry
](#StatusList2021Entry)
@@ -6055,7 +7371,7 @@ A DID Document Verification Method.
* [.toJSON()](#VerificationMethod+toJSON) ⇒ any
* [.clone()](#VerificationMethod+clone) ⇒ [VerificationMethod
](#VerificationMethod)
* _static_
- * [.newFromJwk(did, key, fragment)](#VerificationMethod.newFromJwk) ⇒ [VerificationMethod
](#VerificationMethod)
+ * [.newFromJwk(did, key, [fragment])](#VerificationMethod.newFromJwk) ⇒ [VerificationMethod
](#VerificationMethod)
* [.fromJSON(json)](#VerificationMethod.fromJSON) ⇒ [VerificationMethod
](#VerificationMethod)
@@ -6176,7 +7492,7 @@ Deep clones the object.
**Kind**: instance method of [VerificationMethod
](#VerificationMethod)
-### VerificationMethod.newFromJwk(did, key, fragment) ⇒ [VerificationMethod
](#VerificationMethod)
+### VerificationMethod.newFromJwk(did, key, [fragment]) ⇒ [VerificationMethod
](#VerificationMethod)
Creates a new [VerificationMethod](#VerificationMethod) from the given `did` and [Jwk](#Jwk). If `fragment` is not given
the `kid` value of the given `key` will be used, if present, otherwise an error is returned.
@@ -6193,7 +7509,7 @@ done automatically if `None` is passed in as the fragment.
| --- | --- |
| did | [CoreDID
](#CoreDID) \| IToCoreDID
|
| key | [Jwk
](#Jwk) |
-| fragment | string
\| undefined
|
+| [fragment] | string
\| undefined
|
@@ -6206,6 +7522,24 @@ Deserializes an instance from a JSON object.
| --- | --- |
| json | any
|
+
+
+## FailFast
+Declares when validation should return if an error occurs.
+
+**Kind**: global variable
+
+
+## AllErrors
+Return all errors that occur during validation.
+
+**Kind**: global variable
+
+
+## FirstError
+Return after the first error occurs.
+
+**Kind**: global variable
## StatusCheck
@@ -6237,75 +7571,67 @@ Validate the status if supported, skip any unsupported
Skip all status checks.
**Kind**: global variable
-
-
-## SubjectHolderRelationship
-Declares how credential subjects must relate to the presentation holder.
-
-See also the [Subject-Holder Relationship](https://www.w3.org/TR/vc-data-model/#subject-holder-relationships) section of the specification.
+
+## PayloadType
**Kind**: global variable
-
-
-## AlwaysSubject
-The holder must always match the subject on all credentials, regardless of their [`nonTransferable`](https://www.w3.org/TR/vc-data-model/#nontransferable-property) property.
-This variant is the default.
+
+## StateMetadataEncoding
**Kind**: global variable
-
+
-## SubjectOnNonTransferable
-The holder must match the subject only for credentials where the [`nonTransferable`](https://www.w3.org/TR/vc-data-model/#nontransferable-property) property is `true`.
+## PresentationProofAlgorithm
+**Kind**: global variable
+
+## ProofAlgorithm
**Kind**: global variable
-
+
-## Any
-The holder is not required to have any kind of relationship to any credential subject.
+## StatusPurpose
+Purpose of a [StatusList2021](#StatusList2021).
**Kind**: global variable
-
-
-## FailFast
-Declares when validation should return if an error occurs.
+
+## SerializationType
**Kind**: global variable
-
+
-## AllErrors
-Return all errors that occur during validation.
+## CredentialStatus
+**Kind**: global variable
+
+## MethodRelationship
**Kind**: global variable
-
+
-## FirstError
-Return after the first error occurs.
+## SubjectHolderRelationship
+Declares how credential subjects must relate to the presentation holder.
-**Kind**: global variable
-
+See also the [Subject-Holder Relationship](https://www.w3.org/TR/vc-data-model/#subject-holder-relationships) section of the specification.
-## StateMetadataEncoding
**Kind**: global variable
-
+
-## MethodRelationship
-**Kind**: global variable
-
+## AlwaysSubject
+The holder must always match the subject on all credentials, regardless of their [`nonTransferable`](https://www.w3.org/TR/vc-data-model/#nontransferable-property) property.
+This variant is the default.
-## CredentialStatus
**Kind**: global variable
-
+
-## StatusPurpose
-Purpose of a [StatusList2021](#StatusList2021).
+## SubjectOnNonTransferable
+The holder must match the subject only for credentials where the [`nonTransferable`](https://www.w3.org/TR/vc-data-model/#nontransferable-property) property is `true`.
**Kind**: global variable
-
+
-## start()
-Initializes the console error panic hook for better error messages
+## Any
+The holder is not required to have any kind of relationship to any credential subject.
-**Kind**: global function
+**Kind**: global variable
## encodeB64(data) ⇒ string
@@ -6328,6 +7654,12 @@ Decode the given url-safe base64-encoded slice into its raw bytes.
| --- | --- |
| data | Uint8Array
|
+
+
+## start()
+Initializes the console error panic hook for better error messages
+
+**Kind**: global function
## verifyEd25519(alg, signingInput, decodedSignature, publicKey)
@@ -6348,4 +7680,5 @@ prior to calling the function.
| alg | JwsAlgorithm
|
| signingInput | Uint8Array
|
| decodedSignature | Uint8Array
|
-| publicKey | [Jwk
](#Jwk) |
\ No newline at end of file
+| publicKey | [Jwk
](#Jwk) |
+