@sphereon/ssi-types 0.32.0 → 0.32.1-feature.MWALL.715.47

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.
@@ -1 +1 @@
1
- {"version":3,"file":"credential-mapper.d.ts","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credential-mapper.d.ts","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
@@ -10,15 +10,12 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  }
11
11
  return t;
12
12
  };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
13
  Object.defineProperty(exports, "__esModule", { value: true });
17
14
  exports.CredentialMapper = void 0;
18
- const jwt_decode_1 = __importDefault(require("jwt-decode"));
19
15
  const types_1 = require("../types");
20
16
  const mso_mdoc_1 = require("../types/mso_mdoc");
21
17
  const utils_1 = require("../utils");
18
+ const jwt_decode_1 = require("jwt-decode");
22
19
  class CredentialMapper {
23
20
  /**
24
21
  * Decodes a compact SD-JWT vc to it's decoded variant. This method can be used when the hasher implementation used is Async, and therefore not suitable for usage
@@ -39,8 +36,8 @@ class CredentialMapper {
39
36
  static decodeVerifiablePresentation(presentation, hasher) {
40
37
  var _a;
41
38
  if (CredentialMapper.isJwtEncoded(presentation)) {
42
- const payload = (0, jwt_decode_1.default)(presentation);
43
- const header = (0, jwt_decode_1.default)(presentation, { header: true });
39
+ const payload = (0, jwt_decode_1.jwtDecode)(presentation);
40
+ const header = (0, jwt_decode_1.jwtDecode)(presentation, { header: true });
44
41
  payload.vp.proof = {
45
42
  type: types_1.IProofType.JwtProof2020,
46
43
  created: payload.nbf,
@@ -87,8 +84,8 @@ class CredentialMapper {
87
84
  static decodeVerifiableCredential(credential, hasher) {
88
85
  var _a;
89
86
  if (CredentialMapper.isJwtEncoded(credential)) {
90
- const payload = (0, jwt_decode_1.default)(credential);
91
- const header = (0, jwt_decode_1.default)(credential, { header: true });
87
+ const payload = (0, jwt_decode_1.jwtDecode)(credential);
88
+ const header = (0, jwt_decode_1.jwtDecode)(credential, { header: true });
92
89
  payload.vc.proof = {
93
90
  type: types_1.IProofType.JwtProof2020,
94
91
  created: payload.nbf,
@@ -276,7 +273,7 @@ class CredentialMapper {
276
273
  }
277
274
  // If the VC is not an encoded/decoded SD-JWT, we assume it will be a W3C VC
278
275
  const proof = CredentialMapper.getFirstProof(verifiableCredential);
279
- const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? (_a = proof.jwt) !== null && _a !== void 0 ? _a : verifiableCredential : verifiableCredential;
276
+ const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? ((_a = proof.jwt) !== null && _a !== void 0 ? _a : verifiableCredential) : verifiableCredential;
280
277
  if (!original) {
281
278
  throw Error('Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof');
282
279
  }
@@ -445,7 +442,7 @@ class CredentialMapper {
445
442
  original.iss !== undefined);
446
443
  }
447
444
  static jwtEncodedPresentationToUniformPresentation(jwt, makeCredentialsUniform = true, opts) {
448
- return CredentialMapper.jwtDecodedPresentationToUniformPresentation((0, jwt_decode_1.default)(jwt), makeCredentialsUniform, opts);
445
+ return CredentialMapper.jwtDecodedPresentationToUniformPresentation((0, jwt_decode_1.jwtDecode)(jwt), makeCredentialsUniform, opts);
449
446
  }
450
447
  static jwtDecodedPresentationToUniformPresentation(decoded, makeCredentialsUniform = true, opts) {
451
448
  const { iss, aud, jti, vp } = decoded, rest = __rest(decoded, ["iss", "aud", "jti", "vp"]);
@@ -542,7 +539,7 @@ class CredentialMapper {
542
539
  return uniformPresentation;
543
540
  }
544
541
  static jwtEncodedCredentialToUniformCredential(jwt, opts) {
545
- return CredentialMapper.jwtDecodedCredentialToUniformCredential((0, jwt_decode_1.default)(jwt), opts);
542
+ return CredentialMapper.jwtDecodedCredentialToUniformCredential((0, jwt_decode_1.jwtDecode)(jwt), opts);
546
543
  }
547
544
  static jwtDecodedCredentialToUniformCredential(decoded, opts) {
548
545
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"credential-mapper.js","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credential-mapper.js","sourceRoot":"","sources":["../../src/mapper/credential-mapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ export interface DcqlQuery {
2
+ credentials: DcqlCredentialQuery[];
3
+ }
4
+ export interface DcqlCredentialQuery {
5
+ id: string;
6
+ format: string;
7
+ alg?: string[];
8
+ claims: DcqlClaim[];
9
+ meta?: Record<string, any>;
10
+ }
11
+ export interface DcqlClaim {
12
+ namespace: string;
13
+ claim_name: string;
14
+ filter?: DcqlFilter;
15
+ }
16
+ export interface DcqlFilter {
17
+ type: 'string' | 'number' | 'boolean';
18
+ pattern?: string;
19
+ minimum?: number;
20
+ maximum?: number;
21
+ }
22
+ export interface DcqlPresentationResult {
23
+ canBeSatisfied: boolean;
24
+ credential_matches: Record<string, DcqlCredentialMatch>;
25
+ invalid_matches?: Record<string, DcqlCredentialMatch>;
26
+ }
27
+ export interface DcqlCredentialMatch {
28
+ success: boolean;
29
+ input_credential_index: number;
30
+ claim_set_index?: number;
31
+ output: any;
32
+ }
33
+ //# sourceMappingURL=dcql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dcql.d.ts","sourceRoot":"","sources":["../../src/types/dcql.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,mBAAmB,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,SAAS,EAAE,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;IACrC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;CACtD;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,GAAG,CAAA;CACZ"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // FIXME Temporary minimal DCQL schema for PD manager, the DcqlQuery used by Animo does not serialize properly (over REST / Veramo)
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=dcql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dcql.js","sourceRoot":"","sources":["../../src/types/dcql.ts"],"names":[],"mappings":";AAAA,mIAAmI"}
@@ -9,4 +9,5 @@ export * from './jose';
9
9
  export * from './cose';
10
10
  export * from './mso_mdoc';
11
11
  export * from './metadata-types';
12
+ export * from './dcql';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,OAAO,CAAA;AACrB,cAAc,MAAM,CAAA;AACpB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,OAAO,CAAA;AACrB,cAAc,MAAM,CAAA;AACpB,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,QAAQ,CAAA"}
@@ -25,4 +25,5 @@ __exportStar(require("./jose"), exports);
25
25
  __exportStar(require("./cose"), exports);
26
26
  __exportStar(require("./mso_mdoc"), exports);
27
27
  __exportStar(require("./metadata-types"), exports);
28
+ __exportStar(require("./dcql"), exports);
28
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,wCAAqB;AACrB,uCAAoB;AACpB,4CAAyB;AACzB,8CAA2B;AAC3B,yDAAsC;AACtC,2CAAwB;AACxB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,mDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,wCAAqB;AACrB,uCAAoB;AACpB,4CAAyB;AACzB,8CAA2B;AAC3B,yDAAsC;AACtC,2CAAwB;AACxB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,mDAAgC;AAChC,yCAAsB"}
@@ -1,8 +1,7 @@
1
- import { AsyncHasher } from './sd-jwt-vc';
2
1
  /**
3
2
  * Represents the metadata associated with a specific SD-JWT VC type.
4
3
  */
5
- interface SdJwtTypeMetadata {
4
+ export interface SdJwtTypeMetadata {
6
5
  /**
7
6
  * REQUIRED. The VC type URI.
8
7
  */
@@ -38,12 +37,50 @@ interface SdJwtTypeMetadata {
38
37
  /**
39
38
  * OPTIONAL. Metadata for the claims within the VC.
40
39
  */
41
- claims?: Array<any>;
40
+ claims?: Array<SdJwtClaimMetadata>;
41
+ }
42
+ /**
43
+ * Represents the metadata associated with a specific SD-JWT claim.
44
+ */
45
+ export interface SdJwtClaimMetadata {
46
+ /**
47
+ * REQUIRED. An array indicating the claim or claims that are being addressed.
48
+ */
49
+ path: Array<SdJwtClaimPath>;
50
+ /**
51
+ * OPTIONAL. Display information for the claim.
52
+ */
53
+ display?: Array<SdJwtClaimDisplayMetadata>;
54
+ /**
55
+ * OPTIONAL. A string indicating whether the claim is selectively disclosable.
56
+ */
57
+ sd?: SdJwtClaimSelectiveDisclosure;
58
+ /**
59
+ * OPTIONAL. A string defining the ID of the claim for reference in the SVG template.
60
+ */
61
+ svg_id?: string;
62
+ }
63
+ /**
64
+ * Represents claim display metadata for a specific language.
65
+ */
66
+ export interface SdJwtClaimDisplayMetadata {
67
+ /**
68
+ * REQUIRED. Language tag for the display information.
69
+ */
70
+ lang: string;
71
+ /**
72
+ * REQUIRED. A human-readable label for the claim, intended for end users.
73
+ */
74
+ label: string;
75
+ /**
76
+ * REQUIRED. A human-readable description for the claim, intended for end users.
77
+ */
78
+ description?: string;
42
79
  }
43
80
  /**
44
81
  * Represents display metadata for a specific language.
45
82
  */
46
- interface SdJwtTypeDisplayMetadata {
83
+ export interface SdJwtTypeDisplayMetadata {
47
84
  /**
48
85
  * REQUIRED. Language tag for the display information.
49
86
  */
@@ -64,7 +101,7 @@ interface SdJwtTypeDisplayMetadata {
64
101
  /**
65
102
  * Contains rendering metadata for different methods.
66
103
  */
67
- interface SdJwtTypeRenderingMetadata {
104
+ export interface SdJwtTypeRenderingMetadata {
68
105
  /**
69
106
  * OPTIONAL. Simple rendering method metadata.
70
107
  */
@@ -77,7 +114,7 @@ interface SdJwtTypeRenderingMetadata {
77
114
  /**
78
115
  * Represents metadata for simple rendering.
79
116
  */
80
- interface SdJwtSimpleRenderingMetadata {
117
+ export interface SdJwtSimpleRenderingMetadata {
81
118
  /**
82
119
  * OPTIONAL. Metadata for the logo image.
83
120
  */
@@ -94,7 +131,7 @@ interface SdJwtSimpleRenderingMetadata {
94
131
  /**
95
132
  * Represents metadata for a logo.
96
133
  */
97
- interface SdJwtLogoMetadata {
134
+ export interface SdJwtLogoMetadata {
98
135
  /**
99
136
  * REQUIRED. URI pointing to the logo image.
100
137
  */
@@ -111,7 +148,7 @@ interface SdJwtLogoMetadata {
111
148
  /**
112
149
  * Represents metadata for SVG templates.
113
150
  */
114
- interface SdJwtSVGTemplateMetadata {
151
+ export interface SdJwtSVGTemplateMetadata {
115
152
  /**
116
153
  * REQUIRED. URI pointing to the SVG template.
117
154
  */
@@ -128,7 +165,7 @@ interface SdJwtSVGTemplateMetadata {
128
165
  /**
129
166
  * Contains properties for SVG templates.
130
167
  */
131
- interface SdJwtSVGTemplateProperties {
168
+ export interface SdJwtSVGTemplateProperties {
132
169
  /**
133
170
  * OPTIONAL. The orientation for which the SVG template is optimized.
134
171
  */
@@ -138,10 +175,17 @@ interface SdJwtSVGTemplateProperties {
138
175
  */
139
176
  color_scheme?: string;
140
177
  }
178
+ /**
179
+ * A string indicates that the respective key is to be selected.
180
+ * A null value indicates that all elements of the currently selected array(s) are to be selected.
181
+ * A non-negative integer indicates that the respective index in an array is to be selected.
182
+ */
183
+ export type SdJwtClaimPath = string | null | number;
184
+ /**
185
+ * always: The Issuer MUST make the claim selectively disclosable.
186
+ * allowed: The Issuer MAY make the claim selectively disclosable.
187
+ * never: The Issuer MUST NOT make the claim selectively disclosable.
188
+ */
189
+ export type SdJwtClaimSelectiveDisclosure = 'always' | 'allowed' | 'never';
141
190
  export type SdJwtTypeHasher = (input: any, alg?: string) => string;
142
- export declare function fetchSdJwtTypeMetadataFromVctUrl(vct: string, opts?: {
143
- hasher?: AsyncHasher;
144
- integrity?: string;
145
- }): Promise<SdJwtTypeMetadata>;
146
- export {};
147
191
  //# sourceMappingURL=sd-jwt-type-metadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-jwt-type-metadata.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC;;GAEG;AACH,UAAU,iBAAiB;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,CAAC,mBAAmB,CAAC,CAAC,EAAE,MAAM,CAAA;IAE9B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,CAAC,sBAAsB,CAAC,CAAC,EAAE,MAAM,CAAA;IAEjC;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAEzC;;OAEG;IAEH,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;CACpB;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,SAAS,CAAC,EAAE,0BAA0B,CAAA;CACvC;AAED;;GAEG;AACH,UAAU,0BAA0B;IAClC;;OAEG;IACH,MAAM,CAAC,EAAE,4BAA4B,CAAA;IAErC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAA;CAC/C;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC;;OAEG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAA;IAExB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,UAAU,wBAAwB;IAChC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,0BAA0B,CAAA;CACxC;AAED;;GAEG;AACH,UAAU,0BAA0B;IAClC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAWD,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,MAAM,CAAA;AAQlE,wBAAsB,gCAAgC,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAanJ"}
1
+ {"version":3,"file":"sd-jwt-type-metadata.d.ts","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":"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"}
@@ -1,84 +1,3 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
2
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.fetchSdJwtTypeMetadataFromVctUrl = fetchSdJwtTypeMetadataFromVctUrl;
36
- const u8a = __importStar(require("uint8arrays"));
37
- // Helper function to fetch API with error handling
38
- function fetchUrlWithErrorHandling(url) {
39
- return __awaiter(this, void 0, void 0, function* () {
40
- const response = yield fetch(url);
41
- if (!response.ok) {
42
- throw new Error(`${response.status}: ${response.statusText}`);
43
- }
44
- return response;
45
- });
46
- }
47
- function validateIntegrity(input, integrityValue, hasher, alg) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const hash = yield hasher(input, alg !== null && alg !== void 0 ? alg : 'sha256');
50
- return u8a.toString(hash, 'utf-8') === integrityValue;
51
- });
52
- }
53
- // Fetch and validate Type Metadata
54
- function fetchSdJwtTypeMetadataFromVctUrl(vct, opts) {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- const url = new URL(vct);
57
- const wellKnownUrl = `${url.origin}/.well-known/vct${url.pathname}`;
58
- const response = yield fetchUrlWithErrorHandling(wellKnownUrl);
59
- const metadata = yield response.json();
60
- assertValidTypeMetadata(metadata, vct);
61
- if ((opts === null || opts === void 0 ? void 0 : opts.integrity) && opts.hasher) {
62
- if (!(yield validateIntegrity(metadata, opts.integrity, opts.hasher))) {
63
- throw new Error('Integrity check failed');
64
- }
65
- }
66
- return metadata;
67
- });
68
- }
69
- function assertValidTypeMetadata(metadata, vct) {
70
- if (metadata.vct !== vct) {
71
- throw new Error('VCT mismatch in metadata and credential');
72
- }
73
- }
74
- /*
75
- // Example usage
76
- try {
77
- const vct = 'https://betelgeuse.example.com/education_credential'
78
- const typeMetadata = await fetchSdJwtTypeMetadataFromVctUrl(vct)
79
- console.log('Type Metadata retrieved successfully:', typeMetadata)
80
- } catch (error) {
81
- console.error('Error fetching type metadata:', error.message)
82
- }
83
- */
84
3
  //# sourceMappingURL=sd-jwt-type-metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-jwt-type-metadata.js","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0LA,4EAaC;AAvMD,iDAAkC;AAyKlC,mDAAmD;AACnD,SAAe,yBAAyB,CAAC,GAAW;;QAClD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;QAC/D,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAID,SAAe,iBAAiB,CAAC,KAAU,EAAE,cAAsB,EAAE,MAAmB,EAAE,GAAY;;QACpG,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,QAAQ,CAAC,CAAA;QACjD,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,cAAc,CAAA;IACvD,CAAC;CAAA;AAED,mCAAmC;AACnC,SAAsB,gCAAgC,CAAC,GAAW,EAAE,IAAmD;;QACrH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QACxB,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,CAAA;QAEnE,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,YAAY,CAAC,CAAA;QAC9D,MAAM,QAAQ,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACzD,uBAAuB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QACtC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,KAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAED,SAAS,uBAAuB,CAAC,QAA2B,EAAE,GAAW;IACvE,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC;AAED;;;;;;;;;EASE"}
1
+ {"version":3,"file":"sd-jwt-type-metadata.js","sourceRoot":"","sources":["../../src/types/sd-jwt-type-metadata.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-types",
3
3
  "description": "SSI Common Types",
4
- "version": "0.32.0",
4
+ "version": "0.32.1-feature.MWALL.715.47+99c3f8e7",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
@@ -13,7 +13,7 @@
13
13
  "@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.26",
14
14
  "debug": "^4.3.5",
15
15
  "events": "^3.3.0",
16
- "jwt-decode": "^3.1.2",
16
+ "jwt-decode": "^4.0.0",
17
17
  "uint8arrays": "3.1.1"
18
18
  },
19
19
  "devDependencies": {
@@ -47,5 +47,5 @@
47
47
  "DIDs"
48
48
  ],
49
49
  "nx": {},
50
- "gitHead": "6585912cbda057506cc459b23285526e53a9bce9"
50
+ "gitHead": "99c3f8e784f7b47c48aa7b0d4f1f270f37c37315"
51
51
  }
@@ -1,5 +1,4 @@
1
1
  import { IssuerType } from '@veramo/core'
2
- import jwt_decode from 'jwt-decode'
3
2
  import {
4
3
  AsyncHasher,
5
4
  decodeMdocDeviceResponse,
@@ -45,6 +44,7 @@ import { getMdocDecodedPayload, MdocDocument } from '../types/mso_mdoc'
45
44
  import { ObjectUtils } from '../utils'
46
45
  import { com } from '@sphereon/kmp-mdoc-core'
47
46
  import DeviceResponseCbor = com.sphereon.mdoc.data.device.DeviceResponseCbor
47
+ import { jwtDecode } from 'jwt-decode'
48
48
 
49
49
  export class CredentialMapper {
50
50
  /**
@@ -66,11 +66,11 @@ export class CredentialMapper {
66
66
  */
67
67
  static decodeVerifiablePresentation(
68
68
  presentation: OriginalVerifiablePresentation,
69
- hasher?: Hasher
69
+ hasher?: Hasher,
70
70
  ): JwtDecodedVerifiablePresentation | IVerifiablePresentation | SdJwtDecodedVerifiableCredential | MdocOid4vpMdocVpToken | MdocDeviceResponse {
71
71
  if (CredentialMapper.isJwtEncoded(presentation)) {
72
- const payload = jwt_decode(presentation as string) as JwtDecodedVerifiablePresentation
73
- const header = jwt_decode(presentation as string, { header: true }) as Record<string, any>
72
+ const payload = jwtDecode(presentation as string) as JwtDecodedVerifiablePresentation
73
+ const header = jwtDecode(presentation as string, { header: true }) as Record<string, any>
74
74
 
75
75
  payload.vp.proof = {
76
76
  type: IProofType.JwtProof2020,
@@ -111,11 +111,11 @@ export class CredentialMapper {
111
111
  */
112
112
  static decodeVerifiableCredential(
113
113
  credential: OriginalVerifiableCredential,
114
- hasher?: Hasher
114
+ hasher?: Hasher,
115
115
  ): JwtDecodedVerifiableCredential | IVerifiableCredential | SdJwtDecodedVerifiableCredential {
116
116
  if (CredentialMapper.isJwtEncoded(credential)) {
117
- const payload = jwt_decode(credential as string) as JwtDecodedVerifiableCredential
118
- const header = jwt_decode(credential as string, { header: true }) as Record<string, any>
117
+ const payload = jwtDecode(credential as string) as JwtDecodedVerifiableCredential
118
+ const header = jwtDecode(credential as string, { header: true }) as Record<string, any>
119
119
  payload.vc.proof = {
120
120
  type: IProofType.JwtProof2020,
121
121
  created: payload.nbf,
@@ -151,7 +151,7 @@ export class CredentialMapper {
151
151
  */
152
152
  static toWrappedVerifiablePresentation(
153
153
  originalPresentation: OriginalVerifiablePresentation,
154
- opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
154
+ opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
155
155
  ): WrappedVerifiablePresentation {
156
156
  // MSO_MDOC
157
157
  if (CredentialMapper.isMsoMdocDecodedPresentation(originalPresentation) || CredentialMapper.isMsoMdocOid4VPEncoded(originalPresentation)) {
@@ -166,7 +166,7 @@ export class CredentialMapper {
166
166
  }
167
167
 
168
168
  const mdocCredentials = deviceResponse.documents?.map(
169
- (doc) => CredentialMapper.toWrappedVerifiableCredential(doc, opts) as WrappedMdocCredential
169
+ (doc) => CredentialMapper.toWrappedVerifiableCredential(doc, opts) as WrappedMdocCredential,
170
170
  )
171
171
  if (!mdocCredentials || mdocCredentials.length === 0) {
172
172
  throw new Error('could not extract any mdoc credentials from mdoc device response')
@@ -209,7 +209,7 @@ export class CredentialMapper {
209
209
  typeof originalPresentation !== 'string' && CredentialMapper.hasJWTProofType(originalPresentation) ? proof?.jwt : originalPresentation
210
210
  if (!original) {
211
211
  throw Error(
212
- 'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof'
212
+ 'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof',
213
213
  )
214
214
  }
215
215
  const decoded = CredentialMapper.decodeVerifiablePresentation(original) as IVerifiablePresentation | JwtDecodedVerifiablePresentation
@@ -237,7 +237,7 @@ export class CredentialMapper {
237
237
  ? []
238
238
  : (CredentialMapper.toWrappedVerifiableCredentials(
239
239
  vp.verifiableCredential ?? [] /*.map(value => value.original)*/,
240
- opts
240
+ opts,
241
241
  ) as WrappedW3CVerifiableCredential[])
242
242
 
243
243
  const presentation = {
@@ -265,7 +265,7 @@ export class CredentialMapper {
265
265
  */
266
266
  static toWrappedVerifiableCredentials(
267
267
  verifiableCredentials: OriginalVerifiableCredential[],
268
- opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
268
+ opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
269
269
  ): WrappedVerifiableCredential[] {
270
270
  return verifiableCredentials.map((vc) => CredentialMapper.toWrappedVerifiableCredential(vc, opts))
271
271
  }
@@ -281,7 +281,7 @@ export class CredentialMapper {
281
281
  */
282
282
  static toWrappedVerifiableCredential(
283
283
  verifiableCredential: OriginalVerifiableCredential,
284
- opts?: { maxTimeSkewInMS?: number; hasher?: Hasher }
284
+ opts?: { maxTimeSkewInMS?: number; hasher?: Hasher },
285
285
  ): WrappedVerifiableCredential {
286
286
  // MSO_MDOC
287
287
  if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential) || CredentialMapper.isMsoMdocOid4VPEncoded(verifiableCredential)) {
@@ -323,10 +323,10 @@ export class CredentialMapper {
323
323
 
324
324
  // If the VC is not an encoded/decoded SD-JWT, we assume it will be a W3C VC
325
325
  const proof = CredentialMapper.getFirstProof(verifiableCredential)
326
- const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? proof.jwt ?? verifiableCredential : verifiableCredential
326
+ const original = CredentialMapper.hasJWTProofType(verifiableCredential) && proof ? (proof.jwt ?? verifiableCredential) : verifiableCredential
327
327
  if (!original) {
328
328
  throw Error(
329
- 'Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof'
329
+ 'Could not determine original credential, probably it was a converted JWT credential, that is now missing the JWT value in the proof',
330
330
  )
331
331
  }
332
332
  const decoded = CredentialMapper.decodeVerifiableCredential(original) as JwtDecodedVerifiableCredential | IVerifiableCredential
@@ -442,7 +442,7 @@ export class CredentialMapper {
442
442
  }
443
443
 
444
444
  public static isW3cPresentation(
445
- presentation: UniformVerifiablePresentation | IPresentation | SdJwtDecodedVerifiableCredential | DeviceResponseCbor
445
+ presentation: UniformVerifiablePresentation | IPresentation | SdJwtDecodedVerifiableCredential | DeviceResponseCbor,
446
446
  ): presentation is IPresentation {
447
447
  return (
448
448
  typeof presentation === 'object' &&
@@ -452,7 +452,7 @@ export class CredentialMapper {
452
452
  }
453
453
 
454
454
  public static isSdJwtDecodedCredentialPayload(
455
- credential: ICredential | SdJwtDecodedVerifiableCredentialPayload
455
+ credential: ICredential | SdJwtDecodedVerifiableCredentialPayload,
456
456
  ): credential is SdJwtDecodedVerifiableCredentialPayload {
457
457
  return typeof credential === 'object' && 'vct' in credential
458
458
  }
@@ -484,7 +484,7 @@ export class CredentialMapper {
484
484
  }
485
485
 
486
486
  public static isSdJwtDecodedCredential(
487
- original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation
487
+ original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation,
488
488
  ): original is SdJwtDecodedVerifiableCredential {
489
489
  return (
490
490
  typeof original === 'object' &&
@@ -493,7 +493,7 @@ export class CredentialMapper {
493
493
  }
494
494
 
495
495
  public static isMsoMdocDecodedCredential(
496
- original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation
496
+ original: OriginalVerifiableCredential | OriginalVerifiablePresentation | ICredential | IPresentation,
497
497
  ): original is MdocDocument {
498
498
  return typeof original === 'object' && 'issuerSigned' in original && (<MdocDocument>original).issuerSigned !== undefined
499
499
  }
@@ -528,15 +528,15 @@ export class CredentialMapper {
528
528
  static jwtEncodedPresentationToUniformPresentation(
529
529
  jwt: string,
530
530
  makeCredentialsUniform: boolean = true,
531
- opts?: { maxTimeSkewInMS?: number }
531
+ opts?: { maxTimeSkewInMS?: number },
532
532
  ): IPresentation {
533
- return CredentialMapper.jwtDecodedPresentationToUniformPresentation(jwt_decode(jwt), makeCredentialsUniform, opts)
533
+ return CredentialMapper.jwtDecodedPresentationToUniformPresentation(jwtDecode(jwt), makeCredentialsUniform, opts)
534
534
  }
535
535
 
536
536
  static jwtDecodedPresentationToUniformPresentation(
537
537
  decoded: JwtDecodedVerifiablePresentation,
538
538
  makeCredentialsUniform: boolean = true,
539
- opts?: { maxTimeSkewInMS?: number }
539
+ opts?: { maxTimeSkewInMS?: number },
540
540
  ): IVerifiablePresentation {
541
541
  const { iss, aud, jti, vp, ...rest } = decoded
542
542
 
@@ -583,7 +583,7 @@ export class CredentialMapper {
583
583
  opts?: {
584
584
  maxTimeSkewInMS?: number
585
585
  hasher?: Hasher
586
- }
586
+ },
587
587
  ): IVerifiableCredential {
588
588
  if (CredentialMapper.isMsoMdocDecodedCredential(verifiableCredential)) {
589
589
  return mdocDecodedCredentialToUniformCredential(verifiableCredential)
@@ -597,7 +597,7 @@ export class CredentialMapper {
597
597
  : verifiableCredential
598
598
  if (!original) {
599
599
  throw Error(
600
- 'Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore'
600
+ 'Could not determine original credential from passed in credential. Probably because a JWT proof type was present, but now is not available anymore',
601
601
  )
602
602
  }
603
603
  const decoded = CredentialMapper.decodeVerifiableCredential(original, opts?.hasher)
@@ -620,7 +620,7 @@ export class CredentialMapper {
620
620
 
621
621
  static toUniformPresentation(
622
622
  presentation: OriginalVerifiablePresentation,
623
- opts?: { maxTimeSkewInMS?: number; addContextIfMissing?: boolean; hasher?: Hasher }
623
+ opts?: { maxTimeSkewInMS?: number; addContextIfMissing?: boolean; hasher?: Hasher },
624
624
  ): IVerifiablePresentation {
625
625
  if (CredentialMapper.isSdJwtDecodedCredential(presentation)) {
626
626
  throw new Error('Converting SD-JWT VC to uniform VP is not supported.')
@@ -632,7 +632,7 @@ export class CredentialMapper {
632
632
  const original = typeof presentation !== 'string' && CredentialMapper.hasJWTProofType(presentation) ? proof?.jwt : presentation
633
633
  if (!original) {
634
634
  throw Error(
635
- 'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof'
635
+ 'Could not determine original presentation, probably it was a converted JWT presentation, that is now missing the JWT value in the proof',
636
636
  )
637
637
  }
638
638
  const decoded = CredentialMapper.decodeVerifiablePresentation(original, opts?.hasher)
@@ -649,7 +649,7 @@ export class CredentialMapper {
649
649
  }
650
650
 
651
651
  uniformPresentation.verifiableCredential = uniformPresentation.verifiableCredential?.map((vc) =>
652
- CredentialMapper.toUniformCredential(vc, opts)
652
+ CredentialMapper.toUniformCredential(vc, opts),
653
653
  ) as IVerifiableCredential[] // We cast it because we IPresentation needs a VC. The internal Credential doesn't have the required Proof anymore (that is intended)
654
654
  return uniformPresentation
655
655
  }
@@ -658,14 +658,14 @@ export class CredentialMapper {
658
658
  jwt: string,
659
659
  opts?: {
660
660
  maxTimeSkewInMS?: number
661
- }
661
+ },
662
662
  ): IVerifiableCredential {
663
- return CredentialMapper.jwtDecodedCredentialToUniformCredential(jwt_decode(jwt), opts)
663
+ return CredentialMapper.jwtDecodedCredentialToUniformCredential(jwtDecode(jwt), opts)
664
664
  }
665
665
 
666
666
  static jwtDecodedCredentialToUniformCredential(
667
667
  decoded: JwtDecodedVerifiableCredential,
668
- opts?: { maxTimeSkewInMS?: number }
668
+ opts?: { maxTimeSkewInMS?: number },
669
669
  ): IVerifiableCredential {
670
670
  const { exp, nbf, iss, vc, sub, jti, ...rest } = decoded
671
671
  const credential: IVerifiableCredential = {
@@ -833,7 +833,7 @@ export class CredentialMapper {
833
833
  }
834
834
 
835
835
  static toCompactJWT(
836
- jwtDocument: W3CVerifiableCredential | JwtDecodedVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiablePresentation | string
836
+ jwtDocument: W3CVerifiableCredential | JwtDecodedVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiablePresentation | string,
837
837
  ): string {
838
838
  if (!jwtDocument || CredentialMapper.detectDocumentType(jwtDocument) !== DocumentFormat.JWT) {
839
839
  throw Error('Cannot convert non JWT credential to JWT')
@@ -863,7 +863,7 @@ export class CredentialMapper {
863
863
  | JwtDecodedVerifiablePresentation
864
864
  | SdJwtDecodedVerifiableCredential
865
865
  | MdocDeviceResponse
866
- | MdocDocument
866
+ | MdocDocument,
867
867
  ): DocumentFormat {
868
868
  if (this.isMsoMdocOid4VPEncoded(document as any) || this.isMsoMdocDecodedCredential(document as any)) {
869
869
  return DocumentFormat.MSO_MDOC
@@ -891,7 +891,7 @@ export class CredentialMapper {
891
891
  }
892
892
 
893
893
  private static hasJWTProofType(
894
- document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation
894
+ document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation,
895
895
  ): boolean {
896
896
  if (typeof document === 'string') {
897
897
  return false
@@ -900,7 +900,7 @@ export class CredentialMapper {
900
900
  }
901
901
 
902
902
  private static getFirstProof(
903
- document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation
903
+ document: W3CVerifiableCredential | W3CVerifiablePresentation | JwtDecodedVerifiableCredential | JwtDecodedVerifiablePresentation,
904
904
  ): IProof | undefined {
905
905
  if (!document || typeof document === 'string') {
906
906
  return undefined
@@ -0,0 +1,39 @@
1
+ // FIXME Temporary minimal DCQL schema for PD manager, the DcqlQuery used by Animo does not serialize properly (over REST / Veramo)
2
+
3
+ export interface DcqlQuery {
4
+ credentials: DcqlCredentialQuery[]
5
+ }
6
+
7
+ export interface DcqlCredentialQuery {
8
+ id: string
9
+ format: string
10
+ alg?: string[]
11
+ claims: DcqlClaim[]
12
+ meta?: Record<string, any>
13
+ }
14
+
15
+ export interface DcqlClaim {
16
+ namespace: string
17
+ claim_name: string
18
+ filter?: DcqlFilter
19
+ }
20
+
21
+ export interface DcqlFilter {
22
+ type: 'string' | 'number' | 'boolean'
23
+ pattern?: string
24
+ minimum?: number
25
+ maximum?: number
26
+ }
27
+
28
+ export interface DcqlPresentationResult {
29
+ canBeSatisfied: boolean
30
+ credential_matches: Record<string, DcqlCredentialMatch>
31
+ invalid_matches?: Record<string, DcqlCredentialMatch>
32
+ }
33
+
34
+ export interface DcqlCredentialMatch {
35
+ success: boolean
36
+ input_credential_index: number
37
+ claim_set_index?: number
38
+ output: any
39
+ }
@@ -9,3 +9,4 @@ export * from './jose'
9
9
  export * from './cose'
10
10
  export * from './mso_mdoc'
11
11
  export * from './metadata-types'
12
+ export * from './dcql'
@@ -108,7 +108,7 @@ export function getMdocDecodedPayload(mdoc: MdocDocument): MdocDecodedPayload {
108
108
  ...acc,
109
109
  [item.key]: item.value.value,
110
110
  }),
111
- {}
111
+ {},
112
112
  )
113
113
  }
114
114
 
@@ -146,7 +146,7 @@ export function decodeMdocDeviceResponse(vpToken: MdocOid4vpMdocVpToken): MdocDe
146
146
  export const mdocDecodedCredentialToUniformCredential = (
147
147
  decoded: MdocDocument,
148
148
  // @ts-ignore
149
- opts?: { maxTimeSkewInMS?: number }
149
+ opts?: { maxTimeSkewInMS?: number },
150
150
  ): IVerifiableCredential => {
151
151
  const mdoc = decoded.toJson()
152
152
  const json = mdoc.toJsonDTO<DocumentJson>()
@@ -1,10 +1,7 @@
1
- import * as u8a from 'uint8arrays'
2
- import { AsyncHasher } from './sd-jwt-vc'
3
-
4
1
  /**
5
2
  * Represents the metadata associated with a specific SD-JWT VC type.
6
3
  */
7
- interface SdJwtTypeMetadata {
4
+ export interface SdJwtTypeMetadata {
8
5
  /**
9
6
  * REQUIRED. The VC type URI.
10
7
  */
@@ -48,14 +45,58 @@ interface SdJwtTypeMetadata {
48
45
  /**
49
46
  * OPTIONAL. Metadata for the claims within the VC.
50
47
  */
51
- // TODO:
52
- claims?: Array<any>
48
+ claims?: Array<SdJwtClaimMetadata>
49
+ }
50
+
51
+ /**
52
+ * Represents the metadata associated with a specific SD-JWT claim.
53
+ */
54
+ export interface SdJwtClaimMetadata {
55
+ /**
56
+ * REQUIRED. An array indicating the claim or claims that are being addressed.
57
+ */
58
+ path: Array<SdJwtClaimPath>
59
+
60
+ /**
61
+ * OPTIONAL. Display information for the claim.
62
+ */
63
+ display?: Array<SdJwtClaimDisplayMetadata>
64
+
65
+ /**
66
+ * OPTIONAL. A string indicating whether the claim is selectively disclosable.
67
+ */
68
+ sd?: SdJwtClaimSelectiveDisclosure
69
+
70
+ /**
71
+ * OPTIONAL. A string defining the ID of the claim for reference in the SVG template.
72
+ */
73
+ svg_id?: string
74
+ }
75
+
76
+ /**
77
+ * Represents claim display metadata for a specific language.
78
+ */
79
+ export interface SdJwtClaimDisplayMetadata {
80
+ /**
81
+ * REQUIRED. Language tag for the display information.
82
+ */
83
+ lang: string
84
+
85
+ /**
86
+ * REQUIRED. A human-readable label for the claim, intended for end users.
87
+ */
88
+ label: string
89
+
90
+ /**
91
+ * REQUIRED. A human-readable description for the claim, intended for end users.
92
+ */
93
+ description?: string
53
94
  }
54
95
 
55
96
  /**
56
97
  * Represents display metadata for a specific language.
57
98
  */
58
- interface SdJwtTypeDisplayMetadata {
99
+ export interface SdJwtTypeDisplayMetadata {
59
100
  /**
60
101
  * REQUIRED. Language tag for the display information.
61
102
  */
@@ -80,7 +121,7 @@ interface SdJwtTypeDisplayMetadata {
80
121
  /**
81
122
  * Contains rendering metadata for different methods.
82
123
  */
83
- interface SdJwtTypeRenderingMetadata {
124
+ export interface SdJwtTypeRenderingMetadata {
84
125
  /**
85
126
  * OPTIONAL. Simple rendering method metadata.
86
127
  */
@@ -95,7 +136,7 @@ interface SdJwtTypeRenderingMetadata {
95
136
  /**
96
137
  * Represents metadata for simple rendering.
97
138
  */
98
- interface SdJwtSimpleRenderingMetadata {
139
+ export interface SdJwtSimpleRenderingMetadata {
99
140
  /**
100
141
  * OPTIONAL. Metadata for the logo image.
101
142
  */
@@ -115,7 +156,7 @@ interface SdJwtSimpleRenderingMetadata {
115
156
  /**
116
157
  * Represents metadata for a logo.
117
158
  */
118
- interface SdJwtLogoMetadata {
159
+ export interface SdJwtLogoMetadata {
119
160
  /**
120
161
  * REQUIRED. URI pointing to the logo image.
121
162
  */
@@ -135,7 +176,7 @@ interface SdJwtLogoMetadata {
135
176
  /**
136
177
  * Represents metadata for SVG templates.
137
178
  */
138
- interface SdJwtSVGTemplateMetadata {
179
+ export interface SdJwtSVGTemplateMetadata {
139
180
  /**
140
181
  * REQUIRED. URI pointing to the SVG template.
141
182
  */
@@ -155,7 +196,7 @@ interface SdJwtSVGTemplateMetadata {
155
196
  /**
156
197
  * Contains properties for SVG templates.
157
198
  */
158
- interface SdJwtSVGTemplateProperties {
199
+ export interface SdJwtSVGTemplateProperties {
159
200
  /**
160
201
  * OPTIONAL. The orientation for which the SVG template is optimized.
161
202
  */
@@ -167,51 +208,18 @@ interface SdJwtSVGTemplateProperties {
167
208
  color_scheme?: string
168
209
  }
169
210
 
170
- // Helper function to fetch API with error handling
171
- async function fetchUrlWithErrorHandling(url: string): Promise<Response> {
172
- const response = await fetch(url)
173
- if (!response.ok) {
174
- throw new Error(`${response.status}: ${response.statusText}`)
175
- }
176
- return response
177
- }
178
-
179
- export type SdJwtTypeHasher = (input: any, alg?: string) => string
180
-
181
- async function validateIntegrity(input: any, integrityValue: string, hasher: AsyncHasher, alg?: string): Promise<boolean> {
182
- const hash = await hasher(input, alg ?? 'sha256')
183
- return u8a.toString(hash, 'utf-8') === integrityValue
184
- }
185
-
186
- // Fetch and validate Type Metadata
187
- export async function fetchSdJwtTypeMetadataFromVctUrl(vct: string, opts?: { hasher?: AsyncHasher; integrity?: string }): Promise<SdJwtTypeMetadata> {
188
- const url = new URL(vct)
189
- const wellKnownUrl = `${url.origin}/.well-known/vct${url.pathname}`
190
-
191
- const response = await fetchUrlWithErrorHandling(wellKnownUrl)
192
- const metadata: SdJwtTypeMetadata = await response.json()
193
- assertValidTypeMetadata(metadata, vct)
194
- if (opts?.integrity && opts.hasher) {
195
- if (!(await validateIntegrity(metadata, opts.integrity, opts.hasher))) {
196
- throw new Error('Integrity check failed')
197
- }
198
- }
199
- return metadata
200
- }
211
+ /**
212
+ * A string indicates that the respective key is to be selected.
213
+ * A null value indicates that all elements of the currently selected array(s) are to be selected.
214
+ * A non-negative integer indicates that the respective index in an array is to be selected.
215
+ */
216
+ export type SdJwtClaimPath = string | null | number
201
217
 
202
- function assertValidTypeMetadata(metadata: SdJwtTypeMetadata, vct: string): void {
203
- if (metadata.vct !== vct) {
204
- throw new Error('VCT mismatch in metadata and credential')
205
- }
206
- }
218
+ /**
219
+ * always: The Issuer MUST make the claim selectively disclosable.
220
+ * allowed: The Issuer MAY make the claim selectively disclosable.
221
+ * never: The Issuer MUST NOT make the claim selectively disclosable.
222
+ */
223
+ export type SdJwtClaimSelectiveDisclosure = 'always' | 'allowed' | 'never'
207
224
 
208
- /*
209
- // Example usage
210
- try {
211
- const vct = 'https://betelgeuse.example.com/education_credential'
212
- const typeMetadata = await fetchSdJwtTypeMetadataFromVctUrl(vct)
213
- console.log('Type Metadata retrieved successfully:', typeMetadata)
214
- } catch (error) {
215
- console.error('Error fetching type metadata:', error.message)
216
- }
217
- */
225
+ export type SdJwtTypeHasher = (input: any, alg?: string) => string