@calimero-network/mero-js 19.20.0 → 19.22.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.
@@ -1284,7 +1284,20 @@ export interface SetSubgroupVisibilityRequest {
1284
1284
  subgroupVisibility: string;
1285
1285
  }
1286
1286
  export type SetSubgroupVisibilityResponseData = Record<string, never>;
1287
- export interface SetTeeAdmissionPolicyRequest {
1287
+ /**
1288
+ * The signed-release form of a TEE admission policy: admit a TEE running any
1289
+ * mero-tee node release the mero-tee release workflow signed, if its quote
1290
+ * matches one of `allowedProfiles` in that release's `published-mrtds.json`.
1291
+ * Unlike the measurement lists, it does not need updating for each release.
1292
+ */
1293
+ export interface SignedReleaseTeePolicy {
1294
+ /** Image profiles to admit, e.g. `locked-read-only`. */
1295
+ allowedProfiles: string[];
1296
+ /** The oldest release admitted (`2.3.72`); any signed release when absent. */
1297
+ minReleaseVersion?: string;
1298
+ }
1299
+ /** A policy that lists the measurements it admits. */
1300
+ export interface MeasurementTeeAdmissionPolicyRequest {
1288
1301
  allowedMrtd: string[];
1289
1302
  allowedRtmr0: string[];
1290
1303
  allowedRtmr1: string[];
@@ -1293,6 +1306,13 @@ export interface SetTeeAdmissionPolicyRequest {
1293
1306
  allowedTcbStatuses: string[];
1294
1307
  acceptMock: boolean;
1295
1308
  }
1309
+ /** A policy that admits by signed release. The node refuses measurement lists beside it. */
1310
+ export interface SignedReleaseTeeAdmissionPolicyRequest {
1311
+ signedRelease: SignedReleaseTeePolicy;
1312
+ allowedTcbStatuses: string[];
1313
+ acceptMock: boolean;
1314
+ }
1315
+ export type SetTeeAdmissionPolicyRequest = MeasurementTeeAdmissionPolicyRequest | SignedReleaseTeeAdmissionPolicyRequest;
1296
1316
  export type SetTeeAdmissionPolicyResponseData = Record<string, never>;
1297
1317
  export interface GetTeeAdmissionPolicyResponseData {
1298
1318
  allowedMrtd: string[];
@@ -1302,6 +1322,8 @@ export interface GetTeeAdmissionPolicyResponseData {
1302
1322
  allowedRtmr3: string[];
1303
1323
  allowedTcbStatuses: string[];
1304
1324
  acceptMock: boolean;
1325
+ /** Set when the policy admits by signed release; the lists are then empty. */
1326
+ signedRelease?: SignedReleaseTeePolicy;
1305
1327
  }
1306
1328
  /**
1307
1329
  * Which admitted TEEs may author as the group's TEE authority (the writer behind
@@ -1472,6 +1494,11 @@ export interface TeeInfoResponseData {
1472
1494
  export interface TeeAttestRequest {
1473
1495
  nonce: string;
1474
1496
  applicationId?: string;
1497
+ /**
1498
+ * Bind the node's X25519 transport key into the quote; the response names it
1499
+ * as `transportPublicKey`. See `fetchAttestedTransportKey`.
1500
+ */
1501
+ bindTransportKey?: boolean;
1475
1502
  }
1476
1503
  export interface QuoteHeader {
1477
1504
  version: number;
@@ -1510,6 +1537,8 @@ export interface Quote {
1510
1537
  export interface TeeAttestResponseData {
1511
1538
  quoteB64: string;
1512
1539
  quote: Quote;
1540
+ /** Hex X25519 transport key, present only when the request set `bindTransportKey`. */
1541
+ transportPublicKey?: string;
1513
1542
  }
1514
1543
  export interface TeeVerifyQuoteRequest {
1515
1544
  quoteB64: string;