@procivis/react-native-one-core 1.133039.0 → 1.134079.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.
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/133039/android/onecore-debug.aar",
5
- "sha1": "784656f7849f8ad2898a52815c4bad4a2285efab"
4
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/134079/android/onecore-debug.aar",
5
+ "sha1": "20b32091288c6ec07e8f92e016ce9824badb4f5d"
6
6
  },
7
7
  "release": {
8
- "url": "https://onesdk.blob.core.windows.net/core-sdk/133039/android/onecore-release.aar",
9
- "sha1": "d6d85c3b594dd214905f366bc80451e7b06c6601"
8
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/134079/android/onecore-release.aar",
9
+ "sha1": "6333d2e66b1677a5769863cf502c963894d030b8"
10
10
  }
11
11
  },
12
12
  "ios": {
13
- "url": "https://onesdk.blob.core.windows.net/core-sdk/133039/ios/deploy.zip",
14
- "sha1": "b0a910facc05bdfa239b31a1c7f09c8c9feb0092"
13
+ "url": "https://onesdk.blob.core.windows.net/core-sdk/134079/ios/deploy.zip",
14
+ "sha1": "5a619709874ecd86916d7797ca97ce65194d6f82"
15
15
  }
16
16
  }
@@ -114,7 +114,7 @@ export interface Config {
114
114
  globalSettings: GlobalSettings;
115
115
  }
116
116
  export interface ContinueIssuanceResponse {
117
- /** For reference. */
117
+ /** Use with `holderAcceptCredential` and `holderRejectCredential`. */
118
118
  interactionId: string;
119
119
  /** Key storage required to complete issuance. */
120
120
  keyStorageSecurityLevels?: Array<KeyStorageSecurity>;
@@ -124,6 +124,7 @@ export interface ContinueIssuanceResponse {
124
124
  requiresWalletInstanceAttestation: boolean;
125
125
  /** Protocol used for issuance. */
126
126
  protocol: string;
127
+ /** Ecosystem applied to this interaction. */
127
128
  ecosystem?: string;
128
129
  }
129
130
  export interface CreateCertificateAuthorityRequest {
@@ -191,20 +192,26 @@ export interface CreateOrganisationRequest {
191
192
  /** If no UUID is passed, one will be created. */
192
193
  id?: string;
193
194
  parentOrganisation?: string;
195
+ /** Policy-level configuration for this organization. */
196
+ configuration?: SetOrganisationConfiguration;
194
197
  }
195
198
  /**
196
- * If protocol is `ISO_MDL`, specify the device engagement type
197
- * by referencing an entry from `verificationEngagement` of your
198
- * configuration. `iso_mdl_engagement` accepts either QR code content
199
- * (for QR device engagement) or NFC engagement parameters from
200
- * `nfc_read_iso_mdl_engagement`.
199
+ * If `protocol` is `ISO_MDL`, also set `engagement`, `isoMdlEngagement`,
200
+ * and `transport`.
201
201
  */
202
202
  export interface CreateProofRequest {
203
203
  /** Choose a proof schema to use. */
204
204
  proofSchemaId: string;
205
205
  /** Deprecated. Use `verifierIdentifierId`. */
206
206
  verifierDidId?: string;
207
- /** Choose the identifier to use to make the request. */
207
+ /**
208
+ * Choose the identifier to use to make the request. Either this or
209
+ * the deprecated `verifierDidId` must be set.
210
+ *
211
+ * For `ISO_MDL`, a certificate identifier enables reader
212
+ * authentication, so the wallet can verify who is asking. Key
213
+ * identifiers are not allowed.
214
+ */
208
215
  verifierIdentifierId?: string;
209
216
  /**
210
217
  * Choose the protocol to use for verification. Check the
@@ -226,24 +233,48 @@ export interface CreateProofRequest {
226
233
  verifierKey?: string;
227
234
  /**
228
235
  * If the identifier contains multiple certificates, use this to
229
- * specify which key to use. If omitted, the first suitable
236
+ * specify which certificate to use. If omitted, the first suitable
230
237
  * certificate is used.
231
238
  */
232
239
  verifierCertificate?: string;
233
- /** Use to specify device engagement type. */
240
+ /**
241
+ * For `ISO_MDL`, the device engagement data received from the
242
+ * wallet: the scanned QR code content, or the result of
243
+ * `nfcReadIsoMdlEngagement`.
244
+ */
234
245
  isoMdlEngagement?: string;
235
246
  /**
236
247
  * Choose the transport protocol for the exchange. Check the
237
248
  * `transport` object of your configuration for supported
238
- * options and reference the configuration instance.
249
+ * options and reference the configuration instance. For
250
+ * `ISO_MDL`, use `BLE`.
239
251
  */
240
252
  transport?: Array<string>;
241
- /** Country profile to associate with this request. */
253
+ /**
254
+ * Country profile to associate with this request. See
255
+ * [Country Profiles](https://docs.procivis.ch/profiles) for more
256
+ * information.
257
+ */
242
258
  profile?: string;
243
- /** Use for ISO mDL verification over BLE. */
259
+ /**
260
+ * For `ISO_MDL`, the device engagement method used to receive
261
+ * `isoMdlEngagement`, such as `NFC` or `QR_CODE`. Reference an
262
+ * entry from the `verificationEngagement` object of your configuration.
263
+ */
244
264
  engagement?: string;
245
- /** Optional transaction data to request authorization for. */
265
+ /**
266
+ * Optional transaction data to request authorization for. Only
267
+ * supported for OpenID4VP. See
268
+ * [Transaction Authorization for Verifiers](https://docs.procivis.ch/verify/transaction-authorization)
269
+ * for more information.
270
+ */
246
271
  transactionData?: Array<ProofRequestTransactionData>;
272
+ /**
273
+ * Use this to enforce the constraints of a regulatory ecosystem
274
+ * for this request. See
275
+ * [Enforcing an Ecosystem as a Verifier](https://docs.procivis.ch/verify/ecosystem-enforcement)
276
+ * for more information.
277
+ */
247
278
  ecosystem?: string;
248
279
  }
249
280
  export interface CreateProofSchemaInput {
@@ -471,7 +502,12 @@ export interface CredentialListQuery {
471
502
  revocationDateBefore?: string;
472
503
  }
473
504
  export interface CredentialQuery {
505
+ /** Whether more than one credential can be submitted for this query. */
474
506
  multiple: boolean;
507
+ /**
508
+ * Either the wallet's credentials that match this query, or the
509
+ * reason no credential matches.
510
+ */
475
511
  credentialOrFailureHint: ApplicableCredentialOrFailureHint;
476
512
  }
477
513
  export interface CredentialQueryFailureHint {
@@ -628,7 +664,15 @@ export interface CredentialSchemaWalletAttestation {
628
664
  preferredInstanceAttestationLifetime?: number;
629
665
  }
630
666
  export interface CredentialSet {
667
+ /**
668
+ * Whether this set must be satisfied for the request to be
669
+ * satisfied.
670
+ */
631
671
  required: boolean;
672
+ /**
673
+ * Alternative combinations of credential query IDs. Satisfying any
674
+ * one combination satisfies the set.
675
+ */
632
676
  options: Array<Array<string>>;
633
677
  }
634
678
  export interface DeviceInfo {
@@ -824,6 +868,13 @@ export interface HandleInvitationRequest {
824
868
  * "myapp://example".
825
869
  */
826
870
  redirectUri?: string;
871
+ /**
872
+ * Use this to enforce the constraints of a regulatory ecosystem
873
+ * for this interaction. If omitted, every ecosystem available to
874
+ * the wallet checks the interaction. See
875
+ * [Enforcing an Ecosystem as a Wallet](https://docs.procivis.ch/hold/ecosystem-enforcement)
876
+ * for more information.
877
+ */
827
878
  ecosystem?: string;
828
879
  }
829
880
  export interface HistoryErrorMetadata {
@@ -925,6 +976,15 @@ export interface HolderAcceptCredentialRequest {
925
976
  interactionId: string;
926
977
  /** Deprecated. Use `identifierId`. */
927
978
  didId?: string;
979
+ /**
980
+ * Pass nothing here for the recommended key auto-generation. See
981
+ * [Auto-generate Keys for Issuance](https://docs.procivis.ch/configure/auto-generate-keys)
982
+ * for more information.
983
+ *
984
+ * Alternatively, choose an existing identifier to hold the credential.
985
+ * If neither this nor the deprecated `didId` is set, the system generates
986
+ * a new identifier that matches the issuer's restrictions.
987
+ */
928
988
  identifierId?: string;
929
989
  /**
930
990
  * If you are using an identifier with multiple keys for authentication,
@@ -1215,6 +1275,12 @@ export interface InitiateIssuanceRequest {
1215
1275
  scope?: Array<string>;
1216
1276
  /** OpenID4VCI authorization request parameter. */
1217
1277
  authorizationDetails?: Array<InitiateIssuanceAuthorizationDetail>;
1278
+ /**
1279
+ * Use this to enforce the constraints of a regulatory ecosystem
1280
+ * for this issuance. See
1281
+ * [Enforcing an Ecosystem as a Wallet](https://docs.procivis.ch/hold/ecosystem-enforcement)
1282
+ * for more information.
1283
+ */
1218
1284
  ecosystem?: string;
1219
1285
  }
1220
1286
  export interface InitiateIssuanceResponse {
@@ -1343,16 +1409,39 @@ export interface PresentationDefinitionTransactionData {
1343
1409
  type: string;
1344
1410
  credentialQueryIds: Array<string>;
1345
1411
  }
1412
+ /**
1413
+ * What a proof request asks for, together with the wallet's credentials
1414
+ * that can satisfy it.
1415
+ */
1346
1416
  export interface PresentationDefinitionV2 {
1417
+ /**
1418
+ * One entry per requested credential, keyed by credential query ID.
1419
+ * Use these IDs as the keys of the submission for
1420
+ * `holderSubmitProofV2`.
1421
+ */
1347
1422
  credentialQueries: Record<string, CredentialQuery>;
1423
+ /** Combinations of credential queries that satisfy the request. */
1348
1424
  credentialSets: Array<CredentialSet>;
1425
+ /**
1426
+ * Transaction data entries attached to the request. Get the details
1427
+ * of an entry with `holderGetTransactionData`.
1428
+ */
1349
1429
  transactionData: Array<PresentationDefinitionTransactionData>;
1350
1430
  }
1351
1431
  export interface PresentationDefinitionV2Claim {
1432
+ /** Path of the claim. Use it in `userSelections` when submitting. */
1352
1433
  path: string;
1353
1434
  schema: ClaimSchemaInfo;
1354
1435
  value: PresentationDefinitionV2ClaimValue;
1436
+ /**
1437
+ * Whether the holder can choose whether to share this claim. To
1438
+ * share it, include its `path` in `userSelections` when submitting.
1439
+ */
1355
1440
  userSelection: boolean;
1441
+ /**
1442
+ * Whether the verifier marked this claim as required. Always
1443
+ * `false` for `ISO_MDL` requests.
1444
+ */
1356
1445
  required: boolean;
1357
1446
  }
1358
1447
  export interface PresentationDefinitionV2Credential {
@@ -1395,9 +1484,11 @@ export interface PresentationSubmitV2CredentialRequest {
1395
1484
  userSelections?: Array<string>;
1396
1485
  /**
1397
1486
  * Optional ids of transaction-data entries to bind to this credential.
1398
- * Entries not listed here are auto-assigned. Ids must reference transaction
1487
+ * Entries not listed here are auto-assigned. IDs must reference transaction
1399
1488
  * data applicable to this credential. Omit entirely or use an empty array
1400
- * to auto-assign all transaction data.
1489
+ * to auto-assign all transaction data. See
1490
+ * [Transaction Authorization for Wallets](https://docs.procivis.ch/hold/transaction-authorization)
1491
+ * for more information.
1401
1492
  */
1402
1493
  transactionDataIds?: Array<string>;
1403
1494
  }
@@ -1450,12 +1541,26 @@ export interface ProofDetail {
1450
1541
  completedDate?: string;
1451
1542
  /** When claim data was deleted. */
1452
1543
  claimsRemovedAt?: string;
1453
- /** Country profile associated with this request. */
1544
+ /**
1545
+ * Country profile associated with this request. See
1546
+ * [Country Profiles](https://docs.procivis.ch/profiles) for more
1547
+ * information.
1548
+ */
1454
1549
  profile?: string;
1455
1550
  /** Trust information of the verifier, if any. */
1456
1551
  trustInformation?: TrustInformation;
1457
- /** Transaction data attached to this proof request. Present only if the proof role is `VERIFIER`. */
1552
+ /**
1553
+ * Transaction data attached to this proof request. Present only if the proof
1554
+ * role is `VERIFIER`. See
1555
+ * [Transaction Authorization for Verifiers](https://docs.procivis.ch/verify/transaction-authorization)
1556
+ * for more information.
1557
+ */
1458
1558
  transactionData?: Array<TransactionDataResponse>;
1559
+ /**
1560
+ * Ecosystem applied to this request. See
1561
+ * [Ecosystems](https://docs.procivis.ch/ecosystems)
1562
+ * for more information.
1563
+ */
1459
1564
  ecosystem?: string;
1460
1565
  }
1461
1566
  export interface ProofInput {
@@ -1504,8 +1609,17 @@ export interface ProofListItem {
1504
1609
  * proof schema.
1505
1610
  */
1506
1611
  retainUntilDate?: string;
1507
- /** Country profile associated with this request. */
1612
+ /**
1613
+ * Country profile associated with this request. See
1614
+ * [Country Profiles](https://docs.procivis.ch/profiles) for more
1615
+ * information.
1616
+ */
1508
1617
  profile?: string;
1618
+ /**
1619
+ * Ecosystem applied to this request. See
1620
+ * [Ecosystems](https://docs.procivis.ch/ecosystems)
1621
+ * for more information.
1622
+ */
1509
1623
  ecosystem?: string;
1510
1624
  redirectUri?: string;
1511
1625
  }
@@ -1522,8 +1636,17 @@ export interface ProofListQuery {
1522
1636
  sortDirection?: SortDirection;
1523
1637
  /** Return only proof requests with a name starting with this string. */
1524
1638
  name?: string;
1525
- /** Filter by one or more country profiles. */
1639
+ /**
1640
+ * Filter by one or more country profiles. See
1641
+ * [Country Profiles](https://docs.procivis.ch/profiles) for more
1642
+ * information.
1643
+ */
1526
1644
  profiles?: Array<string>;
1645
+ /**
1646
+ * Filter by ecosystem applied to proof. See
1647
+ * [Ecosystems](https://docs.procivis.ch/ecosystems)
1648
+ * for more information.
1649
+ */
1527
1650
  ecosystems?: Array<string>;
1528
1651
  /** Filter by one or more UUIDs. */
1529
1652
  ids?: Array<string>;
@@ -1569,12 +1692,12 @@ export interface ProofListQuery {
1569
1692
  */
1570
1693
  requestedDateBefore?: string;
1571
1694
  /**
1572
- * Return only proofs requested completed after this time. Timestamp in
1695
+ * Return only proofs completed after this time. Timestamp in
1573
1696
  * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1574
1697
  */
1575
1698
  completedDateAfter?: string;
1576
1699
  /**
1577
- * Return only proofs requested completed before this time. Timestamp in
1700
+ * Return only proofs completed before this time. Timestamp in
1578
1701
  * RFC 3339 format (for example `2023-06-09T14:19:57.000Z`).
1579
1702
  */
1580
1703
  completedDateBefore?: string;
@@ -1666,15 +1789,44 @@ export interface ProofTransactionData {
1666
1789
  rawTransactionData?: string;
1667
1790
  }
1668
1791
  export interface ProposeProofRequest {
1792
+ /**
1793
+ * Choose the protocol to use. Check the `verificationProtocol`
1794
+ * object of your configuration for supported options and reference
1795
+ * the configuration instance.
1796
+ */
1669
1797
  protocol: string;
1798
+ /** Specifies the organizational context for this operation. */
1670
1799
  organisationId: string;
1800
+ /**
1801
+ * The device engagement method to offer. Reference one or more entries
1802
+ * from the `verificationEngagement` object of your configuration.
1803
+ */
1671
1804
  engagement: Array<string>;
1805
+ /**
1806
+ * Text shown on the iOS system overlay during NFC engagement. Has
1807
+ * no effect for QR code engagement or on Android.
1808
+ */
1672
1809
  uiMessage?: string;
1810
+ /**
1811
+ * Use this to enforce the constraints of a regulatory ecosystem
1812
+ * for this presentation. See
1813
+ * [Enforcing an Ecosystem as a Wallet](https://docs.procivis.ch/hold/ecosystem-enforcement)
1814
+ * for more information.
1815
+ */
1673
1816
  ecosystem?: string;
1674
1817
  }
1675
1818
  export interface ProposeProofResponse {
1819
+ /**
1820
+ * ID of the proof, created in `PENDING` state. Use it with
1821
+ * `getProof` and `getPresentationDefinitionV2`.
1822
+ */
1676
1823
  proofId: string;
1824
+ /** Use with `holderSubmitProofV2` and `holderRejectProof`. */
1677
1825
  interactionId: string;
1826
+ /**
1827
+ * For QR code engagement, the device engagement data to display as a
1828
+ * QR code. Not returned for NFC engagement.
1829
+ */
1678
1830
  url?: string;
1679
1831
  }
1680
1832
  export interface QesAuthorizeRequest {
@@ -1731,6 +1883,25 @@ export interface ServiceDescription {
1731
1883
  advertisedServiceData?: number[];
1732
1884
  characteristics: Array<CharacteristicSettings>;
1733
1885
  }
1886
+ export interface SetOrganisationConfiguration {
1887
+ selectedEcosystems?: Array<string>;
1888
+ /**
1889
+ * When true, the issuer will only issue credentials to wallet units of one of
1890
+ * the selected ecosystems.
1891
+ */
1892
+ enforceEcosystemAsIssuer?: boolean;
1893
+ /**
1894
+ * When true, the wallet only accepts issuance and presentation requests
1895
+ * from members of one of the selected ecosystems.
1896
+ */
1897
+ enforceEcosystemAsHolder?: boolean;
1898
+ /**
1899
+ * When true, the verifier will only accept presentations of credentials
1900
+ * issued by issuers of the selected ecosystems. Ecosystems must be consistent
1901
+ * across presentations belonging to the same proof request.
1902
+ */
1903
+ enforceEcosystemAsVerifier?: boolean;
1904
+ }
1734
1905
  export interface ShareProofRequest {
1735
1906
  params?: ShareProofRequestParams;
1736
1907
  }
@@ -1790,25 +1961,6 @@ export interface UnexportableEntities {
1790
1961
  totalDids: number;
1791
1962
  totalIdentifiers: number;
1792
1963
  }
1793
- export interface UpsertOrganisationConfiguration {
1794
- selectedEcosystems?: Array<string>;
1795
- /**
1796
- * When true, the issuer will only issue credentials to wallet units of one of
1797
- * the selected ecosystems.
1798
- */
1799
- enforceEcosystemAsIssuer?: boolean;
1800
- /**
1801
- * When true, the wallet only accepts issuance and presentation requests
1802
- * from members of one of the selected ecosystems.
1803
- */
1804
- enforceEcosystemAsHolder?: boolean;
1805
- /**
1806
- * When true, the verifier will only accept presentations of credentials
1807
- * issued by issuers of the selected ecosystems. Ecosystems must be consistent
1808
- * across presentations belonging to the same proof request.
1809
- */
1810
- enforceEcosystemAsVerifier?: boolean;
1811
- }
1812
1964
  export interface UpsertOrganisationRequest {
1813
1965
  /** Unique identifier of the organization to create or update. */
1814
1966
  id: string;
@@ -1823,7 +1975,7 @@ export interface UpsertOrganisationRequest {
1823
1975
  /** Verifier Provider use only. */
1824
1976
  verifierProviderIssuer?: string | null;
1825
1977
  /** Policy-level configuration for this organization. */
1826
- configuration?: UpsertOrganisationConfiguration;
1978
+ configuration?: SetOrganisationConfiguration;
1827
1979
  /**
1828
1980
  * The trust collections this organization's wallet subscribes to,
1829
1981
  * selected from those made available by the Wallet Provider. Omit to
@@ -1895,11 +2047,15 @@ export interface WalletProviderDetail {
1895
2047
  export interface WalletRelyingPartyMetadata {
1896
2048
  name?: string;
1897
2049
  }
1898
- export type ApplicableCredentialOrFailureHint = {
2050
+ export type ApplicableCredentialOrFailureHint =
2051
+ /** The wallet's credentials that match the query. */
2052
+ {
1899
2053
  type_: "APPLICABLE_CREDENTIALS";
1900
2054
  applicableCredentials: Array<PresentationDefinitionV2Credential>;
1901
2055
  purpose?: Record<string, string>;
1902
- } | {
2056
+ }
2057
+ /** Why no credential in the wallet matches the query. */
2058
+ | {
1903
2059
  type_: "FAILURE_HINT";
1904
2060
  failureHint: CredentialQueryFailureHint;
1905
2061
  };
@@ -2045,8 +2201,17 @@ export declare enum CredentialListQuerySearchType {
2045
2201
  CREDENTIAL_SCHEMA_NAME = "CREDENTIAL_SCHEMA_NAME"
2046
2202
  }
2047
2203
  export declare enum CredentialQueryFailureReason {
2204
+ /** The wallet holds no credential of the requested type. */
2048
2205
  NO_CREDENTIAL = "NO_CREDENTIAL",
2206
+ /**
2207
+ * Credentials of the requested type exist, but none is currently
2208
+ * valid.
2209
+ */
2049
2210
  VALIDITY = "VALIDITY",
2211
+ /**
2212
+ * Credentials of the requested type exist, but none satisfies the
2213
+ * constraints of the request.
2214
+ */
2050
2215
  CONSTRAINT = "CONSTRAINT"
2051
2216
  }
2052
2217
  export declare enum CredentialRole {
@@ -2107,7 +2272,7 @@ export declare enum EcosystemTrustResult {
2107
2272
  }
2108
2273
  export type HandleInvitationResponse = {
2109
2274
  type_: "CREDENTIAL_ISSUANCE";
2110
- /** For reference. */
2275
+ /** Use with `holderAcceptCredential` and `holderRejectCredential`. */
2111
2276
  interactionId: string;
2112
2277
  /** Key storage required to complete issuance. */
2113
2278
  keyStorageSecurityLevels?: Array<KeyStorageSecurity>;
@@ -2124,6 +2289,7 @@ export type HandleInvitationResponse = {
2124
2289
  protocol: string;
2125
2290
  /** Whether a valid WIA is required to complete issuance. */
2126
2291
  requiresWalletInstanceAttestation: boolean;
2292
+ /** Ecosystem applied to this interaction. */
2127
2293
  ecosystem?: string;
2128
2294
  /** One entry per ecosystem provider that rejected the artifact, keyed by provider id. */
2129
2295
  ecosystemErrors: Record<string, EcosystemOutcome>;
@@ -2138,17 +2304,22 @@ export type HandleInvitationResponse = {
2138
2304
  authorizationCodeFlowUrl: string;
2139
2305
  /** Protocol used for issuance. */
2140
2306
  protocol: string;
2307
+ /** Ecosystem applied to this interaction. */
2141
2308
  ecosystem?: string;
2142
2309
  /** One entry per ecosystem provider that rejected the artifact, keyed by provider id. */
2143
2310
  ecosystemErrors: Record<string, EcosystemOutcome>;
2144
2311
  } | {
2145
2312
  type_: "PROOF_REQUEST";
2146
- /** For reference. */
2313
+ /** Use with `holderSubmitProofV2` and `holderRejectProof`. */
2147
2314
  interactionId: string;
2148
- /** Proof request. */
2315
+ /**
2316
+ * ID of the proof request. Use it with `getProof` and
2317
+ * `getPresentationDefinitionV2`.
2318
+ */
2149
2319
  proofId: string;
2150
2320
  /** Protocol used for issuance. */
2151
2321
  protocol: string;
2322
+ /** Ecosystem applied to this interaction. */
2152
2323
  ecosystem?: string;
2153
2324
  /** One entry per ecosystem provider that rejected the artifact, keyed by provider id. */
2154
2325
  ecosystemErrors: Record<string, EcosystemOutcome>;
@@ -2367,20 +2538,62 @@ export declare enum ProofListQueryExactColumn {
2367
2538
  NAME = "NAME"
2368
2539
  }
2369
2540
  export declare enum ProofRole {
2541
+ /** The system received this request. */
2370
2542
  HOLDER = "HOLDER",
2543
+ /** The system made this request. */
2371
2544
  VERIFIER = "VERIFIER"
2372
2545
  }
2373
2546
  export declare enum ProofSchemaListQueryExactColumn {
2374
2547
  NAME = "NAME"
2375
2548
  }
2549
+ /**
2550
+ * State of a proof request. Some states mean something different
2551
+ * depending on whether the system is the holder or the verifier of the
2552
+ * request. See [Proof States as a Verifier](https://docs.procivis.ch/verify/states)
2553
+ * and [Proof States as a Holder](https://docs.procivis.ch/hold/manage-credentials-requests#proof-request-states-as-a-holder)
2554
+ * for complete state diagrams.
2555
+ */
2376
2556
  export declare enum ProofState {
2557
+ /**
2558
+ * For verifiers, the request was created but not yet shared with a
2559
+ * wallet.
2560
+ */
2377
2561
  CREATED = "CREATED",
2562
+ /**
2563
+ * Waiting for the other party. For verifiers, the request was shared
2564
+ * or, for `ISO_MDL`, created from the wallet's engagement data. For
2565
+ * holders, device engagement was started with `proposeProof`.
2566
+ */
2378
2567
  PENDING = "PENDING",
2568
+ /**
2569
+ * The request reached the wallet and is waiting for the holder to
2570
+ * respond.
2571
+ */
2379
2572
  REQUESTED = "REQUESTED",
2573
+ /**
2574
+ * For verifiers, the presentation was received and verified. For
2575
+ * holders, the presentation was submitted.
2576
+ */
2380
2577
  ACCEPTED = "ACCEPTED",
2578
+ /**
2579
+ * The holder rejected the request. Not all protocols report a
2580
+ * rejection to the verifier.
2581
+ */
2381
2582
  REJECTED = "REJECTED",
2583
+ /**
2584
+ * The request was cancelled with `deleteProof` after it reached
2585
+ * `REQUESTED`. The history of the interaction is retained.
2586
+ */
2382
2587
  RETRACTED = "RETRACTED",
2588
+ /**
2589
+ * A technical error occurred or, for verifiers, the presentation
2590
+ * could not be verified.
2591
+ */
2383
2592
  ERROR = "ERROR",
2593
+ /**
2594
+ * For verifiers, the shared request expired before a wallet
2595
+ * connected. Share it again with `shareProof`.
2596
+ */
2384
2597
  INTERACTION_EXPIRED = "INTERACTION_EXPIRED"
2385
2598
  }
2386
2599
  export declare enum SortDirection {
@@ -2565,9 +2778,15 @@ export interface OneCore {
2565
2778
  /** Creates an organization. */
2566
2779
  createOrganisation(request: CreateOrganisationRequest): Promise<string>;
2567
2780
  /**
2568
- * For verifiers, creates a proof request. Choose what information to
2569
- * request via a proof schema, an identifier, and which protocol to use
2570
- * for making the request.
2781
+ * For verifiers, creates a proof request and returns its ID. Choose
2782
+ * what information to request via a proof schema, an identifier, and
2783
+ * which protocol to use for making the request.
2784
+ *
2785
+ * For online protocols, the request is created in `CREATED` state;
2786
+ * share it with the wallet using `shareProof`. For `ISO_MDL`, the
2787
+ * wallet starts the exchange: pass the device engagement data from the
2788
+ * wallet in `isoMdlEngagement`. The request is created directly in
2789
+ * `PENDING` state and needs no sharing.
2571
2790
  */
2572
2791
  createProof(request: CreateProofRequest): Promise<string>;
2573
2792
  /**
@@ -2590,8 +2809,16 @@ export interface OneCore {
2590
2809
  /**
2591
2810
  * Deletes an incomplete proof request. If the request is in `REQUESTED`
2592
2811
  * state the proof is retracted instead, retaining history of the interaction.
2812
+ *
2813
+ * For `ISO_MDL`, this also closes the BLE session.
2593
2814
  */
2594
2815
  deleteProof(proofId: string): Promise<void>;
2816
+ /**
2817
+ * Deletes the claim data shared by the wallet holder for a proof
2818
+ * request, without waiting for the retention period set by the
2819
+ * `expireDuration` of the proof schema. The proof request itself is
2820
+ * kept, and `claimsRemovedAt` records when the claims were deleted.
2821
+ */
2595
2822
  deleteProofClaims(proofId: string): Promise<void>;
2596
2823
  deleteProofSchema(proofSchemaId: string): Promise<void>;
2597
2824
  /**
@@ -2626,8 +2853,21 @@ export interface OneCore {
2626
2853
  * offered to it.
2627
2854
  */
2628
2855
  getOrganisation(id: string): Promise<OrganisationDetail>;
2856
+ /**
2857
+ * For wallets, returns what a proof request asks for and which of the
2858
+ * wallet's credentials can satisfy it. Use the result to build the
2859
+ * submission for `holderSubmitProofV2`.
2860
+ *
2861
+ * For `ISO_MDL` requests, every claim has `required: false`, since the
2862
+ * protocol cannot mark claims as mandatory. An incomplete submission
2863
+ * may be rejected if the verifier requires claims not submitted.
2864
+ */
2629
2865
  getPresentationDefinitionV2(proofId: string): Promise<PresentationDefinitionV2>;
2630
- /** Returns detailed information about a proof request. */
2866
+ /**
2867
+ * Returns detailed information about a proof request.
2868
+ *
2869
+ * Poll this method to follow the state of the request.
2870
+ */
2631
2871
  getProof(proofId: string): Promise<ProofDetail>;
2632
2872
  getProofSchema(proofSchemaId: string): Promise<ProofSchemaDetail>;
2633
2873
  /**
@@ -2639,6 +2879,9 @@ export interface OneCore {
2639
2879
  * For a wallet, handles the interaction once the wallet connects to a share
2640
2880
  * endpoint URL (for example, scans the QR code of an offered credential or
2641
2881
  * request for proof).
2882
+ *
2883
+ * Not for use with `ISO_MDL` proximity flows, where the wallet initiates the
2884
+ * flow using `proposeProof` instead.
2642
2885
  */
2643
2886
  handleInvitation(request: HandleInvitationRequest): Promise<HandleInvitationResponse>;
2644
2887
  /**
@@ -2655,7 +2898,9 @@ export interface OneCore {
2655
2898
  * For wallets; returns the details of a single transaction data entry of a
2656
2899
  * proof request, including human-readable display data and the raw
2657
2900
  * transaction data received from the verifier. The `transactionDataId` is
2658
- * obtained from `getPresentationDefinitionv2`.
2901
+ * obtained from `getPresentationDefinitionV2`. See
2902
+ * [Transaction Authorization for Wallets](https://docs.procivis.ch/hold/transaction-authorization)
2903
+ * for more information.
2659
2904
  */
2660
2905
  holderGetTransactionData(proofId: string, transactionDataId: string): Promise<ProofTransactionData>;
2661
2906
  /**
@@ -2663,7 +2908,7 @@ export interface OneCore {
2663
2908
  * To see the result, call `holderGetInstance`.
2664
2909
  */
2665
2910
  holderInstanceStatus(id: string): Promise<void>;
2666
- /** Receive a new credential batch */
2911
+ /** Request a new credential batch. */
2667
2912
  holderRefreshCredential(interactionId: string): Promise<HolderRefreshCredentialResponse>;
2668
2913
  /** Registers the instance with a Wallet or Verifier Provider. */
2669
2914
  holderRegisterInstance(request: HolderRegisterInstanceRequest): Promise<HolderRegisterInstanceResponse>;
@@ -2673,11 +2918,21 @@ export interface OneCore {
2673
2918
  * A batch format is notified as rejected and excluded from refreshes only when all its items are rejected.
2674
2919
  */
2675
2920
  holderRejectCredential(interactionId: string, credentialIds: Array<string> | undefined): Promise<void>;
2676
- /** Rejects a proof request. */
2921
+ /**
2922
+ * For wallets, rejects a proof request. Pass the `interactionId` of
2923
+ * the request, not the proof ID.
2924
+ *
2925
+ * For `ISO_MDL`, the wallet sends an empty response to the verifier and
2926
+ * closes the BLE session.
2927
+ */
2677
2928
  holderRejectProof(interactionId: string): Promise<void>;
2678
2929
  /**
2679
- * Submits a presentation using DCQL as a query language; this should
2680
- * be used after `getPresentationDefinitionv2`.
2930
+ * For wallets, submits a presentation using DCQL as a query language.
2931
+ * Use this after `getPresentationDefinitionV2`. Pass the
2932
+ * `interactionId` of the request, not the proof ID.
2933
+ *
2934
+ * `submission` maps each credential query ID from the presentation
2935
+ * definition to the credentials chosen for it.
2681
2936
  */
2682
2937
  holderSubmitProofV2(interactionId: string, submission: Record<string, Array<PresentationSubmitV2CredentialRequest>>): Promise<void>;
2683
2938
  /**
@@ -2709,6 +2964,11 @@ export interface OneCore {
2709
2964
  * For wallets, initiates device engagement for offline flows. Reference
2710
2965
  * the `verificationEngagement` entry of your configuration for your
2711
2966
  * options for `engagement`.
2967
+ *
2968
+ * For `ISO_MDL`, this creates a proof in `PENDING` state and starts BLE
2969
+ * according to the `bleMode` set in your configuration. Poll `getProof`
2970
+ * until the state is `REQUESTED`, then call
2971
+ * `getPresentationDefinitionV2`.
2712
2972
  */
2713
2973
  proposeProof(request: ProposeProofRequest): Promise<ProposeProofResponse>;
2714
2974
  /**
@@ -2744,7 +3004,7 @@ export interface OneCore {
2744
3004
  shareCredentialSchema(credentialSchemaId: string): Promise<CredentialSchemaShareResponse>;
2745
3005
  /**
2746
3006
  * Creates a share URL from a proof request. A wallet holder can use this
2747
- * URL to access the request.
3007
+ * URL to access the request. Not used for the `ISO_MDL` proximity flow.
2748
3008
  */
2749
3009
  shareProof(proofId: string, params: ShareProofRequest): Promise<ShareProofResponse>;
2750
3010
  shareProofSchema(proofSchemaId: string): Promise<ProofSchemaShareResponse>;
@@ -89,8 +89,17 @@ export var CredentialListQuerySearchType;
89
89
  })(CredentialListQuerySearchType || (CredentialListQuerySearchType = {}));
90
90
  export var CredentialQueryFailureReason;
91
91
  (function (CredentialQueryFailureReason) {
92
+ /** The wallet holds no credential of the requested type. */
92
93
  CredentialQueryFailureReason["NO_CREDENTIAL"] = "NO_CREDENTIAL";
94
+ /**
95
+ * Credentials of the requested type exist, but none is currently
96
+ * valid.
97
+ */
93
98
  CredentialQueryFailureReason["VALIDITY"] = "VALIDITY";
99
+ /**
100
+ * Credentials of the requested type exist, but none satisfies the
101
+ * constraints of the request.
102
+ */
94
103
  CredentialQueryFailureReason["CONSTRAINT"] = "CONSTRAINT";
95
104
  })(CredentialQueryFailureReason || (CredentialQueryFailureReason = {}));
96
105
  export var CredentialRole;
@@ -311,22 +320,64 @@ export var ProofListQueryExactColumn;
311
320
  })(ProofListQueryExactColumn || (ProofListQueryExactColumn = {}));
312
321
  export var ProofRole;
313
322
  (function (ProofRole) {
323
+ /** The system received this request. */
314
324
  ProofRole["HOLDER"] = "HOLDER";
325
+ /** The system made this request. */
315
326
  ProofRole["VERIFIER"] = "VERIFIER";
316
327
  })(ProofRole || (ProofRole = {}));
317
328
  export var ProofSchemaListQueryExactColumn;
318
329
  (function (ProofSchemaListQueryExactColumn) {
319
330
  ProofSchemaListQueryExactColumn["NAME"] = "NAME";
320
331
  })(ProofSchemaListQueryExactColumn || (ProofSchemaListQueryExactColumn = {}));
332
+ /**
333
+ * State of a proof request. Some states mean something different
334
+ * depending on whether the system is the holder or the verifier of the
335
+ * request. See [Proof States as a Verifier](https://docs.procivis.ch/verify/states)
336
+ * and [Proof States as a Holder](https://docs.procivis.ch/hold/manage-credentials-requests#proof-request-states-as-a-holder)
337
+ * for complete state diagrams.
338
+ */
321
339
  export var ProofState;
322
340
  (function (ProofState) {
341
+ /**
342
+ * For verifiers, the request was created but not yet shared with a
343
+ * wallet.
344
+ */
323
345
  ProofState["CREATED"] = "CREATED";
346
+ /**
347
+ * Waiting for the other party. For verifiers, the request was shared
348
+ * or, for `ISO_MDL`, created from the wallet's engagement data. For
349
+ * holders, device engagement was started with `proposeProof`.
350
+ */
324
351
  ProofState["PENDING"] = "PENDING";
352
+ /**
353
+ * The request reached the wallet and is waiting for the holder to
354
+ * respond.
355
+ */
325
356
  ProofState["REQUESTED"] = "REQUESTED";
357
+ /**
358
+ * For verifiers, the presentation was received and verified. For
359
+ * holders, the presentation was submitted.
360
+ */
326
361
  ProofState["ACCEPTED"] = "ACCEPTED";
362
+ /**
363
+ * The holder rejected the request. Not all protocols report a
364
+ * rejection to the verifier.
365
+ */
327
366
  ProofState["REJECTED"] = "REJECTED";
367
+ /**
368
+ * The request was cancelled with `deleteProof` after it reached
369
+ * `REQUESTED`. The history of the interaction is retained.
370
+ */
328
371
  ProofState["RETRACTED"] = "RETRACTED";
372
+ /**
373
+ * A technical error occurred or, for verifiers, the presentation
374
+ * could not be verified.
375
+ */
329
376
  ProofState["ERROR"] = "ERROR";
377
+ /**
378
+ * For verifiers, the shared request expired before a wallet
379
+ * connected. Share it again with `shareProof`.
380
+ */
330
381
  ProofState["INTERACTION_EXPIRED"] = "INTERACTION_EXPIRED";
331
382
  })(ProofState || (ProofState = {}));
332
383
  export var SortDirection;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@procivis/react-native-one-core",
3
- "version": "1.133039.0",
3
+ "version": "1.134079.0",
4
4
  "author": "Procivis AG (https://procivis.ch)",
5
5
  "license": "Apache-2.0",
6
6
  "description": "ONE core bindings for React Native",