@distrohelena/canton-typescript-sdk 0.1.28 → 0.1.30

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.
Files changed (745) hide show
  1. package/dist/cjs/client/canton-client-options.js +45 -0
  2. package/dist/cjs/client/canton-client.js +91 -0
  3. package/dist/cjs/client/canton-hashing-client.js +19 -0
  4. package/dist/cjs/client/external-party-activation-client.js +144 -0
  5. package/dist/cjs/client/external-party-activation-request.js +18 -0
  6. package/dist/cjs/client/external-party-activation-response.js +16 -0
  7. package/dist/cjs/client/service-registry.js +1157 -0
  8. package/dist/cjs/core/auth/auth-provider.interface.js +2 -0
  9. package/dist/cjs/core/auth/bearer-token-auth-provider.js +13 -0
  10. package/dist/cjs/core/errors/authentication-error.js +7 -0
  11. package/dist/cjs/core/errors/authorization-error.js +7 -0
  12. package/dist/cjs/core/errors/canton-error.js +10 -0
  13. package/dist/cjs/core/errors/conflict-error.js +7 -0
  14. package/dist/cjs/core/errors/endpoint-not-configured-error.js +7 -0
  15. package/dist/cjs/core/errors/grpc-transport-error.js +80 -0
  16. package/dist/cjs/core/errors/not-supported-error.js +7 -0
  17. package/dist/cjs/core/errors/object-disposed-error.js +7 -0
  18. package/dist/cjs/core/errors/signing-error.js +7 -0
  19. package/dist/cjs/core/errors/timeout-error.js +7 -0
  20. package/dist/cjs/core/errors/transport-error.js +7 -0
  21. package/dist/cjs/core/errors/validation-error.js +7 -0
  22. package/dist/cjs/core/hashing/canton-hash.js +124 -0
  23. package/dist/cjs/core/signing/command-signer.interface.js +2 -0
  24. package/dist/cjs/core/signing/sign-command-request.js +16 -0
  25. package/dist/cjs/core/signing/sign-command-result.js +23 -0
  26. package/dist/cjs/core/transports/transport-capability.js +7 -0
  27. package/dist/cjs/core/transports/transport-features.interface.js +2 -0
  28. package/dist/cjs/core/transports/transport.interface.js +2 -0
  29. package/dist/cjs/core/types/admin-component-health-kind.js +11 -0
  30. package/dist/cjs/core/types/admin-component-status.js +14 -0
  31. package/dist/cjs/core/types/admin-node-status.js +22 -0
  32. package/dist/cjs/core/types/admin-not-initialized-external-input-kind.js +10 -0
  33. package/dist/cjs/core/types/admin-not-initialized-status.js +14 -0
  34. package/dist/cjs/core/types/admin-topology-queue-status.js +14 -0
  35. package/dist/cjs/core/types/canton-hash-purpose.js +9 -0
  36. package/dist/cjs/core/types/command-inspection-contract.js +14 -0
  37. package/dist/cjs/core/types/command-request-statistics.js +14 -0
  38. package/dist/cjs/core/types/command-state.js +10 -0
  39. package/dist/cjs/core/types/command-status.js +27 -0
  40. package/dist/cjs/core/types/command-timing.js +12 -0
  41. package/dist/cjs/core/types/command-update-summary.js +18 -0
  42. package/dist/cjs/core/types/commands/create-and-exercise-command.js +27 -0
  43. package/dist/cjs/core/types/commands/create-command.js +20 -0
  44. package/dist/cjs/core/types/commands/exercise-by-key-command.js +26 -0
  45. package/dist/cjs/core/types/commands/exercise-command.js +26 -0
  46. package/dist/cjs/core/types/commands/ledger-command.js +2 -0
  47. package/dist/cjs/core/types/commitment-interval.js +12 -0
  48. package/dist/cjs/core/types/commitment-time-range.js +12 -0
  49. package/dist/cjs/core/types/completion.js +34 -0
  50. package/dist/cjs/core/types/connected-synchronizer-health.js +9 -0
  51. package/dist/cjs/core/types/connected-synchronizer-status.js +12 -0
  52. package/dist/cjs/core/types/connected-synchronizer.js +15 -0
  53. package/dist/cjs/core/types/contract-archived.js +12 -0
  54. package/dist/cjs/core/types/contract-created.js +12 -0
  55. package/dist/cjs/core/types/counter-participant-info.js +18 -0
  56. package/dist/cjs/core/types/daml-contract-id.js +15 -0
  57. package/dist/cjs/core/types/daml-numeric.js +18 -0
  58. package/dist/cjs/core/types/daml-party.js +18 -0
  59. package/dist/cjs/core/types/daml-values.js +63 -0
  60. package/dist/cjs/core/types/disclosed-contract.js +19 -0
  61. package/dist/cjs/core/types/event-stream-kind.js +8 -0
  62. package/dist/cjs/core/types/external-party/external-party-crypto-key-format.js +10 -0
  63. package/dist/cjs/core/types/external-party/external-party-onboarding-transaction.js +12 -0
  64. package/dist/cjs/core/types/external-party/external-party-signature-format.js +11 -0
  65. package/dist/cjs/core/types/external-party/external-party-signature.js +20 -0
  66. package/dist/cjs/core/types/external-party/external-party-signing-algorithm-spec.js +11 -0
  67. package/dist/cjs/core/types/external-party/external-party-signing-key-spec.js +12 -0
  68. package/dist/cjs/core/types/external-party/external-party-signing-public-key.js +16 -0
  69. package/dist/cjs/core/types/grpc-channel-security.js +8 -0
  70. package/dist/cjs/core/types/hash-function.js +7 -0
  71. package/dist/cjs/core/types/health-check-status.js +10 -0
  72. package/dist/cjs/core/types/identity-provider-config.js +18 -0
  73. package/dist/cjs/core/types/known-package-details.js +18 -0
  74. package/dist/cjs/core/types/ledger-user.js +21 -0
  75. package/dist/cjs/core/types/object-meta.js +12 -0
  76. package/dist/cjs/core/types/offset-checkpoint.js +12 -0
  77. package/dist/cjs/core/types/package-format.js +8 -0
  78. package/dist/cjs/core/types/package-metadata-filter.js +12 -0
  79. package/dist/cjs/core/types/package-reference.js +14 -0
  80. package/dist/cjs/core/types/package-status.js +8 -0
  81. package/dist/cjs/core/types/participant-dar-description.js +16 -0
  82. package/dist/cjs/core/types/participant-module-description.js +10 -0
  83. package/dist/cjs/core/types/participant-node-status.js +22 -0
  84. package/dist/cjs/core/types/participant-package-description.js +18 -0
  85. package/dist/cjs/core/types/participant-pruning-schedule.js +12 -0
  86. package/dist/cjs/core/types/party-details.js +16 -0
  87. package/dist/cjs/core/types/pending-operation-metadata.js +16 -0
  88. package/dist/cjs/core/types/prepared-command-submission.js +17 -0
  89. package/dist/cjs/core/types/pruning-schedule.js +14 -0
  90. package/dist/cjs/core/types/received-acs-commitment-per-synchronizer.js +12 -0
  91. package/dist/cjs/core/types/received-acs-commitment-state.js +11 -0
  92. package/dist/cjs/core/types/received-acs-commitment.js +24 -0
  93. package/dist/cjs/core/types/request-options.js +10 -0
  94. package/dist/cjs/core/types/request-timeout.js +6 -0
  95. package/dist/cjs/core/types/requests/allocate-party-request.js +12 -0
  96. package/dist/cjs/core/types/requests/assemble-signed-topology-transactions-request.js +12 -0
  97. package/dist/cjs/core/types/requests/create-decentralized-party-request.js +86 -0
  98. package/dist/cjs/core/types/requests/create-external-party-request.js +51 -0
  99. package/dist/cjs/core/types/requests/create-party-request.js +12 -0
  100. package/dist/cjs/core/types/requests/finalize-decentralized-party-request.js +47 -0
  101. package/dist/cjs/core/types/requests/get-active-contracts-page-request.js +28 -0
  102. package/dist/cjs/core/types/requests/get-active-contracts-request.js +12 -0
  103. package/dist/cjs/core/types/requests/get-command-status-request.js +14 -0
  104. package/dist/cjs/core/types/requests/get-connected-synchronizers-request.js +14 -0
  105. package/dist/cjs/core/types/requests/get-dar-contents-request.js +10 -0
  106. package/dist/cjs/core/types/requests/get-dar-request.js +10 -0
  107. package/dist/cjs/core/types/requests/get-identity-provider-config-request.js +10 -0
  108. package/dist/cjs/core/types/requests/get-latest-pruned-offsets-request.js +7 -0
  109. package/dist/cjs/core/types/requests/get-ledger-api-version-request.js +6 -0
  110. package/dist/cjs/core/types/requests/get-ledger-end-request.js +7 -0
  111. package/dist/cjs/core/types/requests/get-package-references-request.js +10 -0
  112. package/dist/cjs/core/types/requests/get-package-request.js +10 -0
  113. package/dist/cjs/core/types/requests/get-package-status-request.js +10 -0
  114. package/dist/cjs/core/types/requests/get-participant-id-request.js +7 -0
  115. package/dist/cjs/core/types/requests/get-participant-status-request.js +6 -0
  116. package/dist/cjs/core/types/requests/get-parties-request.js +12 -0
  117. package/dist/cjs/core/types/requests/get-user-request.js +12 -0
  118. package/dist/cjs/core/types/requests/grant-user-rights-request.js +12 -0
  119. package/dist/cjs/core/types/requests/health-check-request.js +10 -0
  120. package/dist/cjs/core/types/requests/list-all-request.js +14 -0
  121. package/dist/cjs/core/types/requests/list-dars-request.js +12 -0
  122. package/dist/cjs/core/types/requests/list-decentralized-namespace-definition-request.js +12 -0
  123. package/dist/cjs/core/types/requests/list-identity-provider-configs-request.js +6 -0
  124. package/dist/cjs/core/types/requests/list-key-owners-request.js +18 -0
  125. package/dist/cjs/core/types/requests/list-known-packages-request.js +7 -0
  126. package/dist/cjs/core/types/requests/list-known-parties-request.js +16 -0
  127. package/dist/cjs/core/types/requests/list-lsu-announcement-request.js +12 -0
  128. package/dist/cjs/core/types/requests/list-lsu-sequencer-connection-successor-request.js +15 -0
  129. package/dist/cjs/core/types/requests/list-mediator-synchronizer-state-request.js +12 -0
  130. package/dist/cjs/core/types/requests/list-namespace-delegation-request.js +14 -0
  131. package/dist/cjs/core/types/requests/list-owner-to-key-mapping-request.js +14 -0
  132. package/dist/cjs/core/types/requests/list-packages-request.js +7 -0
  133. package/dist/cjs/core/types/requests/list-participant-synchronizer-permission-request.js +12 -0
  134. package/dist/cjs/core/types/requests/list-parties-request.js +16 -0
  135. package/dist/cjs/core/types/requests/list-party-hosting-limits-request.js +12 -0
  136. package/dist/cjs/core/types/requests/list-party-to-key-mapping-request.js +12 -0
  137. package/dist/cjs/core/types/requests/list-party-to-participant-request.js +14 -0
  138. package/dist/cjs/core/types/requests/list-sequencer-synchronizer-state-request.js +12 -0
  139. package/dist/cjs/core/types/requests/list-sequencing-parameters-state-request.js +12 -0
  140. package/dist/cjs/core/types/requests/list-synchronizer-parameters-state-request.js +12 -0
  141. package/dist/cjs/core/types/requests/list-synchronizer-trust-certificate-request.js +12 -0
  142. package/dist/cjs/core/types/requests/list-user-rights-request.js +12 -0
  143. package/dist/cjs/core/types/requests/list-users-request.js +14 -0
  144. package/dist/cjs/core/types/requests/list-vetted-packages-request.js +16 -0
  145. package/dist/cjs/core/types/requests/query-contracts-request.js +12 -0
  146. package/dist/cjs/core/types/requests/stream-query-request.js +12 -0
  147. package/dist/cjs/core/types/requests/stream-transactions-request.js +16 -0
  148. package/dist/cjs/core/types/requests/submit-command-request.js +26 -0
  149. package/dist/cjs/core/types/requests/topology-list-parties-request.js +18 -0
  150. package/dist/cjs/core/types/requests/topology-list-vetted-packages-request.js +12 -0
  151. package/dist/cjs/core/types/requests/upload-dar-file-request.js +10 -0
  152. package/dist/cjs/core/types/requests/upload-package-request.js +12 -0
  153. package/dist/cjs/core/types/responses/allocate-party-response.js +10 -0
  154. package/dist/cjs/core/types/responses/create-party-response.js +10 -0
  155. package/dist/cjs/core/types/responses/get-active-contracts-page-response.js +14 -0
  156. package/dist/cjs/core/types/responses/get-command-status-response.js +10 -0
  157. package/dist/cjs/core/types/responses/get-connected-synchronizers-response.js +10 -0
  158. package/dist/cjs/core/types/responses/get-dar-contents-response.js +12 -0
  159. package/dist/cjs/core/types/responses/get-dar-response.js +12 -0
  160. package/dist/cjs/core/types/responses/get-identity-provider-config-response.js +10 -0
  161. package/dist/cjs/core/types/responses/get-latest-pruned-offsets-response.js +14 -0
  162. package/dist/cjs/core/types/responses/get-ledger-api-version-response.js +12 -0
  163. package/dist/cjs/core/types/responses/get-ledger-end-response.js +12 -0
  164. package/dist/cjs/core/types/responses/get-package-references-response.js +10 -0
  165. package/dist/cjs/core/types/responses/get-package-response.js +14 -0
  166. package/dist/cjs/core/types/responses/get-package-status-response.js +10 -0
  167. package/dist/cjs/core/types/responses/get-participant-id-response.js +10 -0
  168. package/dist/cjs/core/types/responses/get-participant-status-response.js +12 -0
  169. package/dist/cjs/core/types/responses/get-parties-response.js +10 -0
  170. package/dist/cjs/core/types/responses/get-user-response.js +10 -0
  171. package/dist/cjs/core/types/responses/grant-user-rights-response.js +10 -0
  172. package/dist/cjs/core/types/responses/health-check-response.js +10 -0
  173. package/dist/cjs/core/types/responses/health-status-response.js +12 -0
  174. package/dist/cjs/core/types/responses/list-all-response.js +10 -0
  175. package/dist/cjs/core/types/responses/list-dars-response.js +10 -0
  176. package/dist/cjs/core/types/responses/list-decentralized-namespace-definition-response.js +10 -0
  177. package/dist/cjs/core/types/responses/list-identity-provider-configs-response.js +10 -0
  178. package/dist/cjs/core/types/responses/list-key-owners-response.js +10 -0
  179. package/dist/cjs/core/types/responses/list-known-packages-response.js +10 -0
  180. package/dist/cjs/core/types/responses/list-known-parties-response.js +12 -0
  181. package/dist/cjs/core/types/responses/list-lsu-announcement-response.js +10 -0
  182. package/dist/cjs/core/types/responses/list-lsu-sequencer-connection-successor-response.js +10 -0
  183. package/dist/cjs/core/types/responses/list-mediator-synchronizer-state-response.js +10 -0
  184. package/dist/cjs/core/types/responses/list-namespace-delegation-response.js +10 -0
  185. package/dist/cjs/core/types/responses/list-owner-to-key-mapping-response.js +10 -0
  186. package/dist/cjs/core/types/responses/list-packages-response.js +10 -0
  187. package/dist/cjs/core/types/responses/list-participant-synchronizer-permission-response.js +10 -0
  188. package/dist/cjs/core/types/responses/list-parties-response.js +12 -0
  189. package/dist/cjs/core/types/responses/list-party-hosting-limits-response.js +10 -0
  190. package/dist/cjs/core/types/responses/list-party-to-key-mapping-response.js +10 -0
  191. package/dist/cjs/core/types/responses/list-party-to-participant-response.js +10 -0
  192. package/dist/cjs/core/types/responses/list-sequencer-synchronizer-state-response.js +10 -0
  193. package/dist/cjs/core/types/responses/list-sequencing-parameters-state-response.js +10 -0
  194. package/dist/cjs/core/types/responses/list-synchronizer-parameters-state-response.js +10 -0
  195. package/dist/cjs/core/types/responses/list-synchronizer-trust-certificate-response.js +10 -0
  196. package/dist/cjs/core/types/responses/list-user-rights-response.js +10 -0
  197. package/dist/cjs/core/types/responses/list-users-response.js +12 -0
  198. package/dist/cjs/core/types/responses/list-vetted-packages-response.js +12 -0
  199. package/dist/cjs/core/types/responses/query-contracts-response.js +10 -0
  200. package/dist/cjs/core/types/responses/submit-command-response.js +12 -0
  201. package/dist/cjs/core/types/responses/submit-command-transaction-response.js +15 -0
  202. package/dist/cjs/core/types/responses/topology-list-parties-response.js +10 -0
  203. package/dist/cjs/core/types/responses/topology-list-vetted-packages-response.js +10 -0
  204. package/dist/cjs/core/types/responses/upload-dar-file-response.js +10 -0
  205. package/dist/cjs/core/types/responses/upload-package-response.js +10 -0
  206. package/dist/cjs/core/types/safe-to-prune-commitment-state.js +10 -0
  207. package/dist/cjs/core/types/sdk-command.js +22 -0
  208. package/dist/cjs/core/types/sent-acs-commitment-per-synchronizer.js +12 -0
  209. package/dist/cjs/core/types/sent-acs-commitment-state.js +10 -0
  210. package/dist/cjs/core/types/sent-acs-commitment.js +24 -0
  211. package/dist/cjs/core/types/slow-counter-participant-synchronizer-config.js +20 -0
  212. package/dist/cjs/core/types/submission-mode.js +8 -0
  213. package/dist/cjs/core/types/synchronizer-time-range.js +12 -0
  214. package/dist/cjs/core/types/synchronizer-time.js +12 -0
  215. package/dist/cjs/core/types/topology/decentralized-namespace-definition.js +14 -0
  216. package/dist/cjs/core/types/topology/dynamic-sequencing-parameters.js +10 -0
  217. package/dist/cjs/core/types/topology/dynamic-synchronizer-parameters.js +80 -0
  218. package/dist/cjs/core/types/topology/external-topology-signature.js +20 -0
  219. package/dist/cjs/core/types/topology/generated-topology-transaction.js +12 -0
  220. package/dist/cjs/core/types/topology/lsu-announcement.js +13 -0
  221. package/dist/cjs/core/types/topology/lsu-sequencer-connection-successor.js +27 -0
  222. package/dist/cjs/core/types/topology/mediator-synchronizer-state.js +18 -0
  223. package/dist/cjs/core/types/topology/multi-topology-transaction-signature.js +12 -0
  224. package/dist/cjs/core/types/topology/namespace-delegation.js +31 -0
  225. package/dist/cjs/core/types/topology/owner-to-key-mapping.js +12 -0
  226. package/dist/cjs/core/types/topology/participant-permission.js +10 -0
  227. package/dist/cjs/core/types/topology/participant-synchronizer-permission.js +27 -0
  228. package/dist/cjs/core/types/topology/party-hosting-limits.js +12 -0
  229. package/dist/cjs/core/types/topology/party-to-key-mapping.js +14 -0
  230. package/dist/cjs/core/types/topology/party-to-participant.js +34 -0
  231. package/dist/cjs/core/types/topology/prepared-topology-transaction.js +14 -0
  232. package/dist/cjs/core/types/topology/sequencer-synchronizer-state.js +16 -0
  233. package/dist/cjs/core/types/topology/signed-topology-transaction.js +18 -0
  234. package/dist/cjs/core/types/topology/synchronizer-trust-certificate.js +14 -0
  235. package/dist/cjs/core/types/topology/topology-base-query.js +34 -0
  236. package/dist/cjs/core/types/topology/topology-base-result.js +25 -0
  237. package/dist/cjs/core/types/topology/topology-duration.js +12 -0
  238. package/dist/cjs/core/types/topology/topology-force-flag.js +12 -0
  239. package/dist/cjs/core/types/topology/topology-key-owner-result.js +18 -0
  240. package/dist/cjs/core/types/topology/topology-mapping-code.js +22 -0
  241. package/dist/cjs/core/types/topology/topology-mapping-operation.js +9 -0
  242. package/dist/cjs/core/types/topology/topology-mapping-result.js +12 -0
  243. package/dist/cjs/core/types/topology/topology-mapping.js +2 -0
  244. package/dist/cjs/core/types/topology/topology-party-result.js +33 -0
  245. package/dist/cjs/core/types/topology/topology-public-key.js +53 -0
  246. package/dist/cjs/core/types/topology/topology-signature-delegation.js +24 -0
  247. package/dist/cjs/core/types/topology/topology-signature-format.js +8 -0
  248. package/dist/cjs/core/types/topology/topology-store-id.js +44 -0
  249. package/dist/cjs/core/types/topology/topology-transaction-signature.js +18 -0
  250. package/dist/cjs/core/types/topology/topology-transactions.js +25 -0
  251. package/dist/cjs/core/types/topology/vetted-package.js +18 -0
  252. package/dist/cjs/core/types/topology/vetted-packages.js +20 -0
  253. package/dist/cjs/core/types/topology-state-filter.js +12 -0
  254. package/dist/cjs/core/types/transport-kind.js +8 -0
  255. package/dist/cjs/core/types/user-right-kind.js +14 -0
  256. package/dist/cjs/core/types/vetted-package.js +5 -0
  257. package/dist/cjs/core/types/vetted-packages.js +5 -0
  258. package/dist/cjs/core/types/wait-commitments-setup.js +12 -0
  259. package/dist/cjs/daml-interface/analysis/analyzed-choice.js +18 -0
  260. package/dist/cjs/daml-interface/analysis/analyzed-daml-type-definition.js +2 -0
  261. package/dist/cjs/daml-interface/analysis/analyzed-daml-type.js +2 -0
  262. package/dist/cjs/daml-interface/analysis/analyzed-template.js +29 -0
  263. package/dist/cjs/daml-interface/analysis/daml-interface-analyzer.js +317 -0
  264. package/dist/cjs/daml-interface/cli/daml-interface-cli-options.js +49 -0
  265. package/dist/cjs/daml-interface/cli/daml-interface-cli.js +45 -0
  266. package/dist/cjs/daml-interface/daml-interface-generator-options.js +13 -0
  267. package/dist/cjs/daml-interface/daml-interface-generator.js +46 -0
  268. package/dist/cjs/daml-interface/emission/daml-module-import-style.js +10 -0
  269. package/dist/cjs/daml-interface/emission/generated-spec-emitter.js +367 -0
  270. package/dist/cjs/daml-interface/emission/generated-test-sample-emitter.js +463 -0
  271. package/dist/cjs/daml-interface/emission/named-type-emitter.js +510 -0
  272. package/dist/cjs/daml-interface/emission/project-emitter.js +70 -0
  273. package/dist/cjs/daml-interface/emission/registry-emitter.js +49 -0
  274. package/dist/cjs/daml-interface/emission/relative-module-specifier.js +21 -0
  275. package/dist/cjs/daml-interface/emission/support-file-emitter.js +258 -0
  276. package/dist/cjs/daml-interface/emission/template-binding-emitter.js +531 -0
  277. package/dist/cjs/daml-interface/emission/type-script-name-resolver.js +440 -0
  278. package/dist/cjs/daml-interface/emission-model/generated-choice-binding.js +28 -0
  279. package/dist/cjs/daml-interface/emission-model/generated-daml-interface-project.js +67 -0
  280. package/dist/cjs/daml-interface/emission-model/generated-named-type-file.js +27 -0
  281. package/dist/cjs/daml-interface/emission-model/generated-registry-file.js +12 -0
  282. package/dist/cjs/daml-interface/emission-model/generated-spec-file.js +15 -0
  283. package/dist/cjs/daml-interface/emission-model/generated-support-file.js +12 -0
  284. package/dist/cjs/daml-interface/emission-model/generated-template-binding-file.js +14 -0
  285. package/dist/cjs/daml-interface/emission-model/generated-template-binding.js +41 -0
  286. package/dist/cjs/daml-interface/errors/daml-interface-generation.exception.js +10 -0
  287. package/dist/cjs/daml-interface/errors/daml-interface-unsupported-shape.exception.js +10 -0
  288. package/dist/cjs/daml-interface/errors/daml-interface-write.exception.js +10 -0
  289. package/dist/cjs/daml-interface/index.js +57 -0
  290. package/dist/cjs/daml-interface/runtime/daml-event-source-normalizer.js +532 -0
  291. package/dist/cjs/daml-interface/runtime/daml-materialization-error.js +13 -0
  292. package/dist/cjs/daml-interface/runtime/daml-template.js +14 -0
  293. package/dist/cjs/daml-interface/runtime/daml-type-descriptor.js +2 -0
  294. package/dist/cjs/daml-interface/runtime/daml-value-converter.js +380 -0
  295. package/dist/cjs/daml-interface/runtime/daml-value-materializer.js +33 -0
  296. package/dist/cjs/daml-interface/writing/daml-interface-writer.js +22 -0
  297. package/dist/cjs/daml-lf/container/dar-archive-entry.js +12 -0
  298. package/dist/cjs/daml-lf/container/dar-archive-loader.js +91 -0
  299. package/dist/cjs/daml-lf/container/dar-archive.js +18 -0
  300. package/dist/cjs/daml-lf/container/dar-manifest.js +12 -0
  301. package/dist/cjs/daml-lf/container/dar-package-entry.js +12 -0
  302. package/dist/cjs/daml-lf/container/dar-source-bundle-loader.js +37 -0
  303. package/dist/cjs/daml-lf/container/dar-source-bundle.js +15 -0
  304. package/dist/cjs/daml-lf/container/dar-source-file-entry.js +12 -0
  305. package/dist/cjs/daml-lf/daml-lf-compilation.js +186 -0
  306. package/dist/cjs/daml-lf/daml-lf-package-loader.js +38 -0
  307. package/dist/cjs/daml-lf/daml-lf-workspace.js +10 -0
  308. package/dist/cjs/daml-lf/decoding/archive-payload-decoder.js +61 -0
  309. package/dist/cjs/daml-lf/decoding/archive-payload-envelope.js +14 -0
  310. package/dist/cjs/daml-lf/decoding/daml-lf-language-version.js +17 -0
  311. package/dist/cjs/daml-lf/decoding/lf-2-package-decoder.js +21 -0
  312. package/dist/cjs/daml-lf/decoding/package-decoder-registry.js +21 -0
  313. package/dist/cjs/daml-lf/decoding/package-decoder.interface.js +2 -0
  314. package/dist/cjs/daml-lf/errors/daml-lf-archive.exception.js +10 -0
  315. package/dist/cjs/daml-lf/errors/daml-lf-decode.exception.js +10 -0
  316. package/dist/cjs/daml-lf/errors/daml-lf-resolution.exception.js +10 -0
  317. package/dist/cjs/daml-lf/errors/daml-lf-semantic.exception.js +10 -0
  318. package/dist/cjs/daml-lf/errors/daml-lf-version-not-supported.exception.js +10 -0
  319. package/dist/cjs/daml-lf/index.js +76 -0
  320. package/dist/cjs/daml-lf/interpreter/daml-lf-builtin-dispatch.js +939 -0
  321. package/dist/cjs/daml-lf/interpreter/daml-lf-evaluation-context.interface.js +2 -0
  322. package/dist/cjs/daml-lf/interpreter/daml-lf-evaluator.js +1135 -0
  323. package/dist/cjs/daml-lf/interpreter/daml-lf-interpreter-scaffold.js +24 -0
  324. package/dist/cjs/daml-lf/interpreter/daml-lf-lexical-scope.js +50 -0
  325. package/dist/cjs/daml-lf/interpreter/daml-lf-runtime-frame.js +19 -0
  326. package/dist/cjs/daml-lf/interpreter/daml-lf-runtime-value.js +7 -0
  327. package/dist/cjs/daml-lf/interpreter/daml-lf-step-kind.js +11 -0
  328. package/dist/cjs/daml-lf/interpreter/daml-lf-trace-sink.interface.js +2 -0
  329. package/dist/cjs/daml-lf/model/daml-lf-builtin-type.js +20 -0
  330. package/dist/cjs/daml-lf/model/daml-lf-choice-parameter.js +14 -0
  331. package/dist/cjs/daml-lf/model/daml-lf-choice.js +22 -0
  332. package/dist/cjs/daml-lf/model/daml-lf-data-type.js +38 -0
  333. package/dist/cjs/daml-lf/model/daml-lf-definition.js +10 -0
  334. package/dist/cjs/daml-lf/model/daml-lf-expression-path.js +84 -0
  335. package/dist/cjs/daml-lf/model/daml-lf-expression.js +83 -0
  336. package/dist/cjs/daml-lf/model/daml-lf-field.js +12 -0
  337. package/dist/cjs/daml-lf/model/daml-lf-module.js +14 -0
  338. package/dist/cjs/daml-lf/model/daml-lf-node-kind.js +15 -0
  339. package/dist/cjs/daml-lf/model/daml-lf-package.js +20 -0
  340. package/dist/cjs/daml-lf/model/daml-lf-template-id.js +22 -0
  341. package/dist/cjs/daml-lf/model/daml-lf-template.js +22 -0
  342. package/dist/cjs/daml-lf/model/daml-lf-type.js +45 -0
  343. package/dist/cjs/daml-lf/model/daml-lf-value-definition.js +18 -0
  344. package/dist/cjs/daml-lf/model/lf-2-model-mapper.js +731 -0
  345. package/dist/cjs/daml-lf/model/module-reference.js +12 -0
  346. package/dist/cjs/daml-lf/model/type-con-reference.js +14 -0
  347. package/dist/cjs/daml-lf/semantics/daml-lf-semantic-model.js +27 -0
  348. package/dist/cjs/daml-lf/symbols/daml-lf-symbol.js +10 -0
  349. package/dist/cjs/daml-lf/symbols/module-symbol.js +14 -0
  350. package/dist/cjs/daml-lf/symbols/type-symbol.js +14 -0
  351. package/dist/cjs/debugger/errors/replay-determinism.exception.js +7 -0
  352. package/dist/cjs/debugger/errors/replay-missing-package.exception.js +7 -0
  353. package/dist/cjs/debugger/errors/replay-missing-source.exception.js +7 -0
  354. package/dist/cjs/debugger/errors/replay-source-map.exception.js +7 -0
  355. package/dist/cjs/debugger/errors/replay-state-hydration.exception.js +7 -0
  356. package/dist/cjs/debugger/errors/replay-unsupported-lf-construct.exception.js +7 -0
  357. package/dist/cjs/debugger/errors/replay-unsupported-update.exception.js +7 -0
  358. package/dist/cjs/debugger/index.js +65 -0
  359. package/dist/cjs/debugger/ledger-replay-debugger-client.js +57 -0
  360. package/dist/cjs/debugger/replay/ledger-replay-environment-builder.js +253 -0
  361. package/dist/cjs/debugger/replay/ledger-replay-session-loader.js +569 -0
  362. package/dist/cjs/debugger/replay/replay-artifact-resolver.js +213 -0
  363. package/dist/cjs/debugger/replay/replay-determinism-validator.js +165 -0
  364. package/dist/cjs/debugger/replay/replay-entrypoint-definition-resolver.js +341 -0
  365. package/dist/cjs/debugger/replay/replay-entrypoint.js +18 -0
  366. package/dist/cjs/debugger/replay/replay-ledger-value-normalizer.js +199 -0
  367. package/dist/cjs/debugger/replay/replay-update-loader.js +100 -0
  368. package/dist/cjs/debugger/replay/replay-update-visibility-validator.js +22 -0
  369. package/dist/cjs/debugger/session/in-memory-replay-session-store.js +113 -0
  370. package/dist/cjs/debugger/session/replay-phase.js +11 -0
  371. package/dist/cjs/debugger/session/replay-scope.js +14 -0
  372. package/dist/cjs/debugger/session/replay-session-metadata.js +14 -0
  373. package/dist/cjs/debugger/session/replay-session-request.js +14 -0
  374. package/dist/cjs/debugger/session/replay-session.js +14 -0
  375. package/dist/cjs/debugger/session/replay-source-location.js +20 -0
  376. package/dist/cjs/debugger/session/replay-stack-frame.js +12 -0
  377. package/dist/cjs/debugger/session/replay-state-delta.js +28 -0
  378. package/dist/cjs/debugger/session/replay-step-advance-result.js +20 -0
  379. package/dist/cjs/debugger/session/replay-step.js +28 -0
  380. package/dist/cjs/debugger/session/replay-value-preview.js +19 -0
  381. package/dist/cjs/debugger/source/daml-source-mapper.js +25 -0
  382. package/dist/cjs/debugger/source/dar-source-map-metadata.js +14 -0
  383. package/dist/cjs/debugger/source/source-coverage-validator.js +20 -0
  384. package/dist/cjs/debugger/source/source-indexed-compilation.js +114 -0
  385. package/dist/cjs/debugger/source/source-mapping-precision.js +7 -0
  386. package/dist/cjs/grpc/index.js +7 -0
  387. package/dist/cjs/index.js +600 -0
  388. package/dist/cjs/json/index.js +7 -0
  389. package/dist/cjs/package.json +3 -0
  390. package/dist/cjs/protobuf/index.js +2380 -0
  391. package/dist/cjs/query/cache/memory-query-cache.js +28 -0
  392. package/dist/cjs/query/cache/query-cache-store.js +2 -0
  393. package/dist/cjs/query/canton-manager-options.js +2 -0
  394. package/dist/cjs/query/canton-manager.js +46 -0
  395. package/dist/cjs/query/errors/pqs-query-error.js +15 -0
  396. package/dist/cjs/query/errors/pqs-schema-profile-error.js +7 -0
  397. package/dist/cjs/query/errors/query-capability-error.js +14 -0
  398. package/dist/cjs/query/grpc/grpc-contract-query-client.js +161 -0
  399. package/dist/cjs/query/model-types.js +18 -0
  400. package/dist/cjs/query/pqs/pqs-pool.js +22 -0
  401. package/dist/cjs/query/pqs/pqs-query-client.js +699 -0
  402. package/dist/cjs/query/pqs/pqs-relational-sql-compiler.js +150 -0
  403. package/dist/cjs/query/pqs/pqs-schema-profile.js +172 -0
  404. package/dist/cjs/query/pqs/pqs-sql-compiler.js +367 -0
  405. package/dist/cjs/query/pqs/read-only-sql.js +38 -0
  406. package/dist/cjs/query/query-client.js +2 -0
  407. package/dist/cjs/query/query-source.js +8 -0
  408. package/dist/cjs/services/command/command-service-client.js +21 -0
  409. package/dist/cjs/services/command-completion/command-completion-service-client.js +18 -0
  410. package/dist/cjs/services/command-inspection/command-inspection-service-client.js +15 -0
  411. package/dist/cjs/services/command-submission/command-submission-service-client.js +16 -0
  412. package/dist/cjs/services/commands/command-payload-builder.js +58 -0
  413. package/dist/cjs/services/commands/command-submission-pipeline.js +25 -0
  414. package/dist/cjs/services/contract/contract-service-client.js +15 -0
  415. package/dist/cjs/services/contracts/contract-observer.interface.js +2 -0
  416. package/dist/cjs/services/event-query/event-query-service-client.js +15 -0
  417. package/dist/cjs/services/events/transaction-observer.interface.js +2 -0
  418. package/dist/cjs/services/health/health-service-client.js +15 -0
  419. package/dist/cjs/services/identity-initialization/identity-initialization-service-client.js +19 -0
  420. package/dist/cjs/services/identity-provider-config/identity-provider-config-service-client.js +19 -0
  421. package/dist/cjs/services/package/package-service-client.js +27 -0
  422. package/dist/cjs/services/package-management/package-management-service-client.js +19 -0
  423. package/dist/cjs/services/participant-inspection/commitment-chunk-observer.interface.js +2 -0
  424. package/dist/cjs/services/participant-inspection/participant-inspection-service-client.js +43 -0
  425. package/dist/cjs/services/participant-package/participant-package-service-client.js +35 -0
  426. package/dist/cjs/services/participant-party-management/participant-party-management-service-client.js +23 -0
  427. package/dist/cjs/services/participant-repair/participant-repair-service-client.js +15 -0
  428. package/dist/cjs/services/participant-status/participant-status-service-client.js +15 -0
  429. package/dist/cjs/services/party-management/decentralized-party-lifecycle.js +163 -0
  430. package/dist/cjs/services/party-management/party-management-service-client.js +199 -0
  431. package/dist/cjs/services/pruning/pruning-service-client.js +27 -0
  432. package/dist/cjs/services/resource-management/resource-management-service-client.js +15 -0
  433. package/dist/cjs/services/state/state-service-client.js +31 -0
  434. package/dist/cjs/services/synchronizer-connectivity/synchronizer-connectivity-service-client.js +23 -0
  435. package/dist/cjs/services/topology-aggregation/topology-aggregation-service-client.js +19 -0
  436. package/dist/cjs/services/topology-manager-read/topology-manager-read-service-client.js +83 -0
  437. package/dist/cjs/services/topology-manager-write/topology-manager-write-service-client.js +48 -0
  438. package/dist/cjs/services/topology-manager-write/topology-signed-transaction-assembler.js +85 -0
  439. package/dist/cjs/services/traffic-control/traffic-control-service-client.js +15 -0
  440. package/dist/cjs/services/update/update-service-client.js +34 -0
  441. package/dist/cjs/services/user-management/user-management-service-client.js +27 -0
  442. package/dist/cjs/services/version/version-service-client.js +15 -0
  443. package/dist/cjs/testing/campaign/campaign-artifact.js +154 -0
  444. package/dist/cjs/testing/campaign/campaign-definition.js +81 -0
  445. package/dist/cjs/testing/campaign/campaign-metrics.js +30 -0
  446. package/dist/cjs/testing/campaign/campaign-model.js +26 -0
  447. package/dist/cjs/testing/campaign/campaign-runner.js +233 -0
  448. package/dist/cjs/testing/campaign/campaign-scheduler.js +113 -0
  449. package/dist/cjs/testing/campaign/campaign-types.js +14 -0
  450. package/dist/cjs/testing/daml/daml-action-arbitrary.js +60 -0
  451. package/dist/cjs/testing/daml/daml-choice-action-arbitrary.js +66 -0
  452. package/dist/cjs/testing/daml/daml-create-action-arbitrary.js +73 -0
  453. package/dist/cjs/testing/daml/daml-testing-catalog.js +43 -0
  454. package/dist/cjs/testing/daml/daml-value-arbitrary.js +79 -0
  455. package/dist/cjs/testing/daml/declarative-campaign-arbitrary.js +66 -0
  456. package/dist/cjs/testing/errors/invariant-campaign-failure.js +41 -0
  457. package/dist/cjs/testing/errors/testing-configuration-error.js +10 -0
  458. package/dist/cjs/testing/handlers/handler.js +36 -0
  459. package/dist/cjs/testing/index.js +69 -0
  460. package/dist/cjs/testing/runtime/campaign-isolation.js +26 -0
  461. package/dist/cjs/testing/runtime/canton-test-runtime.js +144 -0
  462. package/dist/cjs/testing/runtime/declarative-action-executor.js +45 -0
  463. package/dist/cjs/testing/targets/target.js +132 -0
  464. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/command_inspection_service.client.js +38 -0
  465. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/command_inspection_service.js +150 -0
  466. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/identity_provider_config_service.client.js +89 -0
  467. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/identity_provider_config_service.js +156 -0
  468. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/object_meta.js +24 -0
  469. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/package_management_service.client.js +70 -0
  470. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/package_management_service.js +242 -0
  471. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/participant_pruning_service.client.js +39 -0
  472. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/participant_pruning_service.js +42 -0
  473. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/party_management_alpha_service.client.js +85 -0
  474. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/party_management_alpha_service.js +198 -0
  475. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/party_management_service.client.js +156 -0
  476. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/party_management_service.js +271 -0
  477. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/user_management_service.client.js +130 -0
  478. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/admin/user_management_service.js +376 -0
  479. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_completion_service.client.js +53 -0
  480. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_completion_service.js +61 -0
  481. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_service.client.js +54 -0
  482. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_service.js +101 -0
  483. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_submission_service.client.js +51 -0
  484. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/command_submission_service.js +65 -0
  485. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/commands.js +145 -0
  486. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/completion.js +39 -0
  487. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/contract_service.client.js +34 -0
  488. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/contract_service.js +44 -0
  489. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/crypto.js +187 -0
  490. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/event.js +116 -0
  491. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/event_query_service.client.js +35 -0
  492. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/event_query_service.js +73 -0
  493. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/experimental_features.js +60 -0
  494. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/interactive/interactive_submission_common_data.js +41 -0
  495. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/interactive/interactive_submission_service.client.js +109 -0
  496. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/interactive/interactive_submission_service.js +461 -0
  497. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/interactive/transaction/v1/interactive_submission_data.js +143 -0
  498. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/offset_checkpoint.js +38 -0
  499. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/package_reference.js +71 -0
  500. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/package_service.client.js +57 -0
  501. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/package_service.js +176 -0
  502. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/reassignment.js +88 -0
  503. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/reassignment_commands.js +69 -0
  504. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/state_service.client.js +74 -0
  505. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/state_service.js +240 -0
  506. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/testing/time_service.client.js +38 -0
  507. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/testing/time_service.js +56 -0
  508. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/topology_transaction.js +101 -0
  509. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/trace_context.js +24 -0
  510. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/transaction.js +37 -0
  511. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/transaction_filter.js +174 -0
  512. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/update_service.client.js +91 -0
  513. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/update_service.js +142 -0
  514. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/value.js +184 -0
  515. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/version_service.client.js +29 -0
  516. package/dist/cjs/transports/grpc/generated/canton/com/daml/ledger/api/v2/version_service.js +109 -0
  517. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/crypto/v30/crypto.js +38 -0
  518. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/health/v30/status_service.client.js +36 -0
  519. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/health/v30/status_service.js +162 -0
  520. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/mediator/v30/mediator_status_service.client.js +25 -0
  521. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/mediator/v30/mediator_status_service.js +57 -0
  522. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/acs_import.js +55 -0
  523. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/active_contract.js +69 -0
  524. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/package_service.client.js +130 -0
  525. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/package_service.js +386 -0
  526. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_inspection_service.client.js +109 -0
  527. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_inspection_service.js +566 -0
  528. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_repair_service.client.js +170 -0
  529. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_repair_service.js +452 -0
  530. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_replication_service.client.js +25 -0
  531. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_replication_service.js +38 -0
  532. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_status_service.client.js +25 -0
  533. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/participant_status_service.js +89 -0
  534. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/party_management_service.client.js +131 -0
  535. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/party_management_service.js +200 -0
  536. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/ping_pong_service.client.js +25 -0
  537. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/ping_pong_service.js +75 -0
  538. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/pruning_service.client.js +147 -0
  539. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/pruning_service.js +153 -0
  540. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/reassignment_id.js +23 -0
  541. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/resource_management_service.client.js +37 -0
  542. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/resource_management_service.js +77 -0
  543. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/synchronizer_connectivity_service.client.js +137 -0
  544. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/synchronizer_connectivity_service.js +468 -0
  545. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/traffic_control_service.client.js +28 -0
  546. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/participant/v30/traffic_control_service.js +59 -0
  547. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/pruning/v30/pruning.js +335 -0
  548. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/sequencer/v30/sequencer_connection.js +134 -0
  549. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/sequencer/v30/sequencer_status_service.client.js +25 -0
  550. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/sequencer/v30/sequencer_status_service.js +110 -0
  551. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/time/v30/time_tracker_config.js +41 -0
  552. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/admin/topology/v30/common.js +26 -0
  553. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/connection/v30/api_info.client.js +28 -0
  554. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/connection/v30/api_info.js +40 -0
  555. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/crypto/admin/v30/vault_service.client.js +162 -0
  556. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/crypto/admin/v30/vault_service.js +443 -0
  557. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/crypto/v30/crypto.js +682 -0
  558. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_administration_service.client.js +89 -0
  559. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_administration_service.js +72 -0
  560. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_initialization_service.client.js +30 -0
  561. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_initialization_service.js +44 -0
  562. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_inspection_service.client.js +34 -0
  563. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/mediator_inspection_service.js +147 -0
  564. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/sequencer_connection_service.client.js +44 -0
  565. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/mediator/admin/v30/sequencer_connection_service.js +87 -0
  566. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/participant/protocol/v30/onboarding_clearance.js +24 -0
  567. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/participant/protocol/v30/party_replication.js +212 -0
  568. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/participant/protocol/v30/submission_tracking.js +92 -0
  569. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/participant/synchronizer/v30/synchronizer.js +23 -0
  570. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/acs_commitments.js +42 -0
  571. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/common.js +47 -0
  572. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/common_stable.js +51 -0
  573. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/confirmation_response.js +105 -0
  574. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/mediator.js +97 -0
  575. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/merkle.js +65 -0
  576. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/ordering_request.js +24 -0
  577. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/participant_reassignment.js +182 -0
  578. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/participant_transaction.js +412 -0
  579. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/quorum.js +37 -0
  580. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/sequencing.js +200 -0
  581. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/sequencing_parameters.js +23 -0
  582. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/signed_content.js +26 -0
  583. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/storage.js +23 -0
  584. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/synchronization.js +90 -0
  585. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/synchronizer_parameters.js +100 -0
  586. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/topology.js +566 -0
  587. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/traffic_control_parameters.js +107 -0
  588. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v30/versioned_google_rpc_status.js +24 -0
  589. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v31/common.js +25 -0
  590. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v31/common_stable.js +26 -0
  591. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v31/participant_transaction.js +196 -0
  592. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v31/sequencing.js +94 -0
  593. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v31/synchronization.js +38 -0
  594. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v32/acs_commitments.js +97 -0
  595. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v32/participant_transaction.js +114 -0
  596. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/protocol/v32/synchronization.js +42 -0
  597. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_administration_service.client.js +154 -0
  598. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_administration_service.js +469 -0
  599. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_additional_snapshot_info.js +94 -0
  600. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_administration_service.client.js +86 -0
  601. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_administration_service.js +391 -0
  602. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_pruning_administration_service.client.js +110 -0
  603. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_pruning_administration_service.js +173 -0
  604. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_initialization_service.client.js +68 -0
  605. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_initialization_service.js +145 -0
  606. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_initialization_snapshot.js +130 -0
  607. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_pruning_administration_service.client.js +88 -0
  608. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_pruning_administration_service.js +64 -0
  609. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_traffic_inspection_service.client.js +29 -0
  610. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/admin/v30/sequencer_traffic_inspection_service.js +70 -0
  611. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_authentication_service.client.js +49 -0
  612. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_authentication_service.js +108 -0
  613. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_channel_service.client.js +40 -0
  614. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_channel_service.js +119 -0
  615. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_connect_service.client.js +53 -0
  616. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_connect_service.js +172 -0
  617. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_service.client.js +157 -0
  618. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/sequencer/api/v30/sequencer_service.js +240 -0
  619. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/protocol/v30/aggregation.js +36 -0
  620. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/standalone/v1/standalone_bft_ordering_service.client.js +32 -0
  621. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/standalone/v1/standalone_bft_ordering_service.js +82 -0
  622. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/v30/bft_ordering_sequencing_parameters.js +24 -0
  623. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/v30/bft_ordering_service.client.js +27 -0
  624. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/v30/bft_ordering_service.js +501 -0
  625. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/sequencing/sequencer/bftordering/v31/bft_ordering_sequencing_parameters.js +83 -0
  626. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/synchronizer/v30/synchronizer.js +26 -0
  627. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/time/admin/v30/synchronizer_time_service.client.js +36 -0
  628. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/time/admin/v30/synchronizer_time_service.js +70 -0
  629. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/common.js +89 -0
  630. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/initialization_service.client.js +57 -0
  631. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/initialization_service.js +113 -0
  632. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.client.js +69 -0
  633. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_aggregation_service.js +135 -0
  634. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.client.js +193 -0
  635. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_read_service.js +889 -0
  636. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_write_service.client.js +90 -0
  637. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/topology/admin/v30/topology_manager_write_service.js +359 -0
  638. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/v30/trace_context.js +24 -0
  639. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/canton/version/v1/untyped_versioned_message.js +24 -0
  640. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/daml/lf/archive/daml_lf.js +50 -0
  641. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/daml/lf/archive/daml_lf1.js +2638 -0
  642. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/daml/lf/archive/daml_lf2.js +2071 -0
  643. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/daml/lf/transaction.js +193 -0
  644. package/dist/cjs/transports/grpc/generated/canton/com/digitalasset/daml/lf/value.js +189 -0
  645. package/dist/cjs/transports/grpc/generated/canton/daml/platform/v1/acs_continuation.js +37 -0
  646. package/dist/cjs/transports/grpc/generated/canton/daml/platform/v1/acs_page_token.js +27 -0
  647. package/dist/cjs/transports/grpc/generated/canton/daml/platform/v1/index.js +31 -0
  648. package/dist/cjs/transports/grpc/generated/canton/daml/platform/v1/page_tokens.js +64 -0
  649. package/dist/cjs/transports/grpc/generated/canton/google/grpc/health/v1/health.client.js +39 -0
  650. package/dist/cjs/transports/grpc/generated/canton/google/grpc/health/v1/health.js +103 -0
  651. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/any.js +143 -0
  652. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/descriptor.js +1212 -0
  653. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/duration.js +96 -0
  654. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/empty.js +48 -0
  655. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/field_mask.js +82 -0
  656. package/dist/cjs/transports/grpc/generated/canton/google/protobuf/timestamp.js +124 -0
  657. package/dist/cjs/transports/grpc/generated/canton/google/rpc/status.js +37 -0
  658. package/dist/cjs/transports/grpc/grpc-call-options-factory.js +27 -0
  659. package/dist/cjs/transports/grpc/grpc-channel-factory.js +595 -0
  660. package/dist/cjs/transports/grpc/grpc-ledger-client.js +76 -0
  661. package/dist/cjs/transports/grpc/grpc-transport-factory.js +7 -0
  662. package/dist/cjs/transports/grpc/grpc-transport.js +574 -0
  663. package/dist/cjs/transports/grpc/mappers/admin-status-mapper.js +98 -0
  664. package/dist/cjs/transports/grpc/mappers/command-inspection-mapper.js +191 -0
  665. package/dist/cjs/transports/grpc/mappers/commands-mapper.js +229 -0
  666. package/dist/cjs/transports/grpc/mappers/completion-mapper.js +28 -0
  667. package/dist/cjs/transports/grpc/mappers/contracts-mapper.js +103 -0
  668. package/dist/cjs/transports/grpc/mappers/health-mapper.js +24 -0
  669. package/dist/cjs/transports/grpc/mappers/identity-provider-config-mapper.js +42 -0
  670. package/dist/cjs/transports/grpc/mappers/interactive-command-mapper.js +55 -0
  671. package/dist/cjs/transports/grpc/mappers/packages-mapper.js +167 -0
  672. package/dist/cjs/transports/grpc/mappers/participant-status-mapper.js +58 -0
  673. package/dist/cjs/transports/grpc/mappers/parties-mapper.js +73 -0
  674. package/dist/cjs/transports/grpc/mappers/pruning-mapper.js +47 -0
  675. package/dist/cjs/transports/grpc/mappers/state-read-mapper.js +79 -0
  676. package/dist/cjs/transports/grpc/mappers/system-mapper.js +10 -0
  677. package/dist/cjs/transports/grpc/mappers/topology-aggregation-mapper.js +33 -0
  678. package/dist/cjs/transports/grpc/mappers/topology-common-mapper.js +689 -0
  679. package/dist/cjs/transports/grpc/mappers/topology-manager-read-mapper.js +276 -0
  680. package/dist/cjs/transports/grpc/mappers/users-mapper.js +192 -0
  681. package/dist/cjs/transports/json/json-http-client.js +50 -0
  682. package/dist/cjs/transports/json/json-ledger-client.js +76 -0
  683. package/dist/cjs/transports/json/json-transport-factory.js +8 -0
  684. package/dist/cjs/transports/json/json-transport.js +466 -0
  685. package/dist/cjs/transports/json/mappers/commands-mapper.js +93 -0
  686. package/dist/cjs/transports/json/mappers/contracts-mapper.js +9 -0
  687. package/dist/cjs/transports/json/mappers/events-mapper.js +6 -0
  688. package/dist/cjs/transports/json/mappers/packages-mapper.js +9 -0
  689. package/dist/cjs/transports/json/mappers/parties-mapper.js +38 -0
  690. package/dist/cjs/transports/json/mappers/system-mapper.js +10 -0
  691. package/dist/cjs/transports/json/mappers/users-mapper.js +23 -0
  692. package/dist/daml-interface/analysis/analyzed-daml-type-definition.d.ts +6 -1
  693. package/dist/daml-interface/analysis/analyzed-daml-type.d.ts +7 -1
  694. package/dist/daml-interface/analysis/daml-interface-analyzer.d.ts +6 -0
  695. package/dist/daml-interface/analysis/daml-interface-analyzer.js +92 -25
  696. package/dist/daml-interface/cli/daml-interface-cli-options.d.ts +3 -0
  697. package/dist/daml-interface/cli/daml-interface-cli-options.js +12 -0
  698. package/dist/daml-interface/cli/daml-interface-cli.d.ts +5 -1
  699. package/dist/daml-interface/cli/daml-interface-cli.js +10 -4
  700. package/dist/daml-interface/daml-interface-generator-options.d.ts +3 -0
  701. package/dist/daml-interface/daml-interface-generator-options.js +3 -0
  702. package/dist/daml-interface/daml-interface-generator.js +2 -2
  703. package/dist/daml-interface/emission/daml-module-import-style.d.ts +7 -0
  704. package/dist/daml-interface/emission/daml-module-import-style.js +6 -0
  705. package/dist/daml-interface/emission/generated-spec-emitter.d.ts +29 -0
  706. package/dist/daml-interface/emission/generated-spec-emitter.js +363 -0
  707. package/dist/daml-interface/emission/generated-test-sample-emitter.d.ts +60 -0
  708. package/dist/daml-interface/emission/generated-test-sample-emitter.js +459 -0
  709. package/dist/daml-interface/emission/named-type-emitter.d.ts +11 -3
  710. package/dist/daml-interface/emission/named-type-emitter.js +102 -37
  711. package/dist/daml-interface/emission/project-emitter.d.ts +2 -1
  712. package/dist/daml-interface/emission/project-emitter.js +17 -7
  713. package/dist/daml-interface/emission/registry-emitter.d.ts +2 -1
  714. package/dist/daml-interface/emission/registry-emitter.js +6 -7
  715. package/dist/daml-interface/emission/relative-module-specifier.d.ts +7 -0
  716. package/dist/daml-interface/emission/relative-module-specifier.js +17 -0
  717. package/dist/daml-interface/emission/support-file-emitter.d.ts +5 -2
  718. package/dist/daml-interface/emission/support-file-emitter.js +52 -28
  719. package/dist/daml-interface/emission/template-binding-emitter.d.ts +6 -1
  720. package/dist/daml-interface/emission/template-binding-emitter.js +179 -72
  721. package/dist/daml-interface/emission/type-script-name-resolver.d.ts +8 -2
  722. package/dist/daml-interface/emission/type-script-name-resolver.js +41 -6
  723. package/dist/daml-interface/emission-model/generated-daml-interface-project.d.ts +9 -0
  724. package/dist/daml-interface/emission-model/generated-daml-interface-project.js +54 -5
  725. package/dist/daml-interface/emission-model/generated-spec-file.d.ts +7 -0
  726. package/dist/daml-interface/emission-model/generated-spec-file.js +11 -0
  727. package/dist/daml-interface/index.d.ts +5 -3
  728. package/dist/daml-interface/index.js +4 -3
  729. package/dist/daml-interface/runtime/daml-event-source-normalizer.d.ts +8 -11
  730. package/dist/daml-interface/runtime/daml-event-source-normalizer.js +176 -12
  731. package/dist/daml-interface/runtime/daml-type-descriptor.d.ts +2 -1
  732. package/dist/daml-interface/runtime/daml-value-converter.d.ts +5 -2
  733. package/dist/daml-interface/runtime/daml-value-converter.js +11 -5
  734. package/dist/daml-interface/runtime/daml-value-materializer.d.ts +4 -1
  735. package/dist/daml-interface/runtime/daml-value-materializer.js +7 -1
  736. package/dist/daml-interface/writing/daml-interface-writer.js +3 -6
  737. package/dist/daml-lf/daml-lf-compilation.d.ts +3 -0
  738. package/dist/daml-lf/daml-lf-compilation.js +4 -0
  739. package/dist/daml-lf/model/daml-lf-data-type.d.ts +19 -0
  740. package/dist/daml-lf/model/daml-lf-data-type.js +15 -0
  741. package/dist/daml-lf/model/daml-lf-type.d.ts +13 -0
  742. package/dist/daml-lf/model/daml-lf-type.js +24 -0
  743. package/dist/daml-lf/model/lf-2-model-mapper.d.ts +4 -0
  744. package/dist/daml-lf/model/lf-2-model-mapper.js +70 -2
  745. package/package.json +19 -10
@@ -1,6 +1,7 @@
1
1
  import { DamlLfBuiltinType } from "../../daml-lf/model/daml-lf-builtin-type.js";
2
2
  import { GeneratedNamedTypeFile } from "../emission-model/generated-named-type-file.js";
3
3
  import { TypeScriptNameResolver } from "./type-script-name-resolver.js";
4
+ import { RelativeModuleSpecifier } from "./relative-module-specifier.js";
4
5
  /** Emits TypeScript declarations for reachable named DAML records, variants, and enums. */
5
6
  export class NamedTypeEmitter {
6
7
  nameResolver;
@@ -9,30 +10,31 @@ export class NamedTypeEmitter {
9
10
  void this.nameResolver;
10
11
  }
11
12
  /** Prepares shared package/module output mappings with template emission. */
12
- prepareProjectOrThrow(templates, definitions) {
13
- this.nameResolver.prepareProjectOrThrow(templates, definitions);
13
+ prepareProjectOrThrow(templates, definitions, packageMetadata = new Map()) {
14
+ this.nameResolver.prepareProjectOrThrow(templates, definitions, packageMetadata);
14
15
  }
15
16
  /** Emits one `types.ts` module for every reachable DAML package/module identity. */
16
- emitNamedTypeFiles(definitions) {
17
+ emitNamedTypeFiles(definitions, moduleImportStyle) {
17
18
  this.nameResolver.prepareProjectOrThrow([], definitions);
18
- return this.emitPreparedNamedTypeFiles(definitions);
19
+ return this.emitPreparedNamedTypeFiles(definitions, [], moduleImportStyle);
19
20
  }
20
21
  /** Emits named type files from an already prepared shared name resolver. */
21
- emitPreparedNamedTypeFiles(definitions, templateFiles = []) {
22
+ emitPreparedNamedTypeFiles(definitions, templateFiles = [], moduleImportStyle) {
22
23
  const modules = this.resolveModulesOrThrow(definitions);
23
24
  const names = this.resolveDefinitionNamesOrThrow(definitions, this.mergeReservedNames(this.getReservedModuleExports(templateFiles), this.getReservedRuntimeBindings(definitions)));
24
25
  const fieldPropertyNames = this.resolveFieldPropertyNames(definitions);
25
26
  return [...modules.values()].map((module) => {
26
27
  const moduleDefinitions = definitions.filter((definition) => definition.identity.packageId === module.packageId
27
28
  && definition.identity.moduleName === module.moduleName);
28
- const externalTypeAliases = this.resolveExternalTypeAliases(module, moduleDefinitions, names);
29
- const imports = this.emitImports(module, moduleDefinitions, modules, names, externalTypeAliases);
29
+ const externalTypeAliases = this.resolveExternalTypeAliases(module, moduleDefinitions, modules, names);
30
+ const typeParameterNames = this.resolveTypeParameterNames(moduleDefinitions, names, externalTypeAliases);
31
+ const imports = this.emitImports(module, moduleDefinitions, modules, names, externalTypeAliases, moduleImportStyle);
30
32
  return new GeneratedNamedTypeFile({
31
33
  path: module.path,
32
34
  contents: [
33
35
  ...imports,
34
36
  ...(imports.length === 0 ? [] : [""]),
35
- ...moduleDefinitions.map((definition) => this.emitDefinition(definition, names, externalTypeAliases, fieldPropertyNames)),
37
+ ...moduleDefinitions.map((definition) => this.emitDefinition(definition, names, externalTypeAliases, fieldPropertyNames, typeParameterNames)),
36
38
  "",
37
39
  ].join("\n"),
38
40
  packageId: module.packageId,
@@ -47,24 +49,26 @@ export class NamedTypeEmitter {
47
49
  });
48
50
  });
49
51
  }
50
- emitDefinition(definition, names, externalTypeAliases, fieldPropertyNames) {
52
+ emitDefinition(definition, names, externalTypeAliases, fieldPropertyNames, typeParameterNames) {
51
53
  const name = this.getDefinitionName(definition, names);
54
+ const parameters = this.getDefinitionTypeParameters(definition, typeParameterNames);
55
+ const declarationName = `${name}${parameters.length === 0 ? "" : `<${parameters.join(", ")}>`}`;
52
56
  if (definition.kind === "record") {
53
57
  return [
54
- `export interface ${name} {`,
55
- ...definition.fields.map((field, index) => ` readonly ${this.getFieldPropertyName(definition, index, fieldPropertyNames)}: ${this.getTypeName(field.type, names, externalTypeAliases)};`),
58
+ `export interface ${declarationName} {`,
59
+ ...definition.fields.map((field, index) => ` readonly ${this.getFieldPropertyName(definition, index, fieldPropertyNames)}: ${this.getTypeName(field.type, definition, names, externalTypeAliases, typeParameterNames)};`),
56
60
  "}",
57
61
  ].join("\n");
58
62
  }
59
63
  else if (definition.kind === "variant") {
60
64
  return [
61
- `export type ${name} =`,
62
- ...definition.constructors.map((constructor) => ` | { readonly tag: ${JSON.stringify(constructor.constructor)}; readonly value: ${this.getTypeName(constructor.payload, names, externalTypeAliases)}; }`),
65
+ `export type ${declarationName} =`,
66
+ ...definition.constructors.map((constructor) => ` | { readonly tag: ${JSON.stringify(constructor.constructor)}; readonly value: ${this.getTypeName(constructor.payload, definition, names, externalTypeAliases, typeParameterNames)}; }`),
63
67
  ].map((line, index, lines) => index === lines.length - 1 ? `${line};` : line).join("\n");
64
68
  }
65
69
  return `export type ${name} = ${definition.constructors.map((constructor) => JSON.stringify(constructor)).join(" | ")};`;
66
70
  }
67
- emitImports(module, definitions, modules, names, externalTypeAliases) {
71
+ emitImports(module, definitions, modules, names, externalTypeAliases, moduleImportStyle) {
68
72
  const imports = new Map();
69
73
  const runtimeTypes = new Set();
70
74
  for (const definition of definitions) {
@@ -80,7 +84,7 @@ export class NamedTypeEmitter {
80
84
  if (referencedModule === undefined) {
81
85
  throw new Error(`Cannot emit unresolved named DAML type '${reference.identity.name}'`);
82
86
  }
83
- const importPath = this.relativeFilePath(module.path, referencedModule.path);
87
+ const importPath = this.relativeFilePath(module.path, referencedModule.path, moduleImportStyle);
84
88
  const importedNames = imports.get(importPath) ?? new Map();
85
89
  importedNames.set(this.getNamedReferenceTypeName(reference.identity, names), this.getExternalTypeAlias(reference.identity, externalTypeAliases));
86
90
  imports.set(importPath, importedNames);
@@ -88,17 +92,19 @@ export class NamedTypeEmitter {
88
92
  }
89
93
  return [
90
94
  ...(runtimeTypes.size === 0 ? [] : [
91
- `import type { ${[...runtimeTypes].sort().join(", ")} } from ${JSON.stringify(this.relativeFilePath(module.path, "generated/support/runtime.ts"))};`,
95
+ `import type { ${[...runtimeTypes].sort().join(", ")} } from ${JSON.stringify(this.relativeFilePath(module.path, "generated/support/runtime.ts", moduleImportStyle))};`,
92
96
  ]),
93
97
  ...[...imports.entries()]
94
98
  .sort(([left], [right]) => left.localeCompare(right))
95
99
  .map(([path, importedNames]) => `import type { ${[...importedNames.entries()]
96
100
  .sort(([left], [right]) => left.localeCompare(right))
97
- .map(([exportedName, alias]) => `${exportedName} as ${alias}`)
101
+ .map(([exportedName, alias]) => exportedName === alias
102
+ ? exportedName
103
+ : `${exportedName} as ${alias}`)
98
104
  .join(", ")} } from ${JSON.stringify(path)};`),
99
105
  ];
100
106
  }
101
- resolveExternalTypeAliases(module, definitions, names) {
107
+ resolveExternalTypeAliases(module, definitions, modules, names) {
102
108
  const references = new Map();
103
109
  for (const definition of definitions) {
104
110
  for (const reference of this.getNamedReferences(definition)) {
@@ -112,11 +118,16 @@ export class NamedTypeEmitter {
112
118
  const aliases = new Map();
113
119
  const usedNames = new Set(definitions.map((definition) => this.getDefinitionName(definition, names)));
114
120
  for (const [key, identity] of [...references.entries()].sort(([left], [right]) => left.localeCompare(right))) {
115
- const baseName = this.safeTypeName(`${identity.packageId} ${identity.moduleName} ${identity.name}`);
116
- let alias = baseName;
121
+ const referencedModule = modules.get(this.getModuleKey(identity.packageId, identity.moduleName));
122
+ if (referencedModule === undefined) {
123
+ throw new Error(`Cannot emit unresolved named DAML type '${identity.name}'`);
124
+ }
125
+ const exportedName = this.getNamedReferenceTypeName(identity, names);
126
+ const baseName = this.safeTypeName(`${referencedModule.namespaceAlias} ${exportedName}`);
127
+ let alias = exportedName;
117
128
  let escalation = 2;
118
129
  if (usedNames.has(alias)) {
119
- alias = `${baseName}_${this.shortHash(key)}`;
130
+ alias = baseName;
120
131
  }
121
132
  while (usedNames.has(alias)) {
122
133
  alias = `${baseName}_${this.shortHash(key)}_${escalation}`;
@@ -138,6 +149,9 @@ export class NamedTypeEmitter {
138
149
  switch (type.kind) {
139
150
  case "namedReference":
140
151
  yield type;
152
+ for (const typeArgument of type.typeArguments ?? []) {
153
+ yield* this.getNamedReferences(typeArgument);
154
+ }
141
155
  return;
142
156
  case "contractId": return;
143
157
  case "optional":
@@ -163,31 +177,44 @@ export class NamedTypeEmitter {
163
177
  return;
164
178
  case "primitive":
165
179
  case "enum":
180
+ case "typeVariable":
166
181
  return;
167
182
  }
168
183
  }
169
- getTypeName(type, names, externalTypeAliases) {
184
+ getTypeName(type, definition, names, externalTypeAliases, typeParameterNames) {
170
185
  switch (type.kind) {
171
186
  case "primitive":
172
187
  return this.getPrimitiveTypeName(type.builtinType);
173
188
  case "contractId":
174
189
  return "string";
175
190
  case "optional":
176
- return `${this.getTypeName(type.element, names, externalTypeAliases)} | undefined`;
191
+ return `${this.getTypeName(type.element, definition, names, externalTypeAliases, typeParameterNames)} | undefined`;
177
192
  case "list":
178
- return `readonly ${this.getTypeName(type.element, names, externalTypeAliases)}[]`;
193
+ return `readonly ${this.getArrayElementTypeName(type.element, definition, names, externalTypeAliases, typeParameterNames)}[]`;
179
194
  case "textMap":
180
- return `ReadonlyMap<string, ${this.getTypeName(type.value, names, externalTypeAliases)}>`;
195
+ return `ReadonlyMap<string, ${this.getTypeName(type.value, definition, names, externalTypeAliases, typeParameterNames)}>`;
181
196
  case "genMap":
182
- return `ReadonlyMap<${this.getTypeName(type.key, names, externalTypeAliases)}, ${this.getTypeName(type.value, names, externalTypeAliases)}>`;
197
+ return `ReadonlyMap<${this.getTypeName(type.key, definition, names, externalTypeAliases, typeParameterNames)}, ${this.getTypeName(type.value, definition, names, externalTypeAliases, typeParameterNames)}>`;
183
198
  case "record":
184
199
  case "variant":
185
200
  case "enum":
186
201
  throw new Error("Named DAML declarations must not contain anonymous record, variant, or enum shapes");
187
- case "namedReference":
188
- return externalTypeAliases.get(this.getDefinitionKey(type.identity.packageId, type.identity.moduleName, type.identity.name)) ?? this.getNamedReferenceTypeName(type.identity, names);
202
+ case "typeVariable":
203
+ return this.getTypeParameterName(definition, type, typeParameterNames);
204
+ case "namedReference": {
205
+ const name = externalTypeAliases.get(this.getDefinitionKey(type.identity.packageId, type.identity.moduleName, type.identity.name)) ?? this.getNamedReferenceTypeName(type.identity, names);
206
+ return (type.typeArguments?.length ?? 0) === 0
207
+ ? name
208
+ : `${name}<${(type.typeArguments ?? []).map((argument) => this.getTypeName(argument, definition, names, externalTypeAliases, typeParameterNames)).join(", ")}>`;
209
+ }
189
210
  }
190
211
  }
212
+ getArrayElementTypeName(type, definition, names, externalTypeAliases, typeParameterNames) {
213
+ const name = this.getTypeName(type, definition, names, externalTypeAliases, typeParameterNames);
214
+ return type.kind === "optional" || type.kind === "variant" || type.kind === "enum"
215
+ ? `(${name})`
216
+ : name;
217
+ }
191
218
  getPrimitiveTypeName(type) {
192
219
  switch (type) {
193
220
  case DamlLfBuiltinType.unit:
@@ -210,6 +237,46 @@ export class NamedTypeEmitter {
210
237
  throw new Error(`Cannot emit unsupported primitive DAML type '${type}'`);
211
238
  }
212
239
  }
240
+ resolveTypeParameterNames(definitions, names, externalTypeAliases) {
241
+ const values = definitions.flatMap((definition) => this.getTypeParameters(definition).map((parameter) => ({
242
+ definition,
243
+ parameter,
244
+ })));
245
+ const moduleBindings = new Set([
246
+ ...definitions.map((definition) => this.getDefinitionName(definition, names)),
247
+ ...externalTypeAliases.values(),
248
+ ]);
249
+ for (const definition of definitions) {
250
+ for (const runtimeType of this.getRuntimePrimitiveTypes(definition)) {
251
+ moduleBindings.add(runtimeType);
252
+ }
253
+ }
254
+ const reservedNamesByDefinition = new Map(definitions.map((definition) => [
255
+ this.getDefinitionKey(definition.identity.packageId, definition.identity.moduleName, definition.identity.name),
256
+ moduleBindings,
257
+ ]));
258
+ const resolved = this.resolveCollisionSafeNames(values, ({ parameter }) => this.safeTypeName(parameter.name ?? `T${parameter.internedStringIndex}`), ({ definition }) => this.getDefinitionKey(definition.identity.packageId, definition.identity.moduleName, definition.identity.name), "_", reservedNamesByDefinition);
259
+ return new Map(values.map((value) => [
260
+ this.getTypeParameterKey(value.definition, value.parameter.internedStringIndex),
261
+ resolved.get(value),
262
+ ]));
263
+ }
264
+ getDefinitionTypeParameters(definition, typeParameterNames) {
265
+ return this.getTypeParameters(definition).map((parameter) => this.getTypeParameterName(definition, parameter, typeParameterNames));
266
+ }
267
+ getTypeParameterName(definition, parameter, typeParameterNames) {
268
+ const name = typeParameterNames.get(this.getTypeParameterKey(definition, parameter.internedStringIndex));
269
+ if (name === undefined) {
270
+ throw new Error(`Cannot resolve generic parameter '${parameter.internedStringIndex}' for '${definition.identity.name}'`);
271
+ }
272
+ return name;
273
+ }
274
+ getTypeParameters(definition) {
275
+ return definition.kind === "enum" ? [] : definition.typeParameters ?? [];
276
+ }
277
+ getTypeParameterKey(definition, internedStringIndex) {
278
+ return `${this.getDefinitionKey(definition.identity.packageId, definition.identity.moduleName, definition.identity.name)}\u0000type-parameter\u0000${internedStringIndex}`;
279
+ }
213
280
  resolveModulesOrThrow(definitions) {
214
281
  const identities = new Map();
215
282
  for (const definition of definitions) {
@@ -360,15 +427,8 @@ export class NamedTypeEmitter {
360
427
  const [packageId, moduleName] = identityKey.split("\u0000");
361
428
  return this.getModuleKey(packageId, moduleName);
362
429
  }
363
- relativeFilePath(fromPath, toPath) {
364
- const from = fromPath.split("/").slice(0, -1);
365
- const to = toPath.split("/");
366
- while (from[0] === to[0] && from.length > 0) {
367
- from.shift();
368
- to.shift();
369
- }
370
- const relativePath = from.map(() => "..").concat(to).join("/") || ".";
371
- return `${relativePath.startsWith(".") ? relativePath : `./${relativePath}`}`.replace(/\.ts$/, ".js");
430
+ relativeFilePath(fromPath, toPath, moduleImportStyle) {
431
+ return RelativeModuleSpecifier.fromPaths(fromPath, toPath, moduleImportStyle);
372
432
  }
373
433
  getDefinitionName(definition, names) {
374
434
  return this.getNamedReferenceTypeName(definition.identity, names);
@@ -426,7 +486,12 @@ export class NamedTypeEmitter {
426
486
  }
427
487
  return;
428
488
  case "enum":
489
+ case "typeVariable":
490
+ return;
429
491
  case "namedReference":
492
+ for (const typeArgument of type.typeArguments ?? []) {
493
+ yield* this.getRuntimePrimitiveTypes(typeArgument);
494
+ }
430
495
  return;
431
496
  }
432
497
  }
@@ -5,6 +5,7 @@ import { RegistryEmitter } from "./registry-emitter.js";
5
5
  import { SupportFileEmitter } from "./support-file-emitter.js";
6
6
  import { TemplateBindingEmitter } from "./template-binding-emitter.js";
7
7
  import { TypeScriptNameResolver } from "./type-script-name-resolver.js";
8
+ import { type DamlModuleImportStyle } from "./daml-module-import-style.js";
8
9
  export declare class ProjectEmitter {
9
10
  private readonly nameResolver;
10
11
  private readonly templateBindingEmitter;
@@ -13,5 +14,5 @@ export declare class ProjectEmitter {
13
14
  private readonly namedTypeEmitter;
14
15
  constructor(nameResolver?: TypeScriptNameResolver, templateBindingEmitter?: TemplateBindingEmitter, supportFileEmitter?: SupportFileEmitter, registryEmitter?: RegistryEmitter, namedTypeEmitter?: NamedTypeEmitter);
15
16
  /** Emits the complete in-memory DAML interface project from analyzed templates. */
16
- emitProject(analysis: DamlInterfaceAnalysisResult): GeneratedDamlInterfaceProject;
17
+ emitProject(analysis: DamlInterfaceAnalysisResult, moduleImportStyle?: DamlModuleImportStyle): GeneratedDamlInterfaceProject;
17
18
  }
@@ -1,9 +1,11 @@
1
1
  import { GeneratedDamlInterfaceProject } from "../emission-model/generated-daml-interface-project.js";
2
+ import { GeneratedSpecEmitter } from "./generated-spec-emitter.js";
2
3
  import { NamedTypeEmitter } from "./named-type-emitter.js";
3
4
  import { RegistryEmitter } from "./registry-emitter.js";
4
5
  import { SupportFileEmitter } from "./support-file-emitter.js";
5
6
  import { TemplateBindingEmitter } from "./template-binding-emitter.js";
6
7
  import { TypeScriptNameResolver } from "./type-script-name-resolver.js";
8
+ import { DamlModuleImportStyles, } from "./daml-module-import-style.js";
7
9
  export class ProjectEmitter {
8
10
  nameResolver;
9
11
  templateBindingEmitter;
@@ -23,34 +25,42 @@ export class ProjectEmitter {
23
25
  void this.registryEmitter;
24
26
  }
25
27
  /** Emits the complete in-memory DAML interface project from analyzed templates. */
26
- emitProject(analysis) {
27
- this.namedTypeEmitter.prepareProjectOrThrow(analysis.templates, analysis.typeDefinitions);
28
+ emitProject(analysis, moduleImportStyle = DamlModuleImportStyles.esm) {
29
+ this.namedTypeEmitter.prepareProjectOrThrow(analysis.templates, analysis.typeDefinitions, analysis.packageMetadata);
28
30
  const templateBindingFiles = analysis.templates.map((template) => this.templateBindingEmitter.emitTemplateBindingFile(template));
29
- const namedTypeFiles = this.namedTypeEmitter.emitPreparedNamedTypeFiles(analysis.typeDefinitions, templateBindingFiles);
30
- const templateFiles = analysis.templates.map((template) => this.templateBindingEmitter.emitTemplateFile(template, namedTypeFiles));
31
+ const namedTypeFiles = this.namedTypeEmitter.emitPreparedNamedTypeFiles(analysis.typeDefinitions, templateBindingFiles, moduleImportStyle);
32
+ const templateFiles = analysis.templates.map((template) => this.templateBindingEmitter.emitTemplateFile(template, namedTypeFiles, moduleImportStyle));
31
33
  const supportFiles = [
32
34
  ...this.supportFileEmitter.emitSupportFiles(analysis, namedTypeFiles),
33
- ...this.supportFileEmitter.emitNamespaceFiles(new GeneratedDamlInterfaceProject({ templateFiles, namedTypeFiles })),
35
+ ...this.supportFileEmitter.emitNamespaceFiles(new GeneratedDamlInterfaceProject({ templateFiles, namedTypeFiles }), moduleImportStyle),
34
36
  ];
35
37
  const baseProject = new GeneratedDamlInterfaceProject({
36
38
  templateFiles,
37
39
  namedTypeFiles,
38
40
  supportFiles,
39
41
  });
40
- const registryFile = this.registryEmitter.emitRegistry(baseProject);
42
+ const registryFile = this.registryEmitter.emitRegistry(baseProject, moduleImportStyle);
41
43
  const projectWithRegistry = new GeneratedDamlInterfaceProject({
42
44
  templateFiles,
43
45
  namedTypeFiles,
44
46
  supportFiles,
45
47
  registryFile,
46
48
  });
47
- const indexFile = this.supportFileEmitter.emitIndexFile(projectWithRegistry);
49
+ const indexFile = this.supportFileEmitter.emitIndexFile(projectWithRegistry, moduleImportStyle);
50
+ const project = new GeneratedDamlInterfaceProject({
51
+ templateFiles,
52
+ namedTypeFiles,
53
+ supportFiles,
54
+ registryFile,
55
+ indexFile,
56
+ });
48
57
  return new GeneratedDamlInterfaceProject({
49
58
  templateFiles,
50
59
  namedTypeFiles,
51
60
  supportFiles,
52
61
  registryFile,
53
62
  indexFile,
63
+ specFiles: GeneratedSpecEmitter.emitSpecFiles(project, analysis, moduleImportStyle),
54
64
  });
55
65
  }
56
66
  }
@@ -1,7 +1,8 @@
1
1
  import { GeneratedDamlInterfaceProject } from "../emission-model/generated-daml-interface-project.js";
2
2
  import { GeneratedRegistryFile } from "../emission-model/generated-registry-file.js";
3
+ import { type DamlModuleImportStyle } from "./daml-module-import-style.js";
3
4
  export declare class RegistryEmitter {
4
5
  /** Emits a registry that dispatches created and exercised events by template id. */
5
- emitRegistry(project: GeneratedDamlInterfaceProject): GeneratedRegistryFile;
6
+ emitRegistry(project: GeneratedDamlInterfaceProject, moduleImportStyle?: DamlModuleImportStyle): GeneratedRegistryFile;
6
7
  private emitCases;
7
8
  }
@@ -1,11 +1,10 @@
1
1
  import { GeneratedRegistryFile } from "../emission-model/generated-registry-file.js";
2
+ import { RelativeModuleSpecifier } from "./relative-module-specifier.js";
2
3
  export class RegistryEmitter {
3
4
  /** Emits a registry that dispatches created and exercised events by template id. */
4
- emitRegistry(project) {
5
+ emitRegistry(project, moduleImportStyle) {
5
6
  const importLines = project.templateFiles.map((file) => {
6
- const modulePath = file.path
7
- .replace(/^generated\//, "./")
8
- .replace(/\.ts$/, ".js");
7
+ const modulePath = RelativeModuleSpecifier.fromPaths("generated/registry.ts", file.path, moduleImportStyle);
9
8
  return `import { ${file.binding.className} } from "${modulePath}";`;
10
9
  });
11
10
  const createdCases = this.emitCases(project, "fromCreatedEvent");
@@ -13,13 +12,13 @@ export class RegistryEmitter {
13
12
  return new GeneratedRegistryFile({
14
13
  path: "generated/registry.ts",
15
14
  contents: [
16
- 'import { DamlMaterializationError, normalizeDamlCreatedEventSource, normalizeDamlExercisedEventSource } from "@distrohelena/canton-typescript-sdk/daml-interface";',
15
+ 'import { DamlEventSourceNormalizer, DamlMaterializationError } from "@distrohelena/canton-typescript-sdk/daml-interface";',
17
16
  'import type { DamlCreatedEventSource, DamlExercisedEventSource } from "@distrohelena/canton-typescript-sdk/daml-interface";',
18
17
  ...importLines,
19
18
  "",
20
19
  "export class GeneratedRegistry {",
21
20
  " public static fromCreatedEvent(event: DamlCreatedEventSource): unknown {",
22
- " const normalized = normalizeDamlCreatedEventSource(event);",
21
+ " const normalized = DamlEventSourceNormalizer.normalizeCreated(event);",
23
22
  " switch (`${normalized.metadata.templateId.packageId}:${normalized.metadata.templateId.moduleName}:${normalized.metadata.templateId.entityName}`) {",
24
23
  ...createdCases,
25
24
  " default:",
@@ -28,7 +27,7 @@ export class RegistryEmitter {
28
27
  " }",
29
28
  "",
30
29
  " public static fromExercisedEvent(event: DamlExercisedEventSource): unknown {",
31
- " const normalized = normalizeDamlExercisedEventSource(event);",
30
+ " const normalized = DamlEventSourceNormalizer.normalizeExercised(event);",
32
31
  " switch (`${normalized.metadata.templateId.packageId}:${normalized.metadata.templateId.moduleName}:${normalized.metadata.templateId.entityName}`) {",
33
32
  ...exercisedCases,
34
33
  " default:",
@@ -0,0 +1,7 @@
1
+ import { type DamlModuleImportStyle } from "./daml-module-import-style.js";
2
+ /** Formats generated-project relative module specifiers for the selected execution mode. */
3
+ export declare class RelativeModuleSpecifier {
4
+ private constructor();
5
+ /** Resolves a generated TypeScript target path relative to a generated source path. */
6
+ static fromPaths(fromPath: string, toPath: string, moduleImportStyle?: DamlModuleImportStyle): string;
7
+ }
@@ -0,0 +1,17 @@
1
+ import { DamlModuleImportStyles, } from "./daml-module-import-style.js";
2
+ /** Formats generated-project relative module specifiers for the selected execution mode. */
3
+ export class RelativeModuleSpecifier {
4
+ constructor() { }
5
+ /** Resolves a generated TypeScript target path relative to a generated source path. */
6
+ static fromPaths(fromPath, toPath, moduleImportStyle = DamlModuleImportStyles.esm) {
7
+ const from = fromPath.split("/").slice(0, -1);
8
+ const to = toPath.replace(/\.ts$/, "").split("/");
9
+ while (from[0] === to[0] && from.length > 0) {
10
+ from.shift();
11
+ to.shift();
12
+ }
13
+ const relativePath = from.map(() => "..").concat(to).join("/") || ".";
14
+ const prefixedPath = relativePath.startsWith(".") ? relativePath : `./${relativePath}`;
15
+ return moduleImportStyle === DamlModuleImportStyles.esm ? `${prefixedPath}.js` : prefixedPath;
16
+ }
17
+ }
@@ -2,21 +2,24 @@ import { DamlInterfaceAnalysisResult } from "../analysis/daml-interface-analyzer
2
2
  import { GeneratedDamlInterfaceProject } from "../emission-model/generated-daml-interface-project.js";
3
3
  import { GeneratedNamedTypeFile } from "../emission-model/generated-named-type-file.js";
4
4
  import { GeneratedSupportFile } from "../emission-model/generated-support-file.js";
5
+ import { type DamlModuleImportStyle } from "./daml-module-import-style.js";
5
6
  export declare class SupportFileEmitter {
6
7
  /** Emits shared support files for the generated DAML interface project. */
7
8
  emitSupportFiles(analysis: DamlInterfaceAnalysisResult, namedTypeFiles?: readonly GeneratedNamedTypeFile[]): readonly GeneratedSupportFile[];
8
9
  /** Emits one barrel module for each generated DAML package/module namespace. */
9
- emitNamespaceFiles(project: GeneratedDamlInterfaceProject): readonly GeneratedSupportFile[];
10
+ emitNamespaceFiles(project: GeneratedDamlInterfaceProject, moduleImportStyle?: DamlModuleImportStyle): readonly GeneratedSupportFile[];
10
11
  /** Emits the generated project index file. */
11
- emitIndexFile(project: GeneratedDamlInterfaceProject): GeneratedSupportFile;
12
+ emitIndexFile(project: GeneratedDamlInterfaceProject, moduleImportStyle?: DamlModuleImportStyle): GeneratedSupportFile;
12
13
  private getNamespaceGroups;
13
14
  private getFileNameWithoutExtension;
14
15
  private assertDistinctModuleExportedSymbols;
15
16
  private getExportedSymbols;
16
17
  private describeTemplate;
17
18
  private emitDescriptorRegistry;
19
+ private emitFactoryBody;
18
20
  private emitDescriptor;
19
21
  private emitDefinitionDescriptor;
22
+ private getTypeVariableSubstitution;
20
23
  private getFieldPropertyName;
21
24
  private getFieldKey;
22
25
  private getIdentityKey;
@@ -1,4 +1,5 @@
1
1
  import { GeneratedSupportFile } from "../emission-model/generated-support-file.js";
2
+ import { RelativeModuleSpecifier } from "./relative-module-specifier.js";
2
3
  export class SupportFileEmitter {
3
4
  /** Emits shared support files for the generated DAML interface project. */
4
5
  emitSupportFiles(analysis, namedTypeFiles = []) {
@@ -18,25 +19,23 @@ export class SupportFileEmitter {
18
19
  ];
19
20
  }
20
21
  /** Emits one barrel module for each generated DAML package/module namespace. */
21
- emitNamespaceFiles(project) {
22
+ emitNamespaceFiles(project, moduleImportStyle) {
22
23
  return this.getNamespaceGroups(project).map((group) => new GeneratedSupportFile({
23
24
  path: `${group.directoryPath}/index.ts`,
24
25
  contents: `${[
25
- ...(group.namedTypeFile === undefined ? [] : ["export * from \"./types.js\";"]),
26
+ ...(group.namedTypeFile === undefined ? [] : [`export * from ${JSON.stringify(RelativeModuleSpecifier.fromPaths(`${group.directoryPath}/index.ts`, group.namedTypeFile.path, moduleImportStyle))};`]),
26
27
  ...group.templateFiles
27
- .map((file) => this.getFileNameWithoutExtension(file.path))
28
- .map((fileName) => `export * from "./${fileName}.js";`),
28
+ .map((file) => `export * from ${JSON.stringify(RelativeModuleSpecifier.fromPaths(`${group.directoryPath}/index.ts`, file.path, moduleImportStyle))};`),
29
29
  ].join("\n")}\n`,
30
30
  }));
31
31
  }
32
32
  /** Emits the generated project index file. */
33
- emitIndexFile(project) {
33
+ emitIndexFile(project, moduleImportStyle) {
34
34
  const exportLines = this.getNamespaceGroups(project)
35
- .map((group) => `export * as ${group.alias} from "${group.directoryPath
36
- .replace(/^generated\//, "./")}/index.js";`);
35
+ .map((group) => `export * as ${group.alias} from ${JSON.stringify(RelativeModuleSpecifier.fromPaths("generated/index.ts", `${group.directoryPath}/index.ts`, moduleImportStyle))};`);
37
36
  const lines = [
38
37
  ...exportLines,
39
- 'export * from "./registry.js";',
38
+ `export * from ${JSON.stringify(RelativeModuleSpecifier.fromPaths("generated/index.ts", "generated/registry.ts", moduleImportStyle))};`,
40
39
  ];
41
40
  return new GeneratedSupportFile({
42
41
  path: "generated/index.ts",
@@ -147,9 +146,7 @@ export class SupportFileEmitter {
147
146
  throw new Error(`Cannot emit duplicate named DAML type descriptor '${identityKey}'`);
148
147
  }
149
148
  identities.add(identityKey);
150
- return [
151
- ` ${JSON.stringify(identityKey)}: () => deepFreeze(${this.emitDefinitionDescriptor(definition, fieldPropertyNames)} satisfies DamlTypeDescriptor),`,
152
- ].join("");
149
+ return ` ${JSON.stringify(identityKey)}: (typeArguments) => {\n${this.emitFactoryBody(definition, fieldPropertyNames)}\n },`;
153
150
  });
154
151
  return new GeneratedSupportFile({
155
152
  path: "generated/support/descriptors.ts",
@@ -168,48 +165,75 @@ export class SupportFileEmitter {
168
165
  " return value;",
169
166
  "}",
170
167
  "",
171
- "const generatedDamlTypeDescriptorFactories: Readonly<Record<string, () => DamlTypeDescriptor>> = Object.freeze({",
168
+ "const generatedDamlTypeDescriptorFactories: Readonly<Record<string, (typeArguments: readonly DamlTypeDescriptor[]) => DamlTypeDescriptor>> = Object.freeze({",
172
169
  ...factories,
173
170
  "});",
174
171
  "",
175
- "export const generatedDamlTypeDescriptorRegistry: DamlTypeDescriptorRegistry = Object.freeze({",
176
- " resolve(identity) {",
177
- " return generatedDamlTypeDescriptorFactories[`${identity.packageId}:${identity.moduleName}:${identity.entityName}`];",
178
- " },",
179
- "});",
172
+ "export class GeneratedDamlTypeDescriptorRegistry {",
173
+ " private constructor() {}",
174
+ "",
175
+ " public static resolve(identity: Parameters<DamlTypeDescriptorRegistry[\"resolve\"]>[0], typeArguments: Parameters<DamlTypeDescriptorRegistry[\"resolve\"]>[1]): ReturnType<DamlTypeDescriptorRegistry[\"resolve\"]> {",
176
+ " const factory = generatedDamlTypeDescriptorFactories[`${identity.packageId}:${identity.moduleName}:${identity.entityName}`];",
177
+ "",
178
+ " return factory === undefined ? undefined : factory(typeArguments);",
179
+ " }",
180
+ "}",
180
181
  "",
181
182
  ].join("\n"),
182
183
  });
183
184
  }
184
- emitDescriptor(type) {
185
+ emitFactoryBody(definition, fieldPropertyNames) {
186
+ const typeParameters = definition.kind === "enum" ? [] : definition.typeParameters ?? [];
187
+ const substitutions = new Map(typeParameters.map((parameter, index) => [
188
+ parameter.internedStringIndex,
189
+ `typeArguments[${index}]!`,
190
+ ]));
191
+ return [
192
+ ` if (typeArguments.length !== ${typeParameters.length}) {`,
193
+ ` throw new Error(${JSON.stringify(`Expected ${typeParameters.length} type arguments for ${definition.identity.packageId}:${definition.identity.moduleName}:${definition.identity.name}`)});`,
194
+ " }",
195
+ "",
196
+ ` return deepFreeze(${this.emitDefinitionDescriptor(definition, fieldPropertyNames, substitutions)} satisfies DamlTypeDescriptor);`,
197
+ ].join("\n");
198
+ }
199
+ emitDescriptor(type, substitutions = new Map()) {
185
200
  switch (type.kind) {
186
201
  case "primitive":
187
202
  return `{ kind: "primitive", primitive: ${JSON.stringify(type.builtinType)}${type.numericScale === undefined ? "" : `, numericScale: ${type.numericScale}`} }`;
188
203
  case "contractId":
189
204
  return '{ kind: "contractId" }';
190
205
  case "optional":
191
- return `{ kind: "optional", element: ${this.emitDescriptor(type.element)} }`;
206
+ return `{ kind: "optional", element: ${this.emitDescriptor(type.element, substitutions)} }`;
192
207
  case "list":
193
- return `{ kind: "list", element: ${this.emitDescriptor(type.element)} }`;
208
+ return `{ kind: "list", element: ${this.emitDescriptor(type.element, substitutions)} }`;
194
209
  case "textMap":
195
- return `{ kind: "textMap", value: ${this.emitDescriptor(type.value)} }`;
210
+ return `{ kind: "textMap", value: ${this.emitDescriptor(type.value, substitutions)} }`;
196
211
  case "genMap":
197
- return `{ kind: "genMap", key: ${this.emitDescriptor(type.key)}, value: ${this.emitDescriptor(type.value)} }`;
212
+ return `{ kind: "genMap", key: ${this.emitDescriptor(type.key, substitutions)}, value: ${this.emitDescriptor(type.value, substitutions)} }`;
198
213
  case "record":
199
- return `{ kind: "record", fields: [${type.fields.map((field) => `{ damlLabel: ${JSON.stringify(field.damlLabel)}, propertyName: ${JSON.stringify(field.propertyName)}, type: ${this.emitDescriptor(field.type)} }`).join(", ")}] }`;
214
+ return `{ kind: "record", fields: [${type.fields.map((field) => `{ damlLabel: ${JSON.stringify(field.damlLabel)}, propertyName: ${JSON.stringify(field.propertyName)}, type: ${this.emitDescriptor(field.type, substitutions)} }`).join(", ")}] }`;
200
215
  case "variant":
201
- return `{ kind: "variant", constructors: [${type.constructors.map((constructor) => `{ constructor: ${JSON.stringify(constructor.constructor)}, payload: ${this.emitDescriptor(constructor.payload)} }`).join(", ")}] }`;
216
+ return `{ kind: "variant", constructors: [${type.constructors.map((constructor) => `{ constructor: ${JSON.stringify(constructor.constructor)}, payload: ${this.emitDescriptor(constructor.payload, substitutions)} }`).join(", ")}] }`;
202
217
  case "enum":
203
218
  return `{ kind: "enum", constructors: [${type.constructors.map((constructor) => JSON.stringify(constructor)).join(", ")}] }`;
219
+ case "typeVariable":
220
+ return this.getTypeVariableSubstitution(type, substitutions);
204
221
  case "namedReference":
205
- return `{ kind: "namedReference", identity: { packageId: ${JSON.stringify(type.identity.packageId)}, moduleName: ${JSON.stringify(type.identity.moduleName)}, entityName: ${JSON.stringify(type.identity.name)} } }`;
222
+ return `{ kind: "namedReference", identity: { packageId: ${JSON.stringify(type.identity.packageId)}, moduleName: ${JSON.stringify(type.identity.moduleName)}, entityName: ${JSON.stringify(type.identity.name)} }, typeArguments: [${(type.typeArguments ?? []).map((argument) => this.emitDescriptor(argument, substitutions)).join(", ")}] }`;
206
223
  }
207
224
  }
208
- emitDefinitionDescriptor(definition, fieldPropertyNames) {
225
+ emitDefinitionDescriptor(definition, fieldPropertyNames, substitutions) {
209
226
  if (definition.kind !== "record") {
210
- return this.emitDescriptor(definition);
227
+ return this.emitDescriptor(definition, substitutions);
228
+ }
229
+ return `{ kind: "record", fields: [${definition.fields.map((field, index) => `{ damlLabel: ${JSON.stringify(field.damlLabel)}, propertyName: ${JSON.stringify(this.getFieldPropertyName(definition, index, fieldPropertyNames))}, type: ${this.emitDescriptor(field.type, substitutions)} }`).join(", ")}] }`;
230
+ }
231
+ getTypeVariableSubstitution(type, substitutions) {
232
+ const substitution = substitutions.get(type.internedStringIndex);
233
+ if (substitution === undefined) {
234
+ throw new Error(`Cannot emit unbound generic DAML type variable '${type.name ?? `#${type.internedStringIndex}`}'`);
211
235
  }
212
- return `{ kind: "record", fields: [${definition.fields.map((field, index) => `{ damlLabel: ${JSON.stringify(field.damlLabel)}, propertyName: ${JSON.stringify(this.getFieldPropertyName(definition, index, fieldPropertyNames))}, type: ${this.emitDescriptor(field.type)} }`).join(", ")}] }`;
236
+ return substitution;
213
237
  }
214
238
  getFieldPropertyName(definition, index, names) {
215
239
  const name = names.get(this.getFieldKey(definition, index));
@@ -2,6 +2,7 @@ import { AnalyzedTemplate } from "../analysis/analyzed-template.js";
2
2
  import { GeneratedNamedTypeFile } from "../emission-model/generated-named-type-file.js";
3
3
  import { GeneratedTemplateBindingFile } from "../emission-model/generated-template-binding-file.js";
4
4
  import { TypeScriptNameResolver } from "./type-script-name-resolver.js";
5
+ import { type DamlModuleImportStyle } from "./daml-module-import-style.js";
5
6
  /** Emits typed contract and exercise-event bindings for analyzed DAML templates. */
6
7
  export declare class TemplateBindingEmitter {
7
8
  private readonly nameResolver;
@@ -9,7 +10,7 @@ export declare class TemplateBindingEmitter {
9
10
  /** Prepares stable collision-safe names before emitting a complete project. */
10
11
  prepareTemplatesOrThrow(templates: readonly AnalyzedTemplate[]): void;
11
12
  /** Emits a generated TypeScript file for one analyzed DAML template. */
12
- emitTemplateFile(template: AnalyzedTemplate, namedTypeFiles?: readonly GeneratedNamedTypeFile[]): GeneratedTemplateBindingFile;
13
+ emitTemplateFile(template: AnalyzedTemplate, namedTypeFiles?: readonly GeneratedNamedTypeFile[], moduleImportStyle?: DamlModuleImportStyle): GeneratedTemplateBindingFile;
13
14
  /** Emits binding metadata without source, for resolving named declaration exports first. */
14
15
  emitTemplateBindingFile(template: AnalyzedTemplate): GeneratedTemplateBindingFile;
15
16
  private createBinding;
@@ -20,7 +21,11 @@ export declare class TemplateBindingEmitter {
20
21
  private emitTemplateDescriptor;
21
22
  private emitDescriptor;
22
23
  private getTypeName;
24
+ private getArrayElementTypeName;
23
25
  private getPrimitiveTypeName;
26
+ private resolveRuntimeWrapperTypeNames;
27
+ private getSdkName;
28
+ private emitImportedName;
24
29
  private normalizeType;
25
30
  private resolveNamedReferences;
26
31
  private walkNamedReferences;