@twin.org/identity-models 0.0.1-next.18 → 0.0.1-next.20

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 (30) hide show
  1. package/dist/cjs/index.cjs +40 -22
  2. package/dist/esm/index.mjs +41 -23
  3. package/dist/types/index.d.ts +11 -11
  4. package/dist/types/models/IIdentityComponent.d.ts +130 -3
  5. package/dist/types/models/api/{IIdentityResolveRequest.d.ts → identity/IIdentityResolveRequest.d.ts} +1 -1
  6. package/dist/types/utils/jwtHelper.d.ts +22 -0
  7. package/docs/changelog.md +1 -1
  8. package/docs/reference/classes/DocumentHelper.md +3 -1
  9. package/docs/reference/classes/JwtHelper.md +59 -0
  10. package/docs/reference/index.md +3 -7
  11. package/docs/reference/interfaces/IIdentityComponent.md +485 -3
  12. package/docs/reference/interfaces/IIdentityConnector.md +128 -84
  13. package/docs/reference/interfaces/IIdentityProfileComponent.md +52 -44
  14. package/docs/reference/interfaces/IIdentityProfileConnector.md +52 -40
  15. package/docs/reference/interfaces/IIdentityResolveRequest.md +1 -1
  16. package/docs/reference/variables/IdentityProfileConnectorFactory.md +1 -1
  17. package/locales/en.json +5 -4
  18. package/package.json +2 -2
  19. package/dist/types/models/identityRole.d.ts +0 -21
  20. package/docs/reference/type-aliases/IdentityRole.md +0 -5
  21. package/docs/reference/variables/IdentityRole.md +0 -25
  22. /package/dist/types/models/api/{IIdentityResolveResponse.d.ts → identity/IIdentityResolveResponse.d.ts} +0 -0
  23. /package/dist/types/models/api/{IIdentityProfileCreateRequest.d.ts → profile/IIdentityProfileCreateRequest.d.ts} +0 -0
  24. /package/dist/types/models/api/{IIdentityProfileGetPublicRequest.d.ts → profile/IIdentityProfileGetPublicRequest.d.ts} +0 -0
  25. /package/dist/types/models/api/{IIdentityProfileGetPublicResponse.d.ts → profile/IIdentityProfileGetPublicResponse.d.ts} +0 -0
  26. /package/dist/types/models/api/{IIdentityProfileGetRequest.d.ts → profile/IIdentityProfileGetRequest.d.ts} +0 -0
  27. /package/dist/types/models/api/{IIdentityProfileGetResponse.d.ts → profile/IIdentityProfileGetResponse.d.ts} +0 -0
  28. /package/dist/types/models/api/{IIdentityProfileListRequest.d.ts → profile/IIdentityProfileListRequest.d.ts} +0 -0
  29. /package/dist/types/models/api/{IIdentityProfileListResponse.d.ts → profile/IIdentityProfileListResponse.d.ts} +0 -0
  30. /package/dist/types/models/api/{IIdentityProfileUpdateRequest.d.ts → profile/IIdentityProfileUpdateRequest.d.ts} +0 -0
@@ -8,15 +8,45 @@ Interface describing a contract which provides identity operations.
8
8
 
9
9
  ## Methods
10
10
 
11
- ### resolve()
11
+ ### identityCreate()
12
12
 
13
- > **resolve**(`documentId`): `Promise`\<`IDidDocument`\>
13
+ > **identityCreate**(`controller`, `namespace`?): `Promise`\<`IDidDocument`\>
14
+
15
+ Create a new identity.
16
+
17
+ #### Parameters
18
+
19
+ ##### controller
20
+
21
+ `string`
22
+
23
+ The controller of the identity who can make changes.
24
+
25
+ ##### namespace?
26
+
27
+ `string`
28
+
29
+ The namespace of the connector to use for the identity, defaults to service configured namespace.
30
+
31
+ #### Returns
32
+
33
+ `Promise`\<`IDidDocument`\>
34
+
35
+ The created identity document.
36
+
37
+ ***
38
+
39
+ ### identityResolve()
40
+
41
+ > **identityResolve**(`identity`): `Promise`\<`IDidDocument`\>
14
42
 
15
43
  Resolve an identity.
16
44
 
17
45
  #### Parameters
18
46
 
19
- • **documentId**: `string`
47
+ ##### identity
48
+
49
+ `string`
20
50
 
21
51
  The id of the document to resolve.
22
52
 
@@ -25,3 +55,455 @@ The id of the document to resolve.
25
55
  `Promise`\<`IDidDocument`\>
26
56
 
27
57
  The resolved document.
58
+
59
+ ***
60
+
61
+ ### verificationMethodCreate()
62
+
63
+ > **verificationMethodCreate**(`controller`, `identity`, `verificationMethodType`, `verificationMethodId`?): `Promise`\<`IDidDocumentVerificationMethod`\>
64
+
65
+ Add a verification method to the document in JSON Web key Format.
66
+
67
+ #### Parameters
68
+
69
+ ##### controller
70
+
71
+ `string`
72
+
73
+ The controller of the identity who can make changes.
74
+
75
+ ##### identity
76
+
77
+ `string`
78
+
79
+ The id of the document to add the verification method to.
80
+
81
+ ##### verificationMethodType
82
+
83
+ `DidVerificationMethodType`
84
+
85
+ The type of the verification method to add.
86
+
87
+ ##### verificationMethodId?
88
+
89
+ `string`
90
+
91
+ The id of the verification method, if undefined uses the kid of the generated JWK.
92
+
93
+ #### Returns
94
+
95
+ `Promise`\<`IDidDocumentVerificationMethod`\>
96
+
97
+ The verification method.
98
+
99
+ #### Throws
100
+
101
+ NotFoundError if the id can not be resolved.
102
+
103
+ #### Throws
104
+
105
+ NotSupportedError if the platform does not support multiple keys.
106
+
107
+ ***
108
+
109
+ ### verificationMethodRemove()
110
+
111
+ > **verificationMethodRemove**(`controller`, `verificationMethodId`): `Promise`\<`void`\>
112
+
113
+ Remove a verification method from the document.
114
+
115
+ #### Parameters
116
+
117
+ ##### controller
118
+
119
+ `string`
120
+
121
+ The controller of the identity who can make changes.
122
+
123
+ ##### verificationMethodId
124
+
125
+ `string`
126
+
127
+ The id of the verification method.
128
+
129
+ #### Returns
130
+
131
+ `Promise`\<`void`\>
132
+
133
+ Nothing.
134
+
135
+ #### Throws
136
+
137
+ NotFoundError if the id can not be resolved.
138
+
139
+ #### Throws
140
+
141
+ NotSupportedError if the platform does not support multiple revocable keys.
142
+
143
+ ***
144
+
145
+ ### serviceCreate()
146
+
147
+ > **serviceCreate**(`controller`, `identity`, `serviceId`, `serviceType`, `serviceEndpoint`): `Promise`\<`IDidService`\>
148
+
149
+ Add a service to the document.
150
+
151
+ #### Parameters
152
+
153
+ ##### controller
154
+
155
+ `string`
156
+
157
+ The controller of the identity who can make changes.
158
+
159
+ ##### identity
160
+
161
+ `string`
162
+
163
+ The id of the document to add the service to.
164
+
165
+ ##### serviceId
166
+
167
+ `string`
168
+
169
+ The id of the service.
170
+
171
+ ##### serviceType
172
+
173
+ `string`
174
+
175
+ The type of the service.
176
+
177
+ ##### serviceEndpoint
178
+
179
+ `string`
180
+
181
+ The endpoint for the service.
182
+
183
+ #### Returns
184
+
185
+ `Promise`\<`IDidService`\>
186
+
187
+ The service.
188
+
189
+ #### Throws
190
+
191
+ NotFoundError if the id can not be resolved.
192
+
193
+ ***
194
+
195
+ ### serviceRemove()
196
+
197
+ > **serviceRemove**(`controller`, `serviceId`): `Promise`\<`void`\>
198
+
199
+ Remove a service from the document.
200
+
201
+ #### Parameters
202
+
203
+ ##### controller
204
+
205
+ `string`
206
+
207
+ The controller of the identity who can make changes.
208
+
209
+ ##### serviceId
210
+
211
+ `string`
212
+
213
+ The id of the service.
214
+
215
+ #### Returns
216
+
217
+ `Promise`\<`void`\>
218
+
219
+ Nothing.
220
+
221
+ #### Throws
222
+
223
+ NotFoundError if the id can not be resolved.
224
+
225
+ ***
226
+
227
+ ### verifiableCredentialCreate()
228
+
229
+ > **verifiableCredentialCreate**(`controller`, `verificationMethodId`, `id`, `credential`, `revocationIndex`?): `Promise`\<\{ `verifiableCredential`: `IDidVerifiableCredential`; `jwt`: `string`; \}\>
230
+
231
+ Create a verifiable credential for a verification method.
232
+
233
+ #### Parameters
234
+
235
+ ##### controller
236
+
237
+ `string`
238
+
239
+ The controller of the identity who can make changes.
240
+
241
+ ##### verificationMethodId
242
+
243
+ `string`
244
+
245
+ The verification method id to use.
246
+
247
+ ##### id
248
+
249
+ The id of the credential.
250
+
251
+ `undefined` | `string`
252
+
253
+ ##### credential
254
+
255
+ `IJsonLdNodeObject`
256
+
257
+ The credential to store in the verifiable credential.
258
+
259
+ ##### revocationIndex?
260
+
261
+ `number`
262
+
263
+ The bitmap revocation index of the credential, if undefined will not have revocation status.
264
+
265
+ #### Returns
266
+
267
+ `Promise`\<\{ `verifiableCredential`: `IDidVerifiableCredential`; `jwt`: `string`; \}\>
268
+
269
+ The created verifiable credential and its token.
270
+
271
+ #### Throws
272
+
273
+ NotFoundError if the id can not be resolved.
274
+
275
+ ***
276
+
277
+ ### verifiableCredentialVerify()
278
+
279
+ > **verifiableCredentialVerify**(`credentialJwt`): `Promise`\<\{ `revoked`: `boolean`; `verifiableCredential`: `IDidVerifiableCredential`; \}\>
280
+
281
+ Verify a verifiable credential is valid.
282
+
283
+ #### Parameters
284
+
285
+ ##### credentialJwt
286
+
287
+ `string`
288
+
289
+ The credential to verify.
290
+
291
+ #### Returns
292
+
293
+ `Promise`\<\{ `revoked`: `boolean`; `verifiableCredential`: `IDidVerifiableCredential`; \}\>
294
+
295
+ The credential stored in the jwt and the revocation status.
296
+
297
+ ***
298
+
299
+ ### verifiableCredentialRevoke()
300
+
301
+ > **verifiableCredentialRevoke**(`controller`, `issuerId`, `credentialIndex`): `Promise`\<`void`\>
302
+
303
+ Revoke verifiable credential.
304
+
305
+ #### Parameters
306
+
307
+ ##### controller
308
+
309
+ `string`
310
+
311
+ The controller of the identity who can make changes.
312
+
313
+ ##### issuerId
314
+
315
+ `string`
316
+
317
+ The id of the document to update the revocation list for.
318
+
319
+ ##### credentialIndex
320
+
321
+ `number`
322
+
323
+ The revocation bitmap index revoke.
324
+
325
+ #### Returns
326
+
327
+ `Promise`\<`void`\>
328
+
329
+ Nothing.
330
+
331
+ ***
332
+
333
+ ### verifiableCredentialUnrevoke()
334
+
335
+ > **verifiableCredentialUnrevoke**(`controller`, `issuerId`, `credentialIndex`): `Promise`\<`void`\>
336
+
337
+ Unrevoke verifiable credential.
338
+
339
+ #### Parameters
340
+
341
+ ##### controller
342
+
343
+ `string`
344
+
345
+ The controller of the identity who can make changes.
346
+
347
+ ##### issuerId
348
+
349
+ `string`
350
+
351
+ The id of the document to update the revocation list for.
352
+
353
+ ##### credentialIndex
354
+
355
+ `number`
356
+
357
+ The revocation bitmap index to un revoke.
358
+
359
+ #### Returns
360
+
361
+ `Promise`\<`void`\>
362
+
363
+ Nothing.
364
+
365
+ ***
366
+
367
+ ### verifiablePresentationCreate()
368
+
369
+ > **verifiablePresentationCreate**(`controller`, `presentationMethodId`, `presentationId`, `contexts`, `types`, `verifiableCredentials`, `expiresInMinutes`?): `Promise`\<\{ `verifiablePresentation`: `IDidVerifiablePresentation`; `jwt`: `string`; \}\>
370
+
371
+ Create a verifiable presentation from the supplied verifiable credentials.
372
+
373
+ #### Parameters
374
+
375
+ ##### controller
376
+
377
+ `string`
378
+
379
+ The controller of the identity who can make changes.
380
+
381
+ ##### presentationMethodId
382
+
383
+ `string`
384
+
385
+ The method to associate with the presentation.
386
+
387
+ ##### presentationId
388
+
389
+ The id of the presentation.
390
+
391
+ `undefined` | `string`
392
+
393
+ ##### contexts
394
+
395
+ The contexts for the data stored in the verifiable credential.
396
+
397
+ `undefined` | `IJsonLdContextDefinitionRoot`
398
+
399
+ ##### types
400
+
401
+ The types for the data stored in the verifiable credential.
402
+
403
+ `undefined` | `string` | `string`[]
404
+
405
+ ##### verifiableCredentials
406
+
407
+ (`string` \| `IDidVerifiableCredential`)[]
408
+
409
+ The credentials to use for creating the presentation in jwt format.
410
+
411
+ ##### expiresInMinutes?
412
+
413
+ `number`
414
+
415
+ The time in minutes for the presentation to expire.
416
+
417
+ #### Returns
418
+
419
+ `Promise`\<\{ `verifiablePresentation`: `IDidVerifiablePresentation`; `jwt`: `string`; \}\>
420
+
421
+ The created verifiable presentation and its token.
422
+
423
+ #### Throws
424
+
425
+ NotFoundError if the id can not be resolved.
426
+
427
+ ***
428
+
429
+ ### verifiablePresentationVerify()
430
+
431
+ > **verifiablePresentationVerify**(`presentationJwt`): `Promise`\<\{ `revoked`: `boolean`; `verifiablePresentation`: `IDidVerifiablePresentation`; `issuers`: `IDidDocument`[]; \}\>
432
+
433
+ Verify a verifiable presentation is valid.
434
+
435
+ #### Parameters
436
+
437
+ ##### presentationJwt
438
+
439
+ `string`
440
+
441
+ The presentation to verify.
442
+
443
+ #### Returns
444
+
445
+ `Promise`\<\{ `revoked`: `boolean`; `verifiablePresentation`: `IDidVerifiablePresentation`; `issuers`: `IDidDocument`[]; \}\>
446
+
447
+ The presentation stored in the jwt and the revocation status.
448
+
449
+ ***
450
+
451
+ ### proofCreate()
452
+
453
+ > **proofCreate**(`controller`, `verificationMethodId`, `bytes`): `Promise`\<`IDidProof`\>
454
+
455
+ Create a proof for arbitrary data with the specified verification method.
456
+
457
+ #### Parameters
458
+
459
+ ##### controller
460
+
461
+ `string`
462
+
463
+ The controller of the identity who can make changes.
464
+
465
+ ##### verificationMethodId
466
+
467
+ `string`
468
+
469
+ The verification method id to use.
470
+
471
+ ##### bytes
472
+
473
+ `Uint8Array`
474
+
475
+ The data bytes to sign.
476
+
477
+ #### Returns
478
+
479
+ `Promise`\<`IDidProof`\>
480
+
481
+ The proof.
482
+
483
+ ***
484
+
485
+ ### proofVerify()
486
+
487
+ > **proofVerify**(`bytes`, `proof`): `Promise`\<`boolean`\>
488
+
489
+ Verify proof for arbitrary data with the specified verification method.
490
+
491
+ #### Parameters
492
+
493
+ ##### bytes
494
+
495
+ `Uint8Array`
496
+
497
+ The data bytes to verify.
498
+
499
+ ##### proof
500
+
501
+ `IDidProof`
502
+
503
+ The proof to verify.
504
+
505
+ #### Returns
506
+
507
+ `Promise`\<`boolean`\>
508
+
509
+ True if the proof is verified.