@distrohelena/canton-typescript-sdk 0.1.0 → 0.1.1
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/README.md +60 -0
- package/dist/client/canton-client.d.ts +2 -0
- package/dist/client/canton-client.js +2 -0
- package/dist/client/service-registry.d.ts +2 -0
- package/dist/client/service-registry.js +104 -0
- package/dist/core/transports/transport.interface.d.ts +40 -0
- package/dist/core/types/external-party/external-party-crypto-key-format.d.ts +6 -0
- package/dist/core/types/external-party/external-party-crypto-key-format.js +7 -0
- package/dist/core/types/external-party/external-party-onboarding-transaction.d.ts +9 -0
- package/dist/core/types/external-party/external-party-onboarding-transaction.js +8 -0
- package/dist/core/types/external-party/external-party-signature-format.d.ts +7 -0
- package/dist/core/types/external-party/external-party-signature-format.js +8 -0
- package/dist/core/types/external-party/external-party-signature.d.ts +14 -0
- package/dist/core/types/external-party/external-party-signature.js +16 -0
- package/dist/core/types/external-party/external-party-signing-algorithm-spec.d.ts +7 -0
- package/dist/core/types/external-party/external-party-signing-algorithm-spec.js +8 -0
- package/dist/core/types/external-party/external-party-signing-key-spec.d.ts +8 -0
- package/dist/core/types/external-party/external-party-signing-key-spec.js +9 -0
- package/dist/core/types/external-party/external-party-signing-public-key.d.ts +12 -0
- package/dist/core/types/external-party/external-party-signing-public-key.js +12 -0
- package/dist/core/types/requests/add-topology-transactions-request.d.ts +16 -0
- package/dist/core/types/requests/add-topology-transactions-request.js +12 -0
- package/dist/core/types/requests/allocate-external-party-request.d.ts +18 -0
- package/dist/core/types/requests/allocate-external-party-request.js +16 -0
- package/dist/core/types/requests/assemble-signed-topology-transactions-request.d.ts +10 -0
- package/dist/core/types/requests/assemble-signed-topology-transactions-request.js +8 -0
- package/dist/core/types/requests/authorize-topology-transactions-request.d.ts +37 -0
- package/dist/core/types/requests/authorize-topology-transactions-request.js +35 -0
- package/dist/core/types/requests/create-temporary-topology-store-request.d.ts +8 -0
- package/dist/core/types/requests/create-temporary-topology-store-request.js +8 -0
- package/dist/core/types/requests/drop-temporary-topology-store-request.d.ts +7 -0
- package/dist/core/types/requests/drop-temporary-topology-store-request.js +6 -0
- package/dist/core/types/requests/generate-external-party-topology-request.d.ts +19 -0
- package/dist/core/types/requests/generate-external-party-topology-request.js +21 -0
- package/dist/core/types/requests/generate-topology-transactions-request.d.ts +26 -0
- package/dist/core/types/requests/generate-topology-transactions-request.js +22 -0
- package/dist/core/types/requests/import-topology-snapshot-request.d.ts +12 -0
- package/dist/core/types/requests/import-topology-snapshot-request.js +10 -0
- package/dist/core/types/requests/import-topology-snapshot-v2-request.d.ts +12 -0
- package/dist/core/types/requests/import-topology-snapshot-v2-request.js +10 -0
- package/dist/core/types/requests/sign-topology-transactions-request.d.ts +15 -0
- package/dist/core/types/requests/sign-topology-transactions-request.js +12 -0
- package/dist/core/types/responses/add-topology-transactions-response.d.ts +3 -0
- package/dist/core/types/responses/add-topology-transactions-response.js +5 -0
- package/dist/core/types/responses/allocate-external-party-response.d.ts +6 -0
- package/dist/core/types/responses/allocate-external-party-response.js +6 -0
- package/dist/core/types/responses/authorize-topology-transactions-response.d.ts +7 -0
- package/dist/core/types/responses/authorize-topology-transactions-response.js +6 -0
- package/dist/core/types/responses/create-temporary-topology-store-response.d.ts +7 -0
- package/dist/core/types/responses/create-temporary-topology-store-response.js +6 -0
- package/dist/core/types/responses/drop-temporary-topology-store-response.d.ts +3 -0
- package/dist/core/types/responses/drop-temporary-topology-store-response.js +5 -0
- package/dist/core/types/responses/generate-external-party-topology-response.d.ts +12 -0
- package/dist/core/types/responses/generate-external-party-topology-response.js +12 -0
- package/dist/core/types/responses/generate-topology-transactions-response.d.ts +7 -0
- package/dist/core/types/responses/generate-topology-transactions-response.js +6 -0
- package/dist/core/types/responses/import-topology-snapshot-response.d.ts +3 -0
- package/dist/core/types/responses/import-topology-snapshot-response.js +5 -0
- package/dist/core/types/responses/import-topology-snapshot-v2-response.d.ts +3 -0
- package/dist/core/types/responses/import-topology-snapshot-v2-response.js +5 -0
- package/dist/core/types/responses/sign-topology-transactions-response.d.ts +7 -0
- package/dist/core/types/responses/sign-topology-transactions-response.js +6 -0
- package/dist/core/types/topology/external-topology-signature.d.ts +18 -0
- package/dist/core/types/topology/external-topology-signature.js +16 -0
- package/dist/core/types/topology/generated-topology-transaction.d.ts +8 -0
- package/dist/core/types/topology/generated-topology-transaction.js +8 -0
- package/dist/core/types/topology/multi-topology-transaction-signature.d.ts +9 -0
- package/dist/core/types/topology/multi-topology-transaction-signature.js +8 -0
- package/dist/core/types/topology/prepared-topology-transaction.d.ts +10 -0
- package/dist/core/types/topology/prepared-topology-transaction.js +10 -0
- package/dist/core/types/topology/signed-topology-transaction.d.ts +14 -0
- package/dist/core/types/topology/signed-topology-transaction.js +14 -0
- package/dist/core/types/topology/topology-force-flag.d.ts +8 -0
- package/dist/core/types/topology/topology-force-flag.js +9 -0
- package/dist/core/types/topology/topology-mapping.d.ts +16 -0
- package/dist/core/types/topology/topology-mapping.js +1 -0
- package/dist/core/types/topology/topology-signature-delegation.d.ts +18 -0
- package/dist/core/types/topology/topology-signature-delegation.js +20 -0
- package/dist/core/types/topology/topology-signature-format.d.ts +3 -0
- package/dist/core/types/topology/topology-signature-format.js +4 -0
- package/dist/core/types/topology/topology-transaction-signature.d.ts +15 -0
- package/dist/core/types/topology/topology-transaction-signature.js +14 -0
- package/dist/daml-lf/container/dar-archive-loader.js +9 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.js +40 -0
- package/dist/services/party-management/party-management-service-client.d.ts +8 -0
- package/dist/services/party-management/party-management-service-client.js +8 -0
- package/dist/services/topology-manager-write/topology-manager-write-service-client.d.ts +42 -0
- package/dist/services/topology-manager-write/topology-manager-write-service-client.js +44 -0
- package/dist/services/topology-manager-write/topology-signed-transaction-assembler.d.ts +3 -0
- package/dist/services/topology-manager-write/topology-signed-transaction-assembler.js +78 -0
- package/dist/transports/grpc/grpc-channel-factory.d.ts +13 -1
- package/dist/transports/grpc/grpc-channel-factory.js +48 -0
- package/dist/transports/grpc/grpc-transport.d.ts +14 -0
- package/dist/transports/grpc/grpc-transport.js +52 -0
- package/dist/transports/grpc/mappers/external-party-management-mapper.d.ts +9 -0
- package/dist/transports/grpc/mappers/external-party-management-mapper.js +126 -0
- package/dist/transports/grpc/mappers/topology-manager-write-mapper.d.ts +33 -0
- package/dist/transports/grpc/mappers/topology-manager-write-mapper.js +436 -0
- package/dist/transports/json/json-transport.d.ts +14 -0
- package/dist/transports/json/json-transport.js +43 -6
- package/dist/transports/json/mappers/parties-mapper.d.ts +13 -2
- package/dist/transports/json/mappers/parties-mapper.js +15 -1
- package/package.json +3 -2
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare class TopologySignatureDelegation {
|
|
2
|
+
readonly sessionKey: Uint8Array;
|
|
3
|
+
readonly sessionKeySpec?: string;
|
|
4
|
+
readonly validityPeriodFromInclusive: string;
|
|
5
|
+
readonly validityPeriodDurationSeconds: number;
|
|
6
|
+
readonly format?: string;
|
|
7
|
+
readonly signature: Uint8Array;
|
|
8
|
+
readonly signingAlgorithmSpec?: string;
|
|
9
|
+
constructor(init?: {
|
|
10
|
+
sessionKey?: Uint8Array;
|
|
11
|
+
sessionKeySpec?: string;
|
|
12
|
+
validityPeriodFromInclusive?: string;
|
|
13
|
+
validityPeriodDurationSeconds?: number;
|
|
14
|
+
format?: string;
|
|
15
|
+
signature?: Uint8Array;
|
|
16
|
+
signingAlgorithmSpec?: string;
|
|
17
|
+
});
|
|
18
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export class TopologySignatureDelegation {
|
|
2
|
+
sessionKey;
|
|
3
|
+
sessionKeySpec;
|
|
4
|
+
validityPeriodFromInclusive;
|
|
5
|
+
validityPeriodDurationSeconds;
|
|
6
|
+
format;
|
|
7
|
+
signature;
|
|
8
|
+
signingAlgorithmSpec;
|
|
9
|
+
constructor(init = {}) {
|
|
10
|
+
this.sessionKey = new Uint8Array(init.sessionKey ?? []);
|
|
11
|
+
this.sessionKeySpec = init.sessionKeySpec;
|
|
12
|
+
this.validityPeriodFromInclusive =
|
|
13
|
+
init.validityPeriodFromInclusive ?? "0";
|
|
14
|
+
this.validityPeriodDurationSeconds =
|
|
15
|
+
init.validityPeriodDurationSeconds ?? 0;
|
|
16
|
+
this.format = init.format;
|
|
17
|
+
this.signature = new Uint8Array(init.signature ?? []);
|
|
18
|
+
this.signingAlgorithmSpec = init.signingAlgorithmSpec;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TopologySignatureDelegation } from "./topology-signature-delegation.js";
|
|
2
|
+
export declare class TopologyTransactionSignature {
|
|
3
|
+
readonly format?: string;
|
|
4
|
+
readonly signature: Uint8Array;
|
|
5
|
+
readonly signedByFingerprint: string;
|
|
6
|
+
readonly signingAlgorithmSpec?: string;
|
|
7
|
+
readonly signatureDelegation?: TopologySignatureDelegation;
|
|
8
|
+
constructor(init?: {
|
|
9
|
+
format?: string;
|
|
10
|
+
signature?: Uint8Array;
|
|
11
|
+
signedByFingerprint?: string;
|
|
12
|
+
signingAlgorithmSpec?: string;
|
|
13
|
+
signatureDelegation?: TopologySignatureDelegation;
|
|
14
|
+
});
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export class TopologyTransactionSignature {
|
|
2
|
+
format;
|
|
3
|
+
signature;
|
|
4
|
+
signedByFingerprint;
|
|
5
|
+
signingAlgorithmSpec;
|
|
6
|
+
signatureDelegation;
|
|
7
|
+
constructor(init = {}) {
|
|
8
|
+
this.format = init.format;
|
|
9
|
+
this.signature = new Uint8Array(init.signature ?? []);
|
|
10
|
+
this.signedByFingerprint = init.signedByFingerprint ?? "";
|
|
11
|
+
this.signingAlgorithmSpec = init.signingAlgorithmSpec;
|
|
12
|
+
this.signatureDelegation = init.signatureDelegation;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -39,18 +39,27 @@ export class DarArchiveLoader {
|
|
|
39
39
|
}
|
|
40
40
|
parseManifestOrThrow(manifestText) {
|
|
41
41
|
const properties = new Map();
|
|
42
|
+
let currentKey;
|
|
42
43
|
for (const rawLine of manifestText.split(/\r?\n/)) {
|
|
44
|
+
if (rawLine.startsWith(" ") && currentKey !== undefined) {
|
|
45
|
+
const currentValue = properties.get(currentKey) ?? "";
|
|
46
|
+
properties.set(currentKey, `${currentValue}${rawLine.slice(1)}`);
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
43
49
|
const line = rawLine.trim();
|
|
44
50
|
if (line.length === 0) {
|
|
51
|
+
currentKey = undefined;
|
|
45
52
|
continue;
|
|
46
53
|
}
|
|
47
54
|
const delimiterIndex = line.indexOf(":");
|
|
48
55
|
if (delimiterIndex < 0) {
|
|
56
|
+
currentKey = undefined;
|
|
49
57
|
continue;
|
|
50
58
|
}
|
|
51
59
|
const key = line.slice(0, delimiterIndex).trim();
|
|
52
60
|
const value = line.slice(delimiterIndex + 1).trim();
|
|
53
61
|
properties.set(key, value);
|
|
62
|
+
currentKey = key;
|
|
54
63
|
}
|
|
55
64
|
const mainDalfPath = properties.get("Main-Dalf");
|
|
56
65
|
if (mainDalfPath === undefined || mainDalfPath.length === 0) {
|
package/dist/index.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export { ResourceManagementServiceClient } from "./services/resource-management/
|
|
|
23
23
|
export { StateServiceClient } from "./services/state/state-service-client.js";
|
|
24
24
|
export { TopologyAggregationServiceClient } from "./services/topology-aggregation/topology-aggregation-service-client.js";
|
|
25
25
|
export { TopologyManagerReadServiceClient } from "./services/topology-manager-read/topology-manager-read-service-client.js";
|
|
26
|
+
export { TopologyManagerWriteServiceClient } from "./services/topology-manager-write/topology-manager-write-service-client.js";
|
|
26
27
|
export { TrafficControlServiceClient } from "./services/traffic-control/traffic-control-service-client.js";
|
|
27
28
|
export { UpdateServiceClient } from "./services/update/update-service-client.js";
|
|
28
29
|
export { UserManagementServiceClient } from "./services/user-management/user-management-service-client.js";
|
|
@@ -36,6 +37,13 @@ export { SignCommandResult } from "./core/signing/sign-command-result.js";
|
|
|
36
37
|
export type { ITransport } from "./core/transports/transport.interface.js";
|
|
37
38
|
export { TransportCapability } from "./core/transports/transport-capability.js";
|
|
38
39
|
export { TransportKind } from "./core/types/transport-kind.js";
|
|
40
|
+
export { ExternalPartyCryptoKeyFormat } from "./core/types/external-party/external-party-crypto-key-format.js";
|
|
41
|
+
export { ExternalPartyOnboardingTransaction } from "./core/types/external-party/external-party-onboarding-transaction.js";
|
|
42
|
+
export { ExternalPartySignature } from "./core/types/external-party/external-party-signature.js";
|
|
43
|
+
export { ExternalPartySignatureFormat } from "./core/types/external-party/external-party-signature-format.js";
|
|
44
|
+
export { ExternalPartySigningAlgorithmSpec } from "./core/types/external-party/external-party-signing-algorithm-spec.js";
|
|
45
|
+
export { ExternalPartySigningKeySpec } from "./core/types/external-party/external-party-signing-key-spec.js";
|
|
46
|
+
export { ExternalPartySigningPublicKey } from "./core/types/external-party/external-party-signing-public-key.js";
|
|
39
47
|
export { GrpcChannelSecurity } from "./core/types/grpc-channel-security.js";
|
|
40
48
|
export { SubmissionMode } from "./core/types/submission-mode.js";
|
|
41
49
|
export { AdminComponentHealthKind } from "./core/types/admin-component-health-kind.js";
|
|
@@ -133,8 +141,12 @@ export { SynchronizerTrustCertificate } from "./core/types/topology/synchronizer
|
|
|
133
141
|
export { TopologyBaseQuery } from "./core/types/topology/topology-base-query.js";
|
|
134
142
|
export { TopologyBaseResult } from "./core/types/topology/topology-base-result.js";
|
|
135
143
|
export { TopologyDuration } from "./core/types/topology/topology-duration.js";
|
|
144
|
+
export { ExternalTopologySignature } from "./core/types/topology/external-topology-signature.js";
|
|
136
145
|
export { TopologyEncryptionPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
146
|
+
export { GeneratedTopologyTransaction } from "./core/types/topology/generated-topology-transaction.js";
|
|
147
|
+
export { MultiTopologyTransactionSignature } from "./core/types/topology/multi-topology-transaction-signature.js";
|
|
137
148
|
export { TopologyKeyOwnerResult } from "./core/types/topology/topology-key-owner-result.js";
|
|
149
|
+
export type { TopologyMapping } from "./core/types/topology/topology-mapping.js";
|
|
138
150
|
export { TopologyMappingCode } from "./core/types/topology/topology-mapping-code.js";
|
|
139
151
|
export { TopologyMappingOperation } from "./core/types/topology/topology-mapping-operation.js";
|
|
140
152
|
export { TopologyMappingResult } from "./core/types/topology/topology-mapping-result.js";
|
|
@@ -142,6 +154,9 @@ export { TopologyPartyParticipant } from "./core/types/topology/topology-party-r
|
|
|
142
154
|
export { TopologyPartyParticipantSynchronizerPermission } from "./core/types/topology/topology-party-result.js";
|
|
143
155
|
export { TopologyPartyResult } from "./core/types/topology/topology-party-result.js";
|
|
144
156
|
export { TopologyPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
157
|
+
export { TopologyForceFlag } from "./core/types/topology/topology-force-flag.js";
|
|
158
|
+
export { TopologySignatureDelegation } from "./core/types/topology/topology-signature-delegation.js";
|
|
159
|
+
export { TopologySignatureFormat } from "./core/types/topology/topology-signature-format.js";
|
|
145
160
|
export { TopologySigningKeysWithThreshold } from "./core/types/topology/topology-public-key.js";
|
|
146
161
|
export { TopologySigningPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
147
162
|
export { TopologyStoreAuthorized } from "./core/types/topology/topology-store-id.js";
|
|
@@ -150,6 +165,7 @@ export { TopologyStoreKind } from "./core/types/topology/topology-store-id.js";
|
|
|
150
165
|
export { TopologyStoreSynchronizer } from "./core/types/topology/topology-store-id.js";
|
|
151
166
|
export { TopologyStoreTemporary } from "./core/types/topology/topology-store-id.js";
|
|
152
167
|
export { TopologyTimeRange } from "./core/types/topology/topology-base-query.js";
|
|
168
|
+
export { TopologyTransactionSignature } from "./core/types/topology/topology-transaction-signature.js";
|
|
153
169
|
export { TopologyTransactionItem } from "./core/types/topology/topology-transactions.js";
|
|
154
170
|
export { TopologyTransactions } from "./core/types/topology/topology-transactions.js";
|
|
155
171
|
export { TopologyVettedPackage } from "./core/types/topology/vetted-package.js";
|
|
@@ -157,10 +173,22 @@ export { TopologyVettedPackages } from "./core/types/topology/vetted-packages.js
|
|
|
157
173
|
export { TrafficControlParameters } from "./core/types/topology/dynamic-synchronizer-parameters.js";
|
|
158
174
|
export { VettedPackage } from "./core/types/vetted-package.js";
|
|
159
175
|
export { VettedPackages } from "./core/types/vetted-packages.js";
|
|
176
|
+
export { PreparedTopologyTransaction } from "./core/types/topology/prepared-topology-transaction.js";
|
|
177
|
+
export { SignedTopologyTransaction } from "./core/types/topology/signed-topology-transaction.js";
|
|
160
178
|
export { CreateCommand } from "./core/types/commands/create-command.js";
|
|
179
|
+
export { AddTopologyTransactionsRequest } from "./core/types/requests/add-topology-transactions-request.js";
|
|
180
|
+
export { AllocateExternalPartyRequest } from "./core/types/requests/allocate-external-party-request.js";
|
|
161
181
|
export { AllocatePartyRequest } from "./core/types/requests/allocate-party-request.js";
|
|
182
|
+
export { AssembleSignedTopologyTransactionsRequest } from "./core/types/requests/assemble-signed-topology-transactions-request.js";
|
|
183
|
+
export { AuthorizeTopologyTransactionsProposal } from "./core/types/requests/authorize-topology-transactions-request.js";
|
|
184
|
+
export { AuthorizeTopologyTransactionsRequest } from "./core/types/requests/authorize-topology-transactions-request.js";
|
|
162
185
|
export { CountInFlightRequest } from "./core/types/requests/count-in-flight-request.js";
|
|
186
|
+
export { CreateTemporaryTopologyStoreRequest } from "./core/types/requests/create-temporary-topology-store-request.js";
|
|
163
187
|
export { CurrentTimeRequest } from "./core/types/requests/current-time-request.js";
|
|
188
|
+
export { DropTemporaryTopologyStoreRequest } from "./core/types/requests/drop-temporary-topology-store-request.js";
|
|
189
|
+
export { GenerateTopologyTransactionsProposal } from "./core/types/requests/generate-topology-transactions-request.js";
|
|
190
|
+
export { GenerateTopologyTransactionsRequest } from "./core/types/requests/generate-topology-transactions-request.js";
|
|
191
|
+
export { GenerateExternalPartyTopologyRequest } from "./core/types/requests/generate-external-party-topology-request.js";
|
|
164
192
|
export { GetDarContentsRequest } from "./core/types/requests/get-dar-contents-request.js";
|
|
165
193
|
export { GetDarRequest } from "./core/types/requests/get-dar-request.js";
|
|
166
194
|
export { GetActiveContractsPageRequest } from "./core/types/requests/get-active-contracts-page-request.js";
|
|
@@ -180,6 +208,8 @@ export { GetHighestOffsetByTimestampRequest } from "./core/types/requests/get-hi
|
|
|
180
208
|
export { GetIdentityProviderConfigRequest } from "./core/types/requests/get-identity-provider-config-request.js";
|
|
181
209
|
export { GetIdRequest } from "./core/types/requests/get-id-request.js";
|
|
182
210
|
export { GetIntervalsBehindForCounterParticipantsRequest } from "./core/types/requests/get-intervals-behind-for-counter-participants-request.js";
|
|
211
|
+
export { ImportTopologySnapshotRequest } from "./core/types/requests/import-topology-snapshot-request.js";
|
|
212
|
+
export { ImportTopologySnapshotV2Request } from "./core/types/requests/import-topology-snapshot-v2-request.js";
|
|
183
213
|
export { InspectCommitmentContractsRequest } from "./core/types/requests/inspect-commitment-contracts-request.js";
|
|
184
214
|
export { GetNoWaitCommitmentsFromRequest } from "./core/types/requests/get-no-wait-commitments-from-request.js";
|
|
185
215
|
export { GetParticipantPruningScheduleRequest } from "./core/types/requests/get-participant-pruning-schedule-request.js";
|
|
@@ -234,12 +264,14 @@ export { LookupReceivedAcsCommitmentsRequest } from "./core/types/requests/looku
|
|
|
234
264
|
export { LookupSentAcsCommitmentsRequest } from "./core/types/requests/lookup-sent-acs-commitments-request.js";
|
|
235
265
|
export { LookupOffsetByTimeRequest } from "./core/types/requests/lookup-offset-by-time-request.js";
|
|
236
266
|
export { OpenCommitmentRequest } from "./core/types/requests/open-commitment-request.js";
|
|
267
|
+
export { SignTopologyTransactionsRequest } from "./core/types/requests/sign-topology-transactions-request.js";
|
|
237
268
|
export { SubmitCommandRequest } from "./core/types/requests/submit-command-request.js";
|
|
238
269
|
export { TopologyListPartiesRequest } from "./core/types/requests/topology-list-parties-request.js";
|
|
239
270
|
export { TrafficControlStateRequest } from "./core/types/requests/traffic-control-state-request.js";
|
|
240
271
|
export { GrantUserRightsRequest } from "./core/types/requests/grant-user-rights-request.js";
|
|
241
272
|
export type { UserRightAssignment } from "./core/types/requests/grant-user-rights-request.js";
|
|
242
273
|
export { UploadDarFileRequest } from "./core/types/requests/upload-dar-file-request.js";
|
|
274
|
+
export { AllocateExternalPartyResponse } from "./core/types/responses/allocate-external-party-response.js";
|
|
243
275
|
export { AllocatePartyResponse } from "./core/types/responses/allocate-party-response.js";
|
|
244
276
|
export { CountInFlightResponse } from "./core/types/responses/count-in-flight-response.js";
|
|
245
277
|
export { CurrentTimeResponse } from "./core/types/responses/current-time-response.js";
|
|
@@ -278,6 +310,14 @@ export { GetUpdateByIdResponse } from "./core/types/responses/get-update-by-id-r
|
|
|
278
310
|
export { GetUpdateByOffsetResponse } from "./core/types/responses/get-update-by-offset-response.js";
|
|
279
311
|
export { GetUpdatesPageResponse } from "./core/types/responses/get-updates-page-response.js";
|
|
280
312
|
export { GetUserResponse } from "./core/types/responses/get-user-response.js";
|
|
313
|
+
export { AddTopologyTransactionsResponse } from "./core/types/responses/add-topology-transactions-response.js";
|
|
314
|
+
export { AuthorizeTopologyTransactionsResponse } from "./core/types/responses/authorize-topology-transactions-response.js";
|
|
315
|
+
export { CreateTemporaryTopologyStoreResponse } from "./core/types/responses/create-temporary-topology-store-response.js";
|
|
316
|
+
export { DropTemporaryTopologyStoreResponse } from "./core/types/responses/drop-temporary-topology-store-response.js";
|
|
317
|
+
export { GenerateExternalPartyTopologyResponse } from "./core/types/responses/generate-external-party-topology-response.js";
|
|
318
|
+
export { GenerateTopologyTransactionsResponse } from "./core/types/responses/generate-topology-transactions-response.js";
|
|
319
|
+
export { ImportTopologySnapshotResponse } from "./core/types/responses/import-topology-snapshot-response.js";
|
|
320
|
+
export { ImportTopologySnapshotV2Response } from "./core/types/responses/import-topology-snapshot-v2-response.js";
|
|
281
321
|
export { ListAllResponse } from "./core/types/responses/list-all-response.js";
|
|
282
322
|
export { ListAllV2Response } from "./core/types/responses/list-all-v2-response.js";
|
|
283
323
|
export { ListAvailableStoresResponse } from "./core/types/responses/list-available-stores-response.js";
|
|
@@ -311,6 +351,7 @@ export { ListUserRightsResponse } from "./core/types/responses/list-user-rights-
|
|
|
311
351
|
export { ListUsersResponse } from "./core/types/responses/list-users-response.js";
|
|
312
352
|
export { ListVettedPackagesResponse } from "./core/types/responses/list-vetted-packages-response.js";
|
|
313
353
|
export { LookupOffsetByTimeResponse } from "./core/types/responses/lookup-offset-by-time-response.js";
|
|
354
|
+
export { SignTopologyTransactionsResponse } from "./core/types/responses/sign-topology-transactions-response.js";
|
|
314
355
|
export { TopologyListVettedPackagesResponse } from "./core/types/responses/topology-list-vetted-packages-response.js";
|
|
315
356
|
export { TopologyListPartiesResponse } from "./core/types/responses/topology-list-parties-response.js";
|
|
316
357
|
export { TrafficControlStateResponse } from "./core/types/responses/traffic-control-state-response.js";
|
package/dist/index.js
CHANGED
|
@@ -22,6 +22,7 @@ export { ResourceManagementServiceClient } from "./services/resource-management/
|
|
|
22
22
|
export { StateServiceClient } from "./services/state/state-service-client.js";
|
|
23
23
|
export { TopologyAggregationServiceClient } from "./services/topology-aggregation/topology-aggregation-service-client.js";
|
|
24
24
|
export { TopologyManagerReadServiceClient } from "./services/topology-manager-read/topology-manager-read-service-client.js";
|
|
25
|
+
export { TopologyManagerWriteServiceClient } from "./services/topology-manager-write/topology-manager-write-service-client.js";
|
|
25
26
|
export { TrafficControlServiceClient } from "./services/traffic-control/traffic-control-service-client.js";
|
|
26
27
|
export { UpdateServiceClient } from "./services/update/update-service-client.js";
|
|
27
28
|
export { UserManagementServiceClient } from "./services/user-management/user-management-service-client.js";
|
|
@@ -32,6 +33,13 @@ export { SignCommandRequest } from "./core/signing/sign-command-request.js";
|
|
|
32
33
|
export { SignCommandResult } from "./core/signing/sign-command-result.js";
|
|
33
34
|
export { TransportCapability } from "./core/transports/transport-capability.js";
|
|
34
35
|
export { TransportKind } from "./core/types/transport-kind.js";
|
|
36
|
+
export { ExternalPartyCryptoKeyFormat } from "./core/types/external-party/external-party-crypto-key-format.js";
|
|
37
|
+
export { ExternalPartyOnboardingTransaction } from "./core/types/external-party/external-party-onboarding-transaction.js";
|
|
38
|
+
export { ExternalPartySignature } from "./core/types/external-party/external-party-signature.js";
|
|
39
|
+
export { ExternalPartySignatureFormat } from "./core/types/external-party/external-party-signature-format.js";
|
|
40
|
+
export { ExternalPartySigningAlgorithmSpec } from "./core/types/external-party/external-party-signing-algorithm-spec.js";
|
|
41
|
+
export { ExternalPartySigningKeySpec } from "./core/types/external-party/external-party-signing-key-spec.js";
|
|
42
|
+
export { ExternalPartySigningPublicKey } from "./core/types/external-party/external-party-signing-public-key.js";
|
|
35
43
|
export { GrpcChannelSecurity } from "./core/types/grpc-channel-security.js";
|
|
36
44
|
export { SubmissionMode } from "./core/types/submission-mode.js";
|
|
37
45
|
export { AdminComponentHealthKind } from "./core/types/admin-component-health-kind.js";
|
|
@@ -129,7 +137,10 @@ export { SynchronizerTrustCertificate } from "./core/types/topology/synchronizer
|
|
|
129
137
|
export { TopologyBaseQuery } from "./core/types/topology/topology-base-query.js";
|
|
130
138
|
export { TopologyBaseResult } from "./core/types/topology/topology-base-result.js";
|
|
131
139
|
export { TopologyDuration } from "./core/types/topology/topology-duration.js";
|
|
140
|
+
export { ExternalTopologySignature } from "./core/types/topology/external-topology-signature.js";
|
|
132
141
|
export { TopologyEncryptionPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
142
|
+
export { GeneratedTopologyTransaction } from "./core/types/topology/generated-topology-transaction.js";
|
|
143
|
+
export { MultiTopologyTransactionSignature } from "./core/types/topology/multi-topology-transaction-signature.js";
|
|
133
144
|
export { TopologyKeyOwnerResult } from "./core/types/topology/topology-key-owner-result.js";
|
|
134
145
|
export { TopologyMappingCode } from "./core/types/topology/topology-mapping-code.js";
|
|
135
146
|
export { TopologyMappingOperation } from "./core/types/topology/topology-mapping-operation.js";
|
|
@@ -138,6 +149,9 @@ export { TopologyPartyParticipant } from "./core/types/topology/topology-party-r
|
|
|
138
149
|
export { TopologyPartyParticipantSynchronizerPermission } from "./core/types/topology/topology-party-result.js";
|
|
139
150
|
export { TopologyPartyResult } from "./core/types/topology/topology-party-result.js";
|
|
140
151
|
export { TopologyPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
152
|
+
export { TopologyForceFlag } from "./core/types/topology/topology-force-flag.js";
|
|
153
|
+
export { TopologySignatureDelegation } from "./core/types/topology/topology-signature-delegation.js";
|
|
154
|
+
export { TopologySignatureFormat } from "./core/types/topology/topology-signature-format.js";
|
|
141
155
|
export { TopologySigningKeysWithThreshold } from "./core/types/topology/topology-public-key.js";
|
|
142
156
|
export { TopologySigningPublicKey } from "./core/types/topology/topology-public-key.js";
|
|
143
157
|
export { TopologyStoreAuthorized } from "./core/types/topology/topology-store-id.js";
|
|
@@ -146,6 +160,7 @@ export { TopologyStoreKind } from "./core/types/topology/topology-store-id.js";
|
|
|
146
160
|
export { TopologyStoreSynchronizer } from "./core/types/topology/topology-store-id.js";
|
|
147
161
|
export { TopologyStoreTemporary } from "./core/types/topology/topology-store-id.js";
|
|
148
162
|
export { TopologyTimeRange } from "./core/types/topology/topology-base-query.js";
|
|
163
|
+
export { TopologyTransactionSignature } from "./core/types/topology/topology-transaction-signature.js";
|
|
149
164
|
export { TopologyTransactionItem } from "./core/types/topology/topology-transactions.js";
|
|
150
165
|
export { TopologyTransactions } from "./core/types/topology/topology-transactions.js";
|
|
151
166
|
export { TopologyVettedPackage } from "./core/types/topology/vetted-package.js";
|
|
@@ -153,10 +168,22 @@ export { TopologyVettedPackages } from "./core/types/topology/vetted-packages.js
|
|
|
153
168
|
export { TrafficControlParameters } from "./core/types/topology/dynamic-synchronizer-parameters.js";
|
|
154
169
|
export { VettedPackage } from "./core/types/vetted-package.js";
|
|
155
170
|
export { VettedPackages } from "./core/types/vetted-packages.js";
|
|
171
|
+
export { PreparedTopologyTransaction } from "./core/types/topology/prepared-topology-transaction.js";
|
|
172
|
+
export { SignedTopologyTransaction } from "./core/types/topology/signed-topology-transaction.js";
|
|
156
173
|
export { CreateCommand } from "./core/types/commands/create-command.js";
|
|
174
|
+
export { AddTopologyTransactionsRequest } from "./core/types/requests/add-topology-transactions-request.js";
|
|
175
|
+
export { AllocateExternalPartyRequest } from "./core/types/requests/allocate-external-party-request.js";
|
|
157
176
|
export { AllocatePartyRequest } from "./core/types/requests/allocate-party-request.js";
|
|
177
|
+
export { AssembleSignedTopologyTransactionsRequest } from "./core/types/requests/assemble-signed-topology-transactions-request.js";
|
|
178
|
+
export { AuthorizeTopologyTransactionsProposal } from "./core/types/requests/authorize-topology-transactions-request.js";
|
|
179
|
+
export { AuthorizeTopologyTransactionsRequest } from "./core/types/requests/authorize-topology-transactions-request.js";
|
|
158
180
|
export { CountInFlightRequest } from "./core/types/requests/count-in-flight-request.js";
|
|
181
|
+
export { CreateTemporaryTopologyStoreRequest } from "./core/types/requests/create-temporary-topology-store-request.js";
|
|
159
182
|
export { CurrentTimeRequest } from "./core/types/requests/current-time-request.js";
|
|
183
|
+
export { DropTemporaryTopologyStoreRequest } from "./core/types/requests/drop-temporary-topology-store-request.js";
|
|
184
|
+
export { GenerateTopologyTransactionsProposal } from "./core/types/requests/generate-topology-transactions-request.js";
|
|
185
|
+
export { GenerateTopologyTransactionsRequest } from "./core/types/requests/generate-topology-transactions-request.js";
|
|
186
|
+
export { GenerateExternalPartyTopologyRequest } from "./core/types/requests/generate-external-party-topology-request.js";
|
|
160
187
|
export { GetDarContentsRequest } from "./core/types/requests/get-dar-contents-request.js";
|
|
161
188
|
export { GetDarRequest } from "./core/types/requests/get-dar-request.js";
|
|
162
189
|
export { GetActiveContractsPageRequest } from "./core/types/requests/get-active-contracts-page-request.js";
|
|
@@ -176,6 +203,8 @@ export { GetHighestOffsetByTimestampRequest } from "./core/types/requests/get-hi
|
|
|
176
203
|
export { GetIdentityProviderConfigRequest } from "./core/types/requests/get-identity-provider-config-request.js";
|
|
177
204
|
export { GetIdRequest } from "./core/types/requests/get-id-request.js";
|
|
178
205
|
export { GetIntervalsBehindForCounterParticipantsRequest } from "./core/types/requests/get-intervals-behind-for-counter-participants-request.js";
|
|
206
|
+
export { ImportTopologySnapshotRequest } from "./core/types/requests/import-topology-snapshot-request.js";
|
|
207
|
+
export { ImportTopologySnapshotV2Request } from "./core/types/requests/import-topology-snapshot-v2-request.js";
|
|
179
208
|
export { InspectCommitmentContractsRequest } from "./core/types/requests/inspect-commitment-contracts-request.js";
|
|
180
209
|
export { GetNoWaitCommitmentsFromRequest } from "./core/types/requests/get-no-wait-commitments-from-request.js";
|
|
181
210
|
export { GetParticipantPruningScheduleRequest } from "./core/types/requests/get-participant-pruning-schedule-request.js";
|
|
@@ -230,11 +259,13 @@ export { LookupReceivedAcsCommitmentsRequest } from "./core/types/requests/looku
|
|
|
230
259
|
export { LookupSentAcsCommitmentsRequest } from "./core/types/requests/lookup-sent-acs-commitments-request.js";
|
|
231
260
|
export { LookupOffsetByTimeRequest } from "./core/types/requests/lookup-offset-by-time-request.js";
|
|
232
261
|
export { OpenCommitmentRequest } from "./core/types/requests/open-commitment-request.js";
|
|
262
|
+
export { SignTopologyTransactionsRequest } from "./core/types/requests/sign-topology-transactions-request.js";
|
|
233
263
|
export { SubmitCommandRequest } from "./core/types/requests/submit-command-request.js";
|
|
234
264
|
export { TopologyListPartiesRequest } from "./core/types/requests/topology-list-parties-request.js";
|
|
235
265
|
export { TrafficControlStateRequest } from "./core/types/requests/traffic-control-state-request.js";
|
|
236
266
|
export { GrantUserRightsRequest } from "./core/types/requests/grant-user-rights-request.js";
|
|
237
267
|
export { UploadDarFileRequest } from "./core/types/requests/upload-dar-file-request.js";
|
|
268
|
+
export { AllocateExternalPartyResponse } from "./core/types/responses/allocate-external-party-response.js";
|
|
238
269
|
export { AllocatePartyResponse } from "./core/types/responses/allocate-party-response.js";
|
|
239
270
|
export { CountInFlightResponse } from "./core/types/responses/count-in-flight-response.js";
|
|
240
271
|
export { CurrentTimeResponse } from "./core/types/responses/current-time-response.js";
|
|
@@ -273,6 +304,14 @@ export { GetUpdateByIdResponse } from "./core/types/responses/get-update-by-id-r
|
|
|
273
304
|
export { GetUpdateByOffsetResponse } from "./core/types/responses/get-update-by-offset-response.js";
|
|
274
305
|
export { GetUpdatesPageResponse } from "./core/types/responses/get-updates-page-response.js";
|
|
275
306
|
export { GetUserResponse } from "./core/types/responses/get-user-response.js";
|
|
307
|
+
export { AddTopologyTransactionsResponse } from "./core/types/responses/add-topology-transactions-response.js";
|
|
308
|
+
export { AuthorizeTopologyTransactionsResponse } from "./core/types/responses/authorize-topology-transactions-response.js";
|
|
309
|
+
export { CreateTemporaryTopologyStoreResponse } from "./core/types/responses/create-temporary-topology-store-response.js";
|
|
310
|
+
export { DropTemporaryTopologyStoreResponse } from "./core/types/responses/drop-temporary-topology-store-response.js";
|
|
311
|
+
export { GenerateExternalPartyTopologyResponse } from "./core/types/responses/generate-external-party-topology-response.js";
|
|
312
|
+
export { GenerateTopologyTransactionsResponse } from "./core/types/responses/generate-topology-transactions-response.js";
|
|
313
|
+
export { ImportTopologySnapshotResponse } from "./core/types/responses/import-topology-snapshot-response.js";
|
|
314
|
+
export { ImportTopologySnapshotV2Response } from "./core/types/responses/import-topology-snapshot-v2-response.js";
|
|
276
315
|
export { ListAllResponse } from "./core/types/responses/list-all-response.js";
|
|
277
316
|
export { ListAllV2Response } from "./core/types/responses/list-all-v2-response.js";
|
|
278
317
|
export { ListAvailableStoresResponse } from "./core/types/responses/list-available-stores-response.js";
|
|
@@ -306,6 +345,7 @@ export { ListUserRightsResponse } from "./core/types/responses/list-user-rights-
|
|
|
306
345
|
export { ListUsersResponse } from "./core/types/responses/list-users-response.js";
|
|
307
346
|
export { ListVettedPackagesResponse } from "./core/types/responses/list-vetted-packages-response.js";
|
|
308
347
|
export { LookupOffsetByTimeResponse } from "./core/types/responses/lookup-offset-by-time-response.js";
|
|
348
|
+
export { SignTopologyTransactionsResponse } from "./core/types/responses/sign-topology-transactions-response.js";
|
|
309
349
|
export { TopologyListVettedPackagesResponse } from "./core/types/responses/topology-list-vetted-packages-response.js";
|
|
310
350
|
export { TopologyListPartiesResponse } from "./core/types/responses/topology-list-parties-response.js";
|
|
311
351
|
export { TrafficControlStateResponse } from "./core/types/responses/traffic-control-state-response.js";
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { ITransport } from "../../core/transports/transport.interface.js";
|
|
2
2
|
import { RequestOptions } from "../../core/types/request-options.js";
|
|
3
|
+
import { AllocateExternalPartyRequest } from "../../core/types/requests/allocate-external-party-request.js";
|
|
3
4
|
import { AllocatePartyRequest } from "../../core/types/requests/allocate-party-request.js";
|
|
5
|
+
import { GenerateExternalPartyTopologyRequest } from "../../core/types/requests/generate-external-party-topology-request.js";
|
|
6
|
+
import { AllocateExternalPartyResponse } from "../../core/types/responses/allocate-external-party-response.js";
|
|
4
7
|
import { GetParticipantIdRequest } from "../../core/types/requests/get-participant-id-request.js";
|
|
5
8
|
import { GetPartiesRequest } from "../../core/types/requests/get-parties-request.js";
|
|
6
9
|
import { ListKnownPartiesRequest } from "../../core/types/requests/list-known-parties-request.js";
|
|
7
10
|
import { AllocatePartyResponse } from "../../core/types/responses/allocate-party-response.js";
|
|
11
|
+
import { GenerateExternalPartyTopologyResponse } from "../../core/types/responses/generate-external-party-topology-response.js";
|
|
8
12
|
import { GetParticipantIdResponse } from "../../core/types/responses/get-participant-id-response.js";
|
|
9
13
|
import { GetPartiesResponse } from "../../core/types/responses/get-parties-response.js";
|
|
10
14
|
import { ListKnownPartiesResponse } from "../../core/types/responses/list-known-parties-response.js";
|
|
@@ -19,4 +23,8 @@ export declare class PartyManagementServiceClient {
|
|
|
19
23
|
getPartiesAsync(request: GetPartiesRequest, options?: RequestOptions): Promise<GetPartiesResponse>;
|
|
20
24
|
/** Allocates a party. Supported on JSON and gRPC. */
|
|
21
25
|
allocatePartyAsync(request: AllocatePartyRequest, options?: RequestOptions): Promise<AllocatePartyResponse>;
|
|
26
|
+
/** Generates external-party topology through the ledger-admin API. Supported on gRPC; JSON rejects it. */
|
|
27
|
+
generateExternalPartyTopologyAsync(request: GenerateExternalPartyTopologyRequest, options?: RequestOptions): Promise<GenerateExternalPartyTopologyResponse>;
|
|
28
|
+
/** Allocates an external party through the ledger-admin API. Supported on gRPC; JSON rejects it. */
|
|
29
|
+
allocateExternalPartyAsync(request: AllocateExternalPartyRequest, options?: RequestOptions): Promise<AllocateExternalPartyResponse>;
|
|
22
30
|
}
|
|
@@ -20,4 +20,12 @@ export class PartyManagementServiceClient {
|
|
|
20
20
|
allocatePartyAsync(request, options) {
|
|
21
21
|
return this.transport.allocatePartyAsync(request, options);
|
|
22
22
|
}
|
|
23
|
+
/** Generates external-party topology through the ledger-admin API. Supported on gRPC; JSON rejects it. */
|
|
24
|
+
generateExternalPartyTopologyAsync(request, options) {
|
|
25
|
+
return this.transport.generateExternalPartyTopologyAsync(request, options);
|
|
26
|
+
}
|
|
27
|
+
/** Allocates an external party through the ledger-admin API. Supported on gRPC; JSON rejects it. */
|
|
28
|
+
allocateExternalPartyAsync(request, options) {
|
|
29
|
+
return this.transport.allocateExternalPartyAsync(request, options);
|
|
30
|
+
}
|
|
23
31
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ITransport } from "../../core/transports/transport.interface.js";
|
|
2
|
+
import { RequestOptions } from "../../core/types/request-options.js";
|
|
3
|
+
import { AddTopologyTransactionsRequest } from "../../core/types/requests/add-topology-transactions-request.js";
|
|
4
|
+
import { AssembleSignedTopologyTransactionsRequest } from "../../core/types/requests/assemble-signed-topology-transactions-request.js";
|
|
5
|
+
import { AuthorizeTopologyTransactionsRequest } from "../../core/types/requests/authorize-topology-transactions-request.js";
|
|
6
|
+
import { CreateTemporaryTopologyStoreRequest } from "../../core/types/requests/create-temporary-topology-store-request.js";
|
|
7
|
+
import { DropTemporaryTopologyStoreRequest } from "../../core/types/requests/drop-temporary-topology-store-request.js";
|
|
8
|
+
import { GenerateTopologyTransactionsRequest } from "../../core/types/requests/generate-topology-transactions-request.js";
|
|
9
|
+
import { ImportTopologySnapshotRequest } from "../../core/types/requests/import-topology-snapshot-request.js";
|
|
10
|
+
import { ImportTopologySnapshotV2Request } from "../../core/types/requests/import-topology-snapshot-v2-request.js";
|
|
11
|
+
import { SignTopologyTransactionsRequest } from "../../core/types/requests/sign-topology-transactions-request.js";
|
|
12
|
+
import { AddTopologyTransactionsResponse } from "../../core/types/responses/add-topology-transactions-response.js";
|
|
13
|
+
import { AuthorizeTopologyTransactionsResponse } from "../../core/types/responses/authorize-topology-transactions-response.js";
|
|
14
|
+
import { CreateTemporaryTopologyStoreResponse } from "../../core/types/responses/create-temporary-topology-store-response.js";
|
|
15
|
+
import { DropTemporaryTopologyStoreResponse } from "../../core/types/responses/drop-temporary-topology-store-response.js";
|
|
16
|
+
import { GenerateTopologyTransactionsResponse } from "../../core/types/responses/generate-topology-transactions-response.js";
|
|
17
|
+
import { ImportTopologySnapshotResponse } from "../../core/types/responses/import-topology-snapshot-response.js";
|
|
18
|
+
import { ImportTopologySnapshotV2Response } from "../../core/types/responses/import-topology-snapshot-v2-response.js";
|
|
19
|
+
import { SignTopologyTransactionsResponse } from "../../core/types/responses/sign-topology-transactions-response.js";
|
|
20
|
+
import { SignedTopologyTransaction } from "../../core/types/topology/signed-topology-transaction.js";
|
|
21
|
+
export declare class TopologyManagerWriteServiceClient {
|
|
22
|
+
private readonly transport;
|
|
23
|
+
constructor(transport: ITransport);
|
|
24
|
+
/** Authorizes topology transactions. Supported on gRPC; JSON rejects it. */
|
|
25
|
+
authorizeAsync(request: AuthorizeTopologyTransactionsRequest, options?: RequestOptions): Promise<AuthorizeTopologyTransactionsResponse>;
|
|
26
|
+
/** Adds topology transactions to a topology store. Supported on gRPC; JSON rejects it. */
|
|
27
|
+
addTransactionsAsync(request: AddTopologyTransactionsRequest, options?: RequestOptions): Promise<AddTopologyTransactionsResponse>;
|
|
28
|
+
/** Imports a serialized topology snapshot. Supported on gRPC; JSON rejects it. */
|
|
29
|
+
importTopologySnapshotAsync(request: ImportTopologySnapshotRequest, options?: RequestOptions): Promise<ImportTopologySnapshotResponse>;
|
|
30
|
+
/** Imports a serialized topology snapshot using the V2 RPC. Supported on gRPC; JSON rejects it. */
|
|
31
|
+
importTopologySnapshotV2Async(request: ImportTopologySnapshotV2Request, options?: RequestOptions): Promise<ImportTopologySnapshotV2Response>;
|
|
32
|
+
/** Adds local signatures to topology transactions. Supported on gRPC; JSON rejects it. */
|
|
33
|
+
signTransactionsAsync(request: SignTopologyTransactionsRequest, options?: RequestOptions): Promise<SignTopologyTransactionsResponse>;
|
|
34
|
+
/** Generates topology transactions from raw proposals. Supported on gRPC; JSON rejects it. */
|
|
35
|
+
generateTransactionsAsync(request: GenerateTopologyTransactionsRequest, options?: RequestOptions): Promise<GenerateTopologyTransactionsResponse>;
|
|
36
|
+
/** Creates a temporary topology store. Supported on gRPC; JSON rejects it. */
|
|
37
|
+
createTemporaryTopologyStoreAsync(request: CreateTemporaryTopologyStoreRequest, options?: RequestOptions): Promise<CreateTemporaryTopologyStoreResponse>;
|
|
38
|
+
/** Drops a temporary topology store. Supported on gRPC; JSON rejects it. */
|
|
39
|
+
dropTemporaryTopologyStoreAsync(request: DropTemporaryTopologyStoreRequest, options?: RequestOptions): Promise<DropTemporaryTopologyStoreResponse>;
|
|
40
|
+
/** Assembles SDK-owned signed topology transactions from detached signatures. SDK-local; transport independent. */
|
|
41
|
+
assembleSignedTransactions(request: AssembleSignedTopologyTransactionsRequest): SignedTopologyTransaction[];
|
|
42
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { assembleSignedTopologyTransactions } from "./topology-signed-transaction-assembler.js";
|
|
2
|
+
export class TopologyManagerWriteServiceClient {
|
|
3
|
+
transport;
|
|
4
|
+
constructor(transport) {
|
|
5
|
+
this.transport = transport;
|
|
6
|
+
void this.transport;
|
|
7
|
+
}
|
|
8
|
+
/** Authorizes topology transactions. Supported on gRPC; JSON rejects it. */
|
|
9
|
+
authorizeAsync(request, options) {
|
|
10
|
+
return this.transport.authorizeTopologyTransactionsAsync(request, options);
|
|
11
|
+
}
|
|
12
|
+
/** Adds topology transactions to a topology store. Supported on gRPC; JSON rejects it. */
|
|
13
|
+
addTransactionsAsync(request, options) {
|
|
14
|
+
return this.transport.addTopologyTransactionsAsync(request, options);
|
|
15
|
+
}
|
|
16
|
+
/** Imports a serialized topology snapshot. Supported on gRPC; JSON rejects it. */
|
|
17
|
+
importTopologySnapshotAsync(request, options) {
|
|
18
|
+
return this.transport.importTopologySnapshotAsync(request, options);
|
|
19
|
+
}
|
|
20
|
+
/** Imports a serialized topology snapshot using the V2 RPC. Supported on gRPC; JSON rejects it. */
|
|
21
|
+
importTopologySnapshotV2Async(request, options) {
|
|
22
|
+
return this.transport.importTopologySnapshotV2Async(request, options);
|
|
23
|
+
}
|
|
24
|
+
/** Adds local signatures to topology transactions. Supported on gRPC; JSON rejects it. */
|
|
25
|
+
signTransactionsAsync(request, options) {
|
|
26
|
+
return this.transport.signTopologyTransactionsAsync(request, options);
|
|
27
|
+
}
|
|
28
|
+
/** Generates topology transactions from raw proposals. Supported on gRPC; JSON rejects it. */
|
|
29
|
+
generateTransactionsAsync(request, options) {
|
|
30
|
+
return this.transport.generateTopologyTransactionsAsync(request, options);
|
|
31
|
+
}
|
|
32
|
+
/** Creates a temporary topology store. Supported on gRPC; JSON rejects it. */
|
|
33
|
+
createTemporaryTopologyStoreAsync(request, options) {
|
|
34
|
+
return this.transport.createTemporaryTopologyStoreAsync(request, options);
|
|
35
|
+
}
|
|
36
|
+
/** Drops a temporary topology store. Supported on gRPC; JSON rejects it. */
|
|
37
|
+
dropTemporaryTopologyStoreAsync(request, options) {
|
|
38
|
+
return this.transport.dropTemporaryTopologyStoreAsync(request, options);
|
|
39
|
+
}
|
|
40
|
+
/** Assembles SDK-owned signed topology transactions from detached signatures. SDK-local; transport independent. */
|
|
41
|
+
assembleSignedTransactions(request) {
|
|
42
|
+
return assembleSignedTopologyTransactions(request);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { AssembleSignedTopologyTransactionsRequest } from "../../core/types/requests/assemble-signed-topology-transactions-request.js";
|
|
2
|
+
import { SignedTopologyTransaction } from "../../core/types/topology/signed-topology-transaction.js";
|
|
3
|
+
export declare function assembleSignedTopologyTransactions(request: AssembleSignedTopologyTransactionsRequest): SignedTopologyTransaction[];
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { ValidationError } from "../../core/errors/validation-error.js";
|
|
2
|
+
import { SignedTopologyTransaction } from "../../core/types/topology/signed-topology-transaction.js";
|
|
3
|
+
import { TopologySignatureFormat } from "../../core/types/topology/topology-signature-format.js";
|
|
4
|
+
import { TopologyTransactionSignature } from "../../core/types/topology/topology-transaction-signature.js";
|
|
5
|
+
export function assembleSignedTopologyTransactions(request) {
|
|
6
|
+
const preparedTransactionsByHash = new Map(request.preparedTransactions.map((preparedTransaction) => [
|
|
7
|
+
toHex(preparedTransaction.transactionHash),
|
|
8
|
+
preparedTransaction,
|
|
9
|
+
]));
|
|
10
|
+
const signaturesByHash = new Map();
|
|
11
|
+
const seenSignerPairs = new Set();
|
|
12
|
+
for (const signature of request.signatures) {
|
|
13
|
+
validateExternalSignature(signature);
|
|
14
|
+
const signatureFormat = signature.signatureFormat;
|
|
15
|
+
const hashKey = toHex(signature.transactionHash);
|
|
16
|
+
const preparedTransaction = preparedTransactionsByHash.get(hashKey);
|
|
17
|
+
if (preparedTransaction === undefined) {
|
|
18
|
+
throw new ValidationError(`No prepared transaction matches detached signature hash ${hashKey}.`);
|
|
19
|
+
}
|
|
20
|
+
const signerKey = `${hashKey}:${signature.signedByFingerprint}`;
|
|
21
|
+
if (seenSignerPairs.has(signerKey)) {
|
|
22
|
+
throw new ValidationError(`Duplicate detached signature for signer ${signature.signedByFingerprint} on transaction ${hashKey}.`);
|
|
23
|
+
}
|
|
24
|
+
seenSignerPairs.add(signerKey);
|
|
25
|
+
const mappedSignature = new TopologyTransactionSignature({
|
|
26
|
+
format: mapExternalSignatureFormatToRawFormat(signatureFormat),
|
|
27
|
+
signature: signature.signature,
|
|
28
|
+
signedByFingerprint: signature.signedByFingerprint,
|
|
29
|
+
signingAlgorithmSpec: signature.signingAlgorithmSpec
|
|
30
|
+
?? mapExternalSignatureFormatToAlgorithmSpec(signatureFormat),
|
|
31
|
+
signatureDelegation: signature.signatureDelegation,
|
|
32
|
+
});
|
|
33
|
+
const existing = signaturesByHash.get(hashKey) ?? [];
|
|
34
|
+
existing.push(mappedSignature);
|
|
35
|
+
signaturesByHash.set(hashKey, existing);
|
|
36
|
+
}
|
|
37
|
+
return request.preparedTransactions.map((preparedTransaction) => new SignedTopologyTransaction({
|
|
38
|
+
transaction: preparedTransaction.serializedTransaction,
|
|
39
|
+
signatures: signaturesByHash.get(toHex(preparedTransaction.transactionHash)) ?? [],
|
|
40
|
+
proposal: preparedTransaction.proposal,
|
|
41
|
+
multiTransactionSignatures: [],
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
function validateExternalSignature(signature) {
|
|
45
|
+
if (signature.transactionHash.length === 0) {
|
|
46
|
+
throw new ValidationError("Detached topology signatures require a transactionHash.");
|
|
47
|
+
}
|
|
48
|
+
else if (signature.signature.length === 0) {
|
|
49
|
+
throw new ValidationError("Detached topology signatures require signature bytes.");
|
|
50
|
+
}
|
|
51
|
+
else if (signature.signedByFingerprint.length === 0) {
|
|
52
|
+
throw new ValidationError("Detached topology signatures require signedByFingerprint.");
|
|
53
|
+
}
|
|
54
|
+
else if (signature.signatureFormat === undefined) {
|
|
55
|
+
throw new ValidationError("Detached topology signatures require signatureFormat.");
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function mapExternalSignatureFormatToRawFormat(signatureFormat) {
|
|
59
|
+
switch (signatureFormat) {
|
|
60
|
+
case TopologySignatureFormat.ed25519:
|
|
61
|
+
return "concat";
|
|
62
|
+
default:
|
|
63
|
+
return "unspecified";
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function mapExternalSignatureFormatToAlgorithmSpec(signatureFormat) {
|
|
67
|
+
switch (signatureFormat) {
|
|
68
|
+
case TopologySignatureFormat.ed25519:
|
|
69
|
+
return "ed25519";
|
|
70
|
+
default:
|
|
71
|
+
return "unspecified";
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
function toHex(bytes) {
|
|
75
|
+
return [...bytes]
|
|
76
|
+
.map((value) => value.toString(16).padStart(2, "0"))
|
|
77
|
+
.join("");
|
|
78
|
+
}
|