@calimero-network/mero-js 19.19.0 → 19.21.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.
@@ -1,5 +1,5 @@
1
1
  import { HttpClient } from '../http-client/index.js';
2
- import type { HealthStatus, AdminAuthStatus, InstallApplicationRequest, InstallApplicationResponseData, InstallDevApplicationRequest, UninstallApplicationResponseData, ListApplicationsResponseData, GetApplicationResponseData, ApplicationVersionEntry, GetApplicationAbiResponseData, GetLatestVersionResponseData, ListPackagesResponseData, ListVersionsResponseData, CreateContextRequest, CreateContextResponseData, DeleteContextResponseData, GetContextsResponseData, Context, GenerateContextIdentityResponseData, GetContextIdentitiesResponseData, JoinContextResponseData, JoinSubgroupInheritanceResponseData, ContextGroupResponseData, ContextStorageResponseData, InviteSpecializedNodeRequest, InviteSpecializedNodeResponseData, UpdateContextApplicationRequest, ResyncContextRequest, ResyncContextResponseData, ContextsWithExecutorsResponseData, UploadBlobRequest, UploadBlobResponseData, DeleteBlobResponseData, ListBlobsResponseData, GetBlobInfoResponseData, BlobReadOptions, CreateContextAliasRequest, CreateApplicationAliasRequest, CreateDeviceAliasRequest, CreateAliasResponseData, LookupAliasResponseData, DeleteAliasResponseData, ListAliasesResponseData, ListNamespacesResponseData, CreateNamespaceRequest, CreateNamespaceResponseData, DeleteNamespaceResponseData, CreateNamespaceInvitationRequest, CreateNamespaceInvitationResponseData, CreateRecursiveInvitationResponseData, JoinNamespaceRequest, JoinNamespaceResponseData, CreateGroupInNamespaceRequest, CreateGroupInNamespaceResponseData, SubgroupEntry, Namespace, NamespaceIdentity, NodeIdentity, AccountPairInitRequest, AccountPairInitResponseData, AccountPairCompleteRequest, AccountPairCompleteResponseData, AccountSignWithRootRequest, AccountSignWithRootResponseData, RelinkDeviceRequest, RelinkDeviceResponseData, RescopeDeviceRequest, RescopeDeviceResponseData, LabelDeviceRequest, LabelDeviceResponseData, AccountDeviceEntry, AccountApplicationEntry, RevokeAccountDeviceRequest, RevokeAccountDeviceResponseData, GroupInfoResponseData, CreateGroupRequest, CreateGroupResponseData, DeleteGroupResponseData, ListGroupMembersResponseData, ListGroupContextsResponseData, AddGroupMembersRequest, RemoveGroupMembersRequest, UpdateMemberRoleRequest, MemberCapabilities, SetMemberCapabilitiesRequest, SetDefaultCapabilitiesRequest, SetMemberAutoFollowRequest, SetSubgroupVisibilityRequest, SetTeeAdmissionPolicyRequest, GetTeeAdmissionPolicyResponseData, SetGroupMetadataRequest, SetMemberMetadataRequest, SetContextMetadataRequest, MetadataRecord, SyncGroupResponseData, UpgradeGroupRequest, UpgradeGroupResponseData, GroupUpgradeStatusResponseData, MigrationStatus, CascadeStatusEntry, RetryGroupUpgradeResponseData, ReparentGroupRequest, ReparentGroupResponseData, IssueOwnershipProofRequest, IssueNamespaceOwnershipProofRequest, IssueOwnershipProofResponseData, CreateGroupInvitationRequest, CreateGroupInvitationResponseData, CreateRecursiveGroupInvitationResponseData, JoinGroupRequest, JoinGroupResponseData, TeeInfoResponseData, TeeAttestRequest, TeeAttestResponseData, TeeVerifyQuoteRequest, TeeVerifyQuoteResponseData, PerformIntentRequest, PerformIntentResponseData, IntentRelayInfo, AdmitJoinRequest, AdmitJoinResponseData } from './admin-types.js';
2
+ import type { HealthStatus, AdminAuthStatus, InstallApplicationRequest, InstallApplicationResponseData, InstallDevApplicationRequest, UninstallApplicationResponseData, ListApplicationsResponseData, GetApplicationResponseData, ApplicationVersionEntry, GetApplicationAbiResponseData, GetLatestVersionResponseData, ListPackagesResponseData, ListVersionsResponseData, CreateContextRequest, CreateContextResponseData, DeleteContextResponseData, GetContextsResponseData, Context, GenerateContextIdentityResponseData, GetContextIdentitiesResponseData, JoinContextResponseData, JoinSubgroupInheritanceResponseData, ContextGroupResponseData, ContextStorageResponseData, InviteSpecializedNodeRequest, InviteSpecializedNodeResponseData, UpdateContextApplicationRequest, ResyncContextRequest, ResyncContextResponseData, ContextsWithExecutorsResponseData, UploadBlobRequest, UploadBlobResponseData, DeleteBlobResponseData, ListBlobsResponseData, GetBlobInfoResponseData, BlobReadOptions, CreateContextAliasRequest, CreateApplicationAliasRequest, CreateDeviceAliasRequest, CreateAliasResponseData, LookupAliasResponseData, DeleteAliasResponseData, ListAliasesResponseData, ListNamespacesResponseData, CreateNamespaceRequest, CreateNamespaceResponseData, DeleteNamespaceResponseData, CreateNamespaceInvitationRequest, CreateNamespaceInvitationResponseData, CreateRecursiveInvitationResponseData, JoinNamespaceRequest, JoinNamespaceResponseData, CreateGroupInNamespaceRequest, CreateGroupInNamespaceResponseData, SubgroupEntry, Namespace, NamespaceIdentity, NodeIdentity, AccountPairInitRequest, AccountPairInitResponseData, AccountPairCompleteRequest, AccountPairCompleteResponseData, AccountSignWithRootRequest, AccountSignWithRootResponseData, RelinkDeviceRequest, RelinkDeviceResponseData, RescopeDeviceRequest, RescopeDeviceResponseData, LabelDeviceRequest, LabelDeviceResponseData, AccountDeviceEntry, AccountApplicationEntry, RevokeAccountDeviceRequest, RevokeAccountDeviceResponseData, GroupInfoResponseData, CreateGroupRequest, CreateGroupResponseData, DeleteGroupResponseData, ListGroupMembersResponseData, ListGroupContextsResponseData, AddGroupMembersRequest, RemoveGroupMembersRequest, UpdateMemberRoleRequest, MemberCapabilities, SetMemberCapabilitiesRequest, SetDefaultCapabilitiesRequest, SetMemberAutoFollowRequest, SetSubgroupVisibilityRequest, SetTeeAdmissionPolicyRequest, GetTeeAdmissionPolicyResponseData, SetTeeAuthoringPolicyRequest, SetGroupMetadataRequest, SetMemberMetadataRequest, SetContextMetadataRequest, MetadataRecord, SyncGroupResponseData, UpgradeGroupRequest, UpgradeGroupResponseData, GroupUpgradeStatusResponseData, MigrationStatus, CascadeStatusEntry, RetryGroupUpgradeResponseData, ReparentGroupRequest, ReparentGroupResponseData, IssueOwnershipProofRequest, IssueNamespaceOwnershipProofRequest, IssueOwnershipProofResponseData, CreateGroupInvitationRequest, CreateGroupInvitationResponseData, CreateRecursiveGroupInvitationResponseData, JoinGroupRequest, JoinGroupResponseData, TeeInfoResponseData, TeeAttestRequest, TeeAttestResponseData, TeeVerifyQuoteRequest, TeeVerifyQuoteResponseData, PerformIntentRequest, PerformIntentResponseData, IntentRelayInfo, AdmitJoinRequest, AdmitJoinResponseData } from './admin-types.js';
3
3
  /**
4
4
  * Compare two version strings by SemVer 2.0 precedence, ascending: negative if
5
5
  * `a < b`, positive if `a > b`, `0` if equal. Build metadata (`+...`) is stripped
@@ -460,6 +460,13 @@ export declare class AdminApiClient {
460
460
  setSubgroupVisibility(groupId: string, request: SetSubgroupVisibilityRequest): Promise<void>;
461
461
  setTeeAdmissionPolicy(groupId: string, request: SetTeeAdmissionPolicyRequest): Promise<void>;
462
462
  getTeeAdmissionPolicy(groupId: string): Promise<GetTeeAdmissionPolicyResponseData>;
463
+ /**
464
+ * Sets which admitted TEEs may author as the TEE authority. Pass
465
+ * `{ allowedMrtd: [] }` to turn TEE authorship off. `groupId` must be a
466
+ * namespace root; the node refuses a subgroup. The node exposes no read-back
467
+ * route for this policy.
468
+ */
469
+ setTeeAuthoringPolicy(groupId: string, request: SetTeeAuthoringPolicyRequest): Promise<void>;
463
470
  setGroupMetadata(groupId: string, request: SetGroupMetadataRequest): Promise<void>;
464
471
  getGroupMetadata(groupId: string): Promise<MetadataRecord | null>;
465
472
  setMemberMetadata(groupId: string, identity: string, request: SetMemberMetadataRequest): Promise<void>;
@@ -852,6 +852,15 @@ export class AdminApiClient {
852
852
  const response = await this.httpClient.get(`/admin-api/groups/${groupId}/settings/tee-admission-policy`);
853
853
  return response.data ?? response;
854
854
  }
855
+ /**
856
+ * Sets which admitted TEEs may author as the TEE authority. Pass
857
+ * `{ allowedMrtd: [] }` to turn TEE authorship off. `groupId` must be a
858
+ * namespace root; the node refuses a subgroup. The node exposes no read-back
859
+ * route for this policy.
860
+ */
861
+ async setTeeAuthoringPolicy(groupId, request) {
862
+ await this.httpClient.put(`/admin-api/groups/${groupId}/settings/tee-authoring-policy`, request);
863
+ }
855
864
  // ---- Group / member / context metadata ----
856
865
  async setGroupMetadata(groupId, request) {
857
866
  await this.httpClient.put(`/admin-api/groups/${groupId}/metadata`, request);
@@ -1303,6 +1303,17 @@ export interface GetTeeAdmissionPolicyResponseData {
1303
1303
  allowedTcbStatuses: string[];
1304
1304
  acceptMock: boolean;
1305
1305
  }
1306
+ /**
1307
+ * Which admitted TEEs may author as the group's TEE authority (the writer behind
1308
+ * `TeeOnly` storage and `#[app::tee]` methods). A TEE whose attested MRTD is in
1309
+ * `allowedMrtd` may author; an empty list turns TEE authorship off.
1310
+ *
1311
+ * Namespace-scoped: set it on the namespace root. The node refuses it on a subgroup.
1312
+ */
1313
+ export interface SetTeeAuthoringPolicyRequest {
1314
+ allowedMrtd: string[];
1315
+ }
1316
+ export type SetTeeAuthoringPolicyResponseData = Record<string, never>;
1306
1317
  /**
1307
1318
  * Generic metadata record attached to a group, group member, or
1308
1319
  * context-registered-in-a-group (core `calimero_primitives::metadata::MetadataRecord`).
@@ -1461,6 +1472,11 @@ export interface TeeInfoResponseData {
1461
1472
  export interface TeeAttestRequest {
1462
1473
  nonce: string;
1463
1474
  applicationId?: string;
1475
+ /**
1476
+ * Bind the node's X25519 transport key into the quote; the response names it
1477
+ * as `transportPublicKey`. See `fetchAttestedTransportKey`.
1478
+ */
1479
+ bindTransportKey?: boolean;
1464
1480
  }
1465
1481
  export interface QuoteHeader {
1466
1482
  version: number;
@@ -1499,6 +1515,8 @@ export interface Quote {
1499
1515
  export interface TeeAttestResponseData {
1500
1516
  quoteB64: string;
1501
1517
  quote: Quote;
1518
+ /** Hex X25519 transport key, present only when the request set `bindTransportKey`. */
1519
+ transportPublicKey?: string;
1502
1520
  }
1503
1521
  export interface TeeVerifyQuoteRequest {
1504
1522
  quoteB64: string;