@procivis/react-native-one-core 1.95657.0 → 1.98296.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.
@@ -689,6 +689,30 @@ class ProcivisOneCoreModule(reactContext: ReactApplicationContext) :
689
689
  }
690
690
  }
691
691
 
692
+ @ReactMethod
693
+ fun registerVerifierInstance(request: ReadableMap, promise: Promise) {
694
+ asyncCall(promise, scope) {
695
+ val result = getCore().registerVerifierInstance(construct(request))
696
+ return@asyncCall convertToRN(result)
697
+ }
698
+ }
699
+
700
+ @ReactMethod
701
+ fun updateVerifierInstance(verifierInstanceId: String, request: ReadableMap, promise: Promise) {
702
+ asyncCall(promise, scope) {
703
+ getCore().updateVerifierInstance(verifierInstanceId, construct(request))
704
+ return@asyncCall null
705
+ }
706
+ }
707
+
708
+ @ReactMethod
709
+ fun getVerifierInstanceTrustCollections(verifierInstanceId: String, promise: Promise) {
710
+ asyncCall(promise, scope) {
711
+ val result = getCore().getVerifierInstanceTrustCollections(verifierInstanceId)
712
+ return@asyncCall convertToRN(result)
713
+ }
714
+ }
715
+
692
716
  @ReactMethod
693
717
  fun nfcReadIsoMdlEngagement(request: ReadableMap, promise: Promise) {
694
718
  asyncCall(promise, scope) {
@@ -73,6 +73,13 @@ object SerializeSpecific {
73
73
  values.pushString(metadata.v1)
74
74
  result.putArray("value", values)
75
75
  }
76
+
77
+ is HistoryMetadata.Certificate -> {
78
+ result.putString("type_", "CERTIFICATE")
79
+ val values = Arguments.createArray()
80
+ values.pushString(metadata.v1)
81
+ result.putArray("value", values)
82
+ }
76
83
  }
77
84
  return result
78
85
  }
package/core-sdk.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "android": {
3
3
  "debug": {
4
- "url": "https://onesdk.blob.core.windows.net/core-sdk/95657/android/onecore-debug.aar",
5
- "sha1": "e1a86a1459e3428ff14b4db6f97932bf8694e0b0"
4
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/98296/android/onecore-debug.aar",
5
+ "sha1": "bda9f1358e75339000787c79cf5fa20bffe012ad"
6
6
  },
7
7
  "release": {
8
- "url": "https://onesdk.blob.core.windows.net/core-sdk/95657/android/onecore-release.aar",
9
- "sha1": "bee4052f721fb391564c1830ecf7165859307ed2"
8
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/98296/android/onecore-release.aar",
9
+ "sha1": "76b4d21931d5079b95d0a9ec780ec9b7ef4bd4cf"
10
10
  }
11
11
  },
12
12
  "ios": {
13
- "url": "https://onesdk.blob.core.windows.net/core-sdk/95657/ios/deploy.zip",
14
- "sha1": "7d84d6f9f1d142ed955865aa9df76c12d73626df"
13
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/98296/ios/deploy.zip",
14
+ "sha1": "7b3cdd3c5192e99b7a906cd0d10311f20f539b5d"
15
15
  }
16
16
  }
@@ -10,4 +10,4 @@ export interface ONECore extends Omit<OneCore, "version" | "getConfig"> {
10
10
  * @hidden
11
11
  * New Architecture bridgeless issue workaround: see https://github.com/facebook/react-native/issues/43221
12
12
  */
13
- export declare const interfaceMethodNames: readonly ["getVersion", "getConfig", "createOrganisation", "upsertOrganisation", "generateKey", "createDid", "listDids", "createIdentifier", "getIdentifier", "listIdentifiers", "deleteIdentifier", "handleInvitation", "holderAcceptCredential", "holderRejectCredential", "initiateIssuance", "continueIssuance", "getPresentationDefinition", "getPresentationDefinitionV2", "holderRejectProof", "holderSubmitProof", "holderSubmitProofV2", "listCredentials", "runTask", "deleteProofClaims", "getCredential", "deleteCredential", "importCredentialSchema", "getCredentialSchema", "listCredentialSchemas", "deleteCredentialSchema", "createProof", "shareProof", "shareProofSchema", "shareCredentialSchema", "getProof", "listProofs", "deleteProof", "proposeProof", "createProofSchema", "listProofSchemas", "getProofSchema", "deleteProofSchema", "importProofSchema", "checkRevocation", "createTrustAnchor", "deleteTrustAnchor", "getTrustAnchor", "listTrustAnchors", "createTrustEntity", "getTrustEntity", "listTrustEntities", "getTrustEntityByDid", "resolveTrustEntityByIdentifier", "createRemoteTrustEntity", "getRemoteTrustEntity", "updateRemoteTrustEntity", "listHistory", "getHistoryEntry", "createBackup", "backupInfo", "deleteCache", "unpackBackup", "finalizeImport", "rollbackImport", "resolveJsonldContext", "holderRegisterWalletUnit", "holderWalletUnitStatus", "holderGetWalletUnit", "holderWalletUnitUpdate", "holderGetWalletUnitTrustCollections", "nfcReadIsoMdlEngagement", "nfcStopIsoMdlEngagement", "uninitialize"];
13
+ export declare const interfaceMethodNames: readonly ["getVersion", "getConfig", "createOrganisation", "upsertOrganisation", "generateKey", "createDid", "listDids", "createIdentifier", "getIdentifier", "listIdentifiers", "deleteIdentifier", "handleInvitation", "holderAcceptCredential", "holderRejectCredential", "initiateIssuance", "continueIssuance", "getPresentationDefinition", "getPresentationDefinitionV2", "holderRejectProof", "holderSubmitProof", "holderSubmitProofV2", "listCredentials", "runTask", "deleteProofClaims", "getCredential", "deleteCredential", "importCredentialSchema", "getCredentialSchema", "listCredentialSchemas", "deleteCredentialSchema", "createProof", "shareProof", "shareProofSchema", "shareCredentialSchema", "getProof", "listProofs", "deleteProof", "proposeProof", "createProofSchema", "listProofSchemas", "getProofSchema", "deleteProofSchema", "importProofSchema", "checkRevocation", "createTrustAnchor", "deleteTrustAnchor", "getTrustAnchor", "listTrustAnchors", "createTrustEntity", "getTrustEntity", "listTrustEntities", "getTrustEntityByDid", "resolveTrustEntityByIdentifier", "createRemoteTrustEntity", "getRemoteTrustEntity", "updateRemoteTrustEntity", "listHistory", "getHistoryEntry", "createBackup", "backupInfo", "deleteCache", "unpackBackup", "finalizeImport", "rollbackImport", "resolveJsonldContext", "holderRegisterWalletUnit", "holderWalletUnitStatus", "holderGetWalletUnit", "holderWalletUnitUpdate", "holderGetWalletUnitTrustCollections", "registerVerifierInstance", "updateVerifierInstance", "getVerifierInstanceTrustCollections", "nfcReadIsoMdlEngagement", "nfcStopIsoMdlEngagement", "uninitialize"];
package/dist/src/core.js CHANGED
@@ -75,6 +75,9 @@ export const interfaceMethodNames = [
75
75
  "holderGetWalletUnit",
76
76
  "holderWalletUnitUpdate",
77
77
  "holderGetWalletUnitTrustCollections",
78
+ "registerVerifierInstance",
79
+ "updateVerifierInstance",
80
+ "getVerifierInstanceTrustCollections",
78
81
  "nfcReadIsoMdlEngagement",
79
82
  "nfcStopIsoMdlEngagement",
80
83
  "uninitialize",
@@ -21,6 +21,7 @@ export interface CertificateDetail {
21
21
  chain: string;
22
22
  key?: KeyListItem;
23
23
  x509Attributes: CertificateX509Attributes;
24
+ roles: Array<CertificateRole>;
24
25
  }
25
26
  export interface CertificateX509Attributes {
26
27
  serialNumber: string;
@@ -57,28 +58,50 @@ export interface ClaimSchema {
57
58
  claims: Array<ClaimSchema>;
58
59
  }
59
60
  export interface Config {
61
+ /** Credential formats. */
60
62
  format: Record<string, string>;
63
+ /** Protocols used for issuance. */
61
64
  issuanceProtocol: Record<string, string>;
65
+ /** Protocols used for presentation and verification. */
62
66
  verificationProtocol: Record<string, string>;
67
+ /** Protocols used for communicating. */
63
68
  transport: Record<string, string>;
69
+ /** Methods for managing credential status. */
64
70
  revocation: Record<string, string>;
71
+ /** DID methods for identifying agents. */
65
72
  did: Record<string, string>;
73
+ /** Identifier types for representing agent's identities. */
66
74
  identifier: Record<string, string>;
75
+ /** Data types for validation. */
67
76
  datatype: Record<string, string>;
77
+ /** Key algorithms used for signatures. */
68
78
  keyAlgorithm: Record<string, string>;
79
+ /** Storage options for keys. */
69
80
  keyStorage: Record<string, string>;
81
+ /** Trust management solutions. */
70
82
  trustManagement: Record<string, string>;
83
+ /** Entities held in temporary storage. */
71
84
  cacheEntities: Record<string, string>;
85
+ /** Tasks which can be run via the `runTask` method. */
72
86
  task: Record<string, string>;
87
+ /** Configuration for wallet-initiated issuance flows. */
73
88
  credentialIssuer: Record<string, string>;
89
+ /**
90
+ * Configurations from the Wallet Provider, including version
91
+ * management, trust collections, and feature flags.
92
+ */
74
93
  walletProvider: Record<string, string>;
75
94
  }
76
95
  export interface ContinueIssuanceResponse {
77
96
  /** For reference. */
78
97
  interactionId: string;
98
+ /** Key storage required to complete issuance. */
79
99
  keyStorageSecurityLevels?: Array<KeyStorageSecurity>;
100
+ /** Key algorithms suitable for issuance. */
80
101
  keyAlgorithms?: Array<string>;
102
+ /** Whether a valid WIA is required to complete issuance. */
81
103
  requiresWalletInstanceAttestation: boolean;
104
+ /** Protocol used for issuance. */
82
105
  protocol: string;
83
106
  }
84
107
  export interface CreateCertificateAuthorityRequest {
@@ -91,6 +114,7 @@ export interface CreateCertificateRequest {
91
114
  name?: string;
92
115
  chain: string;
93
116
  keyId: string;
117
+ roles: Array<CertificateRole>;
94
118
  }
95
119
  export interface CreateDidRequest {
96
120
  organisationId: string;
@@ -117,9 +141,16 @@ export interface CreateIdentifierRequest {
117
141
  did?: CreateIdentifierDidRequest;
118
142
  certificates?: Array<CreateCertificateRequest>;
119
143
  certificateAuthorities?: Array<CreateCertificateAuthorityRequest>;
144
+ trustInformation: Array<CreateIdentifierTrustInformationRequest>;
145
+ }
146
+ export interface CreateIdentifierTrustInformationRequest {
147
+ data: string;
148
+ type: IdentifierTrustInformationType;
120
149
  }
121
150
  export interface CreateOrganisationRequest {
151
+ /** If no UUID is passed, one will be created. */
122
152
  id?: string;
153
+ /** If no name is passed, the UUID will be used. */
123
154
  name?: string;
124
155
  }
125
156
  /**
@@ -130,16 +161,47 @@ export interface CreateOrganisationRequest {
130
161
  * `nfc_read_iso_mdl_engagement`.
131
162
  */
132
163
  export interface CreateProofRequest {
164
+ /** Choose a proof schema to use. */
133
165
  proofSchemaId: string;
166
+ /** Deprecated. Use `verifierIdentifierId`. */
134
167
  verifierDidId?: string;
168
+ /** Choose the identifier to use to make the request. */
135
169
  verifierIdentifierId?: string;
170
+ /**
171
+ * Choose the protocol to use for verification. Check the
172
+ * `verificationProtocol` object of your configuration for
173
+ * supported options and reference the configuration instance.
174
+ */
136
175
  protocol: string;
176
+ /**
177
+ * When a shared proof is accepted, the wallet will be redirected
178
+ * to the resource specified here, if redirects are enabled in the
179
+ * configuration. The URI must use a scheme that is allowed by the
180
+ * configuration.
181
+ */
137
182
  redirectUri?: string;
183
+ /**
184
+ * If the identifier contains multiple keys, use this to specify
185
+ * which key to use. If omitted, the first suitable key is used.
186
+ */
138
187
  verifierKey?: string;
188
+ /**
189
+ * If the identifier contains multiple certificates, use this to
190
+ * specify which key to use. If omitted, the first suitable
191
+ * certificate is used.
192
+ */
139
193
  verifierCertificate?: string;
194
+ /** Use to specify device engagement type. */
140
195
  isoMdlEngagement?: string;
196
+ /**
197
+ * Choose the transport protocol for the exchange. Check the
198
+ * `transport` object of your configuration for supported
199
+ * options and reference the configuration instance.
200
+ */
141
201
  transport?: Array<string>;
202
+ /** Country profile to associate with this request. */
142
203
  profile?: string;
204
+ /** Use for ISO mDL verification over BLE. */
143
205
  engagement?: string;
144
206
  }
145
207
  export interface CreateProofSchemaInput {
@@ -154,6 +216,7 @@ export interface CreateProofSchemaRequest {
154
216
  name: string;
155
217
  organisationId: string;
156
218
  expireDuration: number;
219
+ /** Set of all claims to request. */
157
220
  proofInputSchemas: Array<CreateProofSchemaInput>;
158
221
  }
159
222
  export interface CreateRemoteTrustEntityRequest {
@@ -211,16 +274,30 @@ export interface CredentialDetail {
211
274
  issuanceDate?: string;
212
275
  lastModified: string;
213
276
  revocationDate?: string;
277
+ /** Credential issuer metadata. */
214
278
  issuer?: IdentifierListItem;
279
+ /** Credential holder metadata. */
215
280
  holder?: IdentifierListItem;
281
+ /** State representation of the credential in the system. */
216
282
  state: CredentialState;
283
+ /** Schema of the credential. */
217
284
  schema: CredentialSchemaListItem;
218
285
  claims: Array<Claim>;
219
286
  redirectUri?: string;
287
+ /**
288
+ * The role the system has in relation to the credential. For example,
289
+ * if the system received the credential as a wallet this value will
290
+ * be `HOLDER`. If the system verified this credential during a presentation,
291
+ * this value will be `VERIFIER`.
292
+ */
220
293
  role: CredentialRole;
294
+ /** Scheduled date for credential reactivation. */
221
295
  suspendEndDate?: string;
296
+ /** Validity details for ISO mdocs. */
222
297
  mdocMsoValidity?: MdocMsoValidity;
298
+ /** Protocol used to issue the credential. */
223
299
  protocol: string;
300
+ /** Country profile associated with the credential. */
224
301
  profile?: string;
225
302
  }
226
303
  export interface CredentialList {
@@ -234,37 +311,105 @@ export interface CredentialListItem {
234
311
  issuanceDate?: string;
235
312
  lastModified: string;
236
313
  revocationDate?: string;
314
+ /** Credential issuer metadata. */
237
315
  issuer?: string;
316
+ /** State representation of the credential in the system. */
238
317
  state: CredentialState;
318
+ /** Schema of the credential. */
239
319
  schema: CredentialSchemaListItem;
320
+ /**
321
+ * The role the system has in relation to the credential. For example,
322
+ * if the system received the credential as a wallet this value will
323
+ * be `HOLDER`. If the system verified this credential during a presentation,
324
+ * this value will be `VERIFIER`.
325
+ */
240
326
  role: CredentialRole;
327
+ /** Scheduled date for credential reactivation. */
241
328
  suspendEndDate?: string;
329
+ /** Protocol used to issue the credential. */
242
330
  protocol: string;
331
+ /** Country profile associated with the credential. */
243
332
  profile?: string;
244
333
  }
245
334
  export interface CredentialListQuery {
335
+ /** Page number to retrieve (0-based indexing). */
246
336
  page: number;
337
+ /** Number of items to return per page. */
247
338
  pageSize: number;
339
+ /** Field value to sort results by. */
248
340
  sort?: SortableCredentialColumn;
341
+ /** Direction to sort results by. */
249
342
  sortDirection?: SortDirection;
343
+ /** Specifies the organizational context for this operation. */
250
344
  organisationId: string;
345
+ /** Return only credentials with a name starting with this string. */
251
346
  name?: string;
347
+ /** Filter by one or more country profiles. */
252
348
  profiles?: Array<string>;
349
+ /** Search for a string. */
253
350
  searchText?: string;
351
+ /**
352
+ * Changes where `searchText` is searched. Choose one or more
353
+ * `searchType`s and pass a `searchText`.
354
+ */
254
355
  searchType?: Array<CredentialListQuerySearchType>;
356
+ /** Set which filters apply in an exact way. */
255
357
  exact?: Array<CredentialListQueryExactColumn>;
358
+ /**
359
+ * Filter credentials by one or more roles: issued by the system,
360
+ * verified by the system, or held by the system as a wallet.
361
+ */
256
362
  roles?: Array<CredentialRole>;
363
+ /** Filter by one or more UUIDs. */
257
364
  ids?: Array<string>;
365
+ /** Filter by one or more credential states. */
258
366
  states?: Array<CredentialState>;
367
+ /**
368
+ * Additional fields to include in response objects. Omitting
369
+ * this keeps responses shorter.
370
+ */
259
371
  include?: Array<CredentialListIncludeEntityType>;
372
+ /** Return only credentials with the specified credential schema(s). */
260
373
  credentialSchemaIds?: Array<string>;
374
+ /**
375
+ * Return only credentials created after this time. Timestamp in
376
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
377
+ */
261
378
  createdDateAfter?: string;
379
+ /**
380
+ * Return only credentials created before this time. Timestamp in
381
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
382
+ */
262
383
  createdDateBefore?: string;
384
+ /**
385
+ * Return only credentials last modified after this time. Timestamp in
386
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
387
+ */
263
388
  lastModifiedAfter?: string;
389
+ /**
390
+ * Return only credentials last modified before this time. Timestamp in
391
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
392
+ */
264
393
  lastModifiedBefore?: string;
394
+ /**
395
+ * Return only credentials issued after this time. Timestamp in
396
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
397
+ */
265
398
  issuanceDateAfter?: string;
399
+ /**
400
+ * Return only credentials issued before this time. Timestamp in
401
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
402
+ */
266
403
  issuanceDateBefore?: string;
404
+ /**
405
+ * Return only credentials revoked after this time. Timestamp in
406
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
407
+ */
267
408
  revocationDateAfter?: string;
409
+ /**
410
+ * Return only credentials revoked before this time. Timestamp in
411
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
412
+ */
268
413
  revocationDateBefore?: string;
269
414
  }
270
415
  export interface CredentialQuery {
@@ -440,10 +585,21 @@ export interface ErrorResponse {
440
585
  cause?: Cause;
441
586
  }
442
587
  export interface GenerateKeyRequest {
588
+ /** Specifies the organizational context of this operation. */
443
589
  organisationId: string;
590
+ /**
591
+ * Choose which key algorithm to use to create the key pair. Check
592
+ * `keyAlgorithm` of your configuration for supported options and
593
+ * reference the configured instance.
594
+ */
444
595
  keyType: string;
445
596
  keyParams: Record<string, string>;
597
+ /** Internal label for created key pair. */
446
598
  name: string;
599
+ /**
600
+ * Choose how to store the key. Check `keyStorage` of your configuration
601
+ * for supported options and reference the configured instance.
602
+ */
447
603
  storageType: string;
448
604
  storageParams: Record<string, string>;
449
605
  }
@@ -457,6 +613,7 @@ export interface HandleInvitationRequest {
457
613
  * verifier. For example: "https://example.com/credential-offer".
458
614
  */
459
615
  url: string;
616
+ /** Specifies the organizational context for this operation. */
460
617
  organisationId: string;
461
618
  /**
462
619
  * For configurations with multiple transport protocols enabled you
@@ -494,19 +651,45 @@ export interface HistoryListItem {
494
651
  user?: string;
495
652
  }
496
653
  export interface HistoryListQuery {
654
+ /** Page number to retrieve (0-based indexing). */
497
655
  page: number;
656
+ /** Number of items to return per page. */
498
657
  pageSize: number;
658
+ /** Field value to sort results by. */
659
+ sort?: SortableHistoryColumn;
660
+ /** Direction to sort results by. */
661
+ sortDirection?: SortDirection;
662
+ /** Specifies the organizational context for this operation. */
499
663
  organisationId: string;
664
+ /** Return only events associated with the provided entity IDs. */
500
665
  entityIds?: Array<string>;
666
+ /** Return only events associated with the provided entity types. */
501
667
  entityTypes?: Array<HistoryEntityType>;
668
+ /** Return only the provided events. */
502
669
  actions?: Array<HistoryAction>;
670
+ /**
671
+ * Return only entries created after this time. Timestamp in
672
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
673
+ */
503
674
  createdDateAfter?: string;
675
+ /**
676
+ * Return only entries created before this time. Timestamp in
677
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
678
+ */
504
679
  createdDateBefore?: string;
680
+ /** Return only events associated with the provided identifier ID. */
505
681
  identifierId?: string;
682
+ /** Return only events associated with the provided credential ID. */
506
683
  credentialId?: string;
684
+ /** Return only events associated with the provided credential schema ID. */
507
685
  credentialSchemaId?: string;
686
+ /** Return only events associated with the provided proof ID. */
687
+ proofId?: string;
688
+ /** Return only events associated with the provided proof schema ID. */
508
689
  proofSchemaId?: string;
690
+ /** Search for a string. */
509
691
  search?: HistorySearch;
692
+ /** Return only events associated with the provided user(s). */
510
693
  users?: Array<string>;
511
694
  }
512
695
  export interface HistorySearch {
@@ -514,16 +697,24 @@ export interface HistorySearch {
514
697
  type?: HistorySearchType;
515
698
  }
516
699
  export interface HolderAcceptCredentialRequest {
700
+ /** ID for this issuance. */
517
701
  interactionId: string;
702
+ /** Deprecated. Use `identifierId`. */
518
703
  didId?: string;
519
704
  identifierId?: string;
705
+ /**
706
+ * If you are using an identifier with multiple keys for authentication,
707
+ * specify which key to use. If no key is specified, the first suitable
708
+ * key listed will be used.
709
+ */
520
710
  keyId?: string;
711
+ /** User-provided transaction code. */
521
712
  txCode?: string;
522
- holderWalletUnitId?: string;
523
713
  }
524
714
  export interface HolderRegisterWalletUnitRequest {
715
+ /** The wallet unit's organization. */
525
716
  organisationId: string;
526
- /** Reference the `walletProvider` configuration of the Wallet Provider. */
717
+ /** Reference the `walletProvider` configuration. */
527
718
  walletProvider: WalletProvider;
528
719
  keyType: string;
529
720
  }
@@ -557,6 +748,7 @@ export interface IdentifierDetail {
557
748
  did?: DidDetail;
558
749
  key?: KeyDetail;
559
750
  certificates?: Array<CertificateDetail>;
751
+ trustInformation: Array<IdentifierTrustInformationResponseDto>;
560
752
  }
561
753
  export interface IdentifierList {
562
754
  values: Array<IdentifierListItem>;
@@ -579,6 +771,7 @@ export interface IdentifierListQuery {
579
771
  sort?: SortableIdentifierColumn;
580
772
  sortDirection?: SortDirection;
581
773
  organisationId: string;
774
+ ids?: Array<string>;
582
775
  name?: string;
583
776
  types?: Array<IdentifierType>;
584
777
  states?: Array<IdentifierState>;
@@ -588,11 +781,21 @@ export interface IdentifierListQuery {
588
781
  keyAlgorithms?: Array<string>;
589
782
  keyRoles?: Array<KeyRole>;
590
783
  keyStorages?: Array<string>;
784
+ certificateRoles?: Array<CertificateRole>;
785
+ certificateRolesMatchMode?: CertificateRolesMatchMode;
786
+ trustIssuanceSchemaId?: string;
787
+ trustVerificationSchemaId?: string;
591
788
  createdDateAfter?: string;
592
789
  createdDateBefore?: string;
593
790
  lastModifiedAfter?: string;
594
791
  lastModifiedBefore?: string;
595
792
  }
793
+ export interface IdentifierTrustInformationResponseDto {
794
+ data: string;
795
+ type: IdentifierTrustInformationType;
796
+ validFrom?: string;
797
+ validTo?: string;
798
+ }
596
799
  export interface ImportCredentialSchemaClaimSchema {
597
800
  id: string;
598
801
  createdDate: string;
@@ -643,9 +846,17 @@ export interface ImportProofSchema {
643
846
  createdDate: string;
644
847
  lastModified: string;
645
848
  name: string;
849
+ /** Specifies the organizational context for this operation. */
646
850
  organisationId: string;
851
+ /**
852
+ * Defines how long the system will store data received from wallets. After
853
+ * the defined duration, the received proof and its data are deleted from
854
+ * the system. If 0, proofs received when using this schema will not be
855
+ * deleted.
856
+ */
647
857
  expireDuration: number;
648
858
  importedSourceUrl: string;
859
+ /** Set of all claims to request. */
649
860
  proofInputSchemas: Array<ImportProofSchemaInputSchema>;
650
861
  }
651
862
  export interface ImportProofSchemaClaimSchema {
@@ -682,8 +893,11 @@ export interface ImportProofSchemaRequest {
682
893
  organisationId: string;
683
894
  }
684
895
  export interface InitParams {
896
+ /** Pass a serialized JSON to override the default configuration. */
685
897
  configJson?: string;
898
+ /** Create an instance of the native implementation of Secure Element and pass it here. */
686
899
  nativeSecureElement?: NativeKeyStorage;
900
+ /** Create a custom implementation of HSM and pass it. */
687
901
  remoteSecureElement?: NativeKeyStorage;
688
902
  bleCentral?: BleCentral;
689
903
  blePeripheral?: BlePeripheral;
@@ -695,12 +909,19 @@ export interface InitiateIssuanceAuthorizationDetail {
695
909
  credentialConfigurationId: string;
696
910
  }
697
911
  export interface InitiateIssuanceRequest {
912
+ /** Specifies the organizational context for this operation. */
698
913
  organisationId: string;
914
+ /** Choose a protocol to complete issuance. */
699
915
  protocol: string;
916
+ /** OpenID4VCI authorization request parameter. */
700
917
  issuer: string;
918
+ /** OpenID4VCI authorization request parameter. */
701
919
  clientId: string;
920
+ /** OpenID4VCI authorization request parameter. */
702
921
  redirectUri?: string;
922
+ /** OpenID4VCI authorization request parameter. */
703
923
  scope?: Array<string>;
924
+ /** OpenID4VCI authorization request parameter. */
704
925
  authorizationDetails?: Array<InitiateIssuanceAuthorizationDetail>;
705
926
  }
706
927
  export interface InitiateIssuanceResponse {
@@ -735,15 +956,21 @@ export interface Metadata {
735
956
  dbHash: string;
736
957
  createdAt: string;
737
958
  }
738
- /** Optional messages to be displayed on (iOS) system overlay */
959
+ /** Optional messages to be displayed on (iOS) system overlay. */
739
960
  export interface NfcScanRequest {
740
961
  inProgressMessage?: string;
741
962
  failureMessage?: string;
742
963
  successMessage?: string;
743
964
  }
744
965
  export interface OpenId4vciTxCode {
966
+ /** For validation. */
745
967
  inputMode: OpenId4vciTxCodeInputMode;
968
+ /** Character length of code, to assist the user. */
746
969
  length?: number;
970
+ /**
971
+ * Guidance text displayed in the wallet, describing how to
972
+ * obtain the transaction code.
973
+ */
747
974
  description?: string;
748
975
  }
749
976
  export interface PeripheralDiscoveryData {
@@ -816,11 +1043,19 @@ export interface PresentationDefinitionV2Credential {
816
1043
  profile?: string;
817
1044
  }
818
1045
  export interface PresentationSubmitCredentialRequest {
1046
+ /** ID of the credential to submit. */
819
1047
  credentialId: string;
820
1048
  submitClaims: Array<string>;
821
1049
  }
822
1050
  export interface PresentationSubmitV2CredentialRequest {
1051
+ /** ID of the credential to submit. */
823
1052
  credentialId: string;
1053
+ /**
1054
+ * Array of claim paths for claims where `userSelection: true` that the
1055
+ * holder chooses to share. Only include paths for optional claims the
1056
+ * holder selects. Omit entirely or use an empty array if withholding all
1057
+ * optional claims.
1058
+ */
824
1059
  userSelections: Array<string>;
825
1060
  }
826
1061
  export interface ProofClaim {
@@ -840,24 +1075,47 @@ export interface ProofDetail {
840
1075
  id: string;
841
1076
  createdDate: string;
842
1077
  lastModified: string;
1078
+ /** Identifier of the verifier of this request. */
843
1079
  verifier?: IdentifierListItem;
844
1080
  state: ProofState;
1081
+ /** The role the system has in relation to this request. */
845
1082
  role: ProofRole;
1083
+ /** Schema used for this request. */
846
1084
  proofSchema?: ProofSchemaListItem;
1085
+ /** Protocol used for verification. */
847
1086
  protocol: string;
1087
+ /** Engagement method used for this request. */
848
1088
  engagement?: string;
1089
+ /** Channel used for this request. */
849
1090
  transport: string;
1091
+ /**
1092
+ * The wallet is redirected to this resource once a shared proof
1093
+ * is accepted.
1094
+ */
850
1095
  redirectUri?: string;
1096
+ /** Credential and claim data shared by the wallet holder. */
851
1097
  proofInputs: Array<ProofInput>;
1098
+ /**
1099
+ * Time at which the data shared by the wallet holder for this request
1100
+ * will be deleted. Determined by the `expireDuration` parameter of the
1101
+ * proof schema.
1102
+ */
852
1103
  retainUntilDate?: string;
1104
+ /** When the request was shared with the wallet holder. */
853
1105
  requestedDate?: string;
1106
+ /** When the wallet holder submitted valid proof. */
854
1107
  completedDate?: string;
1108
+ /** When claim data was deleted. */
855
1109
  claimsRemovedAt?: string;
1110
+ /** Country profile associated with this request. */
856
1111
  profile?: string;
857
1112
  }
858
1113
  export interface ProofInput {
1114
+ /** Set of claims asserted by the shared credential. */
859
1115
  claims: Array<ProofClaim>;
1116
+ /** Shared credential metadata. */
860
1117
  credential?: CredentialDetail;
1118
+ /** Credential schema metadata. */
861
1119
  credentialSchema: CredentialSchemaListItem;
862
1120
  }
863
1121
  export interface ProofInputSchema {
@@ -874,37 +1132,96 @@ export interface ProofListItem {
874
1132
  createdDate: string;
875
1133
  lastModified: string;
876
1134
  requestedDate?: string;
1135
+ /** When the wallet holder submitted valid proof. */
877
1136
  completedDate?: string;
878
1137
  verifier?: string;
1138
+ /** Protocol used for verification. */
879
1139
  protocol: string;
1140
+ /** Channel used for this request. */
880
1141
  transport: string;
1142
+ /** Engagement method used for this request. */
881
1143
  engagement?: string;
1144
+ /** State representation of this request. */
882
1145
  state: ProofState;
1146
+ /** The role the system has in relation to this request. */
883
1147
  role: ProofRole;
884
1148
  schema?: ProofSchemaListItem;
1149
+ /**
1150
+ * Time at which the data shared by the wallet holder for this request
1151
+ * will be deleted. Determined by the `expireDuration` parameter of the
1152
+ * proof schema.
1153
+ */
885
1154
  retainUntilDate?: string;
1155
+ /** Country profile associated with this request. */
886
1156
  profile?: string;
887
1157
  }
888
1158
  export interface ProofListQuery {
1159
+ /** Page number to retrieve (0-based indexing). */
889
1160
  page: number;
1161
+ /** Number of items to return per page. */
890
1162
  pageSize: number;
1163
+ /** Specifies the organizational context for this operation. */
891
1164
  organisationId: string;
1165
+ /** Field value to sort results by. */
892
1166
  sort?: SortableProofColumn;
1167
+ /** Direction to sort results by. */
893
1168
  sortDirection?: SortDirection;
1169
+ /** Return only proof requests with a name starting with this string. */
894
1170
  name?: string;
1171
+ /** Filter by one or more country profiles. */
895
1172
  profiles?: Array<string>;
1173
+ /** Filter by one or more UUIDs. */
896
1174
  ids?: Array<string>;
1175
+ /** Filter by one or more proof request states. */
897
1176
  proofStates?: Array<ProofState>;
1177
+ /**
1178
+ * Filter proof requests by one or more roles: requested by the
1179
+ * system (`VERIFIER`) or received by the system (`HOLDER`).
1180
+ */
898
1181
  proofRoles?: Array<ProofRole>;
1182
+ /** Filter by associated proof schemas. */
899
1183
  proofSchemaIds?: Array<string>;
1184
+ /** Set which filters apply in an exact way. */
900
1185
  exact?: Array<ProofListQueryExactColumn>;
1186
+ /**
1187
+ * Return only proof requests created after this time. Timestamp in
1188
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1189
+ */
901
1190
  createdDateAfter?: string;
1191
+ /**
1192
+ * Return only proof requests created before this time. Timestamp in
1193
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1194
+ */
902
1195
  createdDateBefore?: string;
1196
+ /**
1197
+ * Return only proof requests last modified after this time. Timestamp in
1198
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1199
+ */
903
1200
  lastModifiedAfter?: string;
1201
+ /**
1202
+ * Return only proof requests last modified before this time. Timestamp in
1203
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1204
+ */
904
1205
  lastModifiedBefore?: string;
1206
+ /**
1207
+ * Return only proofs requested after this time. Timestamp in
1208
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1209
+ */
905
1210
  requestedDateAfter?: string;
1211
+ /**
1212
+ * Return only proofs requested before this time. Timestamp in
1213
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1214
+ */
906
1215
  requestedDateBefore?: string;
1216
+ /**
1217
+ * Return only proofs requested completed after this time. Timestamp in
1218
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1219
+ */
907
1220
  completedDateAfter?: string;
1221
+ /**
1222
+ * Return only proofs requested completed before this time. Timestamp in
1223
+ * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1224
+ */
908
1225
  completedDateBefore?: string;
909
1226
  }
910
1227
  export interface ProofSchemaDetail {
@@ -912,9 +1229,18 @@ export interface ProofSchemaDetail {
912
1229
  createdDate: string;
913
1230
  lastModified: string;
914
1231
  name: string;
1232
+ /** Specifies organizational context for this operation. */
915
1233
  organisationId: string;
1234
+ /**
1235
+ * Defines how long the system will store data received from wallets. After
1236
+ * the defined duration, the received proof and its data are deleted from
1237
+ * the system. If 0, proofs received when using this schema will not be
1238
+ * deleted.
1239
+ */
916
1240
  expireDuration: number;
1241
+ /** Set of requested claims. */
917
1242
  proofInputSchemas: Array<ProofInputSchema>;
1243
+ /** Source URL for imported schema. */
918
1244
  importedSourceUrl?: string;
919
1245
  }
920
1246
  export interface ProofSchemaList {
@@ -928,6 +1254,12 @@ export interface ProofSchemaListItem {
928
1254
  lastModified: string;
929
1255
  deletedAt?: string;
930
1256
  name: string;
1257
+ /**
1258
+ * Defines how long the system will store data received from wallets. After
1259
+ * the defined duration, the received proof and its data are deleted from
1260
+ * the system. If 0, proofs received when using this schema will not be
1261
+ * deleted.
1262
+ */
931
1263
  expireDuration: number;
932
1264
  }
933
1265
  export interface ProofSchemaListQuery {
@@ -959,6 +1291,17 @@ export interface ProposeProofResponse {
959
1291
  interactionId: string;
960
1292
  url?: string;
961
1293
  }
1294
+ export interface RegisterVerifierInstanceRequest {
1295
+ /** The verifier unit's organization. */
1296
+ organisationId: string;
1297
+ /** The Verifier Provider's reference URL. */
1298
+ verifierProviderUrl: string;
1299
+ /** Reference a configured `verifierProvider` instance. */
1300
+ type: string;
1301
+ }
1302
+ export interface RegisterVerifierInstanceResponse {
1303
+ id: string;
1304
+ }
962
1305
  export interface RemoteTrustEntityDetail {
963
1306
  id: string;
964
1307
  organisationId?: string;
@@ -998,6 +1341,11 @@ export interface ShareProofRequest {
998
1341
  params?: ShareProofRequestParams;
999
1342
  }
1000
1343
  export interface ShareProofRequestParams {
1344
+ /**
1345
+ * For requests made with OpenID4VC, a Client ID Scheme can be
1346
+ * specified here. If no scheme is specified the default scheme
1347
+ * from the configuration is used.
1348
+ */
1001
1349
  clientIdScheme?: ClientIdScheme;
1002
1350
  }
1003
1351
  export interface ShareProofResponse {
@@ -1143,11 +1491,19 @@ export interface UpdateRemoteTrustEntityRequest {
1143
1491
  privacyUrl?: string | null;
1144
1492
  role?: TrustEntityRole;
1145
1493
  }
1494
+ export interface UpdateVerifierInstanceRequest {
1495
+ trustCollections: Array<string>;
1496
+ }
1146
1497
  export interface UpsertOrganisationRequest {
1498
+ /** Unique identifier of the organization to create or update. */
1147
1499
  id: string;
1500
+ /** Organization's display name. */
1148
1501
  name?: string;
1502
+ /** Set to `true` to deactivate the organization. */
1149
1503
  deactivate?: boolean;
1504
+ /** Wallet Provider use only. */
1150
1505
  walletProvider?: string | null;
1506
+ /** Wallet Provider use only. */
1151
1507
  walletProviderIssuer?: string | null;
1152
1508
  }
1153
1509
  export interface Version {
@@ -1225,6 +1581,15 @@ export declare enum CacheType {
1225
1581
  ANDROID_ATTESTATION_CRL = "ANDROID_ATTESTATION_CRL",
1226
1582
  OPEN_ID_METADATA = "OPEN_ID_METADATA"
1227
1583
  }
1584
+ export declare enum CertificateRole {
1585
+ AUTHENTICATION = "AUTHENTICATION",
1586
+ ASSERTION_METHOD = "ASSERTION_METHOD"
1587
+ }
1588
+ /** The mode used to match certificate roles. Default any. */
1589
+ export declare enum CertificateRolesMatchMode {
1590
+ ALL = "ALL",
1591
+ ANY = "ANY"
1592
+ }
1228
1593
  export declare enum CertificateState {
1229
1594
  NOT_YET_ACTIVE = "NOT_YET_ACTIVE",
1230
1595
  ACTIVE = "ACTIVE",
@@ -1336,7 +1701,9 @@ export type HandleInvitationResponse = {
1336
1701
  type_: "CREDENTIAL_ISSUANCE";
1337
1702
  /** For reference. */
1338
1703
  interactionId: string;
1704
+ /** Key storage required to complete issuance. */
1339
1705
  keyStorageSecurityLevels?: Array<KeyStorageSecurity>;
1706
+ /** Key algorithms suitable for issuance. */
1340
1707
  keyAlgorithms?: Array<string>;
1341
1708
  /**
1342
1709
  * Metadata for entering a transaction code
@@ -1345,7 +1712,9 @@ export type HandleInvitationResponse = {
1345
1712
  * This code is typically sent through a separate channel such as SMS or email.
1346
1713
  */
1347
1714
  txCode?: OpenId4vciTxCode;
1715
+ /** Protocol used for issuance. */
1348
1716
  protocol: string;
1717
+ /** Whether a valid WIA is required to complete issuance. */
1349
1718
  requiresWalletInstanceAttestation: boolean;
1350
1719
  } | {
1351
1720
  type_: "AUTHORIZATION_CODE_FLOW";
@@ -1356,6 +1725,7 @@ export type HandleInvitationResponse = {
1356
1725
  * the authorization process with the authorization server.
1357
1726
  */
1358
1727
  authorizationCodeFlowUrl: string;
1728
+ /** Protocol used for issuance. */
1359
1729
  protocol: string;
1360
1730
  } | {
1361
1731
  type_: "PROOF_REQUEST";
@@ -1363,6 +1733,7 @@ export type HandleInvitationResponse = {
1363
1733
  interactionId: string;
1364
1734
  /** Proof request. */
1365
1735
  proofId: string;
1736
+ /** Protocol used for issuance. */
1366
1737
  protocol: string;
1367
1738
  };
1368
1739
  export declare enum HistoryAction {
@@ -1393,7 +1764,9 @@ export declare enum HistoryAction {
1393
1764
  INTERACTION_CREATED = "INTERACTION_CREATED",
1394
1765
  INTERACTION_ERRORED = "INTERACTION_ERRORED",
1395
1766
  INTERACTION_EXPIRED = "INTERACTION_EXPIRED",
1396
- DELIVERED = "DELIVERED"
1767
+ DELIVERED = "DELIVERED",
1768
+ WRP_AC_RECEIVED = "WRP_AC_RECEIVED",
1769
+ WRP_RC_RECEIVED = "WRP_RC_RECEIVED"
1397
1770
  }
1398
1771
  export declare enum HistoryEntityType {
1399
1772
  KEY = "KEY",
@@ -1422,7 +1795,8 @@ export declare enum HistoryEntityType {
1422
1795
  SUPERVISORY_AUTHORITY = "SUPERVISORY_AUTHORITY",
1423
1796
  TRUST_LIST_PUBLICATION = "TRUST_LIST_PUBLICATION",
1424
1797
  TRUST_COLLECTION = "TRUST_COLLECTION",
1425
- TRUST_LIST_SUBSCRIPTION = "TRUST_LIST_SUBSCRIPTION"
1798
+ TRUST_LIST_SUBSCRIPTION = "TRUST_LIST_SUBSCRIPTION",
1799
+ VERIFIER_INSTANCE = "VERIFIER_INSTANCE"
1426
1800
  }
1427
1801
  export type HistoryMetadata = {
1428
1802
  type_: "UNEXPORTABLE_ENTITIES";
@@ -1433,8 +1807,12 @@ export type HistoryMetadata = {
1433
1807
  } | {
1434
1808
  type_: "WALLET_UNIT_JWT";
1435
1809
  value: [string];
1810
+ } | {
1811
+ type_: "CERTIFICATE";
1812
+ value: [string];
1436
1813
  };
1437
1814
  export declare enum HistorySearchType {
1815
+ ALL = "ALL",
1438
1816
  CLAIM_NAME = "CLAIM_NAME",
1439
1817
  CLAIM_VALUE = "CLAIM_VALUE",
1440
1818
  CREDENTIAL_SCHEMA_NAME = "CREDENTIAL_SCHEMA_NAME",
@@ -1451,6 +1829,9 @@ export declare enum IdentifierState {
1451
1829
  ACTIVE = "ACTIVE",
1452
1830
  DEACTIVATED = "DEACTIVATED"
1453
1831
  }
1832
+ export declare enum IdentifierTrustInformationType {
1833
+ REGISTRATION_CERTIFICATE = "REGISTRATION_CERTIFICATE"
1834
+ }
1454
1835
  export declare enum IdentifierType {
1455
1836
  KEY = "KEY",
1456
1837
  DID = "DID",
@@ -1581,6 +1962,14 @@ export declare enum SortableDidColumn {
1581
1962
  DID = "DID",
1582
1963
  DEACTIVATED = "DEACTIVATED"
1583
1964
  }
1965
+ export declare enum SortableHistoryColumn {
1966
+ CREATED_DATE = "CREATED_DATE",
1967
+ ACTION = "ACTION",
1968
+ ENTITY_TYPE = "ENTITY_TYPE",
1969
+ SOURCE = "SOURCE",
1970
+ USER = "USER",
1971
+ ORGANISATION_ID = "ORGANISATION_ID"
1972
+ }
1584
1973
  export declare enum SortableIdentifierColumn {
1585
1974
  NAME = "NAME",
1586
1975
  CREATED_DATE = "CREATED_DATE",
@@ -1736,7 +2125,22 @@ export interface NfcScanner {
1736
2125
  transceive(commandApdu: number[]): Promise<number[]>;
1737
2126
  }
1738
2127
  export interface OneCore {
2128
+ /**
2129
+ * Returns information about items that will be excluded from the
2130
+ * export.
2131
+ */
1739
2132
  backupInfo(): Promise<UnexportableEntities>;
2133
+ /**
2134
+ * Checks whether a held credential has been suspended or revoked.
2135
+ *
2136
+ * For list-based revocation methods, the signed lists and any DID
2137
+ * documents containing public keys used to verify the lists are
2138
+ * cached. Use `forceRefresh` to force the system to retrieve these
2139
+ * from the external resource.
2140
+ *
2141
+ * For modcs, use `forceRefresh` to force the system to request a
2142
+ * new MSO.
2143
+ */
1740
2144
  checkRevocation(credentialIds: Array<string>, forceRefresh: boolean | undefined): Promise<Array<CredentialRevocationCheckResponse>>;
1741
2145
  /**
1742
2146
  * For wallet-initiated flows, continues the OpenID4VCI issuance
@@ -1747,39 +2151,81 @@ export interface OneCore {
1747
2151
  * `myapp://example/credential-offer?code=xxx&clientId=myWallet&...`
1748
2152
  */
1749
2153
  continueIssuance(url: string): Promise<ContinueIssuanceResponse>;
2154
+ /** Creates a backup of the current database and writes it to a file. */
1750
2155
  createBackup(password: string, outputPath: string): Promise<CreatedBackup>;
2156
+ /** Deprecated. Use the `createIdentifier` method. */
1751
2157
  createDid(request: CreateDidRequest): Promise<string>;
2158
+ /** Creates a new identifier. */
1752
2159
  createIdentifier(request: CreateIdentifierRequest): Promise<string>;
2160
+ /** Creates an organization. */
1753
2161
  createOrganisation(request: CreateOrganisationRequest): Promise<string>;
1754
- /** For verifiers, creates a proof request. */
2162
+ /**
2163
+ * For verifiers, creates a proof request. Choose what information to
2164
+ * request via a proof schema, an identifier, and which protocol to use
2165
+ * for making the request.
2166
+ */
1755
2167
  createProof(request: CreateProofRequest): Promise<string>;
2168
+ /**
2169
+ * Creates a proof schema, which defines the credentials and claims to
2170
+ * request from a wallet. Proof schemas reference credential schemas
2171
+ * already created in your own system; create or import those first
2172
+ * before building a proof schema that includes their claims.
2173
+ */
1756
2174
  createProofSchema(request: CreateProofSchemaRequest): Promise<string>;
1757
2175
  createRemoteTrustEntity(request: CreateRemoteTrustEntityRequest): Promise<string>;
1758
2176
  createTrustAnchor(anchor: CreateTrustAnchorRequest): Promise<string>;
1759
2177
  createTrustEntity(request: CreateTrustEntityRequest): Promise<string>;
2178
+ /**
2179
+ * Deletes the system cache. See the
2180
+ * [Caching](https://docs.procivis.ch/configure/caching#cached-entities)
2181
+ * guide for details on cached entities.
2182
+ */
1760
2183
  deleteCache(types: Array<CacheType> | undefined): Promise<void>;
1761
2184
  deleteCredential(credentialId: string): Promise<void>;
2185
+ /** Permanently removes a credential schema. */
1762
2186
  deleteCredentialSchema(credentialSchemaId: string): Promise<void>;
1763
2187
  deleteIdentifier(id: string): Promise<void>;
2188
+ /**
2189
+ * Deletes an incomplete proof request. If the request is in `REQUESTED`
2190
+ * state the proof is retracted instead, retaining history of the interaction.
2191
+ */
1764
2192
  deleteProof(proofId: string): Promise<void>;
1765
2193
  deleteProofClaims(proofId: string): Promise<void>;
1766
2194
  deleteProofSchema(proofSchemaId: string): Promise<void>;
1767
2195
  deleteTrustAnchor(anchorId: string): Promise<void>;
2196
+ /**
2197
+ * Commits to the restored database, replacing the original. The old
2198
+ * database is deleted.
2199
+ */
1768
2200
  finalizeImport(): Promise<void>;
1769
2201
  generateKey(request: GenerateKeyRequest): Promise<string>;
2202
+ /** Returns the system configuration. */
1770
2203
  getConfig(): Promise<Config>;
2204
+ /** Returns detailed information about a credential in the system. */
1771
2205
  getCredential(credentialId: string): Promise<CredentialDetail>;
2206
+ /**
2207
+ * Returns detailed information about a credential schema.
2208
+ * A credential schema defines the structure and format of a credential,
2209
+ * including the attributes that issuers make claims about. Schemas also
2210
+ * specify how issued credentials should be presented in wallets, whether
2211
+ * a revocation method is used to manage credential status, and issuer
2212
+ * preferences for suitable key storage types for wallets to use.
2213
+ */
1772
2214
  getCredentialSchema(credentialSchemaId: string): Promise<CredentialSchemaDetail>;
2215
+ /** Returns details on a single event. */
1773
2216
  getHistoryEntry(historyId: string): Promise<HistoryListItem>;
1774
2217
  getIdentifier(id: string): Promise<IdentifierDetail>;
1775
2218
  getPresentationDefinition(proofId: string): Promise<PresentationDefinition>;
1776
2219
  getPresentationDefinitionV2(proofId: string): Promise<PresentationDefinitionV2>;
2220
+ /** Returns detailed information about a proof request. */
1777
2221
  getProof(proofId: string): Promise<ProofDetail>;
1778
2222
  getProofSchema(proofSchemaId: string): Promise<ProofSchemaDetail>;
1779
2223
  getRemoteTrustEntity(didId: string): Promise<RemoteTrustEntityDetail>;
1780
2224
  getTrustAnchor(trustAnchorId: string): Promise<TrustAnchorDetail>;
1781
2225
  getTrustEntity(trustEntityId: string): Promise<TrustEntityDetail>;
1782
2226
  getTrustEntityByDid(didId: string): Promise<TrustEntityDetail>;
2227
+ /** Returns trust collections curated by the Verifier Provider. */
2228
+ getVerifierInstanceTrustCollections(id: string): Promise<TrustCollections>;
1783
2229
  /**
1784
2230
  * For a wallet, handles the interaction once the wallet connects to a share
1785
2231
  * endpoint URL (for example, scans the QR code of an offered credential or
@@ -1792,38 +2238,59 @@ export interface OneCore {
1792
2238
  * you can specify an existing identifier.
1793
2239
  */
1794
2240
  holderAcceptCredential(request: HolderAcceptCredentialRequest): Promise<string>;
2241
+ /** Returns wallet registration details from the Wallet Provider. */
1795
2242
  holderGetWalletUnit(id: string): Promise<HolderWalletUnit>;
2243
+ /** Returns trust collections curated by the Wallet Provider. */
1796
2244
  holderGetWalletUnitTrustCollections(id: string): Promise<TrustCollections>;
1797
- /** Register with a Wallet Provider. */
2245
+ /** Registers the wallet unit with a Wallet Provider. */
1798
2246
  holderRegisterWalletUnit(request: HolderRegisterWalletUnitRequest): Promise<HolderRegisterWalletUnitResponse>;
1799
2247
  /** Rejects an offered credential. */
1800
2248
  holderRejectCredential(interactionId: string): Promise<void>;
2249
+ /** Rejects a proof request. */
1801
2250
  holderRejectProof(interactionId: string): Promise<void>;
2251
+ /**
2252
+ * Submits a presentation using Presentation Exchange as the query
2253
+ * language; this should be used after `getPresentationDefinition`.
2254
+ */
1802
2255
  holderSubmitProof(interactionId: string, submitCredentials: Record<string, Array<PresentationSubmitCredentialRequest>>): Promise<void>;
2256
+ /**
2257
+ * Submits a presentation using DCQL as a query language; this should
2258
+ * be used after `getPresentationDefinitionv2`.
2259
+ */
1803
2260
  holderSubmitProofV2(interactionId: string, submission: Record<string, Array<PresentationSubmitV2CredentialRequest>>): Promise<void>;
1804
2261
  /**
1805
2262
  * Check status of wallet unit with the Wallet Provider. Will return an error
1806
2263
  * if the unit has been revoked.
1807
2264
  */
1808
2265
  holderWalletUnitStatus(id: string): Promise<void>;
1809
- /** Edit holder wallet unit */
2266
+ /** Modifies wallet unit's settings. */
1810
2267
  holderWalletUnitUpdate(id: string, request: HolderWalletUnitUpdateRequest): Promise<void>;
2268
+ /**
2269
+ * Imports a credential schema shared from another mobile verifier device
2270
+ * using the one-core.
2271
+ */
1811
2272
  importCredentialSchema(request: ImportCredentialSchemaRequest): Promise<string>;
1812
2273
  importProofSchema(request: ImportProofSchemaRequest): Promise<string>;
1813
2274
  /** For wallets, starts the OpenID4VCI Authorization Code Flow. */
1814
2275
  initiateIssuance(request: InitiateIssuanceRequest): Promise<InitiateIssuanceResponse>;
2276
+ /** Returns a filterable list of credential schemas. */
1815
2277
  listCredentialSchemas(query: CredentialSchemaListQuery): Promise<CredentialSchemaList>;
2278
+ /** Returns a filterable list of credentials in the system. */
1816
2279
  listCredentials(query: CredentialListQuery): Promise<CredentialList>;
2280
+ /** Deprecated. Use the `listIdentifiers` method. */
1817
2281
  listDids(query: DidListQuery): Promise<DidList>;
2282
+ /** Returns a filterable list of history events. */
1818
2283
  listHistory(query: HistoryListQuery): Promise<HistoryList>;
2284
+ /** Returns a filterable list of identifiers. */
1819
2285
  listIdentifiers(query: IdentifierListQuery): Promise<IdentifierList>;
1820
2286
  listProofSchemas(filter: ProofSchemaListQuery): Promise<ProofSchemaList>;
2287
+ /** Returns a filterable list of proof requests. */
1821
2288
  listProofs(query: ProofListQuery): Promise<ProofList>;
1822
2289
  listTrustAnchors(filters: TrustAnchorListQuery): Promise<TrustAnchorList>;
1823
2290
  listTrustEntities(filters: TrustEntityListQuery): Promise<TrustEntityList>;
1824
- /** Scan NFC for ISO 18013-5 engagment */
2291
+ /** Scan NFC for ISO 18013-5 engagment. */
1825
2292
  nfcReadIsoMdlEngagement(request: NfcScanRequest): Promise<string>;
1826
- /** Cancel previously started NFC scan via `nfc_read_iso_mdl_engagement` */
2293
+ /** Cancel previously started NFC scan via `nfc_read_iso_mdl_engagement`. */
1827
2294
  nfcStopIsoMdlEngagement(): Promise<void>;
1828
2295
  /**
1829
2296
  * For wallets, initiates device engagement for offline flows. Reference
@@ -1831,16 +2298,47 @@ export interface OneCore {
1831
2298
  * options for `engagement`.
1832
2299
  */
1833
2300
  proposeProof(request: ProposeProofRequest): Promise<ProposeProofResponse>;
2301
+ /** Registers the verifier unit with a Verifier Provider. */
2302
+ registerVerifierInstance(request: RegisterVerifierInstanceRequest): Promise<RegisterVerifierInstanceResponse>;
2303
+ /** Returns the @context of a JSON-LD credential. The result is cached. */
1834
2304
  resolveJsonldContext(url: string): Promise<ResolvedJsonLdContext>;
1835
2305
  resolveTrustEntityByIdentifier(request: ResolveTrustEntitiesRequest): Promise<Record<string, Array<ResolvedTrustEntity>>>;
2306
+ /** Discards the restored database and continues using the original. */
1836
2307
  rollbackImport(): Promise<void>;
2308
+ /**
2309
+ * Runs a task. Check the `task` object of your configuration and reference
2310
+ * the configured instance.
2311
+ */
1837
2312
  runTask(task: string, params: string | undefined): Promise<string>;
2313
+ /**
2314
+ * Produces a URL for sharing a credential schema with another mobile
2315
+ * verifier device using the one-core.
2316
+ */
1838
2317
  shareCredentialSchema(credentialSchemaId: string): Promise<CredentialSchemaShareResponse>;
2318
+ /**
2319
+ * Creates a share URL from a proof request. A wallet holder can use this
2320
+ * URL to access the request.
2321
+ */
1839
2322
  shareProof(proofId: string, params: ShareProofRequest): Promise<ShareProofResponse>;
1840
2323
  shareProofSchema(proofSchemaId: string): Promise<ProofSchemaShareResponse>;
2324
+ /**
2325
+ * Deleting data while uninitializing the Core erases all wallet data permanently.
2326
+ * If data is not deleted it is reused when Core is reinitialized.
2327
+ */
1841
2328
  uninitialize(deleteData: boolean): Promise<void>;
2329
+ /**
2330
+ * Makes the restored database active for calls.
2331
+ * Follow by calling either `finalizeImport` or `rollbackImport`.
2332
+ */
1842
2333
  unpackBackup(password: string, inputPath: string): Promise<Metadata>;
1843
2334
  updateRemoteTrustEntity(request: UpdateRemoteTrustEntityRequest): Promise<void>;
2335
+ /** Modifies verifier unit's settings. */
2336
+ updateVerifierInstance(id: string, request: UpdateVerifierInstanceRequest): Promise<void>;
2337
+ /**
2338
+ * Updates or deactivates an organization if it exists, otherwise
2339
+ * creates a new organization using the provided UUID and name.
2340
+ */
1844
2341
  upsertOrganisation(request: UpsertOrganisationRequest): Promise<void>;
2342
+ /** Returns build information. */
1845
2343
  version(): Version;
1846
2344
  }
@@ -13,6 +13,17 @@ export var CacheType;
13
13
  CacheType["ANDROID_ATTESTATION_CRL"] = "ANDROID_ATTESTATION_CRL";
14
14
  CacheType["OPEN_ID_METADATA"] = "OPEN_ID_METADATA";
15
15
  })(CacheType || (CacheType = {}));
16
+ export var CertificateRole;
17
+ (function (CertificateRole) {
18
+ CertificateRole["AUTHENTICATION"] = "AUTHENTICATION";
19
+ CertificateRole["ASSERTION_METHOD"] = "ASSERTION_METHOD";
20
+ })(CertificateRole || (CertificateRole = {}));
21
+ /** The mode used to match certificate roles. Default any. */
22
+ export var CertificateRolesMatchMode;
23
+ (function (CertificateRolesMatchMode) {
24
+ CertificateRolesMatchMode["ALL"] = "ALL";
25
+ CertificateRolesMatchMode["ANY"] = "ANY";
26
+ })(CertificateRolesMatchMode || (CertificateRolesMatchMode = {}));
16
27
  export var CertificateState;
17
28
  (function (CertificateState) {
18
29
  CertificateState["NOT_YET_ACTIVE"] = "NOT_YET_ACTIVE";
@@ -144,6 +155,8 @@ export var HistoryAction;
144
155
  HistoryAction["INTERACTION_ERRORED"] = "INTERACTION_ERRORED";
145
156
  HistoryAction["INTERACTION_EXPIRED"] = "INTERACTION_EXPIRED";
146
157
  HistoryAction["DELIVERED"] = "DELIVERED";
158
+ HistoryAction["WRP_AC_RECEIVED"] = "WRP_AC_RECEIVED";
159
+ HistoryAction["WRP_RC_RECEIVED"] = "WRP_RC_RECEIVED";
147
160
  })(HistoryAction || (HistoryAction = {}));
148
161
  export var HistoryEntityType;
149
162
  (function (HistoryEntityType) {
@@ -174,9 +187,11 @@ export var HistoryEntityType;
174
187
  HistoryEntityType["TRUST_LIST_PUBLICATION"] = "TRUST_LIST_PUBLICATION";
175
188
  HistoryEntityType["TRUST_COLLECTION"] = "TRUST_COLLECTION";
176
189
  HistoryEntityType["TRUST_LIST_SUBSCRIPTION"] = "TRUST_LIST_SUBSCRIPTION";
190
+ HistoryEntityType["VERIFIER_INSTANCE"] = "VERIFIER_INSTANCE";
177
191
  })(HistoryEntityType || (HistoryEntityType = {}));
178
192
  export var HistorySearchType;
179
193
  (function (HistorySearchType) {
194
+ HistorySearchType["ALL"] = "ALL";
180
195
  HistorySearchType["CLAIM_NAME"] = "CLAIM_NAME";
181
196
  HistorySearchType["CLAIM_VALUE"] = "CLAIM_VALUE";
182
197
  HistorySearchType["CREDENTIAL_SCHEMA_NAME"] = "CREDENTIAL_SCHEMA_NAME";
@@ -195,6 +210,10 @@ export var IdentifierState;
195
210
  IdentifierState["ACTIVE"] = "ACTIVE";
196
211
  IdentifierState["DEACTIVATED"] = "DEACTIVATED";
197
212
  })(IdentifierState || (IdentifierState = {}));
213
+ export var IdentifierTrustInformationType;
214
+ (function (IdentifierTrustInformationType) {
215
+ IdentifierTrustInformationType["REGISTRATION_CERTIFICATE"] = "REGISTRATION_CERTIFICATE";
216
+ })(IdentifierTrustInformationType || (IdentifierTrustInformationType = {}));
198
217
  export var IdentifierType;
199
218
  (function (IdentifierType) {
200
219
  IdentifierType["KEY"] = "KEY";
@@ -284,6 +303,15 @@ export var SortableDidColumn;
284
303
  SortableDidColumn["DID"] = "DID";
285
304
  SortableDidColumn["DEACTIVATED"] = "DEACTIVATED";
286
305
  })(SortableDidColumn || (SortableDidColumn = {}));
306
+ export var SortableHistoryColumn;
307
+ (function (SortableHistoryColumn) {
308
+ SortableHistoryColumn["CREATED_DATE"] = "CREATED_DATE";
309
+ SortableHistoryColumn["ACTION"] = "ACTION";
310
+ SortableHistoryColumn["ENTITY_TYPE"] = "ENTITY_TYPE";
311
+ SortableHistoryColumn["SOURCE"] = "SOURCE";
312
+ SortableHistoryColumn["USER"] = "USER";
313
+ SortableHistoryColumn["ORGANISATION_ID"] = "ORGANISATION_ID";
314
+ })(SortableHistoryColumn || (SortableHistoryColumn = {}));
287
315
  export var SortableIdentifierColumn;
288
316
  (function (SortableIdentifierColumn) {
289
317
  SortableIdentifierColumn["NAME"] = "NAME";
@@ -300,6 +300,19 @@ RCT_EXTERN_METHOD(holderGetWalletUnitTrustCollections:(NSString *)walletUnitId
300
300
  resolver:(RCTPromiseResolveBlock)resolve
301
301
  rejecter:(RCTPromiseRejectBlock)reject)
302
302
 
303
+ RCT_EXTERN_METHOD(registerVerifierInstance:(NSDictionary *)request
304
+ resolver:(RCTPromiseResolveBlock)resolve
305
+ rejecter:(RCTPromiseRejectBlock)reject)
306
+
307
+ RCT_EXTERN_METHOD(updateVerifierInstance:(NSString *)verifierInstanceId
308
+ request:(NSDictionary *)request
309
+ resolver:(RCTPromiseResolveBlock)resolve
310
+ rejecter:(RCTPromiseRejectBlock)reject)
311
+
312
+ RCT_EXTERN_METHOD(getVerifierInstanceTrustCollections:(NSString *)verifierInstanceId
313
+ resolver:(RCTPromiseResolveBlock)resolve
314
+ rejecter:(RCTPromiseRejectBlock)reject)
315
+
303
316
  RCT_EXTERN_METHOD(nfcReadIsoMdlEngagement:(NSDictionary *)request
304
317
  resolver:(RCTPromiseResolveBlock)resolve
305
318
  rejecter:(RCTPromiseRejectBlock)reject)
@@ -921,6 +921,43 @@ class ProcivisOneCoreModule: RCTEventEmitter {
921
921
  }
922
922
  }
923
923
 
924
+ @objc(registerVerifierInstance:resolver:rejecter:)
925
+ func registerVerifierInstance(
926
+ request: NSDictionary,
927
+ resolve: @escaping RCTPromiseResolveBlock,
928
+ reject: @escaping RCTPromiseRejectBlock
929
+ ) {
930
+ asyncCall(resolve, reject) {
931
+ let result = try await self.getCore().registerVerifierInstance(request: try deserialize(request))
932
+ return try serializeAny(result)
933
+ }
934
+ }
935
+
936
+ @objc(updateVerifierInstance:request:resolver:rejecter:)
937
+ func updateVerifierInstance(
938
+ verifierInstanceId: String,
939
+ request: NSDictionary,
940
+ resolve: @escaping RCTPromiseResolveBlock,
941
+ reject: @escaping RCTPromiseRejectBlock
942
+ ) {
943
+ asyncCall(resolve, reject) {
944
+ try await self.getCore().updateVerifierInstance(id: verifierInstanceId, request: try deserialize(request))
945
+ return nil as NSDictionary?
946
+ }
947
+ }
948
+
949
+ @objc(getVerifierInstanceTrustCollections:resolver:rejecter:)
950
+ func getVerifierInstanceTrustCollections(
951
+ verifierInstanceId: String,
952
+ resolve: @escaping RCTPromiseResolveBlock,
953
+ reject: @escaping RCTPromiseRejectBlock
954
+ ) {
955
+ asyncCall(resolve, reject) {
956
+ let result = try await self.getCore().getVerifierInstanceTrustCollections(id: verifierInstanceId)
957
+ return try serializeAny(result)
958
+ }
959
+ }
960
+
924
961
  @objc(nfcReadIsoMdlEngagement:resolver:rejecter:)
925
962
  func nfcReadIsoMdlEngagement(
926
963
  request: NSDictionary,
@@ -3,10 +3,6 @@ import UIKit
3
3
  @objc
4
4
  public class RSEPinPad: UIView {
5
5
 
6
- static let sharedPinPad: UBQPinPad = {
7
- fatalError("sharedPinPad() has not been implemented")
8
- }()
9
-
10
6
  override init(frame: CGRect) {
11
7
  fatalError("init(frame:) has not been implemented")
12
8
  }
@@ -1,6 +1,5 @@
1
1
  #import <React/RCTComponent.h>
2
2
  #import <React/RCTViewManager.h>
3
- #import <UBQKit/UBQKit.h>
4
3
  #import "react_native_one_core-Swift.h"
5
4
 
6
5
  @interface RSEPinPadManager : RCTViewManager
@@ -64,6 +64,11 @@ private func serialize(historyMetadata: HistoryMetadata) throws -> NSDictionary
64
64
  "type_": "WALLET_UNIT_JWT",
65
65
  "value": [value]
66
66
  ];
67
+ case let .certificate(value):
68
+ return [
69
+ "type_": "CERTIFICATE",
70
+ "value": [value]
71
+ ];
67
72
  }
68
73
  }
69
74
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@procivis/react-native-one-core",
3
- "version": "1.95657.0",
3
+ "version": "1.98296.0",
4
4
  "author": "Procivis AG (https://procivis.ch)",
5
5
  "license": "Apache-2.0",
6
6
  "description": "ONE core bindings for React Native",