@sphereon/ssi-sdk-ext.jwt-service 0.36.1-next.11 → 0.36.1-next.113

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../plugin.schema.json","../src/index.ts","../src/agent/JwtService.ts","../src/functions/JWE.ts","../src/types/IJwtService.ts","../src/functions/index.ts"],"sourcesContent":["{\n \"IJwtService\": {\n \"components\": {\n \"schemas\": {\n \"CreateJwsCompactArgs\": {\n \"$ref\": \"#/components/schemas/CreateJwsArgs\"\n },\n \"CreateJwsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"mode\": {\n \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n },\n \"issuer\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"issuer\",\n \"protectedHeader\",\n \"payload\"\n ],\n \"additionalProperties\": false\n },\n \"JwsIdentifierMode\": {\n \"type\": \"string\",\n \"enum\": [\n \"x5c\",\n \"kid\",\n \"jwk\",\n \"did\",\n \"auto\"\n ]\n },\n \"JWK\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"alg\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n },\n \"d\": {\n \"type\": \"string\"\n },\n \"dp\": {\n \"type\": \"string\"\n },\n \"dq\": {\n \"type\": \"string\"\n },\n \"ext\": {\n \"type\": \"boolean\"\n },\n \"k\": {\n \"type\": \"string\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseKeyOperation\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseKeyOperationString\"\n }\n ]\n }\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"oth\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"d\": {\n \"type\": \"string\"\n },\n \"r\": {\n \"type\": \"string\"\n },\n \"t\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n }\n },\n \"p\": {\n \"type\": \"string\"\n },\n \"q\": {\n \"type\": \"string\"\n },\n \"qi\": {\n \"type\": \"string\"\n },\n \"use\": {\n \"type\": \"string\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n \"description\": \"JWK \\\"x5c\\\" (X.509 Certificate Chain) Parameter.\"\n },\n \"x5t\": {\n \"type\": \"string\",\n \"description\": \"JWK \\\"x5t\\\" (X.509 Certificate SHA-1 Thumbprint) Parameter.\"\n },\n \"x5t#S256\": {\n \"type\": \"string\",\n \"description\": \"\\\"x5t#S256\\\" (X.509 Certificate SHA-256 Thumbprint) Parameter.\"\n },\n \"x5u\": {\n \"type\": \"string\",\n \"description\": \"JWK \\\"x5u\\\" (X.509 URL) Parameter.\"\n },\n \"iv\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ]\n },\n \"JwkKeyType\": {\n \"type\": \"string\",\n \"enum\": [\n \"EC\",\n \"RSA\",\n \"oct\",\n \"OKP\"\n ]\n },\n \"JwkKeyTypeString\": {\n \"type\": \"string\",\n \"enum\": [\n \"EC\",\n \"RSA\",\n \"oct\",\n \"OKP\"\n ]\n },\n \"JoseCurve\": {\n \"type\": \"string\",\n \"enum\": [\n \"P-256\",\n \"P-384\",\n \"P-521\",\n \"X25519\",\n \"X448\",\n \"EdDSA\",\n \"Ed25519\",\n \"Ed448\",\n \"secp256k1\"\n ]\n },\n \"JoseCurveString\": {\n \"type\": \"string\",\n \"enum\": [\n \"P-256\",\n \"P-384\",\n \"P-521\",\n \"X25519\",\n \"X448\",\n \"EdDSA\",\n \"Ed25519\",\n \"Ed448\",\n \"secp256k1\"\n ]\n },\n \"JoseSignatureAlgorithm\": {\n \"type\": \"string\",\n \"enum\": [\n \"RS256\",\n \"RS384\",\n \"RS512\",\n \"ES256\",\n \"ES256K\",\n \"ES384\",\n \"ES512\",\n \"EdDSA\",\n \"HS256\",\n \"HS384\",\n \"HS512\",\n \"PS256\",\n \"PS384\",\n \"PS512\",\n \"none\"\n ]\n },\n \"JoseSignatureAlgorithmString\": {\n \"type\": \"string\",\n \"enum\": [\n \"RS256\",\n \"RS384\",\n \"RS512\",\n \"ES256\",\n \"ES256K\",\n \"ES384\",\n \"ES512\",\n \"EdDSA\",\n \"HS256\",\n \"HS384\",\n \"HS512\",\n \"PS256\",\n \"PS384\",\n \"PS512\",\n \"none\"\n ]\n },\n \"JoseKeyOperation\": {\n \"type\": \"string\",\n \"enum\": [\n \"sign\",\n \"verify\",\n \"encrypt\",\n \"decrypt\",\n \"wrapKey\",\n \"unwrapKey\",\n \"deriveKey\",\n \"deriveBits\"\n ]\n },\n \"JoseKeyOperationString\": {\n \"type\": \"string\",\n \"enum\": [\n \"sign\",\n \"verify\",\n \"encrypt\",\n \"decrypt\",\n \"wrapKey\",\n \"unwrapKey\",\n \"deriveKey\",\n \"deriveBits\"\n ]\n },\n \"ManagedIdentifierMethod\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"jwk\",\n \"x5c\",\n \"kid\",\n \"key\",\n \"cose_key\",\n \"oid4vci-issuer\"\n ]\n },\n \"ManagedIdentifierOpts\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"ClientIdScheme\": {\n \"type\": \"string\",\n \"enum\": [\n \"x509_san_dns\",\n \"x509_san_uri\"\n ]\n },\n \"IIdentifier\": {\n \"type\": \"object\",\n \"properties\": {\n \"did\": {\n \"type\": \"string\",\n \"description\": \"Decentralized identifier\"\n },\n \"alias\": {\n \"type\": \"string\",\n \"description\": \"Optional. Identifier alias. Can be used to reference an object in an external system\"\n },\n \"provider\": {\n \"type\": \"string\",\n \"description\": \"Identifier provider name\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\",\n \"description\": \"Controller key id\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"description\": \"Array of managed keys\"\n },\n \"services\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IService\"\n },\n \"description\": \"Array of services\"\n }\n },\n \"required\": [\n \"did\",\n \"provider\",\n \"keys\",\n \"services\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Identifier interface\"\n },\n \"IKey\": {\n \"type\": \"object\",\n \"properties\": {\n \"kid\": {\n \"type\": \"string\",\n \"description\": \"Key ID\"\n },\n \"kms\": {\n \"type\": \"string\",\n \"description\": \"Key Management System\"\n },\n \"type\": {\n \"$ref\": \"#/components/schemas/TKeyType\",\n \"description\": \"Key type\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\",\n \"description\": \"Public key\"\n },\n \"privateKeyHex\": {\n \"type\": \"string\",\n \"description\": \"Optional. Private key\"\n },\n \"meta\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/KeyMetadata\"\n },\n {\n \"type\": \"null\"\n }\n ],\n \"description\": \"Optional. Key metadata. This should be used to determine which algorithms are supported.\"\n }\n },\n \"required\": [\n \"kid\",\n \"kms\",\n \"type\",\n \"publicKeyHex\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Cryptographic key\"\n },\n \"TKeyType\": {\n \"type\": \"string\",\n \"enum\": [\n \"Ed25519\",\n \"Secp256k1\",\n \"Secp256r1\",\n \"X25519\",\n \"Bls12381G1\",\n \"Bls12381G2\",\n \"RSA\"\n ],\n \"description\": \"Cryptographic key type.\"\n },\n \"KeyMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"algorithms\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"This encapsulates data about a key.\\n\\nImplementations of {@link @veramo/key-manager#AbstractKeyManagementSystem | AbstractKeyManagementSystem } should populate this object, for each key, with the algorithms that can be performed using it.\\n\\nThis can also be used to add various tags to the keys under management.\"\n },\n \"IService\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID\"\n },\n \"type\": {\n \"type\": \"string\",\n \"description\": \"Service type\"\n },\n \"serviceEndpoint\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n }\n }\n ],\n \"description\": \"Endpoint URL\"\n },\n \"description\": {\n \"type\": \"string\",\n \"description\": \"Optional. Description\"\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"serviceEndpoint\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Identifier service\"\n },\n \"IServiceEndpoint\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n ],\n \"description\": \"Represents a service endpoint URL or a map of URLs\"\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"DIDDocumentSection\": {\n \"type\": \"string\",\n \"enum\": [\n \"verificationMethod\",\n \"publicKey\",\n \"service\",\n \"authentication\",\n \"assertionMethod\",\n \"keyAgreement\",\n \"capabilityInvocation\",\n \"capabilityDelegation\"\n ],\n \"description\": \"Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\\n\\nSee {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }\"\n },\n \"ICoseKeyJson\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"$ref\": \"#/components/schemas/ICoseKeyType\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"$ref\": \"#/components/schemas/ICoseSignatureAlgorithm\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ICoseKeyOperation\"\n }\n },\n \"baseIV\": {\n \"type\": \"string\"\n },\n \"crv\": {\n \"$ref\": \"#/components/schemas/ICoseCurve\"\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"d\": {\n \"type\": \"string\"\n },\n \"x5chain\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": {},\n \"description\": \"See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\\n\\nConversion functions are available in above library. Conversion functions are also available for TS in our\"\n },\n \"ICoseKeyType\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 0\n ]\n },\n \"ICoseSignatureAlgorithm\": {\n \"type\": \"number\",\n \"enum\": [\n -7,\n -47,\n -35,\n -36,\n -8,\n 4,\n 5,\n 6,\n 7,\n -37,\n -38,\n -39\n ]\n },\n \"ICoseKeyOperation\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10\n ]\n },\n \"ICoseCurve\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n -1\n ]\n },\n \"ManagedIdentifierType\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n }\n ],\n \"description\": \"Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\\n\\nThe functions below can be used to check the type, and they also provide the proper 'runtime' types\"\n },\n \"JwsHeader\": {\n \"type\": \"object\",\n \"properties\": {\n \"typ\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"JwsPayload\": {\n \"type\": \"object\",\n \"properties\": {\n \"iss\": {\n \"type\": \"string\"\n },\n \"sub\": {\n \"type\": \"string\"\n },\n \"aud\": {\n \"anyOf\": [\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"exp\": {\n \"type\": \"number\"\n },\n \"nbf\": {\n \"type\": \"number\"\n },\n \"iat\": {\n \"type\": \"number\"\n },\n \"jti\": {\n \"type\": \"string\"\n }\n }\n },\n \"Uint8Array\": {\n \"type\": \"object\",\n \"properties\": {\n \"BYTES_PER_ELEMENT\": {\n \"type\": \"number\"\n },\n \"buffer\": {\n \"$ref\": \"#/components/schemas/ArrayBufferLike\"\n },\n \"byteLength\": {\n \"type\": \"number\"\n },\n \"byteOffset\": {\n \"type\": \"number\"\n },\n \"length\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"BYTES_PER_ELEMENT\",\n \"buffer\",\n \"byteLength\",\n \"byteOffset\",\n \"length\"\n ],\n \"additionalProperties\": {\n \"type\": \"number\"\n }\n },\n \"ArrayBufferLike\": {\n \"$ref\": \"#/components/schemas/ArrayBuffer\"\n },\n \"ArrayBuffer\": {\n \"type\": \"object\",\n \"properties\": {\n \"byteLength\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"byteLength\"\n ],\n \"additionalProperties\": false\n },\n \"JwtCompactResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsCompact\"\n },\n {\n \"$ref\": \"#/components/schemas/JweCompact\"\n }\n ]\n }\n },\n \"required\": [\n \"jwt\"\n ],\n \"additionalProperties\": false\n },\n \"JwsCompact\": {\n \"type\": \"string\"\n },\n \"JweCompact\": {\n \"type\": \"string\"\n },\n \"CreateJwsFlattenedArgs\": {\n \"$ref\": \"#/components/schemas/Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\"\n },\n \"Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"CreateJwsJsonArgs\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"unprotectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"existingSignatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n },\n \"mode\": {\n \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n },\n \"issuer\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"issuer\",\n \"payload\",\n \"protectedHeader\"\n ]\n },\n \"JwsJsonSignature\": {\n \"type\": \"object\",\n \"properties\": {\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonFlattened\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"payload\",\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonGeneral\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"signatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n }\n },\n \"required\": [\n \"payload\",\n \"signatures\"\n ],\n \"additionalProperties\": false\n },\n \"DecryptJweCompactJwtArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwe\": {\n \"$ref\": \"#/components/schemas/JweCompact\"\n },\n \"idOpts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOptsOrResult\"\n }\n },\n \"required\": [\n \"jwe\",\n \"idOpts\"\n ],\n \"additionalProperties\": false\n },\n \"ManagedIdentifierOptsOrResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"EncryptJweCompactJwtArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JweProtectedHeader\"\n },\n \"aad\": {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n \"recipientKey\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"didDocument\": {\n \"$ref\": \"#/components/schemas/DIDDocument\"\n },\n \"didJwks\": {\n \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n },\n \"didResolutionResult\": {\n \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n },\n \"didParsed\": {\n \"$ref\": \"#/components/schemas/IParsedDID\"\n }\n },\n \"required\": [\n \"did\",\n \"didParsed\",\n \"didResolutionResult\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"trustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/TrustedAnchor\"\n }\n },\n \"errorList\": {\n \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n },\n \"jwtPayload\": {\n \"$ref\": \"#/components/schemas/JwtPayload\"\n },\n \"trustEstablished\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"jwks\",\n \"method\",\n \"trustEstablished\",\n \"trustedAnchors\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"coseKey\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"coseKey\",\n \"jwks\",\n \"method\"\n ]\n }\n ]\n },\n \"alg\": {\n \"$ref\": \"#/components/schemas/JweAlg\"\n },\n \"enc\": {\n \"$ref\": \"#/components/schemas/JweEnc\"\n },\n \"apu\": {\n \"type\": \"string\"\n },\n \"apv\": {\n \"type\": \"string\"\n },\n \"expirationTime\": {\n \"anyOf\": [\n {\n \"type\": \"number\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n ]\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"audience\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n }\n },\n \"required\": [\n \"payload\",\n \"recipientKey\"\n ],\n \"additionalProperties\": false\n },\n \"JweProtectedHeader\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"string\"\n },\n \"enc\": {\n \"type\": \"string\"\n },\n \"jku\": {\n \"type\": \"string\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/BaseJWK\"\n },\n \"epk\": {\n \"$ref\": \"#/components/schemas/EphemeralPublicKey\"\n },\n \"x5u\": {\n \"type\": \"string\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"x5t\": {\n \"type\": \"string\"\n },\n \"cty\": {\n \"type\": \"string\"\n },\n \"crit\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"typ\": {},\n \"kid\": {},\n \"zip\": {\n \"type\": \"string\"\n }\n }\n },\n \"BaseJWK\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"alg\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Conversion functions to Cose available for TS in our\"\n },\n \"EphemeralPublicKey\": {\n \"$ref\": \"#/components/schemas/Omit<BaseJWK,\\\"alg\\\">\",\n \"description\": \"The JWK representation of an ephemeral public key. See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\"\n },\n \"Omit<BaseJWK,\\\"alg\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\"\n },\n \"Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": false\n },\n \"ExternalIdentifierMethod\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"jwk\",\n \"x5c\",\n \"kid\",\n \"cose_key\",\n \"oidc-discovery\",\n \"jwks-url\",\n \"oid4vci-issuer\",\n \"entity_id\"\n ]\n },\n \"ExternalJwkInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwkThumbprint\",\n \"publicKeyHex\"\n ],\n \"additionalProperties\": false\n },\n \"DIDDocument\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"authentication\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"assertionMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"keyAgreement\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"capabilityInvocation\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"capabilityDelegation\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"@context\": {\n \"anyOf\": [\n {\n \"type\": \"string\",\n \"const\": \"https://www.w3.org/ns/did/v1\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"alsoKnownAs\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"controller\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"verificationMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"service\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Service\"\n }\n },\n \"publicKey\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n },\n \"deprecated\": true\n }\n },\n \"required\": [\n \"id\"\n ],\n \"description\": \"Represents a DID document.\"\n },\n \"VerificationMethod\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"controller\": {\n \"type\": \"string\"\n },\n \"publicKeyBase58\": {\n \"type\": \"string\"\n },\n \"publicKeyBase64\": {\n \"type\": \"string\"\n },\n \"publicKeyJwk\": {\n \"$ref\": \"#/components/schemas/JsonWebKey\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\"\n },\n \"publicKeyMultibase\": {\n \"type\": \"string\"\n },\n \"blockchainAccountId\": {\n \"type\": \"string\"\n },\n \"ethereumAddress\": {\n \"type\": \"string\"\n },\n \"conditionOr\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"conditionAnd\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"threshold\": {\n \"type\": \"number\"\n },\n \"conditionThreshold\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"conditionWeightedThreshold\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ConditionWeightedThreshold\"\n }\n },\n \"conditionDelegated\": {\n \"type\": \"string\"\n },\n \"relationshipParent\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"relationshipChild\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"relationshipSibling\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"controller\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Represents the properties of a Verification Method listed in a DID document.\\n\\nThis data type includes public key representations that are no longer present in the spec but are still used by several DID methods / resolvers and kept for backward compatibility.\"\n },\n \"JsonWebKey\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"string\"\n },\n \"crv\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"ext\": {\n \"type\": \"boolean\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"kty\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n },\n \"use\": {\n \"type\": \"string\"\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"description\": \"Encapsulates a JSON web key type that includes only the public properties that can be used in DID documents.\\n\\nThe private properties are intentionally omitted to discourage the use (and accidental disclosure) of private keys in DID documents.\"\n },\n \"ConditionWeightedThreshold\": {\n \"type\": \"object\",\n \"properties\": {\n \"condition\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n },\n \"weight\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"condition\",\n \"weight\"\n ],\n \"additionalProperties\": false\n },\n \"Service\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"serviceEndpoint\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n }\n }\n ]\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"serviceEndpoint\"\n ],\n \"description\": \"Represents a Service entry in a {@link https://www.w3.org/TR/did-core/#did-document-properties | DID document } .\"\n },\n \"ServiceEndpoint\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n ],\n \"description\": \"Represents an endpoint of a Service entry in a DID document.\"\n },\n \"DidDocumentJwks\": {\n \"$ref\": \"#/components/schemas/Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36152-36877-st_index.d.ts-0-63876[]>\"\n },\n \"Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36152-36877-st_index.d.ts-0-63876[]>\": {\n \"type\": \"object\",\n \"properties\": {\n \"verificationMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"authentication\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"assertionMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"keyAgreement\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"capabilityInvocation\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"capabilityDelegation\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n }\n },\n \"required\": [\n \"verificationMethod\",\n \"authentication\",\n \"assertionMethod\",\n \"keyAgreement\",\n \"capabilityInvocation\",\n \"capabilityDelegation\"\n ],\n \"additionalProperties\": false\n },\n \"Omit<DIDResolutionResult,\\\"didDocument\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\"\n },\n \"Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"@context\": {\n \"anyOf\": [\n {\n \"type\": \"string\",\n \"const\": \"https://w3id.org/did-resolution/v1\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"didResolutionMetadata\": {\n \"$ref\": \"#/components/schemas/DIDResolutionMetadata\"\n },\n \"didDocumentMetadata\": {\n \"$ref\": \"#/components/schemas/DIDDocumentMetadata\"\n }\n },\n \"required\": [\n \"didResolutionMetadata\",\n \"didDocumentMetadata\"\n ],\n \"additionalProperties\": false\n },\n \"DIDResolutionMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"contentType\": {\n \"type\": \"string\"\n },\n \"error\": {\n \"type\": \"string\"\n }\n },\n \"description\": \"Encapsulates the resolution metadata resulting from a {@link Resolvable.resolve } operation.\"\n },\n \"DIDDocumentMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"created\": {\n \"type\": \"string\"\n },\n \"updated\": {\n \"type\": \"string\"\n },\n \"deactivated\": {\n \"type\": \"boolean\"\n },\n \"versionId\": {\n \"type\": \"string\"\n },\n \"nextUpdate\": {\n \"type\": \"string\"\n },\n \"nextVersionId\": {\n \"type\": \"string\"\n },\n \"equivalentId\": {\n \"type\": \"string\"\n },\n \"canonicalId\": {\n \"type\": \"string\"\n }\n },\n \"description\": \"Represents metadata about the DID document resulting from a {@link Resolvable.resolve } operation.\"\n },\n \"IParsedDID\": {\n \"type\": \"object\",\n \"properties\": {\n \"did\": {\n \"type\": \"string\"\n },\n \"didUrl\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"string\"\n },\n \"fragment\": {\n \"type\": \"string\"\n },\n \"query\": {\n \"type\": \"string\"\n },\n \"params\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"did\",\n \"didUrl\",\n \"method\",\n \"id\"\n ],\n \"additionalProperties\": false\n },\n \"X509ValidationResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"error\": {\n \"type\": \"boolean\"\n },\n \"critical\": {\n \"type\": \"boolean\"\n },\n \"message\": {\n \"type\": \"string\"\n },\n \"detailMessage\": {\n \"type\": \"string\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"certificateChain\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/CertificateInfo\"\n }\n },\n \"trustAnchor\": {\n \"$ref\": \"#/components/schemas/CertificateInfo\"\n },\n \"client\": {\n \"type\": \"object\",\n \"properties\": {\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n }\n },\n \"required\": [\n \"clientId\",\n \"clientIdScheme\"\n ],\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"error\",\n \"critical\",\n \"message\",\n \"verificationTime\"\n ],\n \"additionalProperties\": false\n },\n \"CertificateInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"certificate\": {},\n \"notBefore\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"notAfter\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"publicKeyJWK\": {},\n \"issuer\": {\n \"type\": \"object\",\n \"properties\": {\n \"dn\": {\n \"$ref\": \"#/components/schemas/DNInfo\"\n }\n },\n \"required\": [\n \"dn\"\n ],\n \"additionalProperties\": false\n },\n \"subject\": {\n \"type\": \"object\",\n \"properties\": {\n \"dn\": {\n \"$ref\": \"#/components/schemas/DNInfo\"\n },\n \"subjectAlternativeNames\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubjectAlternativeName\"\n }\n }\n },\n \"required\": [\n \"dn\",\n \"subjectAlternativeNames\"\n ],\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"notBefore\",\n \"notAfter\",\n \"issuer\",\n \"subject\"\n ],\n \"additionalProperties\": false\n },\n \"DNInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"DN\": {\n \"type\": \"string\"\n },\n \"attributes\": {\n \"$ref\": \"#/components/schemas/Record<string,string>\"\n }\n },\n \"required\": [\n \"DN\",\n \"attributes\"\n ],\n \"additionalProperties\": false\n },\n \"Record<string,string>\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n },\n \"SubjectAlternativeName\": {\n \"type\": \"object\",\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"$ref\": \"#/components/schemas/SubjectAlternativeGeneralName\"\n }\n },\n \"required\": [\n \"value\",\n \"type\"\n ],\n \"additionalProperties\": false\n },\n \"SubjectAlternativeGeneralName\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 6,\n 7\n ],\n \"description\": \"otherName [0] OtherName, rfc822Name [1] IA5String, dNSName [2] IA5String, x400Address [3] ORAddress, directoryName [4] Name, ediPartyName [5] EDIPartyName, uniformResourceIdentifier [6] IA5String, iPAddress [7] OCTET STRING, registeredID [8] OBJECT IDENTIFIER }\"\n },\n \"ExternalIdentifierX5cResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ],\n \"additionalProperties\": false\n },\n \"TrustedAnchor\": {\n \"type\": \"string\"\n },\n \"Record<TrustedAnchor,ErrorMessage>\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": \"#/components/schemas/ErrorMessage\"\n }\n },\n \"ErrorMessage\": {\n \"type\": \"string\"\n },\n \"JwtPayload\": {\n \"type\": \"object\",\n \"properties\": {\n \"iss\": {\n \"type\": \"string\"\n },\n \"sub\": {\n \"type\": \"string\"\n },\n \"aud\": {\n \"anyOf\": [\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"exp\": {\n \"type\": \"number\"\n },\n \"nbf\": {\n \"type\": \"number\"\n },\n \"iat\": {\n \"type\": \"number\"\n },\n \"jti\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"JweAlg\": {\n \"type\": \"string\",\n \"enum\": [\n \"RSA1_5\",\n \"RSA-OAEP\",\n \"RSA-OAEP-256\",\n \"A128KW\",\n \"A192KW\",\n \"A256KW\",\n \"dir\",\n \"ECDH-ES\",\n \"ECDH-ES+A128KW\",\n \"ECDH-ES+A192KW\",\n \"ECDH-ES+A256KW\",\n \"A128GCMKW\",\n \"A192GCMKW\",\n \"A256GCMKW\",\n \"PBES2-HS256+A128KW\",\n \"PBES2-HS384+A192KW\",\n \"PBES2-HS512+A256KW\"\n ]\n },\n \"JweEnc\": {\n \"type\": \"string\",\n \"enum\": [\n \"A128CBC-HS256\",\n \"A192CBC-HS384\",\n \"A256CBC-HS512\",\n \"A128GCM\",\n \"A192GCM\",\n \"A256GCM\"\n ]\n },\n \"PreparedJwsObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/PreparedJws\"\n },\n \"b64\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"protectedHeader\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"payload\",\n \"protectedHeader\"\n ],\n \"additionalProperties\": false\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierResult\"\n }\n },\n \"required\": [\n \"jws\",\n \"b64\",\n \"identifier\"\n ],\n \"additionalProperties\": false\n },\n \"PreparedJws\": {\n \"type\": \"object\",\n \"properties\": {\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n \"unprotectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"existingSignatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n }\n },\n \"required\": [\n \"protectedHeader\",\n \"payload\"\n ],\n \"additionalProperties\": false\n },\n \"ManagedIdentifierResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n }\n ]\n },\n \"VerifyJwsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/Jws\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"opts\": {\n \"type\": \"object\",\n \"properties\": {\n \"x5c\": {\n \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\"\n },\n \"did\": {\n \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\"\n }\n },\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"jws\"\n ],\n \"additionalProperties\": false\n },\n \"Jws\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsCompact\"\n },\n {\n \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n },\n {\n \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n }\n ]\n },\n \"Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\"\n },\n \"Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"allowNoTrustAnchorsFound\": {\n \"type\": \"boolean\"\n },\n \"trustRootWhenNoAnchors\": {\n \"type\": \"boolean\"\n },\n \"allowSingleNoCAChainElement\": {\n \"type\": \"boolean\"\n },\n \"blindlyTrustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"disallowReversedChain\": {\n \"type\": \"boolean\"\n },\n \"client\": {\n \"type\": \"object\",\n \"properties\": {\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n }\n },\n \"required\": [\n \"clientId\",\n \"clientIdScheme\"\n ],\n \"additionalProperties\": false\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"verify\": {\n \"type\": \"boolean\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"trustAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\"\n },\n \"Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"localResolution\": {\n \"type\": \"boolean\"\n },\n \"uniresolverResolution\": {\n \"type\": \"boolean\"\n },\n \"resolverResolution\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"IJwsValidationResult\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/JwsJsonGeneralWithIdentifiers\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"The name of the validation or its subsystem. Mainly used for information purposes. Not assumed to be unique\"\n },\n \"error\": {\n \"type\": \"boolean\",\n \"description\": \"Whether the validation was successful or not\"\n },\n \"critical\": {\n \"type\": \"boolean\",\n \"description\": \"Whether an error can be ignored or not (up to processing logic)\"\n },\n \"message\": {\n \"type\": \"string\",\n \"description\": \"Any status/info message about the validation\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": \"The date and time of the validation\"\n }\n },\n \"required\": [\n \"critical\",\n \"error\",\n \"jws\",\n \"message\",\n \"name\",\n \"verificationTime\"\n ]\n },\n \"JwsJsonGeneralWithIdentifiers\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"signatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignatureWithIdentifier\"\n }\n }\n },\n \"required\": [\n \"payload\",\n \"signatures\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonSignatureWithIdentifier\": {\n \"type\": \"object\",\n \"properties\": {\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierResult\"\n }\n },\n \"required\": [\n \"identifier\",\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"ExternalIdentifierResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"didDocument\": {\n \"$ref\": \"#/components/schemas/DIDDocument\"\n },\n \"didJwks\": {\n \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n },\n \"didResolutionResult\": {\n \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n },\n \"didParsed\": {\n \"$ref\": \"#/components/schemas/IParsedDID\"\n }\n },\n \"required\": [\n \"did\",\n \"didParsed\",\n \"didResolutionResult\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"trustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/TrustedAnchor\"\n }\n },\n \"errorList\": {\n \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n },\n \"jwtPayload\": {\n \"$ref\": \"#/components/schemas/JwtPayload\"\n },\n \"trustEstablished\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"jwks\",\n \"method\",\n \"trustEstablished\",\n \"trustedAnchors\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"coseKey\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"coseKey\",\n \"jwks\",\n \"method\"\n ]\n }\n ]\n }\n },\n \"methods\": {\n \"jwtCreateJwsCompactSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsCompactArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtCreateJwsJsonFlattenedSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsFlattenedArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n }\n },\n \"jwtCreateJwsJsonGeneralSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n }\n },\n \"jwtDecryptJweCompactJwt\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DecryptJweCompactJwtArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtEncryptJweCompactJwt\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/EncryptJweCompactJwtArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtPrepareJws\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PreparedJwsObject\"\n }\n },\n \"jwtVerifyJwsSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/VerifyJwsArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/IJwsValidationResult\"\n }\n }\n }\n }\n }\n}","import { Loggers } from '@sphereon/ssi-types'\n\n/**\n * @internal\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\n\nexport const JwtLogger = Loggers.DEFAULT.get('sphereon:sdk:jwt')\n/**\n * @public\n */\nexport { JwtService } from './agent/JwtService'\nexport * from './functions'\nexport * from './types/IJwtService'\n","import { Loggers } from '@sphereon/ssi-types'\nimport type { IAgentPlugin } from '@veramo/core'\nconst logger = Loggers.DEFAULT.get('sphereon:jwt-service')\nimport { importJWK } from 'jose'\n\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString } = u8a\nimport {\n createJwsCompact,\n type CreateJwsCompactArgs,\n type CreateJwsFlattenedArgs,\n type CreateJwsJsonArgs,\n createJwsJsonFlattened,\n createJwsJsonGeneral,\n type DecryptJweCompactJwtArgs,\n type EncryptJweCompactJwtArgs,\n type IJwsValidationResult,\n type IJwtService,\n type IRequiredContext,\n jweAlg,\n jweEnc,\n type JwsJsonFlattened,\n type JwsJsonGeneral,\n type JwtCompactResult,\n JwtLogger,\n type PreparedJwsObject,\n prepareJwsObject,\n schema,\n verifyJws,\n type VerifyJwsArgs,\n} from '..'\nimport { CompactJwtEncrypter } from '../functions/JWE'\n\n/**\n * @public\n */\nexport class JwtService implements IAgentPlugin {\n readonly schema = schema.IJwtService\n readonly methods: IJwtService = {\n jwtPrepareJws: this.jwtPrepareJws.bind(this),\n jwtCreateJwsJsonGeneralSignature: this.jwtCreateJwsJsonGeneralSignature.bind(this),\n jwtCreateJwsJsonFlattenedSignature: this.jwtCreateJwsJsonFlattenedSignature.bind(this),\n jwtCreateJwsCompactSignature: this.jwtCreateJwsCompactSignature.bind(this),\n jwtVerifyJwsSignature: this.jwtVerifyJwsSignature.bind(this),\n jwtEncryptJweCompactJwt: this.jwtEncryptJweCompactJwt.bind(this),\n jwtDecryptJweCompactJwt: this.jwtDecryptJweCompactJwt.bind(this),\n }\n\n private async jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> {\n return await prepareJwsObject(args, context)\n }\n\n private async jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> {\n return await createJwsJsonGeneral(args, context)\n }\n\n private async jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> {\n return await createJwsJsonFlattened(args, context)\n }\n\n private async jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n // We wrap it in a json object for remote REST calls\n return { jwt: await createJwsCompact(args, context) }\n }\n\n private async jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult> {\n return await verifyJws(args, context)\n }\n\n private async jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n const { payload, protectedHeader = { alg: args.alg, enc: args.enc }, recipientKey, issuer, expirationTime, audience } = args\n\n try {\n logger.debug(`JWE Encrypt: ${JSON.stringify(args, null, 2)}`)\n\n const alg = jweAlg(args.alg) ?? jweAlg(protectedHeader.alg) ?? 'ECDH-ES'\n const enc = jweEnc(args.enc) ?? jweEnc(protectedHeader.enc) ?? 'A256GCM'\n const encJwks =\n recipientKey.jwks.length === 1\n ? [recipientKey.jwks[0]]\n : recipientKey.jwks.filter((jwk) => (jwk.kid && (jwk.kid === jwk.jwk.kid || jwk.kid === jwk.jwkThumbprint)) || jwk.jwk.use === 'enc')\n if (encJwks.length === 0) {\n return Promise.reject(Error(`No public JWK found that can be used to encrypt against`))\n }\n const jwkInfo = encJwks[0]\n if (encJwks.length > 0) {\n JwtLogger.warning(`More than one JWK with 'enc' usage found. Selected the first one as no 'kid' was provided`, encJwks)\n }\n if (jwkInfo.jwk.kty?.startsWith('EC') !== true || !alg.startsWith('ECDH')) {\n return Promise.reject(Error(`Currently only ECDH-ES is supported for encryption. JWK alg ${jwkInfo.jwk.kty}, header alg ${alg}`)) // TODO: Probably we support way more already\n }\n const apuVal = protectedHeader.apu ?? args.apu\n const apu = apuVal ? fromString(apuVal, 'base64url') : undefined\n const apvVal = protectedHeader.apv ?? args.apv\n const apv = apvVal ? fromString(apvVal, 'base64url') : undefined\n\n const pubKey = await importJWK(jwkInfo.jwk)\n const encrypter = new CompactJwtEncrypter({\n enc,\n alg,\n keyManagementParams: { apu, apv },\n key: pubKey,\n issuer,\n expirationTime,\n audience,\n })\n\n const jwe = await encrypter.encryptCompactJWT(payload, {})\n return { jwt: jwe }\n } catch (error: any) {\n console.error(`Error encrypting JWE: ${error.message}`, error)\n throw error\n }\n }\n\n private async jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n return { jwt: 'FIXME' }\n }\n}\n","import { defaultRandomSource, randomBytes, type RandomSource } from '@stablelib/random'\nimport { base64ToBytes, bytesToBase64url, decodeBase64url } from '@veramo/utils'\nimport * as jose from 'jose'\nimport type { JWEKeyManagementHeaderParameters, JWTDecryptOptions } from 'jose'\n// // @ts-ignore\n// import type { KeyLike } from 'jose/dist/types/types'\nexport type KeyLike = { type: string }\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString, toString, concat } = u8a\nimport {\n type JweAlg,\n JweAlgs,\n type JweEnc,\n JweEncs,\n type JweHeader,\n type JweJsonGeneral,\n type JweProtectedHeader,\n type JweRecipient,\n type JweRecipientUnprotectedHeader,\n type JwsPayload,\n} from '../types/IJwtService'\n\nexport interface EncryptionResult {\n ciphertext: Uint8Array\n tag: Uint8Array\n iv: Uint8Array\n protectedHeader?: string\n recipients?: JweRecipient[]\n cek?: Uint8Array\n}\n\nexport const generateContentEncryptionKey = async ({\n alg,\n randomSource = defaultRandomSource,\n}: {\n alg: JweEnc\n randomSource?: RandomSource\n}): Promise<Uint8Array> => {\n let length: number\n switch (alg) {\n case 'A128GCM':\n length = 16\n break\n case 'A192GCM':\n length = 24\n break\n case 'A128CBC-HS256':\n case 'A256GCM':\n length = 32\n break\n case 'A192CBC-HS384':\n length = 48\n break\n case 'A256CBC-HS512':\n length = 64\n break\n default:\n length = 32\n }\n return randomBytes(length, randomSource)\n}\n\n/*\nexport const generateContentEncryptionKeyfdsdf = async ({type = 'Secp256r1', ...rest}: {\n type?: Extract<TKeyType, 'Secp256r1' | 'RSA'>,\n kms?: string\n}, context: IAgentContext<ISphereonKeyManager>): Promise<EphemeralPublicKey> => {\n\n const kms = rest.kms ?? await context.agent.keyManagerGetDefaultKeyManagementSystem()\n const key = await context.agent.keyManagerCreate({kms, type, opts: {ephemeral: true}})\n const jwk = toJwkFromKey(key, {use: JwkKeyUse.Encryption, noKidThumbprint: true})\n}\n*/\nexport interface JwtEncrypter {\n alg: string\n enc: string\n encrypt: (payload: JwsPayload, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweEncrypter {\n alg: string\n enc: string\n encrypt: (payload: Uint8Array, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweDecrypter {\n alg: string\n enc: string\n decrypt: (sealed: Uint8Array, iv: Uint8Array, aad?: Uint8Array, recipient?: JweRecipient) => Promise<Uint8Array | null>\n}\n\nfunction jweAssertValid(jwe: JweJsonGeneral) {\n if (!(jwe.protected && jwe.iv && jwe.ciphertext && jwe.tag)) {\n throw Error('JWE is missing properties: protected, iv, ciphertext and/or tag')\n }\n if (jwe.recipients) {\n jwe.recipients.map((recipient: JweRecipient) => {\n if (!(recipient.header && recipient.encrypted_key)) {\n throw Error('Malformed JWE recipients; no header and encrypted key present')\n }\n })\n }\n}\n\nfunction jweEncode({\n ciphertext,\n tag,\n iv,\n protectedHeader,\n recipients,\n aad,\n unprotected,\n}: EncryptionResult & {\n aad?: Uint8Array\n unprotected?: JweHeader\n}): JweJsonGeneral {\n if (!recipients || recipients.length === 0) {\n throw Error(`No recipient found`)\n }\n return {\n ...(unprotected && { unprotected }),\n protected: <string>protectedHeader,\n iv: bytesToBase64url(iv),\n ciphertext: bytesToBase64url(ciphertext),\n ...(tag && { tag: bytesToBase64url(tag) }),\n ...(aad && { aad: bytesToBase64url(aad) }),\n recipients,\n } satisfies JweJsonGeneral\n}\n\nexport class CompactJwtEncrypter implements JweEncrypter {\n private _alg: JweAlg | undefined\n private _enc: JweEnc | undefined\n private _keyManagementParams: JWEKeyManagementHeaderParameters | undefined\n private recipientKey: Uint8Array | jose.KeyLike //,EphemeralPublicKey | BaseJWK;\n private expirationTime\n private issuer: string | undefined\n private audience: string | string[] | undefined\n\n constructor(args: {\n key: Uint8Array | jose.KeyLike /*EphemeralPublicKey | BaseJWK*/\n alg?: JweAlg\n enc?: JweEnc\n keyManagementParams?: JWEKeyManagementHeaderParameters\n expirationTime?: number | string | Date\n issuer?: string\n audience?: string | string[]\n }) {\n if (args?.alg) {\n this._alg = args.alg\n }\n if (args?.enc) {\n this._enc = args.enc\n }\n this._keyManagementParams = args.keyManagementParams\n this.recipientKey = args.key\n this.expirationTime = args.expirationTime\n this.issuer = args.issuer\n this.audience = args.audience\n }\n\n get enc(): string {\n if (!this._enc) {\n throw Error(`enc not set`)\n }\n return this._enc\n }\n\n set enc(value: JweEnc | string) {\n // @ts-ignore\n if (!JweEncs.includes(value)) {\n throw Error(`invalid JWE enc value ${value}`)\n }\n this._enc = value as JweEnc\n }\n\n get alg(): string {\n if (!this._alg) {\n throw Error(`alg not set`)\n }\n return this._alg\n }\n\n set alg(value: JweAlg | string) {\n // @ts-ignore\n if (!JweAlgs.includes(value)) {\n throw Error(`invalid JWE alg value ${value}`)\n }\n this._alg = value as JweAlg\n }\n\n async encryptCompactJWT(payload: JwsPayload, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<string> {\n const protectedHeader = {\n ...jweProtectedHeader,\n alg: jweProtectedHeader.alg ?? this._alg,\n enc: jweProtectedHeader.enc ?? this._enc,\n }\n if (!protectedHeader.alg || !protectedHeader.enc) {\n return Promise.reject(Error(`no 'alg' or 'enc' value set for the protected JWE header!`))\n }\n this.enc = protectedHeader.enc\n this.alg = protectedHeader.alg\n if (payload.exp) {\n this.expirationTime = payload.exp\n }\n if (payload.iss) {\n this.issuer = payload.iss\n }\n if (payload.aud) {\n this.audience = payload.aud\n }\n const encrypt = new jose.EncryptJWT(payload).setProtectedHeader({\n ...protectedHeader,\n alg: this.alg,\n enc: this.enc,\n })\n if (this._alg!.startsWith('ECDH')) {\n if (!this._keyManagementParams) {\n return Promise.reject(Error(`ECDH requires key management params`))\n }\n encrypt.setKeyManagementParameters(this._keyManagementParams!)\n }\n if (this.expirationTime !== undefined) {\n encrypt.setExpirationTime(this.expirationTime)\n }\n\n if (this.issuer) {\n encrypt.setIssuer(this.issuer)\n }\n if (this.audience) {\n encrypt.setAudience(this.audience)\n }\n return await encrypt.encrypt(this.recipientKey)\n }\n\n public static async decryptCompactJWT(jwt: string, key: KeyLike | Uint8Array, options?: JWTDecryptOptions) {\n return await jose.jwtDecrypt(jwt, key, options)\n }\n\n async encrypt(payload: Uint8Array, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<EncryptionResult> {\n const jwt = await this.encryptCompactJWT(JSON.parse(toString(payload)), jweProtectedHeader, aad)\n const [protectedHeader, encryptedKey, ivB64, payloadB64, tagB64] = jwt.split('.')\n //[jwe.protected, jwe.encrypted_key, jwe.iv, jwe.ciphertext, jwe.tag].join('.');\n console.log(`FIXME: TO EncryptionResult`)\n\n return {\n protectedHeader,\n tag: base64ToBytes(tagB64),\n ciphertext: base64ToBytes(payloadB64),\n iv: base64ToBytes(ivB64),\n recipients: [\n {\n //fixme\n // header: protectedHeader,\n ...(encryptedKey && { encrypted_key: encryptedKey }),\n },\n ],\n }\n }\n\n // encryptCek?: ((cek: Uint8Array) => Promise<JweRecipient>) | undefined;\n}\n\nexport async function createJwe(\n cleartext: Uint8Array,\n encrypters: JweEncrypter[],\n protectedHeader: JweProtectedHeader,\n aad?: Uint8Array,\n): Promise<JweJsonGeneral> {\n if (encrypters.length === 0) {\n throw Error('JWE needs at least 1 encryptor')\n }\n if (encrypters.find((enc) => enc.alg === 'dir' || enc.alg === 'ECDH-ES')) {\n if (encrypters.length !== 1) {\n throw Error(`JWE can only do \"dir\" or \"ECDH-ES\" encryption with one key. ${encrypters.length} supplied`)\n }\n const encryptionResult = await encrypters[0].encrypt(cleartext, protectedHeader, aad)\n return jweEncode({ ...encryptionResult, aad })\n } else {\n const tmpEnc = encrypters[0].enc\n if (!encrypters.reduce((acc, encrypter) => acc && encrypter.enc === tmpEnc, true)) {\n throw new Error('invalid_argument: Incompatible encrypters passed')\n }\n let cek: Uint8Array | undefined = undefined\n let jwe: JweJsonGeneral | undefined = undefined\n for (const encrypter of encrypters) {\n if (!cek) {\n const encryptionResult = await encrypter.encrypt(cleartext, protectedHeader, aad)\n cek = encryptionResult.cek\n jwe = jweEncode({ ...encryptionResult, aad })\n } else {\n const recipient = await encrypter.encryptCek?.(cek)\n if (recipient) {\n jwe?.recipients?.push(recipient)\n }\n }\n }\n if (!jwe) {\n throw Error(`No JWE constructed`)\n }\n return jwe\n }\n}\n\n/**\n * Merges all headers, so we get a unified header.\n *\n * @param protectedHeader\n * @param unprotectedHeader\n * @param recipientUnprotectedHeader\n */\nexport function jweMergeHeaders({\n protectedHeader,\n unprotectedHeader,\n recipientUnprotectedHeader,\n}: {\n protectedHeader?: JweProtectedHeader\n unprotectedHeader?: JweHeader\n recipientUnprotectedHeader?: JweRecipientUnprotectedHeader\n}): JweHeader {\n // TODO: Check that all headers/params are disjoint!\n const header = { ...protectedHeader, ...unprotectedHeader, ...recipientUnprotectedHeader }\n\n if (!header.alg || !header.enc) {\n throw Error(`Either 'alg' or 'enc' are missing from the headers`)\n }\n return header as JweHeader\n}\n\nexport async function decryptJwe(jwe: JweJsonGeneral, decrypter: JweDecrypter): Promise<Uint8Array> {\n jweAssertValid(jwe)\n const protectedHeader: JweProtectedHeader = JSON.parse(decodeBase64url(jwe.protected))\n if (protectedHeader?.enc !== decrypter.enc) {\n return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n } else if (!jwe.tag) {\n return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n }\n const sealed = toWebCryptoCiphertext(jwe.ciphertext, jwe.tag)\n const aad = fromString(jwe.aad ? `${jwe.protected}.${jwe.aad}` : jwe.protected)\n let cleartext = null\n if (protectedHeader.alg === 'dir' && decrypter.alg === 'dir') {\n cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad)\n } else if (!jwe.recipients || jwe.recipients.length === 0) {\n throw Error('missing recipients for JWE')\n } else {\n for (let i = 0; !cleartext && i < jwe.recipients.length; i++) {\n const recipient: JweRecipient = jwe.recipients[i]\n recipient.header = { ...recipient.header, ...protectedHeader } as JweRecipientUnprotectedHeader\n if (recipient.header.alg === decrypter.alg) {\n cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad, recipient)\n }\n }\n }\n if (cleartext === null) throw new Error('failure: Failed to decrypt')\n return cleartext\n}\n\nexport function toWebCryptoCiphertext(ciphertext: string, tag: string): Uint8Array {\n return concat([base64ToBytes(ciphertext), base64ToBytes(tag)])\n}\n","import type {\n ExternalIdentifierDidOpts,\n ExternalIdentifierResult,\n ExternalIdentifierX5cOpts,\n IIdentifierResolution,\n ManagedIdentifierOptsOrResult,\n ManagedIdentifierResult,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport type { ClientIdScheme } from '@sphereon/ssi-sdk-ext.x509-utils'\nimport type { BaseJWK, IValidationResult, JoseSignatureAlgorithm, JoseSignatureAlgorithmString, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext, IKeyManager, IPluginMethodMap } from '@veramo/core'\n\nexport type IRequiredContext = IAgentContext<IIdentifierResolution & IKeyManager> // could we still interop with Veramo?\n\nexport const jwtServiceContextMethods: Array<string> = [\n 'jwtPrepareJws',\n 'jwtCreateJwsJsonGeneralSignature',\n 'jwtCreateJwsJsonFlattenedSignature',\n 'jwtCreateJwsCompactSignature',\n 'jwtVerifyJwsSignature',\n 'jwtEncryptJweCompactJwt',\n 'jwtDecryptJweCompactJwt',\n]\n\nexport interface IJwtService extends IPluginMethodMap {\n jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject>\n\n jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral>\n\n jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened>\n\n jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult>\n\n jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n // TODO: JWE/encryption general methods\n}\n\nexport type IJwsValidationResult = IValidationResult & {\n jws: JwsJsonGeneralWithIdentifiers // We always translate to general as that is the most flexible format allowing multiple sigs\n}\n\nexport interface PreparedJws {\n protectedHeader: JwsHeader\n payload: Uint8Array\n unprotectedHeader?: JwsHeader // only for jws json and also then optional\n existingSignatures?: Array<JwsJsonSignature> // only for jws json and also then optional\n}\n\nexport interface JwsJsonSignature {\n protected: string\n header?: JwsHeader\n signature: string\n}\n\n/**\n * The JWK representation of an ephemeral public key.\n * See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\n */\n// todo split into separate objects\nexport type EphemeralPublicKey = Omit<BaseJWK, 'alg'>\n\n// export function isEcJWK(v)\n\nexport interface JweHeader extends Omit<BaseJwtHeader, 'alg'> {\n alg: string\n enc: string\n jku?: string\n jwk?: BaseJWK\n epk?: EphemeralPublicKey\n x5u?: string\n x5c?: string[]\n x5t?: string\n cty?: string\n crit?: string[]\n\n [k: string]: any\n}\n\nexport interface JweRecipientUnprotectedHeader {\n alg: string\n iv: string\n tag: string\n epk?: EphemeralPublicKey\n kid?: string\n apv?: string\n apu?: string\n}\n\nexport interface JweProtectedHeader extends Partial<JweHeader> {\n zip?: 'DEF' | string\n}\n\nexport type Jws = JwsCompact | JwsJsonFlattened | JwsJsonGeneral\n\nexport type JwsCompact = string\n\nexport interface JwsJsonFlattened {\n payload: string\n protected: string\n header?: JwsHeader\n signature: string\n}\n\nexport interface JwsJsonGeneral {\n payload: string\n signatures: Array<JwsJsonSignature>\n}\n\nexport interface JwsJsonGeneralWithIdentifiers extends JwsJsonGeneral {\n signatures: Array<JwsJsonSignatureWithIdentifier>\n}\n\nexport interface JwsJsonSignatureWithIdentifier extends JwsJsonSignature {\n identifier: ExternalIdentifierResult\n}\n\nexport type Jwe = JweCompact | JweJsonFlattened | JweJsonGeneral\nexport type JweCompact = string\n\nexport interface JweJsonFlattened {\n protected: string\n unprotected: JweHeader\n header: JweHeader | JweRecipientUnprotectedHeader\n encrypted_key?: string\n aad?: string\n iv: string\n ciphertext: string\n tag?: string\n}\n\nexport interface JweRecipient {\n header?: JweRecipientUnprotectedHeader\n encrypted_key?: string\n}\n\nexport interface JweJsonGeneral {\n protected: string\n unprotected?: JweHeader\n recipients: Array<JweRecipient>\n aad?: string\n iv: string\n ciphertext: string\n tag?: string\n}\n\nexport interface PreparedJwsObject {\n jws: PreparedJws\n b64: { payload: string; protectedHeader: string } // header is always json, as it can only be used in JwsJson\n identifier: ManagedIdentifierResult\n}\n\nexport interface BaseJwtHeader {\n typ?: string\n alg?: string\n kid?: string\n}\n\nexport interface BaseJwtPayload {\n iss?: string\n sub?: string\n aud?: string[] | string\n exp?: number\n nbf?: number\n iat?: number\n jti?: string\n}\n\nexport interface JwsHeader extends BaseJwtHeader {\n kid?: string\n jwk?: JWK\n x5c?: string[]\n\n [key: string]: unknown\n}\n\nexport interface JwsPayload extends BaseJwtPayload {\n [key: string]: unknown\n}\n\nexport interface JwsHeaderOpts {\n alg: JoseSignatureAlgorithm | JoseSignatureAlgorithmString\n}\n\nexport type JwsIdentifierMode = 'x5c' | 'kid' | 'jwk' | 'did' | 'auto'\n\nexport type EncryptJweCompactJwtArgs = {\n payload: JwsPayload\n protectedHeader?: JweProtectedHeader | undefined\n aad?: Uint8Array | undefined\n recipientKey: ExternalIdentifierResult & { kid?: string }\n alg?: JweAlg\n enc?: JweEnc\n apu?: string // base64url\n apv?: string // base64url\n expirationTime?: number | string | Date\n issuer?: string\n audience?: string | string[]\n}\n\nexport type DecryptJweCompactJwtArgs = {\n jwe: JweCompact\n idOpts: ManagedIdentifierOptsOrResult\n}\n\nexport type CreateJwsArgs = {\n mode?: JwsIdentifierMode\n issuer: ManagedIdentifierOptsOrResult & {\n noIssPayloadUpdate?: boolean\n noIdentifierInHeader?: boolean\n }\n clientId?: string\n clientIdScheme?: ClientIdScheme | 'did' | string\n protectedHeader: JwsHeader\n payload: JwsPayload | Uint8Array | string\n}\n\nexport type CreateJweArgs = {\n mode?: JwsIdentifierMode\n issuer: ManagedIdentifierOptsOrResult & {\n noIssPayloadUpdate?: boolean\n noIdentifierInHeader?: boolean\n }\n protectedHeader: JweProtectedHeader\n encryptedKey: string | EphemeralPublicKey // In case it is a string it is already encrypted; otherwise encrypt //TODO ??\n iv: string\n ciphertext: string\n tag: string\n}\nexport type CreateJwsCompactArgs = CreateJwsArgs\n\nexport type CreateJwsFlattenedArgs = Exclude<CreateJwsJsonArgs, 'existingSignatures'>\n\nexport type VerifyJwsArgs = {\n jws: Jws\n jwk?: JWK // Jwk will be resolved from jws, but you can also provide one\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n}\n\n/**\n * @public\n */\nexport type CreateJwsJsonArgs = CreateJwsArgs & {\n unprotectedHeader?: JwsHeader // only for jws json\n existingSignatures?: Array<JwsJsonSignature> // Only for jws json\n}\n\nexport type CreateJweJsonArgs = CreateJweArgs & {\n unprotectedHeader?: JweHeader\n}\n\n/**\n * @public\n */\nexport interface JwtCompactResult {\n jwt: JwsCompact | JweCompact\n}\n\nexport function isJwsCompact(jws: Jws): jws is JwsCompact {\n return typeof jws === 'string' && jws.split('~')[0].match(COMPACT_JWS_REGEX) !== null\n}\n\nexport function isJweCompact(jwe: Jwe): jwe is JweCompact {\n return typeof jwe === 'string' && jwe.split('~')[0].match(COMPACT_JWE_REGEX) !== null\n}\n\nexport function isJwsJsonFlattened(jws: Jws): jws is JwsJsonFlattened {\n return typeof jws === 'object' && 'signature' in jws && 'protected' in jws && !('ciphertext' in jws)\n}\n\nexport function isJwsJsonGeneral(jws: Jws): jws is JwsJsonGeneral {\n return typeof jws === 'object' && 'signatures' in jws && !('ciphertext' in jws)\n}\n\nexport function isJweJsonFlattened(jwe: Jwe): jwe is JweJsonFlattened {\n return typeof jwe === 'object' && 'signature' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJweJsonGeneral(jwe: Jwe): jwe is JweJsonGeneral {\n return typeof jwe === 'object' && 'signatures' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJwsHeader(header: BaseJwtHeader & Record<string, any>): header is JwsHeader {\n return header && !isJweHeader(header)\n}\n\nexport function isJweHeader(header: BaseJwtHeader & Record<string, any>): header is JweHeader {\n return ('enc' in header && header.enc && jweEnc(header.enc)) || (header.alg && jweAlg(header.alg))\n}\n\nexport const COMPACT_JWS_REGEX = /^([a-zA-Z0-9_=-]+).([a-zA-Z0-9_=-]+)?.([a-zA-Z0-9_=-]+)?$/\nexport const COMPACT_JWE_REGEX = /^([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)?$/\n\nexport const JweAlgs = [\n 'RSA1_5',\n 'RSA-OAEP',\n 'RSA-OAEP-256',\n 'A128KW',\n 'A192KW',\n 'A256KW',\n 'dir',\n 'ECDH-ES' /*interop value*/,\n 'ECDH-ES+A128KW',\n 'ECDH-ES+A192KW',\n 'ECDH-ES+A256KW',\n 'A128GCMKW',\n 'A192GCMKW',\n 'A256GCMKW',\n 'PBES2-HS256+A128KW',\n 'PBES2-HS384+A192KW',\n 'PBES2-HS512+A256KW',\n] as const\nexport type JweAlg = (typeof JweAlgs)[number]\nexport function jweAlg(alg?: string | JweAlg): JweAlg | undefined {\n return JweAlgs.find((supportedVal) => supportedVal === alg)\n}\n\nexport const JweEncs = ['A128CBC-HS256', 'A192CBC-HS384', 'A256CBC-HS512', 'A128GCM', 'A192GCM', 'A256GCM' /*interop value*/] as const\nexport type JweEnc = (typeof JweEncs)[number]\n\nexport function jweEnc(alg?: string | JweEnc): JweEnc | undefined {\n return JweEncs.find((supportedVal) => supportedVal === alg)\n}\n","import { jwkTtoPublicKeyHex } from '@sphereon/ssi-sdk-ext.did-utils'\nimport {\n ensureManagedIdentifierResult,\n type ExternalIdentifierDidOpts,\n type ExternalIdentifierX5cOpts,\n type IIdentifierResolution,\n isManagedIdentifierDidResult,\n isManagedIdentifierX5cResult,\n type ManagedIdentifierMethod,\n type ManagedIdentifierResult,\n resolveExternalJwkIdentifier,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport { keyTypeFromCryptographicSuite, signatureAlgorithmFromKeyType, verifyRawSignature } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { contextHasPlugin } from '@sphereon/ssi-sdk.agent-config'\nimport type { JoseSignatureAlgorithm, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext } from '@veramo/core'\nimport { base64ToBytes, bytesToBase64url, decodeJoseBlob, encodeJoseBlob } from '@veramo/utils'\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nimport type {\n CreateJwsCompactArgs,\n CreateJwsFlattenedArgs,\n CreateJwsJsonArgs,\n IJwsValidationResult,\n IRequiredContext,\n JweHeader,\n Jws,\n JwsCompact,\n JwsHeader,\n JwsIdentifierMode,\n JwsJsonFlattened,\n JwsJsonGeneral,\n JwsJsonGeneralWithIdentifiers,\n JwsJsonSignature,\n JwsJsonSignatureWithIdentifier,\n JwsPayload,\n PreparedJwsObject,\n VerifyJwsArgs,\n} from '../types/IJwtService'\nimport { isJwsCompact, isJwsJsonFlattened, isJwsJsonGeneral } from '../types/IJwtService'\n\nconst { fromString } = u8a\n\nconst payloadToBytes = (payload: string | JwsPayload | Uint8Array): Uint8Array => {\n const isBytes = payload instanceof Uint8Array\n const isString = typeof payload === 'string'\n return isBytes ? payload : isString ? fromString(payload, 'base64url') : fromString(JSON.stringify(payload), 'utf-8')\n}\n\nexport const prepareJwsObject = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> => {\n const { existingSignatures, protectedHeader, unprotectedHeader, issuer, payload, mode = 'auto', clientId, clientIdScheme } = args\n\n const { noIdentifierInHeader = false } = issuer\n const identifier = await ensureManagedIdentifierResult(issuer, context)\n await checkAndUpdateJwsHeader({ mode, identifier, noIdentifierInHeader, header: protectedHeader }, context)\n const isBytes = payload instanceof Uint8Array\n const isString = typeof payload === 'string'\n if (!isBytes && !isString) {\n if (issuer.noIssPayloadUpdate !== true && !payload.iss && identifier.issuer) {\n payload.iss = identifier.issuer\n }\n if (clientIdScheme && !payload.client_id_scheme) {\n payload.client_id_scheme = clientIdScheme\n }\n if (clientId && !payload.client_id) {\n payload.client_id = clientId\n }\n }\n const payloadBytes = payloadToBytes(payload)\n const base64urlHeader = encodeJoseBlob(protectedHeader)\n const base64urlPayload = bytesToBase64url(payloadBytes)\n\n return {\n jws: {\n unprotectedHeader,\n protectedHeader,\n payload: payloadBytes,\n existingSignatures,\n },\n b64: {\n protectedHeader: base64urlHeader,\n payload: base64urlPayload,\n },\n identifier,\n }\n}\n\nexport const createJwsCompact = async (args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwsCompact> => {\n const { protected: protectedHeader, payload, signature } = await createJwsJsonFlattened(args, context)\n return `${protectedHeader}.${payload}.${signature}`\n}\n\nexport const createJwsJsonFlattened = async (args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> => {\n const jws = await createJwsJsonGeneral(args, context)\n if (jws.signatures.length !== 1) {\n return Promise.reject(Error(`JWS flattened signature can only contain 1 signature. Found ${jws.signatures.length}`))\n }\n return {\n ...jws.signatures[0],\n payload: jws.payload,\n } satisfies JwsJsonFlattened\n}\n\nexport const createJwsJsonGeneral = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> => {\n const { payload, protectedHeader, unprotectedHeader, existingSignatures, mode, issuer } = args\n const { b64, identifier } = await prepareJwsObject(\n {\n protectedHeader,\n unprotectedHeader,\n payload,\n existingSignatures,\n issuer,\n mode,\n },\n context,\n )\n\n const alg: string | undefined = protectedHeader.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n\n // const algorithm = await signatureAlgorithmFromKey({ key: identifier.key })\n const signature = await context.agent.keyManagerSign({\n keyRef: identifier.kmsKeyRef,\n data: `${b64.protectedHeader}.${b64.payload}`,\n encoding: undefined,\n algorithm: alg,\n })\n const jsonSignature = {\n protected: b64.protectedHeader,\n header: unprotectedHeader,\n signature,\n } satisfies JwsJsonSignature\n return {\n payload: b64.payload,\n signatures: [...(existingSignatures ?? []), jsonSignature],\n } satisfies JwsJsonGeneral\n}\n\n/**\n * Updates the JWT header to include x5c, kid, jwk objects using the supplied issuer identifier that will be used to sign. If not present will automatically make the header objects available\n * @param mode The type of header to check or include\n * @param identifier The identifier of the signer. This identifier will be used later to sign\n * @param header The JWT header\n * @param noIdentifierInHeader\n * @param context\n */\n\nexport const checkAndUpdateJwsHeader = async (\n {\n mode = 'auto',\n identifier,\n header,\n noIdentifierInHeader = false,\n }: {\n mode?: JwsIdentifierMode\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n header: JwsHeader\n },\n context: IRequiredContext,\n) => {\n // Make sure we have an alg in the header (https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.1)\n header.alg = header.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n if (isIdentifierMode(mode, identifier.method, 'did')) {\n // kid is VM of the DID\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n await checkAndUpdateDidHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'x5c')) {\n // Include the x5c in the header. No kid\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.6\n await checkAndUpdateX5cHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'kid', false)) {\n await checkAndUpdateKidHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'jwk', false)) {\n // Include the JWK in the header as well as its kid if present\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.3\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n await checkAndUpdateJwkHeader({ header, identifier, noIdentifierInHeader }, context)\n } else {\n // Better safe than sorry. We could let it pass, but we want to force implementers to make a conscious choice\n return Promise.reject(`Invalid combination of JWS creation mode ${mode} and identifier method ${identifier.method} chosen`)\n }\n}\n\nconst checkAndUpdateX5cHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { x5c } = header\n if (x5c) {\n // let's resolve the provided x5c to be sure\n const x5cIdentifier = await context.agent.identifierManagedGetByX5c({ identifier: x5c })\n if (x5cIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`An x5c header was present, but its issuer public key did not match the provided signing public key!`))\n }\n } else if (!noIdentifierInHeader) {\n if (!isManagedIdentifierX5cResult(identifier)) {\n return Promise.reject(Error('No x5c header in the JWT, but mode was x5c and also no x5x identifier was provided!'))\n } else if (header.jwk || header.kid) {\n return Promise.reject(Error('x5c mode was choosen, but jwk or kid headers were provided. These cannot be used together!'))\n }\n header.x5c = identifier.x5c\n }\n}\n\nconst checkAndUpdateDidHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { kid } = header\n if (kid) {\n // let's resolve the provided x5c to be sure\n const vmIdentifier = await context.agent.identifierManagedGetByDid({ identifier: kid })\n if (vmIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n }\n } else if (!noIdentifierInHeader) {\n if (!isManagedIdentifierDidResult(identifier)) {\n return Promise.reject(Error('No kid header in the JWT, but mode was did and also no DID identifier was provided!'))\n } else if (header.jwk || header.x5c) {\n return Promise.reject(Error('did mode was chosen, but jwk or x5c headers were provided. These cannot be used together!'))\n }\n header.kid = identifier.kid\n }\n}\n\nconst checkAndUpdateJwkHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { jwk } = header\n if (jwk) {\n // let's resolve the provided x5c to be sure\n const jwkIdentifier = await context.agent.identifierManagedGetByJwk({ identifier: jwk as JWK })\n if (jwkIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A jwk header was present, but its value did not match the provided signing jwk or kid!`))\n }\n } else if (!noIdentifierInHeader) {\n // We basically accept everything for this mode, as we can always create JWKs from any key\n if (header.x5c) {\n return Promise.reject(Error('jwk mode was chosen, but x5c headers were provided. These cannot be used together!'))\n }\n header.jwk = identifier.jwk\n }\n}\n\nconst checkAndUpdateKidHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { kid } = header\n if (kid) {\n // let's resolve the provided x5c to be sure\n const kidIdentifier = await context.agent.identifierManagedGetByKid({ identifier: kid })\n if (kidIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n }\n } else if (!noIdentifierInHeader) {\n // We basically accept everything for this mode, as we can always create JWKs from any key\n if (header.x5c) {\n return Promise.reject(Error('kid mode was chosen, but x5c headers were provided. These cannot be used together!'))\n }\n header.kid = identifier.kid\n }\n}\n\nconst isIdentifierMode = (mode: JwsIdentifierMode, identifierMethod: ManagedIdentifierMethod, checkMode: JwsIdentifierMode, loose = true) => {\n if (loose && (checkMode === 'jwk' || checkMode === 'kid')) {\n // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n // todo: check the impact on the above expressions, as this will now always return true for the both of them\n return true\n }\n if (mode === checkMode) {\n if (checkMode !== 'auto' && mode !== identifierMethod) {\n throw Error(`Provided mode ${mode} conflicts with identifier method ${identifierMethod}`)\n }\n return true\n }\n // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n return mode === 'auto' && identifierMethod === checkMode\n}\n\nexport const verifyJws = async (args: VerifyJwsArgs, context: IAgentContext<IIdentifierResolution>): Promise<IJwsValidationResult> => {\n const jws = await toJwsJsonGeneralWithIdentifiers(args, context)\n\n let errorMessages: string[] = []\n let index = 0\n await Promise.all(\n jws.signatures.map(async (sigWithId) => {\n // If we have a specific KMS agent plugin that can do the verification prefer that over the generic verification\n index++\n let valid: boolean\n const data = fromString(`${sigWithId.protected}.${jws.payload}`, 'utf-8')\n const jwkInfo = sigWithId.identifier.jwks[0]\n let signatureAlg: JoseSignatureAlgorithm | undefined = undefined\n if (sigWithId.protected.startsWith(`ey`)) {\n const header = decodeJoseBlob(sigWithId.protected)\n signatureAlg = header.alg as JoseSignatureAlgorithm | undefined\n }\n\n if (false && signatureAlg?.startsWith('PS') && contextHasPlugin(context, 'keyManagerVerify')) {\n const publicKeyHex = jwkTtoPublicKeyHex(jwkInfo.jwk)\n valid = await context.agent.keyManagerVerify({\n signature: sigWithId.signature,\n data,\n publicKeyHex,\n type: keyTypeFromCryptographicSuite({ ...(jwkInfo.jwk.crv && { crv: jwkInfo.jwk.crv }), alg: signatureAlg as string }),\n // no kms arg, as the current key manager needs a bit more work\n })\n } else {\n const signature = base64ToBytes(sigWithId.signature)\n valid = await verifyRawSignature({ data, signature, key: jwkInfo.jwk, opts: { signatureAlg: signatureAlg } })\n // }\n }\n if (!valid) {\n errorMessages.push(`Signature ${index} was not valid`)\n }\n return {\n sigWithId,\n valid,\n }\n }),\n )\n const error = errorMessages.length !== 0\n const result = {\n name: 'jws',\n jws,\n error,\n critical: error,\n message: error ? errorMessages.join(', ') : 'Signature validated',\n verificationTime: new Date(),\n } satisfies IJwsValidationResult\n if (error) {\n console.log(`Error verifying jws signature: ` + { ...result })\n }\n return result\n}\n\nexport const toJwsJsonGeneral = async ({ jws }: { jws: Jws }, context: IAgentContext<any>): Promise<JwsJsonGeneral> => {\n let payload: string\n let signatures: JwsJsonSignature[] = []\n\n if (isJwsCompact(jws)) {\n const split = jws.split('.')\n payload = split[1]\n signatures[0] = {\n protected: split[0],\n signature: split[2],\n } satisfies JwsJsonSignature\n } else if (isJwsJsonGeneral(jws)) {\n payload = jws.payload\n signatures = jws.signatures\n } else if (isJwsJsonFlattened(jws)) {\n const { payload: _payload, ...signature } = jws\n payload = _payload\n signatures = [signature]\n } else {\n return Promise.reject(Error(`Invalid JWS supplied`))\n }\n return {\n payload,\n signatures,\n }\n}\n\nasync function resolveExternalIdentifierFromJwsHeader(\n protectedHeader: JwsHeader,\n context: IAgentContext<IIdentifierResolution>,\n args: {\n jws: Jws\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n },\n) {\n if (protectedHeader.x5c) {\n const x5c = protectedHeader.x5c\n return await context.agent.identifierExternalResolveByX5c({\n ...args.opts?.x5c,\n identifier: x5c,\n verify: true,\n })\n } else if (protectedHeader.jwk) {\n const jwk = protectedHeader.jwk\n const x5c = jwk.x5c // todo resolve x5u\n return await context.agent.identifierExternalResolveByJwk({\n identifier: protectedHeader.jwk,\n ...(x5c && {\n x5c: {\n ...args?.opts?.x5c,\n identifier: x5c,\n },\n }),\n })\n } else if (protectedHeader.kid && protectedHeader.kid.startsWith('did:')) {\n return await context.agent.identifierExternalResolveByDid({ ...args?.opts?.did, identifier: protectedHeader.kid })\n } else if (protectedHeader.alg === 'none') {\n return undefined\n } else {\n return Promise.reject(Error(`We can only process DIDs, X.509 certificate chains and JWKs for signature validation at present`))\n }\n}\n\nfunction loadJWK(providedJwk: JWK | undefined, protectedHeader: JwsHeader, jws: JwsJsonGeneral): JWK | undefined {\n if (providedJwk) {\n return providedJwk\n }\n // TODO SDK-47 the identityResolver could handle this as well, but it's a really tiny function\n if (protectedHeader?.typ === 'entity-statement+jwt') {\n const payload = decodeJoseBlob(jws.payload)\n if (!payload?.jwks?.keys?.[0]) {\n throw new Error('Missing or invalid JWK in payload')\n }\n return payload.jwks.keys[0]\n }\n\n return undefined\n}\n\nexport const toJwsJsonGeneralWithIdentifiers = async (\n args: {\n jws: Jws\n jwk?: JWK\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n },\n context: IAgentContext<IIdentifierResolution>,\n): Promise<JwsJsonGeneralWithIdentifiers> => {\n const jws = await toJwsJsonGeneral(args, context)\n const signatures = (await Promise.all(\n jws.signatures.map(async (signature) => {\n const protectedHeader: JwsHeader = decodeJoseBlob(signature.protected)\n const jwk = loadJWK(args.jwk, protectedHeader, jws)\n const identifier = jwk\n ? await resolveExternalJwkIdentifier({ identifier: jwk, method: 'jwk' }, context)\n : await resolveExternalIdentifierFromJwsHeader(protectedHeader, context, args)\n if (identifier !== undefined) {\n return { ...signature, identifier }\n }\n return undefined\n }),\n )) as Array<JwsJsonSignatureWithIdentifier>\n\n return { payload: jws.payload, signatures }\n}\n"],"mappings":"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","names":["Loggers","Loggers","importJWK","u8a","defaultRandomSource","randomBytes","base64ToBytes","bytesToBase64url","decodeBase64url","jose","u8a","jwtServiceContextMethods","isJwsCompact","jws","split","match","COMPACT_JWS_REGEX","isJweCompact","jwe","COMPACT_JWE_REGEX","isJwsJsonFlattened","isJwsJsonGeneral","isJweJsonFlattened","isJweJsonGeneral","isJwsHeader","header","isJweHeader","enc","jweEnc","alg","jweAlg","JweAlgs","find","supportedVal","JweEncs","fromString","toString","concat","u8a","CompactJwtEncrypter","_alg","_enc","_keyManagementParams","recipientKey","expirationTime","issuer","audience","args","alg","enc","keyManagementParams","key","Error","value","JweEncs","includes","JweAlgs","encryptCompactJWT","payload","jweProtectedHeader","aad","protectedHeader","Promise","reject","exp","iss","aud","encrypt","EncryptJWT","setProtectedHeader","startsWith","setKeyManagementParameters","undefined","setExpirationTime","setIssuer","setAudience","decryptCompactJWT","jwt","options","jwtDecrypt","JSON","parse","toString","encryptedKey","ivB64","payloadB64","tagB64","split","console","log","tag","base64ToBytes","ciphertext","iv","recipients","encrypted_key","logger","Loggers","DEFAULT","get","fromString","u8a","JwtService","schema","IJwtService","methods","jwtPrepareJws","bind","jwtCreateJwsJsonGeneralSignature","jwtCreateJwsJsonFlattenedSignature","jwtCreateJwsCompactSignature","jwtVerifyJwsSignature","jwtEncryptJweCompactJwt","jwtDecryptJweCompactJwt","args","context","prepareJwsObject","createJwsJsonGeneral","createJwsJsonFlattened","jwt","createJwsCompact","verifyJws","payload","protectedHeader","alg","enc","recipientKey","issuer","expirationTime","audience","debug","JSON","stringify","jweAlg","jweEnc","encJwks","jwks","length","filter","jwk","kid","jwkThumbprint","use","Promise","reject","Error","jwkInfo","JwtLogger","warning","kty","startsWith","apuVal","apu","undefined","apvVal","apv","pubKey","importJWK","encrypter","CompactJwtEncrypter","keyManagementParams","key","jwe","encryptCompactJWT","error","console","message","jwkTtoPublicKeyHex","ensureManagedIdentifierResult","isManagedIdentifierDidResult","isManagedIdentifierX5cResult","resolveExternalJwkIdentifier","keyTypeFromCryptographicSuite","signatureAlgorithmFromKeyType","verifyRawSignature","contextHasPlugin","base64ToBytes","bytesToBase64url","decodeJoseBlob","encodeJoseBlob","u8a","fromString","u8a","payloadToBytes","payload","isBytes","Uint8Array","isString","JSON","stringify","prepareJwsObject","args","context","existingSignatures","protectedHeader","unprotectedHeader","issuer","mode","clientId","clientIdScheme","noIdentifierInHeader","identifier","ensureManagedIdentifierResult","checkAndUpdateJwsHeader","header","noIssPayloadUpdate","iss","client_id_scheme","client_id","payloadBytes","base64urlHeader","encodeJoseBlob","base64urlPayload","bytesToBase64url","jws","b64","createJwsCompact","protected","signature","createJwsJsonFlattened","createJwsJsonGeneral","signatures","length","Promise","reject","Error","alg","signatureAlgorithmFromKeyType","type","key","agent","keyManagerSign","keyRef","kmsKeyRef","data","encoding","undefined","algorithm","jsonSignature","isIdentifierMode","method","checkAndUpdateDidHeader","checkAndUpdateX5cHeader","checkAndUpdateKidHeader","checkAndUpdateJwkHeader","x5c","x5cIdentifier","identifierManagedGetByX5c","isManagedIdentifierX5cResult","jwk","kid","vmIdentifier","identifierManagedGetByDid","isManagedIdentifierDidResult","jwkIdentifier","identifierManagedGetByJwk","kidIdentifier","identifierManagedGetByKid","identifierMethod","checkMode","loose","verifyJws","toJwsJsonGeneralWithIdentifiers","errorMessages","index","all","map","sigWithId","valid","jwkInfo","jwks","signatureAlg","startsWith","decodeJoseBlob","publicKeyHex","jwkTtoPublicKeyHex","keyManagerVerify","keyTypeFromCryptographicSuite","crv","base64ToBytes","verifyRawSignature","opts","push","error","result","name","critical","message","join","verificationTime","Date","console","log","toJwsJsonGeneral","isJwsCompact","split","isJwsJsonGeneral","isJwsJsonFlattened","_payload","resolveExternalIdentifierFromJwsHeader","identifierExternalResolveByX5c","verify","identifierExternalResolveByJwk","identifierExternalResolveByDid","did","loadJWK","providedJwk","typ","keys","resolveExternalJwkIdentifier","schema","require","JwtLogger","Loggers","DEFAULT","get"]}
1
+ {"version":3,"sources":["../plugin.schema.json","../src/index.ts","../src/agent/JwtService.ts","../src/functions/JWE.ts","../src/types/IJwtService.ts","../src/functions/index.ts"],"sourcesContent":["{\n \"IJwtService\": {\n \"components\": {\n \"schemas\": {\n \"CreateJwsCompactArgs\": {\n \"$ref\": \"#/components/schemas/CreateJwsArgs\"\n },\n \"CreateJwsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"mode\": {\n \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n },\n \"issuer\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"issuer\",\n \"protectedHeader\",\n \"payload\"\n ],\n \"additionalProperties\": false\n },\n \"JwsIdentifierMode\": {\n \"type\": \"string\",\n \"enum\": [\n \"x5c\",\n \"kid\",\n \"jwk\",\n \"did\",\n \"auto\"\n ]\n },\n \"JWK\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"alg\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n },\n \"d\": {\n \"type\": \"string\"\n },\n \"dp\": {\n \"type\": \"string\"\n },\n \"dq\": {\n \"type\": \"string\"\n },\n \"ext\": {\n \"type\": \"boolean\"\n },\n \"k\": {\n \"type\": \"string\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseKeyOperation\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseKeyOperationString\"\n }\n ]\n }\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"oth\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"d\": {\n \"type\": \"string\"\n },\n \"r\": {\n \"type\": \"string\"\n },\n \"t\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": false\n }\n },\n \"p\": {\n \"type\": \"string\"\n },\n \"q\": {\n \"type\": \"string\"\n },\n \"qi\": {\n \"type\": \"string\"\n },\n \"use\": {\n \"type\": \"string\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n \"description\": \"JWK \\\"x5c\\\" (X.509 Certificate Chain) Parameter.\"\n },\n \"x5t\": {\n \"type\": \"string\",\n \"description\": \"JWK \\\"x5t\\\" (X.509 Certificate SHA-1 Thumbprint) Parameter.\"\n },\n \"x5t#S256\": {\n \"type\": \"string\",\n \"description\": \"\\\"x5t#S256\\\" (X.509 Certificate SHA-256 Thumbprint) Parameter.\"\n },\n \"x5u\": {\n \"type\": \"string\",\n \"description\": \"JWK \\\"x5u\\\" (X.509 URL) Parameter.\"\n },\n \"iv\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ]\n },\n \"JwkKeyType\": {\n \"type\": \"string\",\n \"enum\": [\n \"EC\",\n \"RSA\",\n \"oct\",\n \"OKP\"\n ]\n },\n \"JwkKeyTypeString\": {\n \"type\": \"string\",\n \"enum\": [\n \"EC\",\n \"RSA\",\n \"oct\",\n \"OKP\"\n ]\n },\n \"JoseCurve\": {\n \"type\": \"string\",\n \"enum\": [\n \"P-256\",\n \"P-384\",\n \"P-521\",\n \"X25519\",\n \"X448\",\n \"EdDSA\",\n \"Ed25519\",\n \"Ed448\",\n \"secp256k1\"\n ]\n },\n \"JoseCurveString\": {\n \"type\": \"string\",\n \"enum\": [\n \"P-256\",\n \"P-384\",\n \"P-521\",\n \"X25519\",\n \"X448\",\n \"EdDSA\",\n \"Ed25519\",\n \"Ed448\",\n \"secp256k1\"\n ]\n },\n \"JoseSignatureAlgorithm\": {\n \"type\": \"string\",\n \"enum\": [\n \"RS256\",\n \"RS384\",\n \"RS512\",\n \"ES256\",\n \"ES256K\",\n \"ES384\",\n \"ES512\",\n \"EdDSA\",\n \"HS256\",\n \"HS384\",\n \"HS512\",\n \"PS256\",\n \"PS384\",\n \"PS512\",\n \"none\"\n ]\n },\n \"JoseSignatureAlgorithmString\": {\n \"type\": \"string\",\n \"enum\": [\n \"RS256\",\n \"RS384\",\n \"RS512\",\n \"ES256\",\n \"ES256K\",\n \"ES384\",\n \"ES512\",\n \"EdDSA\",\n \"HS256\",\n \"HS384\",\n \"HS512\",\n \"PS256\",\n \"PS384\",\n \"PS512\",\n \"none\"\n ]\n },\n \"JoseKeyOperation\": {\n \"type\": \"string\",\n \"enum\": [\n \"sign\",\n \"verify\",\n \"encrypt\",\n \"decrypt\",\n \"wrapKey\",\n \"unwrapKey\",\n \"deriveKey\",\n \"deriveBits\"\n ]\n },\n \"JoseKeyOperationString\": {\n \"type\": \"string\",\n \"enum\": [\n \"sign\",\n \"verify\",\n \"encrypt\",\n \"decrypt\",\n \"wrapKey\",\n \"unwrapKey\",\n \"deriveKey\",\n \"deriveBits\"\n ]\n },\n \"ManagedIdentifierMethod\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"jwk\",\n \"x5c\",\n \"kid\",\n \"key\",\n \"cose_key\",\n \"oid4vci-issuer\"\n ]\n },\n \"ManagedIdentifierOpts\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"ClientIdScheme\": {\n \"type\": \"string\",\n \"enum\": [\n \"x509_san_dns\",\n \"x509_san_uri\"\n ]\n },\n \"IIdentifier\": {\n \"type\": \"object\",\n \"properties\": {\n \"did\": {\n \"type\": \"string\",\n \"description\": \"Decentralized identifier\"\n },\n \"alias\": {\n \"type\": \"string\",\n \"description\": \"Optional. Identifier alias. Can be used to reference an object in an external system\"\n },\n \"provider\": {\n \"type\": \"string\",\n \"description\": \"Identifier provider name\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\",\n \"description\": \"Controller key id\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"description\": \"Array of managed keys\"\n },\n \"services\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IService\"\n },\n \"description\": \"Array of services\"\n }\n },\n \"required\": [\n \"did\",\n \"provider\",\n \"keys\",\n \"services\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Identifier interface\"\n },\n \"IKey\": {\n \"type\": \"object\",\n \"properties\": {\n \"kid\": {\n \"type\": \"string\",\n \"description\": \"Key ID\"\n },\n \"kms\": {\n \"type\": \"string\",\n \"description\": \"Key Management System\"\n },\n \"type\": {\n \"$ref\": \"#/components/schemas/TKeyType\",\n \"description\": \"Key type\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\",\n \"description\": \"Public key\"\n },\n \"privateKeyHex\": {\n \"type\": \"string\",\n \"description\": \"Optional. Private key\"\n },\n \"meta\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/KeyMetadata\"\n },\n {\n \"type\": \"null\"\n }\n ],\n \"description\": \"Optional. Key metadata. This should be used to determine which algorithms are supported.\"\n }\n },\n \"required\": [\n \"kid\",\n \"kms\",\n \"type\",\n \"publicKeyHex\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Cryptographic key\"\n },\n \"TKeyType\": {\n \"type\": \"string\",\n \"enum\": [\n \"Ed25519\",\n \"Secp256k1\",\n \"Secp256r1\",\n \"X25519\",\n \"Bls12381G1\",\n \"Bls12381G2\",\n \"RSA\"\n ],\n \"description\": \"Cryptographic key type.\"\n },\n \"KeyMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"algorithms\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"This encapsulates data about a key.\\n\\nImplementations of {@link @veramo/key-manager#AbstractKeyManagementSystem | AbstractKeyManagementSystem } should populate this object, for each key, with the algorithms that can be performed using it.\\n\\nThis can also be used to add various tags to the keys under management.\"\n },\n \"IService\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID\"\n },\n \"type\": {\n \"type\": \"string\",\n \"description\": \"Service type\"\n },\n \"serviceEndpoint\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n }\n }\n ],\n \"description\": \"Endpoint URL\"\n },\n \"description\": {\n \"type\": \"string\",\n \"description\": \"Optional. Description\"\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"serviceEndpoint\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Identifier service\"\n },\n \"IServiceEndpoint\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n ],\n \"description\": \"Represents a service endpoint URL or a map of URLs\"\n },\n \"Record<string,any>\": {\n \"type\": \"object\"\n },\n \"DIDDocumentSection\": {\n \"type\": \"string\",\n \"enum\": [\n \"verificationMethod\",\n \"publicKey\",\n \"service\",\n \"authentication\",\n \"assertionMethod\",\n \"keyAgreement\",\n \"capabilityInvocation\",\n \"capabilityDelegation\"\n ],\n \"description\": \"Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\\n\\nSee {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }\"\n },\n \"ICoseKeyJson\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"$ref\": \"#/components/schemas/ICoseKeyType\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"$ref\": \"#/components/schemas/ICoseSignatureAlgorithm\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ICoseKeyOperation\"\n }\n },\n \"baseIV\": {\n \"type\": \"string\"\n },\n \"crv\": {\n \"$ref\": \"#/components/schemas/ICoseCurve\"\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"d\": {\n \"type\": \"string\"\n },\n \"x5chain\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": {},\n \"description\": \"See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\\n\\nConversion functions are available in above library. Conversion functions are also available for TS in our\"\n },\n \"ICoseKeyType\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 0\n ]\n },\n \"ICoseSignatureAlgorithm\": {\n \"type\": \"number\",\n \"enum\": [\n -7,\n -47,\n -35,\n -36,\n -8,\n 4,\n 5,\n 6,\n 7,\n -37,\n -38,\n -39\n ]\n },\n \"ICoseKeyOperation\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10\n ]\n },\n \"ICoseCurve\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n -1\n ]\n },\n \"ManagedIdentifierType\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n }\n ],\n \"description\": \"Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\\n\\nThe functions below can be used to check the type, and they also provide the proper 'runtime' types\"\n },\n \"JwsHeader\": {\n \"type\": \"object\",\n \"properties\": {\n \"typ\": {\n \"type\": \"string\"\n },\n \"alg\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n }\n },\n \"JwsPayload\": {\n \"type\": \"object\",\n \"properties\": {\n \"iss\": {\n \"type\": \"string\"\n },\n \"sub\": {\n \"type\": \"string\"\n },\n \"aud\": {\n \"anyOf\": [\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"exp\": {\n \"type\": \"number\"\n },\n \"nbf\": {\n \"type\": \"number\"\n },\n \"iat\": {\n \"type\": \"number\"\n },\n \"jti\": {\n \"type\": \"string\"\n }\n }\n },\n \"Uint8Array\": {\n \"type\": \"object\",\n \"properties\": {\n \"BYTES_PER_ELEMENT\": {\n \"type\": \"number\"\n },\n \"buffer\": {\n \"$ref\": \"#/components/schemas/ArrayBufferLike\"\n },\n \"byteLength\": {\n \"type\": \"number\"\n },\n \"byteOffset\": {\n \"type\": \"number\"\n },\n \"length\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"BYTES_PER_ELEMENT\",\n \"buffer\",\n \"byteLength\",\n \"byteOffset\",\n \"length\"\n ],\n \"additionalProperties\": {\n \"type\": \"number\"\n }\n },\n \"ArrayBufferLike\": {\n \"$ref\": \"#/components/schemas/ArrayBuffer\"\n },\n \"ArrayBuffer\": {\n \"type\": \"object\",\n \"properties\": {\n \"byteLength\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"byteLength\"\n ],\n \"additionalProperties\": false\n },\n \"JwtCompactResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwt\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsCompact\"\n },\n {\n \"$ref\": \"#/components/schemas/JweCompact\"\n }\n ]\n }\n },\n \"required\": [\n \"jwt\"\n ],\n \"additionalProperties\": false\n },\n \"JwsCompact\": {\n \"type\": \"string\"\n },\n \"JweCompact\": {\n \"type\": \"string\"\n },\n \"CreateJwsFlattenedArgs\": {\n \"$ref\": \"#/components/schemas/Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\"\n },\n \"Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"CreateJwsJsonArgs\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"unprotectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"existingSignatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n },\n \"mode\": {\n \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n },\n \"issuer\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"noIssPayloadUpdate\": {\n \"type\": \"boolean\"\n },\n \"noIdentifierInHeader\": {\n \"type\": \"boolean\"\n },\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"issuer\",\n \"payload\",\n \"protectedHeader\"\n ]\n },\n \"JwsJsonSignature\": {\n \"type\": \"object\",\n \"properties\": {\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonFlattened\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"payload\",\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonGeneral\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"signatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n }\n },\n \"required\": [\n \"payload\",\n \"signatures\"\n ],\n \"additionalProperties\": false\n },\n \"DecryptJweCompactJwtArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwe\": {\n \"$ref\": \"#/components/schemas/JweCompact\"\n },\n \"idOpts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOptsOrResult\"\n }\n },\n \"required\": [\n \"jwe\",\n \"idOpts\"\n ],\n \"additionalProperties\": false\n },\n \"ManagedIdentifierOptsOrResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"jwk\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"identifier\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"identifier\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/IIdentifier\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"keyType\": {\n \"$ref\": \"#/components/schemas/TKeyType\"\n },\n \"offlineWhenNoDIDRegistered\": {\n \"type\": \"boolean\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"controllerKey\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"kid\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"cose_key\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"lazyDisabled\": {\n \"type\": \"boolean\"\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"oid4vci-issuer\"\n },\n \"identifier\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n }\n },\n \"required\": [\n \"identifier\"\n ]\n }\n ]\n },\n \"EncryptJweCompactJwtArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"$ref\": \"#/components/schemas/JwsPayload\"\n },\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JweProtectedHeader\"\n },\n \"aad\": {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n \"recipientKey\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"didDocument\": {\n \"$ref\": \"#/components/schemas/DIDDocument\"\n },\n \"didJwks\": {\n \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n },\n \"didResolutionResult\": {\n \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n },\n \"didParsed\": {\n \"$ref\": \"#/components/schemas/IParsedDID\"\n }\n },\n \"required\": [\n \"did\",\n \"didParsed\",\n \"didResolutionResult\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"trustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/TrustedAnchor\"\n }\n },\n \"errorList\": {\n \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n },\n \"jwtPayload\": {\n \"$ref\": \"#/components/schemas/JwtPayload\"\n },\n \"trustEstablished\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"jwks\",\n \"method\",\n \"trustEstablished\",\n \"trustedAnchors\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"kid\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"coseKey\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"coseKey\",\n \"jwks\",\n \"method\"\n ]\n }\n ]\n },\n \"alg\": {\n \"$ref\": \"#/components/schemas/JweAlg\"\n },\n \"enc\": {\n \"$ref\": \"#/components/schemas/JweEnc\"\n },\n \"apu\": {\n \"type\": \"string\"\n },\n \"apv\": {\n \"type\": \"string\"\n },\n \"expirationTime\": {\n \"anyOf\": [\n {\n \"type\": \"number\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n ]\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"audience\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n }\n },\n \"required\": [\n \"payload\",\n \"recipientKey\"\n ],\n \"additionalProperties\": false\n },\n \"JweProtectedHeader\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"string\"\n },\n \"enc\": {\n \"type\": \"string\"\n },\n \"jku\": {\n \"type\": \"string\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/BaseJWK\"\n },\n \"epk\": {\n \"$ref\": \"#/components/schemas/EphemeralPublicKey\"\n },\n \"x5u\": {\n \"type\": \"string\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"x5t\": {\n \"type\": \"string\"\n },\n \"cty\": {\n \"type\": \"string\"\n },\n \"crit\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"typ\": {},\n \"kid\": {},\n \"zip\": {\n \"type\": \"string\"\n }\n }\n },\n \"BaseJWK\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"alg\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Conversion functions to Cose available for TS in our\"\n },\n \"EphemeralPublicKey\": {\n \"$ref\": \"#/components/schemas/Omit<BaseJWK,\\\"alg\\\">\",\n \"description\": \"The JWK representation of an ephemeral public key. See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\"\n },\n \"Omit<BaseJWK,\\\"alg\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\"\n },\n \"Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"kty\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwkKeyType\"\n },\n {\n \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n }\n ]\n },\n \"crv\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JoseCurve\"\n },\n {\n \"$ref\": \"#/components/schemas/JoseCurveString\"\n }\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"additionalProperties\": false\n },\n \"ExternalIdentifierMethod\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"jwk\",\n \"x5c\",\n \"kid\",\n \"cose_key\",\n \"oidc-discovery\",\n \"jwks-url\",\n \"oid4vci-issuer\",\n \"entity_id\"\n ]\n },\n \"ExternalJwkInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwkThumbprint\",\n \"publicKeyHex\"\n ],\n \"additionalProperties\": false\n },\n \"DIDDocument\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"authentication\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"assertionMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"keyAgreement\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"capabilityInvocation\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"capabilityDelegation\": {\n \"type\": \"array\",\n \"items\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n ]\n }\n },\n \"@context\": {\n \"anyOf\": [\n {\n \"type\": \"string\",\n \"const\": \"https://www.w3.org/ns/did/v1\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"alsoKnownAs\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"controller\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"verificationMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"service\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Service\"\n }\n },\n \"publicKey\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n },\n \"deprecated\": true\n }\n },\n \"required\": [\n \"id\"\n ],\n \"description\": \"Represents a DID document.\"\n },\n \"VerificationMethod\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"controller\": {\n \"type\": \"string\"\n },\n \"publicKeyBase58\": {\n \"type\": \"string\"\n },\n \"publicKeyBase64\": {\n \"type\": \"string\"\n },\n \"publicKeyJwk\": {\n \"$ref\": \"#/components/schemas/JsonWebKey\"\n },\n \"publicKeyHex\": {\n \"type\": \"string\"\n },\n \"publicKeyMultibase\": {\n \"type\": \"string\"\n },\n \"blockchainAccountId\": {\n \"type\": \"string\"\n },\n \"ethereumAddress\": {\n \"type\": \"string\"\n },\n \"conditionOr\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"conditionAnd\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"threshold\": {\n \"type\": \"number\"\n },\n \"conditionThreshold\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n }\n },\n \"conditionWeightedThreshold\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ConditionWeightedThreshold\"\n }\n },\n \"conditionDelegated\": {\n \"type\": \"string\"\n },\n \"relationshipParent\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"relationshipChild\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"relationshipSibling\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"controller\"\n ],\n \"additionalProperties\": false,\n \"description\": \"Represents the properties of a Verification Method listed in a DID document.\\n\\nThis data type includes public key representations that are no longer present in the spec but are still used by several DID methods / resolvers and kept for backward compatibility.\"\n },\n \"JsonWebKey\": {\n \"type\": \"object\",\n \"properties\": {\n \"alg\": {\n \"type\": \"string\"\n },\n \"crv\": {\n \"type\": \"string\"\n },\n \"e\": {\n \"type\": \"string\"\n },\n \"ext\": {\n \"type\": \"boolean\"\n },\n \"key_ops\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"kty\": {\n \"type\": \"string\"\n },\n \"n\": {\n \"type\": \"string\"\n },\n \"use\": {\n \"type\": \"string\"\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"y\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"kty\"\n ],\n \"description\": \"Encapsulates a JSON web key type that includes only the public properties that can be used in DID documents.\\n\\nThe private properties are intentionally omitted to discourage the use (and accidental disclosure) of private keys in DID documents.\"\n },\n \"ConditionWeightedThreshold\": {\n \"type\": \"object\",\n \"properties\": {\n \"condition\": {\n \"$ref\": \"#/components/schemas/VerificationMethod\"\n },\n \"weight\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"condition\",\n \"weight\"\n ],\n \"additionalProperties\": false\n },\n \"Service\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\"\n },\n \"serviceEndpoint\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n }\n }\n ]\n }\n },\n \"required\": [\n \"id\",\n \"type\",\n \"serviceEndpoint\"\n ],\n \"description\": \"Represents a Service entry in a {@link https://www.w3.org/TR/did-core/#did-document-properties | DID document } .\"\n },\n \"ServiceEndpoint\": {\n \"anyOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"$ref\": \"#/components/schemas/Record<string,any>\"\n }\n ],\n \"description\": \"Represents an endpoint of a Service entry in a DID document.\"\n },\n \"DidDocumentJwks\": {\n \"$ref\": \"#/components/schemas/Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36172-36897-st_index.d.ts-0-63936[]>\"\n },\n \"Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36172-36897-st_index.d.ts-0-63936[]>\": {\n \"type\": \"object\",\n \"properties\": {\n \"verificationMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"authentication\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"assertionMethod\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"keyAgreement\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"capabilityInvocation\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n },\n \"capabilityDelegation\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JWK\"\n }\n }\n },\n \"required\": [\n \"verificationMethod\",\n \"authentication\",\n \"assertionMethod\",\n \"keyAgreement\",\n \"capabilityInvocation\",\n \"capabilityDelegation\"\n ],\n \"additionalProperties\": false\n },\n \"Omit<DIDResolutionResult,\\\"didDocument\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\"\n },\n \"Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"@context\": {\n \"anyOf\": [\n {\n \"type\": \"string\",\n \"const\": \"https://w3id.org/did-resolution/v1\"\n },\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n ]\n },\n \"didResolutionMetadata\": {\n \"$ref\": \"#/components/schemas/DIDResolutionMetadata\"\n },\n \"didDocumentMetadata\": {\n \"$ref\": \"#/components/schemas/DIDDocumentMetadata\"\n }\n },\n \"required\": [\n \"didResolutionMetadata\",\n \"didDocumentMetadata\"\n ],\n \"additionalProperties\": false\n },\n \"DIDResolutionMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"contentType\": {\n \"type\": \"string\"\n },\n \"error\": {\n \"type\": \"string\"\n }\n },\n \"description\": \"Encapsulates the resolution metadata resulting from a {@link Resolvable.resolve } operation.\"\n },\n \"DIDDocumentMetadata\": {\n \"type\": \"object\",\n \"properties\": {\n \"created\": {\n \"type\": \"string\"\n },\n \"updated\": {\n \"type\": \"string\"\n },\n \"deactivated\": {\n \"type\": \"boolean\"\n },\n \"versionId\": {\n \"type\": \"string\"\n },\n \"nextUpdate\": {\n \"type\": \"string\"\n },\n \"nextVersionId\": {\n \"type\": \"string\"\n },\n \"equivalentId\": {\n \"type\": \"string\"\n },\n \"canonicalId\": {\n \"type\": \"string\"\n }\n },\n \"description\": \"Represents metadata about the DID document resulting from a {@link Resolvable.resolve } operation.\"\n },\n \"IParsedDID\": {\n \"type\": \"object\",\n \"properties\": {\n \"did\": {\n \"type\": \"string\"\n },\n \"didUrl\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n },\n \"path\": {\n \"type\": \"string\"\n },\n \"fragment\": {\n \"type\": \"string\"\n },\n \"query\": {\n \"type\": \"string\"\n },\n \"params\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n }\n },\n \"required\": [\n \"did\",\n \"didUrl\",\n \"method\",\n \"id\"\n ],\n \"additionalProperties\": false\n },\n \"X509ValidationResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"error\": {\n \"type\": \"boolean\"\n },\n \"critical\": {\n \"type\": \"boolean\"\n },\n \"message\": {\n \"type\": \"string\"\n },\n \"detailMessage\": {\n \"type\": \"string\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"certificateChain\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/CertificateInfo\"\n }\n },\n \"trustAnchor\": {\n \"$ref\": \"#/components/schemas/CertificateInfo\"\n },\n \"client\": {\n \"type\": \"object\",\n \"properties\": {\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n }\n },\n \"required\": [\n \"clientId\",\n \"clientIdScheme\"\n ],\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"error\",\n \"critical\",\n \"message\",\n \"verificationTime\"\n ],\n \"additionalProperties\": false\n },\n \"CertificateInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"certificate\": {},\n \"notBefore\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"notAfter\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"publicKeyJWK\": {},\n \"issuer\": {\n \"type\": \"object\",\n \"properties\": {\n \"dn\": {\n \"$ref\": \"#/components/schemas/DNInfo\"\n }\n },\n \"required\": [\n \"dn\"\n ],\n \"additionalProperties\": false\n },\n \"subject\": {\n \"type\": \"object\",\n \"properties\": {\n \"dn\": {\n \"$ref\": \"#/components/schemas/DNInfo\"\n },\n \"subjectAlternativeNames\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/SubjectAlternativeName\"\n }\n }\n },\n \"required\": [\n \"dn\",\n \"subjectAlternativeNames\"\n ],\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"notBefore\",\n \"notAfter\",\n \"issuer\",\n \"subject\"\n ],\n \"additionalProperties\": false\n },\n \"DNInfo\": {\n \"type\": \"object\",\n \"properties\": {\n \"DN\": {\n \"type\": \"string\"\n },\n \"attributes\": {\n \"$ref\": \"#/components/schemas/Record<string,string>\"\n }\n },\n \"required\": [\n \"DN\",\n \"attributes\"\n ],\n \"additionalProperties\": false\n },\n \"Record<string,string>\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n },\n \"SubjectAlternativeName\": {\n \"type\": \"object\",\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"$ref\": \"#/components/schemas/SubjectAlternativeGeneralName\"\n }\n },\n \"required\": [\n \"value\",\n \"type\"\n ],\n \"additionalProperties\": false\n },\n \"SubjectAlternativeGeneralName\": {\n \"type\": \"number\",\n \"enum\": [\n 1,\n 2,\n 6,\n 7\n ],\n \"description\": \"otherName [0] OtherName, rfc822Name [1] IA5String, dNSName [2] IA5String, x400Address [3] ORAddress, directoryName [4] Name, ediPartyName [5] EDIPartyName, uniformResourceIdentifier [6] IA5String, iPAddress [7] OCTET STRING, registeredID [8] OBJECT IDENTIFIER }\"\n },\n \"ExternalIdentifierX5cResult\": {\n \"type\": \"object\",\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ],\n \"additionalProperties\": false\n },\n \"TrustedAnchor\": {\n \"type\": \"string\"\n },\n \"Record<TrustedAnchor,ErrorMessage>\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": \"#/components/schemas/ErrorMessage\"\n }\n },\n \"ErrorMessage\": {\n \"type\": \"string\"\n },\n \"JwtPayload\": {\n \"type\": \"object\",\n \"properties\": {\n \"iss\": {\n \"type\": \"string\"\n },\n \"sub\": {\n \"type\": \"string\"\n },\n \"aud\": {\n \"anyOf\": [\n {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"exp\": {\n \"type\": \"number\"\n },\n \"nbf\": {\n \"type\": \"number\"\n },\n \"iat\": {\n \"type\": \"number\"\n },\n \"jti\": {\n \"type\": \"string\"\n }\n },\n \"additionalProperties\": {}\n },\n \"JweAlg\": {\n \"type\": \"string\",\n \"enum\": [\n \"RSA1_5\",\n \"RSA-OAEP\",\n \"RSA-OAEP-256\",\n \"A128KW\",\n \"A192KW\",\n \"A256KW\",\n \"dir\",\n \"ECDH-ES\",\n \"ECDH-ES+A128KW\",\n \"ECDH-ES+A192KW\",\n \"ECDH-ES+A256KW\",\n \"A128GCMKW\",\n \"A192GCMKW\",\n \"A256GCMKW\",\n \"PBES2-HS256+A128KW\",\n \"PBES2-HS384+A192KW\",\n \"PBES2-HS512+A256KW\"\n ]\n },\n \"JweEnc\": {\n \"type\": \"string\",\n \"enum\": [\n \"A128CBC-HS256\",\n \"A192CBC-HS384\",\n \"A256CBC-HS512\",\n \"A128GCM\",\n \"A192GCM\",\n \"A256GCM\"\n ]\n },\n \"PreparedJwsObject\": {\n \"type\": \"object\",\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/PreparedJws\"\n },\n \"b64\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"protectedHeader\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"payload\",\n \"protectedHeader\"\n ],\n \"additionalProperties\": false\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierResult\"\n }\n },\n \"required\": [\n \"jws\",\n \"b64\",\n \"identifier\"\n ],\n \"additionalProperties\": false\n },\n \"PreparedJws\": {\n \"type\": \"object\",\n \"properties\": {\n \"protectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"payload\": {\n \"$ref\": \"#/components/schemas/Uint8Array\"\n },\n \"unprotectedHeader\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"existingSignatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n }\n }\n },\n \"required\": [\n \"protectedHeader\",\n \"payload\"\n ],\n \"additionalProperties\": false\n },\n \"ManagedIdentifierResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"certificate\": {}\n },\n \"required\": [\n \"certificate\",\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"keys\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/IKey\"\n }\n },\n \"verificationMethodSection\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"controllerKeyId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"did\",\n \"identifier\",\n \"issuer\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"keys\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kid\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"jwkThumbprint\": {\n \"type\": \"string\"\n },\n \"kmsKeyRef\": {\n \"type\": \"string\"\n },\n \"method\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n },\n \"opts\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n },\n \"key\": {\n \"$ref\": \"#/components/schemas/IKey\"\n },\n \"kid\": {\n \"type\": \"string\"\n },\n \"issuer\": {\n \"type\": \"string\"\n },\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n },\n {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n }\n },\n \"required\": [\n \"identifier\",\n \"jwk\",\n \"jwkThumbprint\",\n \"key\",\n \"kmsKeyRef\",\n \"method\",\n \"opts\"\n ]\n }\n ]\n },\n \"VerifyJwsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/Jws\"\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"opts\": {\n \"type\": \"object\",\n \"properties\": {\n \"x5c\": {\n \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\"\n },\n \"did\": {\n \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\"\n }\n },\n \"additionalProperties\": false\n }\n },\n \"required\": [\n \"jws\"\n ],\n \"additionalProperties\": false\n },\n \"Jws\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/JwsCompact\"\n },\n {\n \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n },\n {\n \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n }\n ]\n },\n \"Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\"\n },\n \"Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"allowNoTrustAnchorsFound\": {\n \"type\": \"boolean\"\n },\n \"trustRootWhenNoAnchors\": {\n \"type\": \"boolean\"\n },\n \"allowSingleNoCAChainElement\": {\n \"type\": \"boolean\"\n },\n \"blindlyTrustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"disallowReversedChain\": {\n \"type\": \"boolean\"\n },\n \"client\": {\n \"type\": \"object\",\n \"properties\": {\n \"clientId\": {\n \"type\": \"string\"\n },\n \"clientIdScheme\": {\n \"$ref\": \"#/components/schemas/ClientIdScheme\"\n }\n },\n \"required\": [\n \"clientId\",\n \"clientIdScheme\"\n ],\n \"additionalProperties\": false\n },\n \"method\": {\n \"type\": \"string\",\n \"const\": \"x5c\"\n },\n \"verify\": {\n \"type\": \"boolean\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"trustAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"additionalProperties\": false\n },\n \"Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\": {\n \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\"\n },\n \"Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\": {\n \"type\": \"object\",\n \"properties\": {\n \"method\": {\n \"type\": \"string\",\n \"const\": \"did\"\n },\n \"noVerificationMethodFallback\": {\n \"type\": \"boolean\"\n },\n \"vmRelationship\": {\n \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n },\n \"localResolution\": {\n \"type\": \"boolean\"\n },\n \"uniresolverResolution\": {\n \"type\": \"boolean\"\n },\n \"resolverResolution\": {\n \"type\": \"boolean\"\n }\n },\n \"additionalProperties\": false\n },\n \"IJwsValidationResult\": {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"jws\": {\n \"$ref\": \"#/components/schemas/JwsJsonGeneralWithIdentifiers\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"The name of the validation or its subsystem. Mainly used for information purposes. Not assumed to be unique\"\n },\n \"error\": {\n \"type\": \"boolean\",\n \"description\": \"Whether the validation was successful or not\"\n },\n \"critical\": {\n \"type\": \"boolean\",\n \"description\": \"Whether an error can be ignored or not (up to processing logic)\"\n },\n \"message\": {\n \"type\": \"string\",\n \"description\": \"Any status/info message about the validation\"\n },\n \"verificationTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": \"The date and time of the validation\"\n }\n },\n \"required\": [\n \"critical\",\n \"error\",\n \"jws\",\n \"message\",\n \"name\",\n \"verificationTime\"\n ]\n },\n \"JwsJsonGeneralWithIdentifiers\": {\n \"type\": \"object\",\n \"properties\": {\n \"payload\": {\n \"type\": \"string\"\n },\n \"signatures\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/JwsJsonSignatureWithIdentifier\"\n }\n }\n },\n \"required\": [\n \"payload\",\n \"signatures\"\n ],\n \"additionalProperties\": false\n },\n \"JwsJsonSignatureWithIdentifier\": {\n \"type\": \"object\",\n \"properties\": {\n \"protected\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"$ref\": \"#/components/schemas/JwsHeader\"\n },\n \"signature\": {\n \"type\": \"string\"\n },\n \"identifier\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierResult\"\n }\n },\n \"required\": [\n \"identifier\",\n \"protected\",\n \"signature\"\n ],\n \"additionalProperties\": false\n },\n \"ExternalIdentifierResult\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"did\": {\n \"type\": \"string\"\n },\n \"didDocument\": {\n \"$ref\": \"#/components/schemas/DIDDocument\"\n },\n \"didJwks\": {\n \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n },\n \"didResolutionResult\": {\n \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n },\n \"didParsed\": {\n \"$ref\": \"#/components/schemas/IParsedDID\"\n }\n },\n \"required\": [\n \"did\",\n \"didParsed\",\n \"didResolutionResult\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"x5c\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"issuerJWK\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"verificationResult\": {\n \"$ref\": \"#/components/schemas/X509ValidationResult\"\n },\n \"certificates\": {\n \"type\": \"array\",\n \"items\": {}\n }\n },\n \"required\": [\n \"certificates\",\n \"issuerJWK\",\n \"jwks\",\n \"method\",\n \"x5c\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"jwk\": {\n \"$ref\": \"#/components/schemas/JWK\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"jwk\",\n \"jwks\",\n \"method\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"trustedAnchors\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/TrustedAnchor\"\n }\n },\n \"errorList\": {\n \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n },\n \"jwtPayload\": {\n \"$ref\": \"#/components/schemas/JwtPayload\"\n },\n \"trustEstablished\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"jwks\",\n \"method\",\n \"trustEstablished\",\n \"trustedAnchors\"\n ]\n },\n {\n \"type\": \"object\",\n \"additionalProperties\": false,\n \"properties\": {\n \"method\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n },\n \"jwks\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n }\n },\n \"coseKey\": {\n \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n },\n \"x5c\": {\n \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n }\n },\n \"required\": [\n \"coseKey\",\n \"jwks\",\n \"method\"\n ]\n }\n ]\n }\n },\n \"methods\": {\n \"jwtCreateJwsCompactSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsCompactArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtCreateJwsJsonFlattenedSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsFlattenedArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n }\n },\n \"jwtCreateJwsJsonGeneralSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n }\n },\n \"jwtDecryptJweCompactJwt\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/DecryptJweCompactJwtArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtEncryptJweCompactJwt\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/EncryptJweCompactJwtArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/JwtCompactResult\"\n }\n },\n \"jwtPrepareJws\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/PreparedJwsObject\"\n }\n },\n \"jwtVerifyJwsSignature\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/VerifyJwsArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/IJwsValidationResult\"\n }\n }\n }\n }\n }\n}","import { Loggers } from '@sphereon/ssi-types'\n\n/**\n * @internal\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\n\nexport const JwtLogger = Loggers.DEFAULT.get('sphereon:sdk:jwt')\n/**\n * @public\n */\nexport { JwtService } from './agent/JwtService'\nexport * from './functions'\nexport * from './types/IJwtService'\n","import { Loggers } from '@sphereon/ssi-types'\nimport type { IAgentPlugin } from '@veramo/core'\nconst logger = Loggers.DEFAULT.get('sphereon:jwt-service')\nimport { importJWK } from 'jose'\n\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString } = u8a\nimport {\n createJwsCompact,\n type CreateJwsCompactArgs,\n type CreateJwsFlattenedArgs,\n type CreateJwsJsonArgs,\n createJwsJsonFlattened,\n createJwsJsonGeneral,\n type DecryptJweCompactJwtArgs,\n type EncryptJweCompactJwtArgs,\n type IJwsValidationResult,\n type IJwtService,\n type IRequiredContext,\n jweAlg,\n jweEnc,\n type JwsJsonFlattened,\n type JwsJsonGeneral,\n type JwtCompactResult,\n JwtLogger,\n type PreparedJwsObject,\n prepareJwsObject,\n schema,\n verifyJws,\n type VerifyJwsArgs,\n} from '..'\nimport { CompactJwtEncrypter } from '../functions/JWE'\n\n/**\n * @public\n */\nexport class JwtService implements IAgentPlugin {\n readonly schema = schema.IJwtService\n readonly methods: IJwtService = {\n jwtPrepareJws: this.jwtPrepareJws.bind(this),\n jwtCreateJwsJsonGeneralSignature: this.jwtCreateJwsJsonGeneralSignature.bind(this),\n jwtCreateJwsJsonFlattenedSignature: this.jwtCreateJwsJsonFlattenedSignature.bind(this),\n jwtCreateJwsCompactSignature: this.jwtCreateJwsCompactSignature.bind(this),\n jwtVerifyJwsSignature: this.jwtVerifyJwsSignature.bind(this),\n jwtEncryptJweCompactJwt: this.jwtEncryptJweCompactJwt.bind(this),\n jwtDecryptJweCompactJwt: this.jwtDecryptJweCompactJwt.bind(this),\n }\n\n private async jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> {\n return await prepareJwsObject(args, context)\n }\n\n private async jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> {\n return await createJwsJsonGeneral(args, context)\n }\n\n private async jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> {\n return await createJwsJsonFlattened(args, context)\n }\n\n private async jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n // We wrap it in a json object for remote REST calls\n return { jwt: await createJwsCompact(args, context) }\n }\n\n private async jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult> {\n return await verifyJws(args, context)\n }\n\n private async jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n const { payload, protectedHeader = { alg: args.alg, enc: args.enc }, recipientKey, issuer, expirationTime, audience } = args\n\n try {\n logger.debug(`JWE Encrypt: ${JSON.stringify(args, null, 2)}`)\n\n const alg = jweAlg(args.alg) ?? jweAlg(protectedHeader.alg) ?? 'ECDH-ES'\n const enc = jweEnc(args.enc) ?? jweEnc(protectedHeader.enc) ?? 'A256GCM'\n const encJwks =\n recipientKey.jwks.length === 1\n ? [recipientKey.jwks[0]]\n : recipientKey.jwks.filter((jwk) => (jwk.kid && (jwk.kid === jwk.jwk.kid || jwk.kid === jwk.jwkThumbprint)) || jwk.jwk.use === 'enc')\n if (encJwks.length === 0) {\n return Promise.reject(Error(`No public JWK found that can be used to encrypt against`))\n }\n const jwkInfo = encJwks[0]\n if (encJwks.length > 0) {\n JwtLogger.warning(`More than one JWK with 'enc' usage found. Selected the first one as no 'kid' was provided`, encJwks)\n }\n if (jwkInfo.jwk.kty?.startsWith('EC') !== true || !alg.startsWith('ECDH')) {\n return Promise.reject(Error(`Currently only ECDH-ES is supported for encryption. JWK alg ${jwkInfo.jwk.kty}, header alg ${alg}`)) // TODO: Probably we support way more already\n }\n const apuVal = protectedHeader.apu ?? args.apu\n const apu = apuVal ? fromString(apuVal, 'base64url') : undefined\n const apvVal = protectedHeader.apv ?? args.apv\n const apv = apvVal ? fromString(apvVal, 'base64url') : undefined\n\n const pubKey = await importJWK(jwkInfo.jwk)\n const encrypter = new CompactJwtEncrypter({\n enc,\n alg,\n keyManagementParams: { apu, apv },\n key: pubKey,\n issuer,\n expirationTime,\n audience,\n })\n\n const jwe = await encrypter.encryptCompactJWT(payload, {})\n return { jwt: jwe }\n } catch (error: any) {\n console.error(`Error encrypting JWE: ${error.message}`, error)\n throw error\n }\n }\n\n private async jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n return { jwt: 'FIXME' }\n }\n}\n","import { defaultRandomSource, randomBytes, type RandomSource } from '@stablelib/random'\nimport { base64ToBytes, bytesToBase64url, decodeBase64url } from '@veramo/utils'\nimport * as jose from 'jose'\nimport type { JWEKeyManagementHeaderParameters, JWTDecryptOptions } from 'jose'\n// // @ts-ignore\n// import type { KeyLike } from 'jose/dist/types/types'\nexport type KeyLike = { type: string }\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString, toString, concat } = u8a\nimport {\n type JweAlg,\n JweAlgs,\n type JweEnc,\n JweEncs,\n type JweHeader,\n type JweJsonGeneral,\n type JweProtectedHeader,\n type JweRecipient,\n type JweRecipientUnprotectedHeader,\n type JwsPayload,\n} from '../types/IJwtService'\n\nexport interface EncryptionResult {\n ciphertext: Uint8Array\n tag: Uint8Array\n iv: Uint8Array\n protectedHeader?: string\n recipients?: JweRecipient[]\n cek?: Uint8Array\n}\n\nexport const generateContentEncryptionKey = async ({\n alg,\n randomSource = defaultRandomSource,\n}: {\n alg: JweEnc\n randomSource?: RandomSource\n}): Promise<Uint8Array> => {\n let length: number\n switch (alg) {\n case 'A128GCM':\n length = 16\n break\n case 'A192GCM':\n length = 24\n break\n case 'A128CBC-HS256':\n case 'A256GCM':\n length = 32\n break\n case 'A192CBC-HS384':\n length = 48\n break\n case 'A256CBC-HS512':\n length = 64\n break\n default:\n length = 32\n }\n return randomBytes(length, randomSource)\n}\n\n/*\nexport const generateContentEncryptionKeyfdsdf = async ({type = 'Secp256r1', ...rest}: {\n type?: Extract<TKeyType, 'Secp256r1' | 'RSA'>,\n kms?: string\n}, context: IAgentContext<ISphereonKeyManager>): Promise<EphemeralPublicKey> => {\n\n const kms = rest.kms ?? await context.agent.keyManagerGetDefaultKeyManagementSystem()\n const key = await context.agent.keyManagerCreate({kms, type, opts: {ephemeral: true}})\n const jwk = toJwkFromKey(key, {use: JwkKeyUse.Encryption, noKidThumbprint: true})\n}\n*/\nexport interface JwtEncrypter {\n alg: string\n enc: string\n encrypt: (payload: JwsPayload, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweEncrypter {\n alg: string\n enc: string\n encrypt: (payload: Uint8Array, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweDecrypter {\n alg: string\n enc: string\n decrypt: (sealed: Uint8Array, iv: Uint8Array, aad?: Uint8Array, recipient?: JweRecipient) => Promise<Uint8Array | null>\n}\n\nfunction jweAssertValid(jwe: JweJsonGeneral) {\n if (!(jwe.protected && jwe.iv && jwe.ciphertext && jwe.tag)) {\n throw Error('JWE is missing properties: protected, iv, ciphertext and/or tag')\n }\n if (jwe.recipients) {\n jwe.recipients.map((recipient: JweRecipient) => {\n if (!(recipient.header && recipient.encrypted_key)) {\n throw Error('Malformed JWE recipients; no header and encrypted key present')\n }\n })\n }\n}\n\nfunction jweEncode({\n ciphertext,\n tag,\n iv,\n protectedHeader,\n recipients,\n aad,\n unprotected,\n}: EncryptionResult & {\n aad?: Uint8Array\n unprotected?: JweHeader\n}): JweJsonGeneral {\n if (!recipients || recipients.length === 0) {\n throw Error(`No recipient found`)\n }\n return {\n ...(unprotected && { unprotected }),\n protected: <string>protectedHeader,\n iv: bytesToBase64url(iv),\n ciphertext: bytesToBase64url(ciphertext),\n ...(tag && { tag: bytesToBase64url(tag) }),\n ...(aad && { aad: bytesToBase64url(aad) }),\n recipients,\n } satisfies JweJsonGeneral\n}\n\nexport class CompactJwtEncrypter implements JweEncrypter {\n private _alg: JweAlg | undefined\n private _enc: JweEnc | undefined\n private _keyManagementParams: JWEKeyManagementHeaderParameters | undefined\n private recipientKey: Uint8Array | jose.KeyLike //,EphemeralPublicKey | BaseJWK;\n private expirationTime\n private issuer: string | undefined\n private audience: string | string[] | undefined\n\n constructor(args: {\n key: Uint8Array | jose.KeyLike /*EphemeralPublicKey | BaseJWK*/\n alg?: JweAlg\n enc?: JweEnc\n keyManagementParams?: JWEKeyManagementHeaderParameters\n expirationTime?: number | string | Date\n issuer?: string\n audience?: string | string[]\n }) {\n if (args?.alg) {\n this._alg = args.alg\n }\n if (args?.enc) {\n this._enc = args.enc\n }\n this._keyManagementParams = args.keyManagementParams\n this.recipientKey = args.key\n this.expirationTime = args.expirationTime\n this.issuer = args.issuer\n this.audience = args.audience\n }\n\n get enc(): string {\n if (!this._enc) {\n throw Error(`enc not set`)\n }\n return this._enc\n }\n\n set enc(value: JweEnc | string) {\n // @ts-ignore\n if (!JweEncs.includes(value)) {\n throw Error(`invalid JWE enc value ${value}`)\n }\n this._enc = value as JweEnc\n }\n\n get alg(): string {\n if (!this._alg) {\n throw Error(`alg not set`)\n }\n return this._alg\n }\n\n set alg(value: JweAlg | string) {\n // @ts-ignore\n if (!JweAlgs.includes(value)) {\n throw Error(`invalid JWE alg value ${value}`)\n }\n this._alg = value as JweAlg\n }\n\n async encryptCompactJWT(payload: JwsPayload, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<string> {\n const protectedHeader = {\n ...jweProtectedHeader,\n alg: jweProtectedHeader.alg ?? this._alg,\n enc: jweProtectedHeader.enc ?? this._enc,\n }\n if (!protectedHeader.alg || !protectedHeader.enc) {\n return Promise.reject(Error(`no 'alg' or 'enc' value set for the protected JWE header!`))\n }\n this.enc = protectedHeader.enc\n this.alg = protectedHeader.alg\n if (payload.exp) {\n this.expirationTime = payload.exp\n }\n if (payload.iss) {\n this.issuer = payload.iss\n }\n if (payload.aud) {\n this.audience = payload.aud\n }\n const encrypt = new jose.EncryptJWT(payload).setProtectedHeader({\n ...protectedHeader,\n alg: this.alg,\n enc: this.enc,\n })\n if (this._alg!.startsWith('ECDH')) {\n if (!this._keyManagementParams) {\n return Promise.reject(Error(`ECDH requires key management params`))\n }\n encrypt.setKeyManagementParameters(this._keyManagementParams!)\n }\n if (this.expirationTime !== undefined) {\n encrypt.setExpirationTime(this.expirationTime)\n }\n\n if (this.issuer) {\n encrypt.setIssuer(this.issuer)\n }\n if (this.audience) {\n encrypt.setAudience(this.audience)\n }\n return await encrypt.encrypt(this.recipientKey)\n }\n\n public static async decryptCompactJWT(jwt: string, key: KeyLike | Uint8Array, options?: JWTDecryptOptions) {\n return await jose.jwtDecrypt(jwt, key, options)\n }\n\n async encrypt(payload: Uint8Array, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<EncryptionResult> {\n const jwt = await this.encryptCompactJWT(JSON.parse(toString(payload)), jweProtectedHeader, aad)\n const [protectedHeader, encryptedKey, ivB64, payloadB64, tagB64] = jwt.split('.')\n //[jwe.protected, jwe.encrypted_key, jwe.iv, jwe.ciphertext, jwe.tag].join('.');\n console.log(`FIXME: TO EncryptionResult`)\n\n return {\n protectedHeader,\n tag: base64ToBytes(tagB64),\n ciphertext: base64ToBytes(payloadB64),\n iv: base64ToBytes(ivB64),\n recipients: [\n {\n //fixme\n // header: protectedHeader,\n ...(encryptedKey && { encrypted_key: encryptedKey }),\n },\n ],\n }\n }\n\n // encryptCek?: ((cek: Uint8Array) => Promise<JweRecipient>) | undefined;\n}\n\nexport async function createJwe(\n cleartext: Uint8Array,\n encrypters: JweEncrypter[],\n protectedHeader: JweProtectedHeader,\n aad?: Uint8Array,\n): Promise<JweJsonGeneral> {\n if (encrypters.length === 0) {\n throw Error('JWE needs at least 1 encryptor')\n }\n if (encrypters.find((enc) => enc.alg === 'dir' || enc.alg === 'ECDH-ES')) {\n if (encrypters.length !== 1) {\n throw Error(`JWE can only do \"dir\" or \"ECDH-ES\" encryption with one key. ${encrypters.length} supplied`)\n }\n const encryptionResult = await encrypters[0].encrypt(cleartext, protectedHeader, aad)\n return jweEncode({ ...encryptionResult, aad })\n } else {\n const tmpEnc = encrypters[0].enc\n if (!encrypters.reduce((acc, encrypter) => acc && encrypter.enc === tmpEnc, true)) {\n throw new Error('invalid_argument: Incompatible encrypters passed')\n }\n let cek: Uint8Array | undefined = undefined\n let jwe: JweJsonGeneral | undefined = undefined\n for (const encrypter of encrypters) {\n if (!cek) {\n const encryptionResult = await encrypter.encrypt(cleartext, protectedHeader, aad)\n cek = encryptionResult.cek\n jwe = jweEncode({ ...encryptionResult, aad })\n } else {\n const recipient = await encrypter.encryptCek?.(cek)\n if (recipient) {\n jwe?.recipients?.push(recipient)\n }\n }\n }\n if (!jwe) {\n throw Error(`No JWE constructed`)\n }\n return jwe\n }\n}\n\n/**\n * Merges all headers, so we get a unified header.\n *\n * @param protectedHeader\n * @param unprotectedHeader\n * @param recipientUnprotectedHeader\n */\nexport function jweMergeHeaders({\n protectedHeader,\n unprotectedHeader,\n recipientUnprotectedHeader,\n}: {\n protectedHeader?: JweProtectedHeader\n unprotectedHeader?: JweHeader\n recipientUnprotectedHeader?: JweRecipientUnprotectedHeader\n}): JweHeader {\n // TODO: Check that all headers/params are disjoint!\n const header = { ...protectedHeader, ...unprotectedHeader, ...recipientUnprotectedHeader }\n\n if (!header.alg || !header.enc) {\n throw Error(`Either 'alg' or 'enc' are missing from the headers`)\n }\n return header as JweHeader\n}\n\nexport async function decryptJwe(jwe: JweJsonGeneral, decrypter: JweDecrypter): Promise<Uint8Array> {\n jweAssertValid(jwe)\n const protectedHeader: JweProtectedHeader = JSON.parse(decodeBase64url(jwe.protected))\n if (protectedHeader?.enc !== decrypter.enc) {\n return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n } else if (!jwe.tag) {\n return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n }\n const sealed = toWebCryptoCiphertext(jwe.ciphertext, jwe.tag)\n const aad = fromString(jwe.aad ? `${jwe.protected}.${jwe.aad}` : jwe.protected)\n let cleartext = null\n if (protectedHeader.alg === 'dir' && decrypter.alg === 'dir') {\n cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad)\n } else if (!jwe.recipients || jwe.recipients.length === 0) {\n throw Error('missing recipients for JWE')\n } else {\n for (let i = 0; !cleartext && i < jwe.recipients.length; i++) {\n const recipient: JweRecipient = jwe.recipients[i]\n recipient.header = { ...recipient.header, ...protectedHeader } as JweRecipientUnprotectedHeader\n if (recipient.header.alg === decrypter.alg) {\n cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad, recipient)\n }\n }\n }\n if (cleartext === null) throw new Error('failure: Failed to decrypt')\n return cleartext\n}\n\nexport function toWebCryptoCiphertext(ciphertext: string, tag: string): Uint8Array {\n return concat([base64ToBytes(ciphertext), base64ToBytes(tag)])\n}\n","import type {\n ExternalIdentifierDidOpts,\n ExternalIdentifierResult,\n ExternalIdentifierX5cOpts,\n IIdentifierResolution,\n ManagedIdentifierOptsOrResult,\n ManagedIdentifierResult,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport type { ClientIdScheme } from '@sphereon/ssi-sdk-ext.x509-utils'\nimport type { BaseJWK, IValidationResult, JoseSignatureAlgorithm, JoseSignatureAlgorithmString, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext, IKeyManager, IPluginMethodMap } from '@veramo/core'\n\nexport type IRequiredContext = IAgentContext<IIdentifierResolution & IKeyManager> // could we still interop with Veramo?\n\nexport const jwtServiceContextMethods: Array<string> = [\n 'jwtPrepareJws',\n 'jwtCreateJwsJsonGeneralSignature',\n 'jwtCreateJwsJsonFlattenedSignature',\n 'jwtCreateJwsCompactSignature',\n 'jwtVerifyJwsSignature',\n 'jwtEncryptJweCompactJwt',\n 'jwtDecryptJweCompactJwt',\n]\n\nexport interface IJwtService extends IPluginMethodMap {\n jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject>\n\n jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral>\n\n jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened>\n\n jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult>\n\n jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n // TODO: JWE/encryption general methods\n}\n\nexport type IJwsValidationResult = IValidationResult & {\n jws: JwsJsonGeneralWithIdentifiers // We always translate to general as that is the most flexible format allowing multiple sigs\n}\n\nexport interface PreparedJws {\n protectedHeader: JwsHeader\n payload: Uint8Array\n unprotectedHeader?: JwsHeader // only for jws json and also then optional\n existingSignatures?: Array<JwsJsonSignature> // only for jws json and also then optional\n}\n\nexport interface JwsJsonSignature {\n protected: string\n header?: JwsHeader\n signature: string\n}\n\n/**\n * The JWK representation of an ephemeral public key.\n * See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\n */\n// todo split into separate objects\nexport type EphemeralPublicKey = Omit<BaseJWK, 'alg'>\n\n// export function isEcJWK(v)\n\nexport interface JweHeader extends Omit<BaseJwtHeader, 'alg'> {\n alg: string\n enc: string\n jku?: string\n jwk?: BaseJWK\n epk?: EphemeralPublicKey\n x5u?: string\n x5c?: string[]\n x5t?: string\n cty?: string\n crit?: string[]\n\n [k: string]: any\n}\n\nexport interface JweRecipientUnprotectedHeader {\n alg: string\n iv: string\n tag: string\n epk?: EphemeralPublicKey\n kid?: string\n apv?: string\n apu?: string\n}\n\nexport interface JweProtectedHeader extends Partial<JweHeader> {\n zip?: 'DEF' | string\n}\n\nexport type Jws = JwsCompact | JwsJsonFlattened | JwsJsonGeneral\n\nexport type JwsCompact = string\n\nexport interface JwsJsonFlattened {\n payload: string\n protected: string\n header?: JwsHeader\n signature: string\n}\n\nexport interface JwsJsonGeneral {\n payload: string\n signatures: Array<JwsJsonSignature>\n}\n\nexport interface JwsJsonGeneralWithIdentifiers extends JwsJsonGeneral {\n signatures: Array<JwsJsonSignatureWithIdentifier>\n}\n\nexport interface JwsJsonSignatureWithIdentifier extends JwsJsonSignature {\n identifier: ExternalIdentifierResult\n}\n\nexport type Jwe = JweCompact | JweJsonFlattened | JweJsonGeneral\nexport type JweCompact = string\n\nexport interface JweJsonFlattened {\n protected: string\n unprotected: JweHeader\n header: JweHeader | JweRecipientUnprotectedHeader\n encrypted_key?: string\n aad?: string\n iv: string\n ciphertext: string\n tag?: string\n}\n\nexport interface JweRecipient {\n header?: JweRecipientUnprotectedHeader\n encrypted_key?: string\n}\n\nexport interface JweJsonGeneral {\n protected: string\n unprotected?: JweHeader\n recipients: Array<JweRecipient>\n aad?: string\n iv: string\n ciphertext: string\n tag?: string\n}\n\nexport interface PreparedJwsObject {\n jws: PreparedJws\n b64: { payload: string; protectedHeader: string } // header is always json, as it can only be used in JwsJson\n identifier: ManagedIdentifierResult\n}\n\nexport interface BaseJwtHeader {\n typ?: string\n alg?: string\n kid?: string\n}\n\nexport interface BaseJwtPayload {\n iss?: string\n sub?: string\n aud?: string[] | string\n exp?: number\n nbf?: number\n iat?: number\n jti?: string\n}\n\nexport interface JwsHeader extends BaseJwtHeader {\n kid?: string\n jwk?: JWK\n x5c?: string[]\n\n [key: string]: unknown\n}\n\nexport interface JwsPayload extends BaseJwtPayload {\n [key: string]: unknown\n}\n\nexport interface JwsHeaderOpts {\n alg: JoseSignatureAlgorithm | JoseSignatureAlgorithmString\n}\n\nexport type JwsIdentifierMode = 'x5c' | 'kid' | 'jwk' | 'did' | 'auto'\n\nexport type EncryptJweCompactJwtArgs = {\n payload: JwsPayload\n protectedHeader?: JweProtectedHeader | undefined\n aad?: Uint8Array | undefined\n recipientKey: ExternalIdentifierResult & { kid?: string }\n alg?: JweAlg\n enc?: JweEnc\n apu?: string // base64url\n apv?: string // base64url\n expirationTime?: number | string | Date\n issuer?: string\n audience?: string | string[]\n}\n\nexport type DecryptJweCompactJwtArgs = {\n jwe: JweCompact\n idOpts: ManagedIdentifierOptsOrResult\n}\n\nexport type CreateJwsArgs = {\n mode?: JwsIdentifierMode\n issuer: ManagedIdentifierOptsOrResult & {\n noIssPayloadUpdate?: boolean\n noIdentifierInHeader?: boolean\n }\n clientId?: string\n clientIdScheme?: ClientIdScheme | 'did' | string\n protectedHeader: JwsHeader\n payload: JwsPayload | Uint8Array | string\n}\n\nexport type CreateJweArgs = {\n mode?: JwsIdentifierMode\n issuer: ManagedIdentifierOptsOrResult & {\n noIssPayloadUpdate?: boolean\n noIdentifierInHeader?: boolean\n }\n protectedHeader: JweProtectedHeader\n encryptedKey: string | EphemeralPublicKey // In case it is a string it is already encrypted; otherwise encrypt //TODO ??\n iv: string\n ciphertext: string\n tag: string\n}\nexport type CreateJwsCompactArgs = CreateJwsArgs\n\nexport type CreateJwsFlattenedArgs = Exclude<CreateJwsJsonArgs, 'existingSignatures'>\n\nexport type VerifyJwsArgs = {\n jws: Jws\n jwk?: JWK // Jwk will be resolved from jws, but you can also provide one\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n}\n\n/**\n * @public\n */\nexport type CreateJwsJsonArgs = CreateJwsArgs & {\n unprotectedHeader?: JwsHeader // only for jws json\n existingSignatures?: Array<JwsJsonSignature> // Only for jws json\n}\n\nexport type CreateJweJsonArgs = CreateJweArgs & {\n unprotectedHeader?: JweHeader\n}\n\n/**\n * @public\n */\nexport interface JwtCompactResult {\n jwt: JwsCompact | JweCompact\n}\n\nexport function isJwsCompact(jws: Jws): jws is JwsCompact {\n return typeof jws === 'string' && jws.split('~')[0].match(COMPACT_JWS_REGEX) !== null\n}\n\nexport function isJweCompact(jwe: Jwe): jwe is JweCompact {\n return typeof jwe === 'string' && jwe.split('~')[0].match(COMPACT_JWE_REGEX) !== null\n}\n\nexport function isJwsJsonFlattened(jws: Jws): jws is JwsJsonFlattened {\n return typeof jws === 'object' && 'signature' in jws && 'protected' in jws && !('ciphertext' in jws)\n}\n\nexport function isJwsJsonGeneral(jws: Jws): jws is JwsJsonGeneral {\n return typeof jws === 'object' && 'signatures' in jws && !('ciphertext' in jws)\n}\n\nexport function isJweJsonFlattened(jwe: Jwe): jwe is JweJsonFlattened {\n return typeof jwe === 'object' && 'signature' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJweJsonGeneral(jwe: Jwe): jwe is JweJsonGeneral {\n return typeof jwe === 'object' && 'signatures' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJwsHeader(header: BaseJwtHeader & Record<string, any>): header is JwsHeader {\n return header && !isJweHeader(header)\n}\n\nexport function isJweHeader(header: BaseJwtHeader & Record<string, any>): header is JweHeader {\n return ('enc' in header && header.enc && jweEnc(header.enc)) || (header.alg && jweAlg(header.alg))\n}\n\nexport const COMPACT_JWS_REGEX = /^([a-zA-Z0-9_=-]+).([a-zA-Z0-9_=-]+)?.([a-zA-Z0-9_=-]+)?$/\nexport const COMPACT_JWE_REGEX = /^([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)?$/\n\nexport const JweAlgs = [\n 'RSA1_5',\n 'RSA-OAEP',\n 'RSA-OAEP-256',\n 'A128KW',\n 'A192KW',\n 'A256KW',\n 'dir',\n 'ECDH-ES' /*interop value*/,\n 'ECDH-ES+A128KW',\n 'ECDH-ES+A192KW',\n 'ECDH-ES+A256KW',\n 'A128GCMKW',\n 'A192GCMKW',\n 'A256GCMKW',\n 'PBES2-HS256+A128KW',\n 'PBES2-HS384+A192KW',\n 'PBES2-HS512+A256KW',\n] as const\nexport type JweAlg = (typeof JweAlgs)[number]\nexport function jweAlg(alg?: string | JweAlg): JweAlg | undefined {\n return JweAlgs.find((supportedVal) => supportedVal === alg)\n}\n\nexport const JweEncs = ['A128CBC-HS256', 'A192CBC-HS384', 'A256CBC-HS512', 'A128GCM', 'A192GCM', 'A256GCM' /*interop value*/] as const\nexport type JweEnc = (typeof JweEncs)[number]\n\nexport function jweEnc(alg?: string | JweEnc): JweEnc | undefined {\n return JweEncs.find((supportedVal) => supportedVal === alg)\n}\n","import { jwkTtoPublicKeyHex } from '@sphereon/ssi-sdk-ext.did-utils'\nimport {\n ensureManagedIdentifierResult,\n type ExternalIdentifierDidOpts,\n type ExternalIdentifierX5cOpts,\n type IIdentifierResolution,\n isManagedIdentifierDidResult,\n isManagedIdentifierX5cResult,\n type ManagedIdentifierMethod,\n type ManagedIdentifierResult,\n resolveExternalJwkIdentifier,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport { keyTypeFromCryptographicSuite, signatureAlgorithmFromKeyType, verifyRawSignature } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { contextHasPlugin } from '@sphereon/ssi-sdk.agent-config'\nimport type { JoseSignatureAlgorithm, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext } from '@veramo/core'\nimport { base64ToBytes, bytesToBase64url, decodeJoseBlob, encodeJoseBlob } from '@veramo/utils'\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nimport type {\n CreateJwsCompactArgs,\n CreateJwsFlattenedArgs,\n CreateJwsJsonArgs,\n IJwsValidationResult,\n IRequiredContext,\n JweHeader,\n Jws,\n JwsCompact,\n JwsHeader,\n JwsIdentifierMode,\n JwsJsonFlattened,\n JwsJsonGeneral,\n JwsJsonGeneralWithIdentifiers,\n JwsJsonSignature,\n JwsJsonSignatureWithIdentifier,\n JwsPayload,\n PreparedJwsObject,\n VerifyJwsArgs,\n} from '../types/IJwtService'\nimport { isJwsCompact, isJwsJsonFlattened, isJwsJsonGeneral } from '../types/IJwtService'\n\nconst { fromString } = u8a\n\nconst payloadToBytes = (payload: string | JwsPayload | Uint8Array): Uint8Array => {\n const isBytes = payload instanceof Uint8Array\n const isString = typeof payload === 'string'\n return isBytes ? payload : isString ? fromString(payload, 'base64url') : fromString(JSON.stringify(payload), 'utf-8')\n}\n\nexport const prepareJwsObject = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> => {\n const { existingSignatures, protectedHeader, unprotectedHeader, issuer, payload, mode = 'auto', clientId, clientIdScheme } = args\n\n const { noIdentifierInHeader = false } = issuer\n const identifier = await ensureManagedIdentifierResult(issuer, context)\n await checkAndUpdateJwsHeader({ mode, identifier, noIdentifierInHeader, header: protectedHeader }, context)\n const isBytes = payload instanceof Uint8Array\n const isString = typeof payload === 'string'\n if (!isBytes && !isString) {\n if (issuer.noIssPayloadUpdate !== true && !payload.iss && identifier.issuer) {\n payload.iss = identifier.issuer\n }\n if (clientIdScheme && !payload.client_id_scheme) {\n payload.client_id_scheme = clientIdScheme\n }\n if (clientId && !payload.client_id) {\n payload.client_id = clientId\n }\n }\n const payloadBytes = payloadToBytes(payload)\n const base64urlHeader = encodeJoseBlob(protectedHeader)\n const base64urlPayload = bytesToBase64url(payloadBytes)\n\n return {\n jws: {\n unprotectedHeader,\n protectedHeader,\n payload: payloadBytes,\n existingSignatures,\n },\n b64: {\n protectedHeader: base64urlHeader,\n payload: base64urlPayload,\n },\n identifier,\n }\n}\n\nexport const createJwsCompact = async (args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwsCompact> => {\n const { protected: protectedHeader, payload, signature } = await createJwsJsonFlattened(args, context)\n return `${protectedHeader}.${payload}.${signature}`\n}\n\nexport const createJwsJsonFlattened = async (args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> => {\n const jws = await createJwsJsonGeneral(args, context)\n if (jws.signatures.length !== 1) {\n return Promise.reject(Error(`JWS flattened signature can only contain 1 signature. Found ${jws.signatures.length}`))\n }\n return {\n ...jws.signatures[0],\n payload: jws.payload,\n } satisfies JwsJsonFlattened\n}\n\nexport const createJwsJsonGeneral = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> => {\n const { payload, protectedHeader, unprotectedHeader, existingSignatures, mode, issuer } = args\n const { b64, identifier } = await prepareJwsObject(\n {\n protectedHeader,\n unprotectedHeader,\n payload,\n existingSignatures,\n issuer,\n mode,\n },\n context,\n )\n\n const alg: string | undefined = protectedHeader.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n\n // const algorithm = await signatureAlgorithmFromKey({ key: identifier.key })\n const signature = await context.agent.keyManagerSign({\n keyRef: identifier.kmsKeyRef,\n data: `${b64.protectedHeader}.${b64.payload}`,\n encoding: undefined,\n algorithm: alg,\n })\n const jsonSignature = {\n protected: b64.protectedHeader,\n header: unprotectedHeader,\n signature,\n } satisfies JwsJsonSignature\n return {\n payload: b64.payload,\n signatures: [...(existingSignatures ?? []), jsonSignature],\n } satisfies JwsJsonGeneral\n}\n\n/**\n * Updates the JWT header to include x5c, kid, jwk objects using the supplied issuer identifier that will be used to sign. If not present will automatically make the header objects available\n * @param mode The type of header to check or include\n * @param identifier The identifier of the signer. This identifier will be used later to sign\n * @param header The JWT header\n * @param noIdentifierInHeader\n * @param context\n */\n\nexport const checkAndUpdateJwsHeader = async (\n {\n mode = 'auto',\n identifier,\n header,\n noIdentifierInHeader = false,\n }: {\n mode?: JwsIdentifierMode\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n header: JwsHeader\n },\n context: IRequiredContext,\n) => {\n // Make sure we have an alg in the header (https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.1)\n header.alg = header.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n if (isIdentifierMode(mode, identifier.method, 'did')) {\n // kid is VM of the DID\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n await checkAndUpdateDidHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'x5c')) {\n // Include the x5c in the header. No kid\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.6\n await checkAndUpdateX5cHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'kid', false)) {\n await checkAndUpdateKidHeader({ header, identifier, noIdentifierInHeader }, context)\n } else if (isIdentifierMode(mode, identifier.method, 'jwk', false)) {\n // Include the JWK in the header as well as its kid if present\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.3\n // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n await checkAndUpdateJwkHeader({ header, identifier, noIdentifierInHeader }, context)\n } else {\n // Better safe than sorry. We could let it pass, but we want to force implementers to make a conscious choice\n return Promise.reject(`Invalid combination of JWS creation mode ${mode} and identifier method ${identifier.method} chosen`)\n }\n}\n\nconst checkAndUpdateX5cHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { x5c } = header\n if (x5c?.length) {\n // let's resolve the provided x5c to be sure\n const x5cIdentifier = await context.agent.identifierManagedGetByX5c({ identifier: x5c })\n if (x5cIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`An x5c header was present, but its issuer public key did not match the provided signing public key!`))\n }\n } else if (!noIdentifierInHeader) {\n if (!isManagedIdentifierX5cResult(identifier)) {\n return Promise.reject(Error('No x5c header in the JWT, but mode was x5c and also no x5x identifier was provided!'))\n } else if (header.jwk || header.kid) {\n return Promise.reject(Error('x5c mode was choosen, but jwk or kid headers were provided. These cannot be used together!'))\n }\n header.x5c = identifier.x5c\n }\n}\n\nconst checkAndUpdateDidHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { kid } = header\n if (kid) {\n // let's resolve the provided x5c to be sure\n const vmIdentifier = await context.agent.identifierManagedGetByDid({ identifier: kid })\n if (vmIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n }\n } else if (!noIdentifierInHeader) {\n if (!isManagedIdentifierDidResult(identifier)) {\n return Promise.reject(Error('No kid header in the JWT, but mode was did and also no DID identifier was provided!'))\n } else if (header.jwk || header.x5c) {\n return Promise.reject(Error('did mode was chosen, but jwk or x5c headers were provided. These cannot be used together!'))\n }\n header.kid = identifier.kid\n }\n}\n\nconst checkAndUpdateJwkHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { jwk } = header\n if (jwk) {\n // let's resolve the provided x5c to be sure\n const jwkIdentifier = await context.agent.identifierManagedGetByJwk({ identifier: jwk as JWK })\n if (jwkIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A jwk header was present, but its value did not match the provided signing jwk or kid!`))\n }\n } else if (!noIdentifierInHeader) {\n // We basically accept everything for this mode, as we can always create JWKs from any key\n if (header.x5c) {\n return Promise.reject(Error('jwk mode was chosen, but x5c headers were provided. These cannot be used together!'))\n }\n header.jwk = identifier.jwk\n }\n}\n\nconst checkAndUpdateKidHeader = async (\n {\n header,\n identifier,\n noIdentifierInHeader = false,\n }: {\n header: JwsHeader | JweHeader\n identifier: ManagedIdentifierResult\n noIdentifierInHeader?: boolean\n },\n context: IRequiredContext,\n) => {\n const { kid } = header\n if (kid) {\n // let's resolve the provided x5c to be sure\n const kidIdentifier = await context.agent.identifierManagedGetByKid({ identifier: kid })\n if (kidIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n }\n } else if (!noIdentifierInHeader) {\n // We basically accept everything for this mode, as we can always create JWKs from any key\n if (header.x5c) {\n return Promise.reject(Error('kid mode was chosen, but x5c headers were provided. These cannot be used together!'))\n }\n header.kid = identifier.kid\n }\n}\n\nconst isIdentifierMode = (mode: JwsIdentifierMode, identifierMethod: ManagedIdentifierMethod, checkMode: JwsIdentifierMode, loose = true) => {\n if (loose && (checkMode === 'jwk' || checkMode === 'kid')) {\n // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n // todo: check the impact on the above expressions, as this will now always return true for the both of them\n return true\n }\n if (mode === checkMode) {\n if (checkMode !== 'auto' && mode !== identifierMethod) {\n throw Error(`Provided mode ${mode} conflicts with identifier method ${identifierMethod}`)\n }\n return true\n }\n // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n return mode === 'auto' && identifierMethod === checkMode\n}\n\nexport const verifyJws = async (args: VerifyJwsArgs, context: IAgentContext<IIdentifierResolution>): Promise<IJwsValidationResult> => {\n const jws = await toJwsJsonGeneralWithIdentifiers(args, context)\n\n let errorMessages: string[] = []\n let index = 0\n await Promise.all(\n jws.signatures.map(async (sigWithId) => {\n // If we have a specific KMS agent plugin that can do the verification prefer that over the generic verification\n index++\n let valid: boolean\n const data = fromString(`${sigWithId.protected}.${jws.payload}`, 'utf-8')\n const jwkInfo = sigWithId.identifier.jwks[0]\n let signatureAlg: JoseSignatureAlgorithm | undefined = undefined\n if (sigWithId.protected.startsWith(`ey`)) {\n const header = decodeJoseBlob(sigWithId.protected)\n signatureAlg = header.alg as JoseSignatureAlgorithm | undefined\n }\n\n if (false && signatureAlg?.startsWith('PS') && contextHasPlugin(context, 'keyManagerVerify')) {\n const publicKeyHex = jwkTtoPublicKeyHex(jwkInfo.jwk)\n valid = await context.agent.keyManagerVerify({\n signature: sigWithId.signature,\n data,\n publicKeyHex,\n type: keyTypeFromCryptographicSuite({ ...(jwkInfo.jwk.crv && { crv: jwkInfo.jwk.crv }), alg: signatureAlg as string }),\n // no kms arg, as the current key manager needs a bit more work\n })\n } else {\n const signature = base64ToBytes(sigWithId.signature)\n valid = await verifyRawSignature({ data, signature, key: jwkInfo.jwk, opts: { signatureAlg: signatureAlg } })\n // }\n }\n if (!valid) {\n errorMessages.push(`Signature ${index} was not valid`)\n }\n return {\n sigWithId,\n valid,\n }\n }),\n )\n const error = errorMessages.length !== 0\n const result = {\n name: 'jws',\n jws,\n error,\n critical: error,\n message: error ? errorMessages.join(', ') : 'Signature validated',\n verificationTime: new Date(),\n } satisfies IJwsValidationResult\n if (error) {\n console.log(`Error verifying jws signature: ` + { ...result })\n }\n return result\n}\n\nexport const toJwsJsonGeneral = async ({ jws }: { jws: Jws }, context: IAgentContext<any>): Promise<JwsJsonGeneral> => {\n let payload: string\n let signatures: JwsJsonSignature[] = []\n\n if (isJwsCompact(jws)) {\n const split = jws.split('.')\n payload = split[1]\n signatures[0] = {\n protected: split[0],\n signature: split[2],\n } satisfies JwsJsonSignature\n } else if (isJwsJsonGeneral(jws)) {\n payload = jws.payload\n signatures = jws.signatures\n } else if (isJwsJsonFlattened(jws)) {\n const { payload: _payload, ...signature } = jws\n payload = _payload\n signatures = [signature]\n } else {\n return Promise.reject(Error(`Invalid JWS supplied`))\n }\n return {\n payload,\n signatures,\n }\n}\n\nasync function resolveExternalIdentifierFromJwsHeader(\n protectedHeader: JwsHeader,\n context: IAgentContext<IIdentifierResolution>,\n args: {\n jws: Jws\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n },\n) {\n if (protectedHeader.x5c) {\n const x5c = protectedHeader.x5c\n return await context.agent.identifierExternalResolveByX5c({\n ...args.opts?.x5c,\n identifier: x5c,\n verify: true,\n })\n } else if (protectedHeader.jwk) {\n const jwk = protectedHeader.jwk\n const x5c = jwk.x5c // todo resolve x5u\n return await context.agent.identifierExternalResolveByJwk({\n identifier: protectedHeader.jwk,\n ...(x5c && {\n x5c: {\n ...args?.opts?.x5c,\n identifier: x5c,\n },\n }),\n })\n } else if (protectedHeader.kid && protectedHeader.kid.startsWith('did:')) {\n return await context.agent.identifierExternalResolveByDid({ ...args?.opts?.did, identifier: protectedHeader.kid })\n } else if (protectedHeader.alg === 'none') {\n return undefined\n } else {\n return Promise.reject(Error(`We can only process DIDs, X.509 certificate chains and JWKs for signature validation at present`))\n }\n}\n\nfunction loadJWK(providedJwk: JWK | undefined, protectedHeader: JwsHeader, jws: JwsJsonGeneral): JWK | undefined {\n if (providedJwk) {\n return providedJwk\n }\n // TODO SDK-47 the identityResolver could handle this as well, but it's a really tiny function\n if (protectedHeader?.typ === 'entity-statement+jwt') {\n const payload = decodeJoseBlob(jws.payload)\n if (!payload?.jwks?.keys?.[0]) {\n throw new Error('Missing or invalid JWK in payload')\n }\n return payload.jwks.keys[0]\n }\n\n return undefined\n}\n\nexport const toJwsJsonGeneralWithIdentifiers = async (\n args: {\n jws: Jws\n jwk?: JWK\n opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n },\n context: IAgentContext<IIdentifierResolution>,\n): Promise<JwsJsonGeneralWithIdentifiers> => {\n const jws = await toJwsJsonGeneral(args, context)\n const signatures = (await Promise.all(\n jws.signatures.map(async (signature) => {\n const protectedHeader: JwsHeader = decodeJoseBlob(signature.protected)\n const jwk = loadJWK(args.jwk, protectedHeader, jws)\n const identifier = jwk\n ? await resolveExternalJwkIdentifier({ identifier: jwk, method: 'jwk' }, context)\n : await resolveExternalIdentifierFromJwsHeader(protectedHeader, context, args)\n if (identifier !== undefined) {\n return { ...signature, identifier }\n }\n return undefined\n }),\n )) as Array<JwsJsonSignatureWithIdentifier>\n\n return { payload: jws.payload, signatures }\n}\n"],"mappings":"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","names":["Loggers","Loggers","importJWK","u8a","defaultRandomSource","randomBytes","base64ToBytes","bytesToBase64url","decodeBase64url","jose","u8a","jwtServiceContextMethods","isJwsCompact","jws","split","match","COMPACT_JWS_REGEX","isJweCompact","jwe","COMPACT_JWE_REGEX","isJwsJsonFlattened","isJwsJsonGeneral","isJweJsonFlattened","isJweJsonGeneral","isJwsHeader","header","isJweHeader","enc","jweEnc","alg","jweAlg","JweAlgs","find","supportedVal","JweEncs","fromString","toString","concat","u8a","CompactJwtEncrypter","_alg","_enc","_keyManagementParams","recipientKey","expirationTime","issuer","audience","args","alg","enc","keyManagementParams","key","Error","value","JweEncs","includes","JweAlgs","encryptCompactJWT","payload","jweProtectedHeader","aad","protectedHeader","Promise","reject","exp","iss","aud","encrypt","EncryptJWT","setProtectedHeader","startsWith","setKeyManagementParameters","undefined","setExpirationTime","setIssuer","setAudience","decryptCompactJWT","jwt","options","jwtDecrypt","JSON","parse","toString","encryptedKey","ivB64","payloadB64","tagB64","split","console","log","tag","base64ToBytes","ciphertext","iv","recipients","encrypted_key","logger","Loggers","DEFAULT","get","fromString","u8a","JwtService","schema","IJwtService","methods","jwtPrepareJws","bind","jwtCreateJwsJsonGeneralSignature","jwtCreateJwsJsonFlattenedSignature","jwtCreateJwsCompactSignature","jwtVerifyJwsSignature","jwtEncryptJweCompactJwt","jwtDecryptJweCompactJwt","args","context","prepareJwsObject","createJwsJsonGeneral","createJwsJsonFlattened","jwt","createJwsCompact","verifyJws","payload","protectedHeader","alg","enc","recipientKey","issuer","expirationTime","audience","debug","JSON","stringify","jweAlg","jweEnc","encJwks","jwks","length","filter","jwk","kid","jwkThumbprint","use","Promise","reject","Error","jwkInfo","JwtLogger","warning","kty","startsWith","apuVal","apu","undefined","apvVal","apv","pubKey","importJWK","encrypter","CompactJwtEncrypter","keyManagementParams","key","jwe","encryptCompactJWT","error","console","message","jwkTtoPublicKeyHex","ensureManagedIdentifierResult","isManagedIdentifierDidResult","isManagedIdentifierX5cResult","resolveExternalJwkIdentifier","keyTypeFromCryptographicSuite","signatureAlgorithmFromKeyType","verifyRawSignature","contextHasPlugin","base64ToBytes","bytesToBase64url","decodeJoseBlob","encodeJoseBlob","u8a","fromString","u8a","payloadToBytes","payload","isBytes","Uint8Array","isString","JSON","stringify","prepareJwsObject","args","context","existingSignatures","protectedHeader","unprotectedHeader","issuer","mode","clientId","clientIdScheme","noIdentifierInHeader","identifier","ensureManagedIdentifierResult","checkAndUpdateJwsHeader","header","noIssPayloadUpdate","iss","client_id_scheme","client_id","payloadBytes","base64urlHeader","encodeJoseBlob","base64urlPayload","bytesToBase64url","jws","b64","createJwsCompact","protected","signature","createJwsJsonFlattened","createJwsJsonGeneral","signatures","length","Promise","reject","Error","alg","signatureAlgorithmFromKeyType","type","key","agent","keyManagerSign","keyRef","kmsKeyRef","data","encoding","undefined","algorithm","jsonSignature","isIdentifierMode","method","checkAndUpdateDidHeader","checkAndUpdateX5cHeader","checkAndUpdateKidHeader","checkAndUpdateJwkHeader","x5c","x5cIdentifier","identifierManagedGetByX5c","isManagedIdentifierX5cResult","jwk","kid","vmIdentifier","identifierManagedGetByDid","isManagedIdentifierDidResult","jwkIdentifier","identifierManagedGetByJwk","kidIdentifier","identifierManagedGetByKid","identifierMethod","checkMode","loose","verifyJws","toJwsJsonGeneralWithIdentifiers","errorMessages","index","all","map","sigWithId","valid","jwkInfo","jwks","signatureAlg","startsWith","decodeJoseBlob","publicKeyHex","jwkTtoPublicKeyHex","keyManagerVerify","keyTypeFromCryptographicSuite","crv","base64ToBytes","verifyRawSignature","opts","push","error","result","name","critical","message","join","verificationTime","Date","console","log","toJwsJsonGeneral","isJwsCompact","split","isJwsJsonGeneral","isJwsJsonFlattened","_payload","resolveExternalIdentifierFromJwsHeader","identifierExternalResolveByX5c","verify","identifierExternalResolveByJwk","identifierExternalResolveByDid","did","loadJWK","providedJwk","typ","keys","resolveExternalJwkIdentifier","schema","require","JwtLogger","Loggers","DEFAULT","get"]}