@sd-jwt/sd-jwt-vc 0.1.0

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.
@@ -0,0 +1,1106 @@
1
+ import { SDJWTConfig, Verifier, SdJwtPayload, kbPayload, kbHeader, SDJwtInstance, DisclosureFrame, VerifierOptions, SafeVerifyResult } from '@sd-jwt/core';
2
+ import { z } from 'zod';
3
+
4
+ declare const BackgroundImageSchema: z.ZodObject<{
5
+ /** REQUIRED. A URI pointing to the background image. */
6
+ uri: z.ZodString;
7
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
8
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
9
+ }, z.core.$loose>;
10
+ type BackgroundImage = z.infer<typeof BackgroundImageSchema>;
11
+ /**
12
+ * Logo metadata used in rendering a credential.
13
+ */
14
+ declare const LogoSchema: z.ZodObject<{
15
+ /** REQUIRED. A URI pointing to the logo image. */
16
+ uri: z.ZodString;
17
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
18
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
19
+ /** OPTIONAL. A string containing alternative text for the logo image. */
20
+ alt_text: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$loose>;
22
+ type Logo = z.infer<typeof LogoSchema>;
23
+ /**
24
+ * The simple rendering method is intended for applications that do not support SVG.
25
+ */
26
+ declare const SimpleRenderingSchema: z.ZodObject<{
27
+ /** OPTIONAL. Logo metadata to display for the credential. */
28
+ logo: z.ZodOptional<z.ZodObject<{
29
+ /** REQUIRED. A URI pointing to the logo image. */
30
+ uri: z.ZodString;
31
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
32
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
33
+ /** OPTIONAL. A string containing alternative text for the logo image. */
34
+ alt_text: z.ZodOptional<z.ZodString>;
35
+ }, z.core.$loose>>;
36
+ /** OPTIONAL. RGB color value for the credential background (e.g., "#FFFFFF"). */
37
+ background_color: z.ZodOptional<z.ZodString>;
38
+ /** OPTIONAL. RGB color value for the credential text (e.g., "#000000"). */
39
+ text_color: z.ZodOptional<z.ZodString>;
40
+ /** OPTIONAL. An object containing information about the background image to be displayed for the type. */
41
+ background_image: z.ZodOptional<z.ZodObject<{
42
+ /** REQUIRED. A URI pointing to the background image. */
43
+ uri: z.ZodString;
44
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
45
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
46
+ }, z.core.$loose>>;
47
+ }, z.core.$loose>;
48
+ type SimpleRendering = z.infer<typeof SimpleRenderingSchema>;
49
+ /** Enum of valid values for rendering orientation. */
50
+ declare const OrientationSchema: z.ZodEnum<{
51
+ portrait: "portrait";
52
+ landscape: "landscape";
53
+ }>;
54
+ /** Enum of valid values for rendering color schemes. */
55
+ declare const ColorSchemeSchema: z.ZodEnum<{
56
+ light: "light";
57
+ dark: "dark";
58
+ }>;
59
+ /** Enum of valid values for rendering contrast. */
60
+ declare const ContrastSchema: z.ZodEnum<{
61
+ normal: "normal";
62
+ high: "high";
63
+ }>;
64
+ /**
65
+ * Properties that describe the display preferences for an SVG template rendering.
66
+ */
67
+ declare const SvgTemplatePropertiesSchema: z.ZodObject<{
68
+ /** OPTIONAL. Orientation optimized for the template. */
69
+ orientation: z.ZodOptional<z.ZodEnum<{
70
+ portrait: "portrait";
71
+ landscape: "landscape";
72
+ }>>;
73
+ /** OPTIONAL. Color scheme optimized for the template. */
74
+ color_scheme: z.ZodOptional<z.ZodEnum<{
75
+ light: "light";
76
+ dark: "dark";
77
+ }>>;
78
+ /** OPTIONAL. Contrast level optimized for the template. */
79
+ contrast: z.ZodOptional<z.ZodEnum<{
80
+ normal: "normal";
81
+ high: "high";
82
+ }>>;
83
+ }, z.core.$loose>;
84
+ type SvgTemplateProperties = z.infer<typeof SvgTemplatePropertiesSchema>;
85
+ /**
86
+ * SVG rendering metadata containing URI and optional integrity and properties.
87
+ */
88
+ declare const SvgTemplateRenderingSchema: z.ZodObject<{
89
+ /** REQUIRED. A URI pointing to the SVG template. */
90
+ uri: z.ZodString;
91
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
92
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
93
+ /** REQUIRED if more than one SVG template is present. */
94
+ properties: z.ZodOptional<z.ZodObject<{
95
+ /** OPTIONAL. Orientation optimized for the template. */
96
+ orientation: z.ZodOptional<z.ZodEnum<{
97
+ portrait: "portrait";
98
+ landscape: "landscape";
99
+ }>>;
100
+ /** OPTIONAL. Color scheme optimized for the template. */
101
+ color_scheme: z.ZodOptional<z.ZodEnum<{
102
+ light: "light";
103
+ dark: "dark";
104
+ }>>;
105
+ /** OPTIONAL. Contrast level optimized for the template. */
106
+ contrast: z.ZodOptional<z.ZodEnum<{
107
+ normal: "normal";
108
+ high: "high";
109
+ }>>;
110
+ }, z.core.$loose>>;
111
+ }, z.core.$loose>;
112
+ type SvgTemplateRendering = z.infer<typeof SvgTemplateRenderingSchema>;
113
+ /**
114
+ * Rendering metadata, either simple or SVG-based, for a credential.
115
+ */
116
+ declare const RenderingSchema: z.ZodPipe<z.ZodObject<{
117
+ /** OPTIONAL. Simple rendering metadata. */
118
+ simple: z.ZodOptional<z.ZodObject<{
119
+ /** OPTIONAL. Logo metadata to display for the credential. */
120
+ logo: z.ZodOptional<z.ZodObject<{
121
+ /** REQUIRED. A URI pointing to the logo image. */
122
+ uri: z.ZodString;
123
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
124
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
125
+ /** OPTIONAL. A string containing alternative text for the logo image. */
126
+ alt_text: z.ZodOptional<z.ZodString>;
127
+ }, z.core.$loose>>;
128
+ /** OPTIONAL. RGB color value for the credential background (e.g., "#FFFFFF"). */
129
+ background_color: z.ZodOptional<z.ZodString>;
130
+ /** OPTIONAL. RGB color value for the credential text (e.g., "#000000"). */
131
+ text_color: z.ZodOptional<z.ZodString>;
132
+ /** OPTIONAL. An object containing information about the background image to be displayed for the type. */
133
+ background_image: z.ZodOptional<z.ZodObject<{
134
+ /** REQUIRED. A URI pointing to the background image. */
135
+ uri: z.ZodString;
136
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
137
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
138
+ }, z.core.$loose>>;
139
+ }, z.core.$loose>>;
140
+ /** OPTIONAL. Array of SVG template rendering objects. */
141
+ svg_templates: z.ZodOptional<z.ZodArray<z.ZodObject<{
142
+ /** REQUIRED. A URI pointing to the SVG template. */
143
+ uri: z.ZodString;
144
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
145
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
146
+ /** REQUIRED if more than one SVG template is present. */
147
+ properties: z.ZodOptional<z.ZodObject<{
148
+ /** OPTIONAL. Orientation optimized for the template. */
149
+ orientation: z.ZodOptional<z.ZodEnum<{
150
+ portrait: "portrait";
151
+ landscape: "landscape";
152
+ }>>;
153
+ /** OPTIONAL. Color scheme optimized for the template. */
154
+ color_scheme: z.ZodOptional<z.ZodEnum<{
155
+ light: "light";
156
+ dark: "dark";
157
+ }>>;
158
+ /** OPTIONAL. Contrast level optimized for the template. */
159
+ contrast: z.ZodOptional<z.ZodEnum<{
160
+ normal: "normal";
161
+ high: "high";
162
+ }>>;
163
+ }, z.core.$loose>>;
164
+ }, z.core.$loose>>>;
165
+ /**
166
+ * OPTIONAL. Array of SVG template rendering objects.
167
+ * @deprecated use `svg_templates` (plural) instead.
168
+ */
169
+ svg_template: z.ZodOptional<z.ZodArray<z.ZodObject<{
170
+ /** REQUIRED. A URI pointing to the SVG template. */
171
+ uri: z.ZodString;
172
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
173
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
174
+ /** REQUIRED if more than one SVG template is present. */
175
+ properties: z.ZodOptional<z.ZodObject<{
176
+ /** OPTIONAL. Orientation optimized for the template. */
177
+ orientation: z.ZodOptional<z.ZodEnum<{
178
+ portrait: "portrait";
179
+ landscape: "landscape";
180
+ }>>;
181
+ /** OPTIONAL. Color scheme optimized for the template. */
182
+ color_scheme: z.ZodOptional<z.ZodEnum<{
183
+ light: "light";
184
+ dark: "dark";
185
+ }>>;
186
+ /** OPTIONAL. Contrast level optimized for the template. */
187
+ contrast: z.ZodOptional<z.ZodEnum<{
188
+ normal: "normal";
189
+ high: "high";
190
+ }>>;
191
+ }, z.core.$loose>>;
192
+ }, z.core.$loose>>>;
193
+ }, z.core.$loose>, z.ZodTransform<{
194
+ svg_templates: {
195
+ [x: string]: unknown;
196
+ uri: string;
197
+ 'uri#integrity'?: string | undefined;
198
+ properties?: {
199
+ [x: string]: unknown;
200
+ orientation?: "portrait" | "landscape" | undefined;
201
+ color_scheme?: "light" | "dark" | undefined;
202
+ contrast?: "normal" | "high" | undefined;
203
+ } | undefined;
204
+ }[] | undefined;
205
+ simple?: {
206
+ [x: string]: unknown;
207
+ logo?: {
208
+ [x: string]: unknown;
209
+ uri: string;
210
+ 'uri#integrity'?: string | undefined;
211
+ alt_text?: string | undefined;
212
+ } | undefined;
213
+ background_color?: string | undefined;
214
+ text_color?: string | undefined;
215
+ background_image?: {
216
+ [x: string]: unknown;
217
+ uri: string;
218
+ 'uri#integrity'?: string | undefined;
219
+ } | undefined;
220
+ } | undefined;
221
+ }, {
222
+ [x: string]: unknown;
223
+ simple?: {
224
+ [x: string]: unknown;
225
+ logo?: {
226
+ [x: string]: unknown;
227
+ uri: string;
228
+ 'uri#integrity'?: string | undefined;
229
+ alt_text?: string | undefined;
230
+ } | undefined;
231
+ background_color?: string | undefined;
232
+ text_color?: string | undefined;
233
+ background_image?: {
234
+ [x: string]: unknown;
235
+ uri: string;
236
+ 'uri#integrity'?: string | undefined;
237
+ } | undefined;
238
+ } | undefined;
239
+ svg_templates?: {
240
+ [x: string]: unknown;
241
+ uri: string;
242
+ 'uri#integrity'?: string | undefined;
243
+ properties?: {
244
+ [x: string]: unknown;
245
+ orientation?: "portrait" | "landscape" | undefined;
246
+ color_scheme?: "light" | "dark" | undefined;
247
+ contrast?: "normal" | "high" | undefined;
248
+ } | undefined;
249
+ }[] | undefined;
250
+ svg_template?: {
251
+ [x: string]: unknown;
252
+ uri: string;
253
+ 'uri#integrity'?: string | undefined;
254
+ properties?: {
255
+ [x: string]: unknown;
256
+ orientation?: "portrait" | "landscape" | undefined;
257
+ color_scheme?: "light" | "dark" | undefined;
258
+ contrast?: "normal" | "high" | undefined;
259
+ } | undefined;
260
+ }[] | undefined;
261
+ }>>;
262
+ type Rendering = z.infer<typeof RenderingSchema>;
263
+ /**
264
+ * Display metadata associated with a credential type.
265
+ */
266
+ declare const DisplaySchema: z.ZodPipe<z.ZodObject<{
267
+ /**
268
+ * Language tag according to RFC 5646 (e.g., "en", "de").
269
+ * @deprecated - use `locale` instead
270
+ */
271
+ lang: z.ZodOptional<z.ZodString>;
272
+ /**
273
+ * REQUIRED (preferred). Language tag according to RFC 5646.
274
+ * Alias for `lang` - either `lang` or `locale` must be provided.
275
+ */
276
+ locale: z.ZodOptional<z.ZodString>;
277
+ /** REQUIRED. Human-readable name for the credential type. */
278
+ name: z.ZodString;
279
+ /** OPTIONAL. Description of the credential type for end users. */
280
+ description: z.ZodOptional<z.ZodString>;
281
+ /** OPTIONAL. Rendering information (simple or SVG) for the credential. */
282
+ rendering: z.ZodOptional<z.ZodPipe<z.ZodObject<{
283
+ /** OPTIONAL. Simple rendering metadata. */
284
+ simple: z.ZodOptional<z.ZodObject<{
285
+ /** OPTIONAL. Logo metadata to display for the credential. */
286
+ logo: z.ZodOptional<z.ZodObject<{
287
+ /** REQUIRED. A URI pointing to the logo image. */
288
+ uri: z.ZodString;
289
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
290
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
291
+ /** OPTIONAL. A string containing alternative text for the logo image. */
292
+ alt_text: z.ZodOptional<z.ZodString>;
293
+ }, z.core.$loose>>;
294
+ /** OPTIONAL. RGB color value for the credential background (e.g., "#FFFFFF"). */
295
+ background_color: z.ZodOptional<z.ZodString>;
296
+ /** OPTIONAL. RGB color value for the credential text (e.g., "#000000"). */
297
+ text_color: z.ZodOptional<z.ZodString>;
298
+ /** OPTIONAL. An object containing information about the background image to be displayed for the type. */
299
+ background_image: z.ZodOptional<z.ZodObject<{
300
+ /** REQUIRED. A URI pointing to the background image. */
301
+ uri: z.ZodString;
302
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
303
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
304
+ }, z.core.$loose>>;
305
+ }, z.core.$loose>>;
306
+ /** OPTIONAL. Array of SVG template rendering objects. */
307
+ svg_templates: z.ZodOptional<z.ZodArray<z.ZodObject<{
308
+ /** REQUIRED. A URI pointing to the SVG template. */
309
+ uri: z.ZodString;
310
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
311
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
312
+ /** REQUIRED if more than one SVG template is present. */
313
+ properties: z.ZodOptional<z.ZodObject<{
314
+ /** OPTIONAL. Orientation optimized for the template. */
315
+ orientation: z.ZodOptional<z.ZodEnum<{
316
+ portrait: "portrait";
317
+ landscape: "landscape";
318
+ }>>;
319
+ /** OPTIONAL. Color scheme optimized for the template. */
320
+ color_scheme: z.ZodOptional<z.ZodEnum<{
321
+ light: "light";
322
+ dark: "dark";
323
+ }>>;
324
+ /** OPTIONAL. Contrast level optimized for the template. */
325
+ contrast: z.ZodOptional<z.ZodEnum<{
326
+ normal: "normal";
327
+ high: "high";
328
+ }>>;
329
+ }, z.core.$loose>>;
330
+ }, z.core.$loose>>>;
331
+ /**
332
+ * OPTIONAL. Array of SVG template rendering objects.
333
+ * @deprecated use `svg_templates` (plural) instead.
334
+ */
335
+ svg_template: z.ZodOptional<z.ZodArray<z.ZodObject<{
336
+ /** REQUIRED. A URI pointing to the SVG template. */
337
+ uri: z.ZodString;
338
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
339
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
340
+ /** REQUIRED if more than one SVG template is present. */
341
+ properties: z.ZodOptional<z.ZodObject<{
342
+ /** OPTIONAL. Orientation optimized for the template. */
343
+ orientation: z.ZodOptional<z.ZodEnum<{
344
+ portrait: "portrait";
345
+ landscape: "landscape";
346
+ }>>;
347
+ /** OPTIONAL. Color scheme optimized for the template. */
348
+ color_scheme: z.ZodOptional<z.ZodEnum<{
349
+ light: "light";
350
+ dark: "dark";
351
+ }>>;
352
+ /** OPTIONAL. Contrast level optimized for the template. */
353
+ contrast: z.ZodOptional<z.ZodEnum<{
354
+ normal: "normal";
355
+ high: "high";
356
+ }>>;
357
+ }, z.core.$loose>>;
358
+ }, z.core.$loose>>>;
359
+ }, z.core.$loose>, z.ZodTransform<{
360
+ svg_templates: {
361
+ [x: string]: unknown;
362
+ uri: string;
363
+ 'uri#integrity'?: string | undefined;
364
+ properties?: {
365
+ [x: string]: unknown;
366
+ orientation?: "portrait" | "landscape" | undefined;
367
+ color_scheme?: "light" | "dark" | undefined;
368
+ contrast?: "normal" | "high" | undefined;
369
+ } | undefined;
370
+ }[] | undefined;
371
+ simple?: {
372
+ [x: string]: unknown;
373
+ logo?: {
374
+ [x: string]: unknown;
375
+ uri: string;
376
+ 'uri#integrity'?: string | undefined;
377
+ alt_text?: string | undefined;
378
+ } | undefined;
379
+ background_color?: string | undefined;
380
+ text_color?: string | undefined;
381
+ background_image?: {
382
+ [x: string]: unknown;
383
+ uri: string;
384
+ 'uri#integrity'?: string | undefined;
385
+ } | undefined;
386
+ } | undefined;
387
+ }, {
388
+ [x: string]: unknown;
389
+ simple?: {
390
+ [x: string]: unknown;
391
+ logo?: {
392
+ [x: string]: unknown;
393
+ uri: string;
394
+ 'uri#integrity'?: string | undefined;
395
+ alt_text?: string | undefined;
396
+ } | undefined;
397
+ background_color?: string | undefined;
398
+ text_color?: string | undefined;
399
+ background_image?: {
400
+ [x: string]: unknown;
401
+ uri: string;
402
+ 'uri#integrity'?: string | undefined;
403
+ } | undefined;
404
+ } | undefined;
405
+ svg_templates?: {
406
+ [x: string]: unknown;
407
+ uri: string;
408
+ 'uri#integrity'?: string | undefined;
409
+ properties?: {
410
+ [x: string]: unknown;
411
+ orientation?: "portrait" | "landscape" | undefined;
412
+ color_scheme?: "light" | "dark" | undefined;
413
+ contrast?: "normal" | "high" | undefined;
414
+ } | undefined;
415
+ }[] | undefined;
416
+ svg_template?: {
417
+ [x: string]: unknown;
418
+ uri: string;
419
+ 'uri#integrity'?: string | undefined;
420
+ properties?: {
421
+ [x: string]: unknown;
422
+ orientation?: "portrait" | "landscape" | undefined;
423
+ color_scheme?: "light" | "dark" | undefined;
424
+ contrast?: "normal" | "high" | undefined;
425
+ } | undefined;
426
+ }[] | undefined;
427
+ }>>>;
428
+ }, z.core.$loose>, z.ZodTransform<{
429
+ locale: string | undefined;
430
+ name: string;
431
+ description?: string | undefined;
432
+ rendering?: {
433
+ svg_templates: {
434
+ [x: string]: unknown;
435
+ uri: string;
436
+ 'uri#integrity'?: string | undefined;
437
+ properties?: {
438
+ [x: string]: unknown;
439
+ orientation?: "portrait" | "landscape" | undefined;
440
+ color_scheme?: "light" | "dark" | undefined;
441
+ contrast?: "normal" | "high" | undefined;
442
+ } | undefined;
443
+ }[] | undefined;
444
+ simple?: {
445
+ [x: string]: unknown;
446
+ logo?: {
447
+ [x: string]: unknown;
448
+ uri: string;
449
+ 'uri#integrity'?: string | undefined;
450
+ alt_text?: string | undefined;
451
+ } | undefined;
452
+ background_color?: string | undefined;
453
+ text_color?: string | undefined;
454
+ background_image?: {
455
+ [x: string]: unknown;
456
+ uri: string;
457
+ 'uri#integrity'?: string | undefined;
458
+ } | undefined;
459
+ } | undefined;
460
+ } | undefined;
461
+ }, {
462
+ [x: string]: unknown;
463
+ name: string;
464
+ lang?: string | undefined;
465
+ locale?: string | undefined;
466
+ description?: string | undefined;
467
+ rendering?: {
468
+ svg_templates: {
469
+ [x: string]: unknown;
470
+ uri: string;
471
+ 'uri#integrity'?: string | undefined;
472
+ properties?: {
473
+ [x: string]: unknown;
474
+ orientation?: "portrait" | "landscape" | undefined;
475
+ color_scheme?: "light" | "dark" | undefined;
476
+ contrast?: "normal" | "high" | undefined;
477
+ } | undefined;
478
+ }[] | undefined;
479
+ simple?: {
480
+ [x: string]: unknown;
481
+ logo?: {
482
+ [x: string]: unknown;
483
+ uri: string;
484
+ 'uri#integrity'?: string | undefined;
485
+ alt_text?: string | undefined;
486
+ } | undefined;
487
+ background_color?: string | undefined;
488
+ text_color?: string | undefined;
489
+ background_image?: {
490
+ [x: string]: unknown;
491
+ uri: string;
492
+ 'uri#integrity'?: string | undefined;
493
+ } | undefined;
494
+ } | undefined;
495
+ } | undefined;
496
+ }>>;
497
+ type Display = z.infer<typeof DisplaySchema>;
498
+ /**
499
+ * Claim path within the credential's JSON structure.
500
+ * Example: ["address", "street_address"]
501
+ */
502
+ declare const ClaimPathSchema: z.ZodArray<z.ZodNullable<z.ZodString>>;
503
+ type ClaimPath = z.infer<typeof ClaimPathSchema>;
504
+ /**
505
+ * Display metadata for a specific claim.
506
+ */
507
+ declare const ClaimDisplaySchema: z.ZodPipe<z.ZodObject<{
508
+ /**
509
+ * Language tag according to RFC 5646.
510
+ * @deprecated - use `locale` instead
511
+ */
512
+ lang: z.ZodOptional<z.ZodString>;
513
+ /**
514
+ * REQUIRED (preferred). Language tag according to RFC 5646.
515
+ * Alias for `lang` - either `lang` or `locale` must be provided.
516
+ */
517
+ locale: z.ZodOptional<z.ZodString>;
518
+ /** REQUIRED. Human-readable label for the claim. */
519
+ label: z.ZodOptional<z.ZodString>;
520
+ /**
521
+ * Human-readable label for the claim.
522
+ * @deprecated - use `label` instead
523
+ */
524
+ name: z.ZodOptional<z.ZodString>;
525
+ /** OPTIONAL. Description of the claim for end users. */
526
+ description: z.ZodOptional<z.ZodString>;
527
+ }, z.core.$loose>, z.ZodTransform<{
528
+ locale: string | undefined;
529
+ label: string | undefined;
530
+ description?: string | undefined;
531
+ }, {
532
+ [x: string]: unknown;
533
+ lang?: string | undefined;
534
+ locale?: string | undefined;
535
+ label?: string | undefined;
536
+ name?: string | undefined;
537
+ description?: string | undefined;
538
+ }>>;
539
+ type ClaimDisplay = z.infer<typeof ClaimDisplaySchema>;
540
+ /**
541
+ * Indicates whether a claim is selectively disclosable.
542
+ */
543
+ declare const ClaimSelectiveDisclosureSchema: z.ZodEnum<{
544
+ never: "never";
545
+ always: "always";
546
+ allowed: "allowed";
547
+ }>;
548
+ type ClaimSelectiveDisclosure = z.infer<typeof ClaimSelectiveDisclosureSchema>;
549
+ /**
550
+ * Metadata for individual claims in the credential type.
551
+ */
552
+ declare const ClaimSchema: z.ZodObject<{
553
+ /**
554
+ * REQUIRED. Array of one or more paths to the claim in the credential subject.
555
+ * Each path is an array of strings (or null for array elements).
556
+ */
557
+ path: z.ZodArray<z.ZodNullable<z.ZodString>>;
558
+ /** OPTIONAL. Display metadata in multiple languages. */
559
+ display: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodObject<{
560
+ /**
561
+ * Language tag according to RFC 5646.
562
+ * @deprecated - use `locale` instead
563
+ */
564
+ lang: z.ZodOptional<z.ZodString>;
565
+ /**
566
+ * REQUIRED (preferred). Language tag according to RFC 5646.
567
+ * Alias for `lang` - either `lang` or `locale` must be provided.
568
+ */
569
+ locale: z.ZodOptional<z.ZodString>;
570
+ /** REQUIRED. Human-readable label for the claim. */
571
+ label: z.ZodOptional<z.ZodString>;
572
+ /**
573
+ * Human-readable label for the claim.
574
+ * @deprecated - use `label` instead
575
+ */
576
+ name: z.ZodOptional<z.ZodString>;
577
+ /** OPTIONAL. Description of the claim for end users. */
578
+ description: z.ZodOptional<z.ZodString>;
579
+ }, z.core.$loose>, z.ZodTransform<{
580
+ locale: string | undefined;
581
+ label: string | undefined;
582
+ description?: string | undefined;
583
+ }, {
584
+ [x: string]: unknown;
585
+ lang?: string | undefined;
586
+ locale?: string | undefined;
587
+ label?: string | undefined;
588
+ name?: string | undefined;
589
+ description?: string | undefined;
590
+ }>>>>;
591
+ /** OPTIONAL. Controls whether the claim must, may, or must not be selectively disclosed. */
592
+ sd: z.ZodOptional<z.ZodEnum<{
593
+ never: "never";
594
+ always: "always";
595
+ allowed: "allowed";
596
+ }>>;
597
+ /**
598
+ * OPTIONAL. A boolean indicating whether the claim must be present in the Unsecured Payload
599
+ * of the SD-JWT VC. Default is false if not specified.
600
+ */
601
+ mandatory: z.ZodOptional<z.ZodBoolean>;
602
+ /**
603
+ * OPTIONAL. Unique string identifier for referencing the claim in an SVG template.
604
+ * Must consist of alphanumeric characters or underscores and must not start with a digit.
605
+ */
606
+ svg_id: z.ZodOptional<z.ZodString>;
607
+ }, z.core.$loose>;
608
+ type Claim = z.infer<typeof ClaimSchema>;
609
+ /**
610
+ * Type metadata for a specific Verifiable Credential (VC) type.
611
+ * Reference: https://www.ietf.org/archive/id/draft-ietf-oauth-sd-jwt-vc-13.html#name-type-metadata-format
612
+ */
613
+ declare const TypeMetadataFormatSchema: z.ZodObject<{
614
+ /** REQUIRED. A URI uniquely identifying the credential type. */
615
+ vct: z.ZodString;
616
+ /** OPTIONAL. Human-readable name for developers. */
617
+ name: z.ZodOptional<z.ZodString>;
618
+ /** OPTIONAL. Human-readable description for developers. */
619
+ description: z.ZodOptional<z.ZodString>;
620
+ /** OPTIONAL. URI of another type that this one extends. */
621
+ extends: z.ZodOptional<z.ZodString>;
622
+ /** OPTIONAL. Integrity metadata for the 'extends' field. */
623
+ 'extends#integrity': z.ZodOptional<z.ZodString>;
624
+ /** OPTIONAL. Array of localized display metadata for the type. */
625
+ display: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodObject<{
626
+ /**
627
+ * Language tag according to RFC 5646 (e.g., "en", "de").
628
+ * @deprecated - use `locale` instead
629
+ */
630
+ lang: z.ZodOptional<z.ZodString>;
631
+ /**
632
+ * REQUIRED (preferred). Language tag according to RFC 5646.
633
+ * Alias for `lang` - either `lang` or `locale` must be provided.
634
+ */
635
+ locale: z.ZodOptional<z.ZodString>;
636
+ /** REQUIRED. Human-readable name for the credential type. */
637
+ name: z.ZodString;
638
+ /** OPTIONAL. Description of the credential type for end users. */
639
+ description: z.ZodOptional<z.ZodString>;
640
+ /** OPTIONAL. Rendering information (simple or SVG) for the credential. */
641
+ rendering: z.ZodOptional<z.ZodPipe<z.ZodObject<{
642
+ /** OPTIONAL. Simple rendering metadata. */
643
+ simple: z.ZodOptional<z.ZodObject<{
644
+ /** OPTIONAL. Logo metadata to display for the credential. */
645
+ logo: z.ZodOptional<z.ZodObject<{
646
+ /** REQUIRED. A URI pointing to the logo image. */
647
+ uri: z.ZodString;
648
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
649
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
650
+ /** OPTIONAL. A string containing alternative text for the logo image. */
651
+ alt_text: z.ZodOptional<z.ZodString>;
652
+ }, z.core.$loose>>;
653
+ /** OPTIONAL. RGB color value for the credential background (e.g., "#FFFFFF"). */
654
+ background_color: z.ZodOptional<z.ZodString>;
655
+ /** OPTIONAL. RGB color value for the credential text (e.g., "#000000"). */
656
+ text_color: z.ZodOptional<z.ZodString>;
657
+ /** OPTIONAL. An object containing information about the background image to be displayed for the type. */
658
+ background_image: z.ZodOptional<z.ZodObject<{
659
+ /** REQUIRED. A URI pointing to the background image. */
660
+ uri: z.ZodString;
661
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
662
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
663
+ }, z.core.$loose>>;
664
+ }, z.core.$loose>>;
665
+ /** OPTIONAL. Array of SVG template rendering objects. */
666
+ svg_templates: z.ZodOptional<z.ZodArray<z.ZodObject<{
667
+ /** REQUIRED. A URI pointing to the SVG template. */
668
+ uri: z.ZodString;
669
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
670
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
671
+ /** REQUIRED if more than one SVG template is present. */
672
+ properties: z.ZodOptional<z.ZodObject<{
673
+ /** OPTIONAL. Orientation optimized for the template. */
674
+ orientation: z.ZodOptional<z.ZodEnum<{
675
+ portrait: "portrait";
676
+ landscape: "landscape";
677
+ }>>;
678
+ /** OPTIONAL. Color scheme optimized for the template. */
679
+ color_scheme: z.ZodOptional<z.ZodEnum<{
680
+ light: "light";
681
+ dark: "dark";
682
+ }>>;
683
+ /** OPTIONAL. Contrast level optimized for the template. */
684
+ contrast: z.ZodOptional<z.ZodEnum<{
685
+ normal: "normal";
686
+ high: "high";
687
+ }>>;
688
+ }, z.core.$loose>>;
689
+ }, z.core.$loose>>>;
690
+ /**
691
+ * OPTIONAL. Array of SVG template rendering objects.
692
+ * @deprecated use `svg_templates` (plural) instead.
693
+ */
694
+ svg_template: z.ZodOptional<z.ZodArray<z.ZodObject<{
695
+ /** REQUIRED. A URI pointing to the SVG template. */
696
+ uri: z.ZodString;
697
+ /** OPTIONAL. An "integrity metadata" string as described in Section 7. */
698
+ 'uri#integrity': z.ZodOptional<z.ZodString>;
699
+ /** REQUIRED if more than one SVG template is present. */
700
+ properties: z.ZodOptional<z.ZodObject<{
701
+ /** OPTIONAL. Orientation optimized for the template. */
702
+ orientation: z.ZodOptional<z.ZodEnum<{
703
+ portrait: "portrait";
704
+ landscape: "landscape";
705
+ }>>;
706
+ /** OPTIONAL. Color scheme optimized for the template. */
707
+ color_scheme: z.ZodOptional<z.ZodEnum<{
708
+ light: "light";
709
+ dark: "dark";
710
+ }>>;
711
+ /** OPTIONAL. Contrast level optimized for the template. */
712
+ contrast: z.ZodOptional<z.ZodEnum<{
713
+ normal: "normal";
714
+ high: "high";
715
+ }>>;
716
+ }, z.core.$loose>>;
717
+ }, z.core.$loose>>>;
718
+ }, z.core.$loose>, z.ZodTransform<{
719
+ svg_templates: {
720
+ [x: string]: unknown;
721
+ uri: string;
722
+ 'uri#integrity'?: string | undefined;
723
+ properties?: {
724
+ [x: string]: unknown;
725
+ orientation?: "portrait" | "landscape" | undefined;
726
+ color_scheme?: "light" | "dark" | undefined;
727
+ contrast?: "normal" | "high" | undefined;
728
+ } | undefined;
729
+ }[] | undefined;
730
+ simple?: {
731
+ [x: string]: unknown;
732
+ logo?: {
733
+ [x: string]: unknown;
734
+ uri: string;
735
+ 'uri#integrity'?: string | undefined;
736
+ alt_text?: string | undefined;
737
+ } | undefined;
738
+ background_color?: string | undefined;
739
+ text_color?: string | undefined;
740
+ background_image?: {
741
+ [x: string]: unknown;
742
+ uri: string;
743
+ 'uri#integrity'?: string | undefined;
744
+ } | undefined;
745
+ } | undefined;
746
+ }, {
747
+ [x: string]: unknown;
748
+ simple?: {
749
+ [x: string]: unknown;
750
+ logo?: {
751
+ [x: string]: unknown;
752
+ uri: string;
753
+ 'uri#integrity'?: string | undefined;
754
+ alt_text?: string | undefined;
755
+ } | undefined;
756
+ background_color?: string | undefined;
757
+ text_color?: string | undefined;
758
+ background_image?: {
759
+ [x: string]: unknown;
760
+ uri: string;
761
+ 'uri#integrity'?: string | undefined;
762
+ } | undefined;
763
+ } | undefined;
764
+ svg_templates?: {
765
+ [x: string]: unknown;
766
+ uri: string;
767
+ 'uri#integrity'?: string | undefined;
768
+ properties?: {
769
+ [x: string]: unknown;
770
+ orientation?: "portrait" | "landscape" | undefined;
771
+ color_scheme?: "light" | "dark" | undefined;
772
+ contrast?: "normal" | "high" | undefined;
773
+ } | undefined;
774
+ }[] | undefined;
775
+ svg_template?: {
776
+ [x: string]: unknown;
777
+ uri: string;
778
+ 'uri#integrity'?: string | undefined;
779
+ properties?: {
780
+ [x: string]: unknown;
781
+ orientation?: "portrait" | "landscape" | undefined;
782
+ color_scheme?: "light" | "dark" | undefined;
783
+ contrast?: "normal" | "high" | undefined;
784
+ } | undefined;
785
+ }[] | undefined;
786
+ }>>>;
787
+ }, z.core.$loose>, z.ZodTransform<{
788
+ locale: string | undefined;
789
+ name: string;
790
+ description?: string | undefined;
791
+ rendering?: {
792
+ svg_templates: {
793
+ [x: string]: unknown;
794
+ uri: string;
795
+ 'uri#integrity'?: string | undefined;
796
+ properties?: {
797
+ [x: string]: unknown;
798
+ orientation?: "portrait" | "landscape" | undefined;
799
+ color_scheme?: "light" | "dark" | undefined;
800
+ contrast?: "normal" | "high" | undefined;
801
+ } | undefined;
802
+ }[] | undefined;
803
+ simple?: {
804
+ [x: string]: unknown;
805
+ logo?: {
806
+ [x: string]: unknown;
807
+ uri: string;
808
+ 'uri#integrity'?: string | undefined;
809
+ alt_text?: string | undefined;
810
+ } | undefined;
811
+ background_color?: string | undefined;
812
+ text_color?: string | undefined;
813
+ background_image?: {
814
+ [x: string]: unknown;
815
+ uri: string;
816
+ 'uri#integrity'?: string | undefined;
817
+ } | undefined;
818
+ } | undefined;
819
+ } | undefined;
820
+ }, {
821
+ [x: string]: unknown;
822
+ name: string;
823
+ lang?: string | undefined;
824
+ locale?: string | undefined;
825
+ description?: string | undefined;
826
+ rendering?: {
827
+ svg_templates: {
828
+ [x: string]: unknown;
829
+ uri: string;
830
+ 'uri#integrity'?: string | undefined;
831
+ properties?: {
832
+ [x: string]: unknown;
833
+ orientation?: "portrait" | "landscape" | undefined;
834
+ color_scheme?: "light" | "dark" | undefined;
835
+ contrast?: "normal" | "high" | undefined;
836
+ } | undefined;
837
+ }[] | undefined;
838
+ simple?: {
839
+ [x: string]: unknown;
840
+ logo?: {
841
+ [x: string]: unknown;
842
+ uri: string;
843
+ 'uri#integrity'?: string | undefined;
844
+ alt_text?: string | undefined;
845
+ } | undefined;
846
+ background_color?: string | undefined;
847
+ text_color?: string | undefined;
848
+ background_image?: {
849
+ [x: string]: unknown;
850
+ uri: string;
851
+ 'uri#integrity'?: string | undefined;
852
+ } | undefined;
853
+ } | undefined;
854
+ } | undefined;
855
+ }>>>>;
856
+ /** OPTIONAL. Array of claim metadata. */
857
+ claims: z.ZodOptional<z.ZodArray<z.ZodObject<{
858
+ /**
859
+ * REQUIRED. Array of one or more paths to the claim in the credential subject.
860
+ * Each path is an array of strings (or null for array elements).
861
+ */
862
+ path: z.ZodArray<z.ZodNullable<z.ZodString>>;
863
+ /** OPTIONAL. Display metadata in multiple languages. */
864
+ display: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodObject<{
865
+ /**
866
+ * Language tag according to RFC 5646.
867
+ * @deprecated - use `locale` instead
868
+ */
869
+ lang: z.ZodOptional<z.ZodString>;
870
+ /**
871
+ * REQUIRED (preferred). Language tag according to RFC 5646.
872
+ * Alias for `lang` - either `lang` or `locale` must be provided.
873
+ */
874
+ locale: z.ZodOptional<z.ZodString>;
875
+ /** REQUIRED. Human-readable label for the claim. */
876
+ label: z.ZodOptional<z.ZodString>;
877
+ /**
878
+ * Human-readable label for the claim.
879
+ * @deprecated - use `label` instead
880
+ */
881
+ name: z.ZodOptional<z.ZodString>;
882
+ /** OPTIONAL. Description of the claim for end users. */
883
+ description: z.ZodOptional<z.ZodString>;
884
+ }, z.core.$loose>, z.ZodTransform<{
885
+ locale: string | undefined;
886
+ label: string | undefined;
887
+ description?: string | undefined;
888
+ }, {
889
+ [x: string]: unknown;
890
+ lang?: string | undefined;
891
+ locale?: string | undefined;
892
+ label?: string | undefined;
893
+ name?: string | undefined;
894
+ description?: string | undefined;
895
+ }>>>>;
896
+ /** OPTIONAL. Controls whether the claim must, may, or must not be selectively disclosed. */
897
+ sd: z.ZodOptional<z.ZodEnum<{
898
+ never: "never";
899
+ always: "always";
900
+ allowed: "allowed";
901
+ }>>;
902
+ /**
903
+ * OPTIONAL. A boolean indicating whether the claim must be present in the Unsecured Payload
904
+ * of the SD-JWT VC. Default is false if not specified.
905
+ */
906
+ mandatory: z.ZodOptional<z.ZodBoolean>;
907
+ /**
908
+ * OPTIONAL. Unique string identifier for referencing the claim in an SVG template.
909
+ * Must consist of alphanumeric characters or underscores and must not start with a digit.
910
+ */
911
+ svg_id: z.ZodOptional<z.ZodString>;
912
+ }, z.core.$loose>>>;
913
+ }, z.core.$loose>;
914
+ /**
915
+ * The resolved type metadata. If you just want to use the type metadata, you should use `typeMetadata`.
916
+ * In case additional processing is needed (e.g. for extensions in type metadata), you can use the `typeMetadataChain`
917
+ */
918
+ type ResolvedTypeMetadata = {
919
+ /**
920
+ * The merged type metadata based on the resolved `vct` document and all `extends` values.
921
+ */
922
+ mergedTypeMetadata: TypeMetadataFormat;
923
+ /**
924
+ * The original type metadata documents, ordered from the extending type to the last extended type.
925
+ */
926
+ typeMetadataChain: [TypeMetadataFormat, ...TypeMetadataFormat[]];
927
+ /**
928
+ * The vct values present in the type metadata chain. This can be used for matching against e.g.
929
+ * DCQL queries which can query an underlying type.
930
+ */
931
+ vctValues: [string, ...string[]];
932
+ };
933
+ type TypeMetadataFormat = z.infer<typeof TypeMetadataFormatSchema>;
934
+
935
+ type VCTFetcher = (uri: string, integrity?: string) => Promise<TypeMetadataFormat | undefined>;
936
+
937
+ type StatusListFetcher = (uri: string) => Promise<string>;
938
+ type StatusValidator = (status: number) => Promise<void>;
939
+ /**
940
+ * Configuration for SD-JWT-VC
941
+ */
942
+ type SDJWTVCConfig = SDJWTConfig & {
943
+ statusListFetcher?: StatusListFetcher;
944
+ statusValidator?: StatusValidator;
945
+ vctFetcher?: VCTFetcher;
946
+ statusVerifier?: Verifier;
947
+ loadTypeMetadataFormat?: boolean;
948
+ timeout?: number;
949
+ maxVctExtendsDepth?: number;
950
+ };
951
+
952
+ interface SDJWTVCStatusReference {
953
+ status_list: {
954
+ idx: number;
955
+ uri: string;
956
+ };
957
+ }
958
+
959
+ interface SdJwtVcPayload extends SdJwtPayload {
960
+ iss?: string;
961
+ nbf?: number;
962
+ exp?: number;
963
+ cnf?: unknown;
964
+ vct: string;
965
+ 'vct#integrity'?: string;
966
+ status?: SDJWTVCStatusReference;
967
+ sub?: string;
968
+ iat?: number;
969
+ }
970
+
971
+ type VerificationResult = {
972
+ payload: SdJwtVcPayload;
973
+ header: Record<string, unknown> | undefined;
974
+ kb: {
975
+ payload: kbPayload;
976
+ header: kbHeader;
977
+ } | undefined;
978
+ typeMetadata?: ResolvedTypeMetadata;
979
+ };
980
+
981
+ declare class SDJwtVcInstance extends SDJwtInstance<SdJwtVcPayload> {
982
+ /**
983
+ * The type of the SD-JWT-VC set in the header.typ field.
984
+ */
985
+ protected type: string;
986
+ protected userConfig: SDJWTVCConfig;
987
+ constructor(userConfig?: SDJWTVCConfig);
988
+ /**
989
+ * Validates if the disclosure frame attempts to selectively disclose protected SD-JWT-VC claims.
990
+ * @param disclosureFrame
991
+ */
992
+ protected validateDisclosureFrame(disclosureFrame?: DisclosureFrame<SdJwtVcPayload>): void;
993
+ /**
994
+ * Fetches the status list from the uri with a timeout of 10 seconds.
995
+ * @param uri The URI to fetch from.
996
+ * @returns A promise that resolves to a compact JWT.
997
+ */
998
+ private statusListFetcher;
999
+ /**
1000
+ * Validates the status, throws an error if the status is not 0.
1001
+ * @param status
1002
+ * @returns
1003
+ */
1004
+ private statusValidator;
1005
+ /**
1006
+ * Verifies the SD-JWT-VC. It will validate the signature, the keybindings when required, the status, and the VCT.
1007
+ * @param currentDate current time in seconds
1008
+ */
1009
+ verify(encodedSDJwt: string, options?: VerifierOptions): Promise<VerificationResult>;
1010
+ /**
1011
+ * Safe verification that collects all errors instead of failing fast.
1012
+ * Returns a result object with either the verified data or an array of all errors.
1013
+ * This includes SD-JWT-VC specific validations like status and VCT metadata.
1014
+ *
1015
+ * @param encodedSDJwt - The encoded SD-JWT-VC to verify
1016
+ * @param options - Verification options
1017
+ * @returns A SafeVerifyResult containing either success data or collected errors
1018
+ */
1019
+ safeVerify(encodedSDJwt: string, options?: VerifierOptions): Promise<SafeVerifyResult<VerificationResult>>;
1020
+ /**
1021
+ * Gets VCT Metadata of the raw SD-JWT-VC. Returns the type metadata format. If the SD-JWT-VC is invalid or does not contain a vct claim, an error is thrown.
1022
+ *
1023
+ * It may return `undefined` if the fetcher returned an undefined value (instead of throwing an error).
1024
+ *
1025
+ * @param encodedSDJwt
1026
+ * @returns
1027
+ */
1028
+ getVct(encodedSDJwt: string): Promise<ResolvedTypeMetadata | undefined>;
1029
+ /**
1030
+ * Validates the integrity of the response if the integrity is passed. If the integrity does not match, an error is thrown.
1031
+ * @param integrity
1032
+ * @param response
1033
+ */
1034
+ private validateIntegrity;
1035
+ /**
1036
+ * Fetches the content from the url with a timeout of 10 seconds.
1037
+ * @param url
1038
+ * @returns
1039
+ */
1040
+ private fetchWithIntegrity;
1041
+ /**
1042
+ * Verifies the VCT of the SD-JWT-VC. Returns the type metadata format.
1043
+ * Resolves the full extends chain according to spec sections 6.4, 8.2, and 9.5.
1044
+ * @param result
1045
+ * @returns
1046
+ */
1047
+ private fetchVct;
1048
+ /**
1049
+ * Checks if two claim paths are equal by comparing each element.
1050
+ * @param path1 First claim path
1051
+ * @param path2 Second claim path
1052
+ * @returns True if paths are equal, false otherwise
1053
+ */
1054
+ private claimPathsEqual;
1055
+ /**
1056
+ * Validates that extending claim metadata respects the constraints from spec section 9.5.1.
1057
+ * @param baseClaim The base claim metadata
1058
+ * @param extendingClaim The extending claim metadata
1059
+ * @throws SDJWTException if validation fails
1060
+ */
1061
+ private validateClaimExtension;
1062
+ /**
1063
+ * Merges two type metadata formats, with the extending metadata overriding the base metadata.
1064
+ * According to spec section 9.5:
1065
+ * - All claim metadata from the extended type are inherited
1066
+ * - The child type can add new claims or properties
1067
+ * - If the child type defines claim metadata with the same path as the extended type,
1068
+ * the child type's object will override the corresponding object from the extended type
1069
+ * According to spec section 9.5.1:
1070
+ * - sd property can only be changed from 'allowed' (or omitted) to 'always' or 'never'
1071
+ * - sd property cannot be changed from 'always' or 'never' to a different value
1072
+ * According to spec section 8.2:
1073
+ * - If the extending type defines its own display property, the original display metadata is ignored
1074
+ * Note: The spec also mentions 'mandatory' property constraints, but this is not currently
1075
+ * defined in the Claim type and will be validated when that property is added to the type.
1076
+ * @param base The base type metadata format
1077
+ * @param extending The extending type metadata format
1078
+ * @returns The merged type metadata format
1079
+ */
1080
+ private mergeTypeMetadata;
1081
+ /**
1082
+ * Resolves the full VCT chain by recursively fetching extended type metadata.
1083
+ * Implements security considerations from spec section 10.3 for circular dependencies.
1084
+ * @param vct The VCT URI to resolve
1085
+ * @param integrity Optional integrity metadata for the VCT
1086
+ * @param depth Current depth in the chain
1087
+ * @param visitedVcts Set of already visited VCT URIs to detect circular dependencies
1088
+ * @returns The fully resolved and merged type metadata format
1089
+ */
1090
+ private resolveVctExtendsChain;
1091
+ /**
1092
+ * Fetches and verifies the VCT Metadata for a VCT value.
1093
+ * @param result
1094
+ * @returns
1095
+ */
1096
+ private fetchSingleVct;
1097
+ /**
1098
+ * Verifies the status of the SD-JWT-VC.
1099
+ * @param result
1100
+ * @param options
1101
+ */
1102
+ private verifyStatus;
1103
+ config(newConfig: SDJWTVCConfig): void;
1104
+ }
1105
+
1106
+ export { type BackgroundImage, BackgroundImageSchema, type Claim, type ClaimDisplay, ClaimDisplaySchema, type ClaimPath, ClaimPathSchema, ClaimSchema, type ClaimSelectiveDisclosure, ClaimSelectiveDisclosureSchema, ColorSchemeSchema, ContrastSchema, type Display, DisplaySchema, type Logo, LogoSchema, OrientationSchema, type Rendering, RenderingSchema, type ResolvedTypeMetadata, type SDJWTVCConfig, type SDJWTVCStatusReference, SDJwtVcInstance, type SdJwtVcPayload, type SimpleRendering, SimpleRenderingSchema, type StatusListFetcher, type StatusValidator, type SvgTemplateProperties, SvgTemplatePropertiesSchema, type SvgTemplateRendering, SvgTemplateRenderingSchema, type TypeMetadataFormat, TypeMetadataFormatSchema, type VCTFetcher, type VerificationResult };