@twin.org/identity-models 0.0.3-next.9 → 0.9.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.
Files changed (97) hide show
  1. package/README.md +3 -3
  2. package/dist/es/contextIdHandlers/didContextIdHandler.js +3 -3
  3. package/dist/es/contextIdHandlers/didContextIdHandler.js.map +1 -1
  4. package/dist/es/index.js +6 -0
  5. package/dist/es/index.js.map +1 -1
  6. package/dist/es/models/IIdentityComponent.js.map +1 -1
  7. package/dist/es/models/IIdentityConnector.js.map +1 -1
  8. package/dist/es/models/IIdentityProfileComponent.js.map +1 -1
  9. package/dist/es/models/IIdentityProfileConnector.js.map +1 -1
  10. package/dist/es/models/api/identity/IIdentityAlsoKnownAsCreateRequest.js +4 -0
  11. package/dist/es/models/api/identity/IIdentityAlsoKnownAsCreateRequest.js.map +1 -0
  12. package/dist/es/models/api/identity/IIdentityAlsoKnownAsRemoveRequest.js +4 -0
  13. package/dist/es/models/api/identity/IIdentityAlsoKnownAsRemoveRequest.js.map +1 -0
  14. package/dist/es/models/api/identity/IIdentityVerifiableCredentialCreateRequest.js.map +1 -1
  15. package/dist/es/models/api/identity/IIdentityVerifiableCredentialVerifyDocumentRequest.js +2 -0
  16. package/dist/es/models/api/identity/IIdentityVerifiableCredentialVerifyDocumentRequest.js.map +1 -0
  17. package/dist/es/models/api/identity/IIdentityVerifiablePresentationCreateRequest.js.map +1 -1
  18. package/dist/es/models/api/identity/IIdentityVerifiablePresentationVerifyDocumentRequest.js +2 -0
  19. package/dist/es/models/api/identity/IIdentityVerifiablePresentationVerifyDocumentRequest.js.map +1 -0
  20. package/dist/es/models/identityMetricIds.js +49 -0
  21. package/dist/es/models/identityMetricIds.js.map +1 -0
  22. package/dist/es/models/identityMetrics.js +61 -0
  23. package/dist/es/models/identityMetrics.js.map +1 -0
  24. package/dist/es/types/did.js +3 -3
  25. package/dist/es/types/did.js.map +1 -1
  26. package/dist/es/utils/verificationHelper.js +4 -4
  27. package/dist/es/utils/verificationHelper.js.map +1 -1
  28. package/dist/types/contextIdHandlers/didContextIdHandler.d.ts +3 -3
  29. package/dist/types/index.d.ts +6 -0
  30. package/dist/types/models/IIdentityComponent.d.ts +54 -13
  31. package/dist/types/models/IIdentityConnector.d.ts +53 -12
  32. package/dist/types/models/IIdentityProfileComponent.d.ts +3 -3
  33. package/dist/types/models/IIdentityProfileConnector.d.ts +3 -3
  34. package/dist/types/models/api/identity/IIdentityAlsoKnownAsCreateRequest.d.ts +23 -0
  35. package/dist/types/models/api/identity/IIdentityAlsoKnownAsRemoveRequest.d.ts +18 -0
  36. package/dist/types/models/api/identity/IIdentityVerifiableCredentialCreateRequest.d.ts +12 -0
  37. package/dist/types/models/api/identity/IIdentityVerifiableCredentialVerifyDocumentRequest.d.ts +10 -0
  38. package/dist/types/models/api/identity/IIdentityVerifiablePresentationCreateRequest.d.ts +14 -2
  39. package/dist/types/models/api/identity/IIdentityVerifiablePresentationVerifyDocumentRequest.d.ts +10 -0
  40. package/dist/types/models/identityMetricIds.d.ts +49 -0
  41. package/dist/types/models/identityMetrics.d.ts +5 -0
  42. package/dist/types/types/did.d.ts +3 -3
  43. package/dist/types/utils/verificationHelper.d.ts +4 -4
  44. package/docs/changelog.md +409 -99
  45. package/docs/examples.md +157 -1
  46. package/docs/reference/classes/Did.md +7 -7
  47. package/docs/reference/classes/DidContextIdHandler.md +7 -7
  48. package/docs/reference/classes/DocumentHelper.md +5 -5
  49. package/docs/reference/classes/VerificationHelper.md +7 -7
  50. package/docs/reference/index.md +10 -0
  51. package/docs/reference/interfaces/IIdentityAlsoKnownAsCreateRequest.md +31 -0
  52. package/docs/reference/interfaces/IIdentityAlsoKnownAsRemoveRequest.md +23 -0
  53. package/docs/reference/interfaces/IIdentityComponent.md +157 -43
  54. package/docs/reference/interfaces/IIdentityConnector.md +156 -42
  55. package/docs/reference/interfaces/IIdentityCreateRequest.md +3 -3
  56. package/docs/reference/interfaces/IIdentityCreateResponse.md +1 -1
  57. package/docs/reference/interfaces/IIdentityProfileComponent.md +9 -9
  58. package/docs/reference/interfaces/IIdentityProfileConnector.md +8 -8
  59. package/docs/reference/interfaces/IIdentityProfileCreateRequest.md +3 -3
  60. package/docs/reference/interfaces/IIdentityProfileGetPublicRequest.md +4 -4
  61. package/docs/reference/interfaces/IIdentityProfileGetPublicResponse.md +2 -2
  62. package/docs/reference/interfaces/IIdentityProfileGetRequest.md +4 -4
  63. package/docs/reference/interfaces/IIdentityProfileGetResponse.md +3 -3
  64. package/docs/reference/interfaces/IIdentityProfileListRequest.md +6 -6
  65. package/docs/reference/interfaces/IIdentityProfileListResponse.md +2 -2
  66. package/docs/reference/interfaces/IIdentityProfileUpdateRequest.md +3 -3
  67. package/docs/reference/interfaces/IIdentityProofCreateRequest.md +2 -2
  68. package/docs/reference/interfaces/IIdentityProofCreateResponse.md +1 -1
  69. package/docs/reference/interfaces/IIdentityProofVerifyRequest.md +1 -1
  70. package/docs/reference/interfaces/IIdentityProofVerifyResponse.md +1 -1
  71. package/docs/reference/interfaces/IIdentityRemoveRequest.md +1 -1
  72. package/docs/reference/interfaces/IIdentityResolveRequest.md +1 -1
  73. package/docs/reference/interfaces/IIdentityResolveResponse.md +1 -1
  74. package/docs/reference/interfaces/IIdentityResolverComponent.md +1 -1
  75. package/docs/reference/interfaces/IIdentityResolverConnector.md +1 -1
  76. package/docs/reference/interfaces/IIdentityServiceCreateRequest.md +2 -2
  77. package/docs/reference/interfaces/IIdentityServiceCreateResponse.md +1 -1
  78. package/docs/reference/interfaces/IIdentityServiceRemoveRequest.md +1 -1
  79. package/docs/reference/interfaces/IIdentityVerifiableCredentialCreateRequest.md +25 -5
  80. package/docs/reference/interfaces/IIdentityVerifiableCredentialCreateResponse.md +1 -1
  81. package/docs/reference/interfaces/IIdentityVerifiableCredentialRevokeRequest.md +1 -1
  82. package/docs/reference/interfaces/IIdentityVerifiableCredentialUnrevokeRequest.md +1 -1
  83. package/docs/reference/interfaces/IIdentityVerifiableCredentialVerifyDocumentRequest.md +11 -0
  84. package/docs/reference/interfaces/IIdentityVerifiableCredentialVerifyRequest.md +1 -1
  85. package/docs/reference/interfaces/IIdentityVerifiableCredentialVerifyResponse.md +2 -2
  86. package/docs/reference/interfaces/IIdentityVerifiablePresentationCreateRequest.md +28 -8
  87. package/docs/reference/interfaces/IIdentityVerifiablePresentationCreateResponse.md +1 -1
  88. package/docs/reference/interfaces/IIdentityVerifiablePresentationVerifyDocumentRequest.md +11 -0
  89. package/docs/reference/interfaces/IIdentityVerifiablePresentationVerifyRequest.md +1 -1
  90. package/docs/reference/interfaces/IIdentityVerifiablePresentationVerifyResponse.md +3 -3
  91. package/docs/reference/interfaces/IIdentityVerificationMethodCreateRequest.md +3 -3
  92. package/docs/reference/interfaces/IIdentityVerificationMethodCreateResponse.md +1 -1
  93. package/docs/reference/interfaces/IIdentityVerificationMethodRemoveRequest.md +1 -1
  94. package/docs/reference/type-aliases/IdentityMetricIds.md +5 -0
  95. package/docs/reference/variables/IdentityMetricIds.md +67 -0
  96. package/docs/reference/variables/IdentityMetrics.md +5 -0
  97. package/package.json +12 -11
@@ -8,7 +8,7 @@ Interface describing a contract which provides identity operations.
8
8
 
9
9
  ## Methods
10
10
 
11
- ### identityCreate()
11
+ ### identityCreate() {#identitycreate}
12
12
 
13
13
  > **identityCreate**(`namespace?`, `controller?`): `Promise`\<`IDidDocument`\>
14
14
 
@@ -36,7 +36,7 @@ The created identity document.
36
36
 
37
37
  ***
38
38
 
39
- ### identityRemove()
39
+ ### identityRemove() {#identityremove}
40
40
 
41
41
  > **identityRemove**(`identity`, `controller?`): `Promise`\<`void`\>
42
42
 
@@ -60,11 +60,11 @@ The controller of the identity who can make changes.
60
60
 
61
61
  `Promise`\<`void`\>
62
62
 
63
- Nothing.
63
+ A promise that resolves when the identity has been removed.
64
64
 
65
65
  ***
66
66
 
67
- ### verificationMethodCreate()
67
+ ### verificationMethodCreate() {#verificationmethodcreate}
68
68
 
69
69
  > **verificationMethodCreate**(`identity`, `verificationMethodType`, `verificationMethodId?`, `controller?`): `Promise`\<`IDidDocumentVerificationMethod`\>
70
70
 
@@ -112,7 +112,7 @@ NotSupportedError if the platform does not support multiple keys.
112
112
 
113
113
  ***
114
114
 
115
- ### verificationMethodRemove()
115
+ ### verificationMethodRemove() {#verificationmethodremove}
116
116
 
117
117
  > **verificationMethodRemove**(`verificationMethodId`, `controller?`): `Promise`\<`void`\>
118
118
 
@@ -136,7 +136,7 @@ The controller of the identity who can make changes.
136
136
 
137
137
  `Promise`\<`void`\>
138
138
 
139
- Nothing.
139
+ A promise that resolves when the verification method has been removed.
140
140
 
141
141
  #### Throws
142
142
 
@@ -148,7 +148,7 @@ NotSupportedError if the platform does not support multiple revocable keys.
148
148
 
149
149
  ***
150
150
 
151
- ### serviceCreate()
151
+ ### serviceCreate() {#servicecreate}
152
152
 
153
153
  > **serviceCreate**(`identity`, `serviceId`, `serviceType`, `serviceEndpoint`, `controller?`): `Promise`\<`IDidService`\>
154
154
 
@@ -170,15 +170,15 @@ The id of the service.
170
170
 
171
171
  ##### serviceType
172
172
 
173
- The type of the service.
173
+ `string` \| `string`[]
174
174
 
175
- `string` | `string`[]
175
+ The type of the service.
176
176
 
177
177
  ##### serviceEndpoint
178
178
 
179
- The endpoint for the service.
179
+ `string` \| `string`[]
180
180
 
181
- `string` | `string`[]
181
+ The endpoint for the service.
182
182
 
183
183
  ##### controller?
184
184
 
@@ -198,7 +198,7 @@ NotFoundError if the id can not be resolved.
198
198
 
199
199
  ***
200
200
 
201
- ### serviceRemove()
201
+ ### serviceRemove() {#serviceremove}
202
202
 
203
203
  > **serviceRemove**(`serviceId`, `controller?`): `Promise`\<`void`\>
204
204
 
@@ -222,7 +222,93 @@ The controller of the identity who can make changes.
222
222
 
223
223
  `Promise`\<`void`\>
224
224
 
225
- Nothing.
225
+ A promise that resolves when the service has been removed.
226
+
227
+ #### Throws
228
+
229
+ NotFoundError if the id can not be resolved.
230
+
231
+ ***
232
+
233
+ ### alsoKnownAsAdd() {#alsoknownasadd}
234
+
235
+ > **alsoKnownAsAdd**(`documentId`, `alias`, `controller?`): `Promise`\<`void`\>
236
+
237
+ Add an alias to the alsoKnownAs property on the document.
238
+ If the alias is already present the operation is a no-op.
239
+
240
+ #### Parameters
241
+
242
+ ##### documentId
243
+
244
+ `string`
245
+
246
+ The id of the document to update.
247
+
248
+ ##### alias
249
+
250
+ `string`
251
+
252
+ The alias to add. Must be a Url or Urn (typically another DID).
253
+
254
+ ##### controller?
255
+
256
+ `string`
257
+
258
+ The controller of the identity who can make changes.
259
+
260
+ #### Returns
261
+
262
+ `Promise`\<`void`\>
263
+
264
+ A promise that resolves when the alias has been added.
265
+
266
+ #### Throws
267
+
268
+ GeneralError if the alias is not a Url or Urn.
269
+
270
+ #### Throws
271
+
272
+ NotFoundError if the id can not be resolved.
273
+
274
+ ***
275
+
276
+ ### alsoKnownAsRemove() {#alsoknownasremove}
277
+
278
+ > **alsoKnownAsRemove**(`documentId`, `alias`, `controller?`): `Promise`\<`void`\>
279
+
280
+ Remove an alias from the alsoKnownAs property on the document.
281
+ If the alias is not present the operation is a no-op.
282
+
283
+ #### Parameters
284
+
285
+ ##### documentId
286
+
287
+ `string`
288
+
289
+ The id of the document to update.
290
+
291
+ ##### alias
292
+
293
+ `string`
294
+
295
+ The alias to remove. Must be a Url or Urn.
296
+
297
+ ##### controller?
298
+
299
+ `string`
300
+
301
+ The controller of the identity who can make changes.
302
+
303
+ #### Returns
304
+
305
+ `Promise`\<`void`\>
306
+
307
+ A promise that resolves when the alias has been removed.
308
+
309
+ #### Throws
310
+
311
+ GeneralError if the alias is not a Url or Urn.
226
312
 
227
313
  #### Throws
228
314
 
@@ -230,7 +316,7 @@ NotFoundError if the id can not be resolved.
230
316
 
231
317
  ***
232
318
 
233
- ### verifiableCredentialCreate()
319
+ ### verifiableCredentialCreate() {#verifiablecredentialcreate}
234
320
 
235
321
  > **verifiableCredentialCreate**(`verificationMethodId`, `id`, `subject`, `options?`, `controller?`): `Promise`\<\{ `verifiableCredential`: `IDidVerifiableCredential`; `jwt`: `string`; \}\>
236
322
 
@@ -246,9 +332,9 @@ The verification method id to use.
246
332
 
247
333
  ##### id
248
334
 
249
- The id of the credential.
335
+ `string` \| `undefined`
250
336
 
251
- `string` | `undefined`
337
+ The id of the credential.
252
338
 
253
339
  ##### subject
254
340
 
@@ -272,6 +358,18 @@ The bitmap revocation index of the credential, if undefined will not have revoca
272
358
 
273
359
  The date the verifiable credential is valid until.
274
360
 
361
+ ###### jwtHeaderFields?
362
+
363
+ \{\[`id`: `string`\]: `string`; \}
364
+
365
+ Additional fields to include in the JWT header when creating the verifiable credential in jwt format.
366
+
367
+ ###### jwtPayloadFields?
368
+
369
+ \{\[`id`: `string`\]: `string`; \}
370
+
371
+ Additional fields to include in the JWT payload when creating the verifiable credential in jwt format.
372
+
275
373
  ##### controller?
276
374
 
277
375
  `string`
@@ -290,17 +388,17 @@ NotFoundError if the id can not be resolved.
290
388
 
291
389
  ***
292
390
 
293
- ### verifiableCredentialVerify()
391
+ ### verifiableCredentialVerify() {#verifiablecredentialverify}
294
392
 
295
- > **verifiableCredentialVerify**(`credentialJwt`): `Promise`\<\{ `revoked`: `boolean`; `verifiableCredential?`: `IDidVerifiableCredential`; \}\>
393
+ > **verifiableCredentialVerify**(`credential`): `Promise`\<\{ `revoked`: `boolean`; `verifiableCredential?`: `IDidVerifiableCredential`; \}\>
296
394
 
297
395
  Verify a verifiable credential is valid.
298
396
 
299
397
  #### Parameters
300
398
 
301
- ##### credentialJwt
399
+ ##### credential
302
400
 
303
- `string`
401
+ `string` \| `IDidVerifiableCredential`
304
402
 
305
403
  The credential to verify.
306
404
 
@@ -312,7 +410,7 @@ The credential stored in the jwt and the revocation status.
312
410
 
313
411
  ***
314
412
 
315
- ### verifiableCredentialRevoke()
413
+ ### verifiableCredentialRevoke() {#verifiablecredentialrevoke}
316
414
 
317
415
  > **verifiableCredentialRevoke**(`issuerId`, `credentialIndex`, `controller?`): `Promise`\<`void`\>
318
416
 
@@ -330,7 +428,7 @@ The id of the document to update the revocation list for.
330
428
 
331
429
  `number`
332
430
 
333
- The revocation bitmap index revoke.
431
+ The revocation bitmap index to revoke.
334
432
 
335
433
  ##### controller?
336
434
 
@@ -342,11 +440,11 @@ The controller of the identity who can make changes.
342
440
 
343
441
  `Promise`\<`void`\>
344
442
 
345
- Nothing.
443
+ A promise that resolves when the credential has been revoked.
346
444
 
347
445
  ***
348
446
 
349
- ### verifiableCredentialUnrevoke()
447
+ ### verifiableCredentialUnrevoke() {#verifiablecredentialunrevoke}
350
448
 
351
449
  > **verifiableCredentialUnrevoke**(`issuerId`, `credentialIndex`, `controller?`): `Promise`\<`void`\>
352
450
 
@@ -364,7 +462,7 @@ The id of the document to update the revocation list for.
364
462
 
365
463
  `number`
366
464
 
367
- The revocation bitmap index to un revoke.
465
+ The revocation bitmap index to unrevoke.
368
466
 
369
467
  ##### controller?
370
468
 
@@ -376,13 +474,13 @@ The controller of the identity who can make changes.
376
474
 
377
475
  `Promise`\<`void`\>
378
476
 
379
- Nothing.
477
+ A promise that resolves when the credential has been unrevoked.
380
478
 
381
479
  ***
382
480
 
383
- ### verifiablePresentationCreate()
481
+ ### verifiablePresentationCreate() {#verifiablepresentationcreate}
384
482
 
385
- > **verifiablePresentationCreate**(`verificationMethodId`, `presentationId`, `contexts`, `types`, `verifiableCredentials`, `expiresInMinutes?`, `controller?`): `Promise`\<\{ `verifiablePresentation`: `IDidVerifiablePresentation`; `jwt`: `string`; \}\>
483
+ > **verifiablePresentationCreate**(`verificationMethodId`, `presentationId`, `contexts`, `types`, `verifiableCredentials`, `options?`, `controller?`): `Promise`\<\{ `verifiablePresentation`: `IDidVerifiablePresentation`; `jwt`: `string`; \}\>
386
484
 
387
485
  Create a verifiable presentation from the supplied verifiable credentials.
388
486
 
@@ -396,21 +494,21 @@ The method to associate with the presentation.
396
494
 
397
495
  ##### presentationId
398
496
 
399
- The id of the presentation.
497
+ `string` \| `undefined`
400
498
 
401
- `string` | `undefined`
499
+ The id of the presentation.
402
500
 
403
501
  ##### contexts
404
502
 
405
- The contexts for the data stored in the verifiable credential.
503
+ `IJsonLdContextDefinitionRoot` \| `undefined`
406
504
 
407
- `IJsonLdContextDefinitionRoot` | `undefined`
505
+ The contexts for the data stored in the verifiable credential.
408
506
 
409
507
  ##### types
410
508
 
411
- The types for the data stored in the verifiable credential.
509
+ `string` \| `string`[] \| `undefined`
412
510
 
413
- `string` | `string`[] | `undefined`
511
+ The types for the data stored in the verifiable credential.
414
512
 
415
513
  ##### verifiableCredentials
416
514
 
@@ -418,11 +516,27 @@ The types for the data stored in the verifiable credential.
418
516
 
419
517
  The credentials to use for creating the presentation in jwt format.
420
518
 
421
- ##### expiresInMinutes?
519
+ ##### options?
520
+
521
+ Additional options for creating the verifiable presentation.
422
522
 
423
- `number`
523
+ ###### expirationDate?
524
+
525
+ `Date`
526
+
527
+ The date the verifiable presentation is valid until.
424
528
 
425
- The time in minutes for the presentation to expire.
529
+ ###### jwtHeaderFields?
530
+
531
+ \{\[`id`: `string`\]: `string`; \}
532
+
533
+ Additional fields to include in the JWT header when creating the verifiable presentation in jwt format.
534
+
535
+ ###### jwtPayloadFields?
536
+
537
+ \{\[`id`: `string`\]: `string`; \}
538
+
539
+ Additional fields to include in the JWT payload when creating the verifiable presentation in jwt format.
426
540
 
427
541
  ##### controller?
428
542
 
@@ -442,17 +556,17 @@ NotFoundError if the id can not be resolved.
442
556
 
443
557
  ***
444
558
 
445
- ### verifiablePresentationVerify()
559
+ ### verifiablePresentationVerify() {#verifiablepresentationverify}
446
560
 
447
- > **verifiablePresentationVerify**(`presentationJwt`): `Promise`\<\{ `revoked`: `boolean`; `verifiablePresentation?`: `IDidVerifiablePresentation`; `issuers?`: `IDidDocument`[]; \}\>
561
+ > **verifiablePresentationVerify**(`presentation`): `Promise`\<\{ `revoked`: `boolean`; `verifiablePresentation?`: `IDidVerifiablePresentation`; `issuers?`: `IDidDocument`[]; \}\>
448
562
 
449
563
  Verify a verifiable presentation is valid.
450
564
 
451
565
  #### Parameters
452
566
 
453
- ##### presentationJwt
567
+ ##### presentation
454
568
 
455
- `string`
569
+ `string` \| `IDidVerifiablePresentation`
456
570
 
457
571
  The presentation to verify.
458
572
 
@@ -464,7 +578,7 @@ The presentation stored in the jwt and the revocation status.
464
578
 
465
579
  ***
466
580
 
467
- ### proofCreate()
581
+ ### proofCreate() {#proofcreate}
468
582
 
469
583
  > **proofCreate**(`verificationMethodId`, `proofType`, `unsecureDocument`, `controller?`): `Promise`\<`IProof`\>
470
584
 
@@ -504,7 +618,7 @@ The proof.
504
618
 
505
619
  ***
506
620
 
507
- ### proofVerify()
621
+ ### proofVerify() {#proofverify}
508
622
 
509
623
  > **proofVerify**(`document`, `proof`): `Promise`\<`boolean`\>
510
624