@algorandfoundation/algokit-utils 10.0.0-alpha.44 → 10.0.0-alpha.46

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 (1422) hide show
  1. package/_virtual/_rolldown/runtime.js +7 -13
  2. package/abi/index.js +6 -7
  3. package/abi/index.mjs +1 -2
  4. package/account-manager.js +17 -18
  5. package/account-manager.js.map +1 -1
  6. package/account-manager.mjs +4 -5
  7. package/account-manager.mjs.map +1 -1
  8. package/account.d.ts +4 -9
  9. package/account.js +2 -3
  10. package/account.js.map +1 -1
  11. package/account.mjs +1 -1
  12. package/algo25/index.js +3 -4
  13. package/algo25/index.mjs +1 -2
  14. package/algod-client/index.js +8 -9
  15. package/algod-client/index.mjs +1 -2
  16. package/algorand-client-transaction-creator.d.ts +4 -4
  17. package/algorand-client-transaction-creator.js +2 -3
  18. package/algorand-client-transaction-creator.js.map +1 -1
  19. package/algorand-client-transaction-creator.mjs +1 -1
  20. package/algorand-client-transaction-creator.mjs.map +1 -1
  21. package/algorand-client-transaction-sender.d.ts +5 -6
  22. package/algorand-client-transaction-sender.js +24 -25
  23. package/algorand-client-transaction-sender.js.map +1 -1
  24. package/algorand-client-transaction-sender.mjs +18 -19
  25. package/algorand-client-transaction-sender.mjs.map +1 -1
  26. package/algorand-client.js +12 -13
  27. package/algorand-client.js.map +1 -1
  28. package/algorand-client.mjs +1 -2
  29. package/algorand-client.mjs.map +1 -1
  30. package/amount.js +2 -3
  31. package/amount.js.map +1 -1
  32. package/amount.mjs +1 -1
  33. package/amount.mjs.map +1 -1
  34. package/app-client.d.ts +27 -49
  35. package/app-client.js +13 -14
  36. package/app-client.js.map +1 -1
  37. package/app-client.mjs +1 -2
  38. package/app-client.mjs.map +1 -1
  39. package/app-deployer.d.ts +6 -13
  40. package/app-deployer.js +19 -20
  41. package/app-deployer.js.map +1 -1
  42. package/app-deployer.mjs +11 -12
  43. package/app-deployer.mjs.map +1 -1
  44. package/app-factory.d.ts +24 -49
  45. package/app-factory.js +9 -10
  46. package/app-factory.js.map +1 -1
  47. package/app-factory.mjs +3 -4
  48. package/app-factory.mjs.map +1 -1
  49. package/app-manager.js +9 -12
  50. package/app-manager.js.map +1 -1
  51. package/app-manager.mjs +5 -8
  52. package/app-manager.mjs.map +1 -1
  53. package/app-spec.d.ts +1 -4
  54. package/app-spec.js +3 -4
  55. package/app-spec.js.map +1 -1
  56. package/app-spec.mjs +1 -2
  57. package/app-spec.mjs.map +1 -1
  58. package/app.d.ts +6 -12
  59. package/app.js +2 -3
  60. package/app.js.map +1 -1
  61. package/app.mjs +1 -1
  62. package/app.mjs.map +1 -1
  63. package/asset-manager.js +7 -8
  64. package/asset-manager.js.map +1 -1
  65. package/asset-manager.mjs +4 -5
  66. package/asset-manager.mjs.map +1 -1
  67. package/async-event-emitter.js +2 -3
  68. package/async-event-emitter.js.map +1 -1
  69. package/async-event-emitter.mjs +1 -1
  70. package/async-event-emitter.mjs.map +1 -1
  71. package/client-manager.js +10 -11
  72. package/client-manager.js.map +1 -1
  73. package/client-manager.mjs +1 -2
  74. package/client-manager.mjs.map +1 -1
  75. package/common/index.js +26 -27
  76. package/common/index.mjs +1 -2
  77. package/composer.d.ts +3 -8
  78. package/composer.js +26 -28
  79. package/composer.js.map +1 -1
  80. package/composer.mjs +5 -7
  81. package/composer.mjs.map +1 -1
  82. package/config.js +3 -5
  83. package/config.js.map +1 -1
  84. package/config.mjs +1 -2
  85. package/config.mjs.map +1 -1
  86. package/crypto/index.js +6 -7
  87. package/crypto/index.mjs +1 -2
  88. package/debugging.d.ts +4 -10
  89. package/debugging.js +2 -3
  90. package/debugging.js.map +1 -1
  91. package/debugging.mjs +1 -1
  92. package/dispenser-client.js +3 -4
  93. package/dispenser-client.js.map +1 -1
  94. package/dispenser-client.mjs +1 -2
  95. package/dispenser-client.mjs.map +1 -1
  96. package/index.js +26 -27
  97. package/index.mjs +1 -2
  98. package/indexer-client/index.js +8 -9
  99. package/indexer-client/index.mjs +1 -2
  100. package/indexer-client/indexer-lookup.js +1 -2
  101. package/indexer-client/indexer-lookup.js.map +1 -1
  102. package/indexer-client/indexer-lookup.mjs +1 -1
  103. package/indexer-client/indexer-lookup.mjs.map +1 -1
  104. package/indexer.d.ts +3 -3
  105. package/indexer.js +2 -3
  106. package/indexer.js.map +1 -1
  107. package/indexer.mjs +1 -1
  108. package/indexer.mjs.map +1 -1
  109. package/kmd-account-manager.js +9 -10
  110. package/kmd-account-manager.js.map +1 -1
  111. package/kmd-account-manager.mjs +1 -2
  112. package/kmd-account-manager.mjs.map +1 -1
  113. package/kmd-client/index.js +7 -8
  114. package/kmd-client/index.mjs +1 -2
  115. package/lifecycle-events.d.ts +1 -1
  116. package/lifecycle-events.js +2 -3
  117. package/lifecycle-events.js.map +1 -1
  118. package/lifecycle-events.mjs +1 -1
  119. package/lifecycle-events.mjs.map +1 -1
  120. package/logging.js +2 -3
  121. package/logging.js.map +1 -1
  122. package/logging.mjs +1 -1
  123. package/logic-error.js +2 -3
  124. package/logic-error.js.map +1 -1
  125. package/logic-error.mjs +1 -1
  126. package/logic-error.mjs.map +1 -1
  127. package/network-client.js +2 -3
  128. package/network-client.js.map +1 -1
  129. package/network-client.mjs +1 -1
  130. package/network-manager.js +2 -3
  131. package/network-manager.js.map +1 -1
  132. package/network-manager.mjs +1 -2
  133. package/network-manager.mjs.map +1 -1
  134. package/package.json +5 -2
  135. package/packages/abi/src/abi-method.d.ts +7 -12
  136. package/packages/abi/src/abi-method.js +3 -4
  137. package/packages/abi/src/abi-method.js.map +1 -1
  138. package/packages/abi/src/abi-method.mjs +1 -2
  139. package/packages/abi/src/abi-method.mjs.map +1 -1
  140. package/packages/abi/src/abi-type.d.ts +1 -4
  141. package/packages/abi/src/abi-type.js +22 -25
  142. package/packages/abi/src/abi-type.js.map +1 -1
  143. package/packages/abi/src/abi-type.mjs +18 -21
  144. package/packages/abi/src/abi-type.mjs.map +1 -1
  145. package/packages/abi/src/arc28-event.d.ts +4 -10
  146. package/packages/abi/src/arc56-contract.d.ts +66 -155
  147. package/packages/abi/src/arc56-contract.js +2 -3
  148. package/packages/abi/src/arc56-contract.js.map +1 -1
  149. package/packages/abi/src/arc56-contract.mjs +1 -2
  150. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  151. package/packages/abi/src/bigint.js +1 -2
  152. package/packages/abi/src/bigint.js.map +1 -1
  153. package/packages/abi/src/bigint.mjs +1 -1
  154. package/packages/abi/src/utils.d.ts +0 -1
  155. package/packages/abi/src/utils.js +1 -2
  156. package/packages/abi/src/utils.js.map +1 -1
  157. package/packages/abi/src/utils.mjs +1 -1
  158. package/packages/algo25/src/english.js +2 -4
  159. package/packages/algo25/src/english.js.map +1 -1
  160. package/packages/algo25/src/english.mjs +2 -3
  161. package/packages/algo25/src/english.mjs.map +1 -1
  162. package/packages/algo25/src/index.js +3 -4
  163. package/packages/algo25/src/index.js.map +1 -1
  164. package/packages/algo25/src/index.mjs +5 -6
  165. package/packages/algo25/src/index.mjs.map +1 -1
  166. package/packages/algod_client/src/apis/api-service.js +33 -34
  167. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  168. package/packages/algod_client/src/apis/api-service.mjs +1 -2
  169. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  170. package/packages/algod_client/src/client.js +3 -4
  171. package/packages/algod_client/src/client.js.map +1 -1
  172. package/packages/algod_client/src/client.mjs +1 -2
  173. package/packages/algod_client/src/client.mjs.map +1 -1
  174. package/packages/algod_client/src/core/api-error.js +1 -2
  175. package/packages/algod_client/src/core/api-error.js.map +1 -1
  176. package/packages/algod_client/src/core/api-error.mjs +1 -1
  177. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  178. package/packages/algod_client/src/core/base-http-request.js +1 -2
  179. package/packages/algod_client/src/core/base-http-request.js.map +1 -1
  180. package/packages/algod_client/src/core/base-http-request.mjs +1 -1
  181. package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
  182. package/packages/algod_client/src/core/fetch-http-request.js +3 -4
  183. package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
  184. package/packages/algod_client/src/core/fetch-http-request.mjs +1 -2
  185. package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
  186. package/packages/algod_client/src/core/model-runtime.js +4 -5
  187. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  188. package/packages/algod_client/src/core/model-runtime.mjs +1 -2
  189. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  190. package/packages/algod_client/src/core/request.js +5 -6
  191. package/packages/algod_client/src/core/request.js.map +1 -1
  192. package/packages/algod_client/src/core/request.mjs +1 -2
  193. package/packages/algod_client/src/core/request.mjs.map +1 -1
  194. package/packages/algod_client/src/models/account-application-response.js +5 -6
  195. package/packages/algod_client/src/models/account-application-response.js.map +1 -1
  196. package/packages/algod_client/src/models/account-application-response.mjs +1 -2
  197. package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
  198. package/packages/algod_client/src/models/account-asset-response.js +5 -6
  199. package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
  200. package/packages/algod_client/src/models/account-asset-response.mjs +1 -2
  201. package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
  202. package/packages/algod_client/src/models/account-participation.js +3 -4
  203. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  204. package/packages/algod_client/src/models/account-participation.mjs +1 -2
  205. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  206. package/packages/algod_client/src/models/account-state-delta.d.ts +0 -1
  207. package/packages/algod_client/src/models/account-state-delta.js +4 -5
  208. package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
  209. package/packages/algod_client/src/models/account-state-delta.mjs +1 -2
  210. package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
  211. package/packages/algod_client/src/models/account.d.ts +0 -1
  212. package/packages/algod_client/src/models/account.js +14 -15
  213. package/packages/algod_client/src/models/account.js.map +1 -1
  214. package/packages/algod_client/src/models/account.mjs +1 -2
  215. package/packages/algod_client/src/models/account.mjs.map +1 -1
  216. package/packages/algod_client/src/models/application-initial-states.d.ts +0 -1
  217. package/packages/algod_client/src/models/application-initial-states.js +5 -6
  218. package/packages/algod_client/src/models/application-initial-states.js.map +1 -1
  219. package/packages/algod_client/src/models/application-initial-states.mjs +1 -2
  220. package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -1
  221. package/packages/algod_client/src/models/application-kv-storage.d.ts +0 -1
  222. package/packages/algod_client/src/models/application-kv-storage.js +5 -6
  223. package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
  224. package/packages/algod_client/src/models/application-kv-storage.mjs +1 -2
  225. package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
  226. package/packages/algod_client/src/models/application-local-state.d.ts +0 -1
  227. package/packages/algod_client/src/models/application-local-state.js +6 -7
  228. package/packages/algod_client/src/models/application-local-state.js.map +1 -1
  229. package/packages/algod_client/src/models/application-local-state.mjs +1 -2
  230. package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
  231. package/packages/algod_client/src/models/application-params.d.ts +0 -1
  232. package/packages/algod_client/src/models/application-params.js +8 -9
  233. package/packages/algod_client/src/models/application-params.js.map +1 -1
  234. package/packages/algod_client/src/models/application-params.mjs +1 -2
  235. package/packages/algod_client/src/models/application-params.mjs.map +1 -1
  236. package/packages/algod_client/src/models/application-state-operation.d.ts +0 -1
  237. package/packages/algod_client/src/models/application-state-operation.js +6 -7
  238. package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
  239. package/packages/algod_client/src/models/application-state-operation.mjs +1 -2
  240. package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
  241. package/packages/algod_client/src/models/application-state-schema.js +2 -3
  242. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  243. package/packages/algod_client/src/models/application-state-schema.mjs +1 -2
  244. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  245. package/packages/algod_client/src/models/application.d.ts +0 -1
  246. package/packages/algod_client/src/models/application.js +4 -5
  247. package/packages/algod_client/src/models/application.js.map +1 -1
  248. package/packages/algod_client/src/models/application.mjs +1 -2
  249. package/packages/algod_client/src/models/application.mjs.map +1 -1
  250. package/packages/algod_client/src/models/asset-holding.js +3 -4
  251. package/packages/algod_client/src/models/asset-holding.js.map +1 -1
  252. package/packages/algod_client/src/models/asset-holding.mjs +1 -2
  253. package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
  254. package/packages/algod_client/src/models/asset-params.js +7 -8
  255. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  256. package/packages/algod_client/src/models/asset-params.mjs +1 -2
  257. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  258. package/packages/algod_client/src/models/asset.d.ts +0 -1
  259. package/packages/algod_client/src/models/asset.js +4 -5
  260. package/packages/algod_client/src/models/asset.js.map +1 -1
  261. package/packages/algod_client/src/models/asset.mjs +1 -2
  262. package/packages/algod_client/src/models/asset.mjs.map +1 -1
  263. package/packages/algod_client/src/models/avm-key-value.d.ts +0 -1
  264. package/packages/algod_client/src/models/avm-key-value.js +4 -5
  265. package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
  266. package/packages/algod_client/src/models/avm-key-value.mjs +1 -2
  267. package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
  268. package/packages/algod_client/src/models/avm-value.js +4 -6
  269. package/packages/algod_client/src/models/avm-value.js.map +1 -1
  270. package/packages/algod_client/src/models/avm-value.mjs +1 -2
  271. package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
  272. package/packages/algod_client/src/models/block-hash-response.js +2 -4
  273. package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
  274. package/packages/algod_client/src/models/block-hash-response.mjs +1 -2
  275. package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
  276. package/packages/algod_client/src/models/block-response.d.ts +1 -3
  277. package/packages/algod_client/src/models/block-response.js +4 -6
  278. package/packages/algod_client/src/models/block-response.js.map +1 -1
  279. package/packages/algod_client/src/models/block-response.mjs +1 -2
  280. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  281. package/packages/algod_client/src/models/block-txids-response.js +2 -4
  282. package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
  283. package/packages/algod_client/src/models/block-txids-response.mjs +1 -2
  284. package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
  285. package/packages/algod_client/src/models/block.d.ts +41 -93
  286. package/packages/algod_client/src/models/block.js +12 -13
  287. package/packages/algod_client/src/models/block.js.map +1 -1
  288. package/packages/algod_client/src/models/block.mjs +1 -2
  289. package/packages/algod_client/src/models/block.mjs.map +1 -1
  290. package/packages/algod_client/src/models/box-descriptor.js +2 -4
  291. package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
  292. package/packages/algod_client/src/models/box-descriptor.mjs +1 -2
  293. package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
  294. package/packages/algod_client/src/models/box.js +3 -4
  295. package/packages/algod_client/src/models/box.js.map +1 -1
  296. package/packages/algod_client/src/models/box.mjs +1 -2
  297. package/packages/algod_client/src/models/box.mjs.map +1 -1
  298. package/packages/algod_client/src/models/boxes-response.js +4 -5
  299. package/packages/algod_client/src/models/boxes-response.js.map +1 -1
  300. package/packages/algod_client/src/models/boxes-response.mjs +1 -2
  301. package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
  302. package/packages/algod_client/src/models/build-version.js +3 -4
  303. package/packages/algod_client/src/models/build-version.js.map +1 -1
  304. package/packages/algod_client/src/models/build-version.mjs +1 -2
  305. package/packages/algod_client/src/models/build-version.mjs.map +1 -1
  306. package/packages/algod_client/src/models/compile-response.js +4 -5
  307. package/packages/algod_client/src/models/compile-response.js.map +1 -1
  308. package/packages/algod_client/src/models/compile-response.mjs +1 -2
  309. package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
  310. package/packages/algod_client/src/models/disassemble-response.js +2 -4
  311. package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
  312. package/packages/algod_client/src/models/disassemble-response.mjs +1 -2
  313. package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
  314. package/packages/algod_client/src/models/eval-delta-key-value.d.ts +0 -1
  315. package/packages/algod_client/src/models/eval-delta-key-value.js +4 -5
  316. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  317. package/packages/algod_client/src/models/eval-delta-key-value.mjs +1 -2
  318. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  319. package/packages/algod_client/src/models/eval-delta.js +4 -6
  320. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  321. package/packages/algod_client/src/models/eval-delta.mjs +1 -2
  322. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  323. package/packages/algod_client/src/models/genesis-allocation.js +59 -62
  324. package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
  325. package/packages/algod_client/src/models/genesis-allocation.mjs +55 -58
  326. package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
  327. package/packages/algod_client/src/models/genesis.js +7 -8
  328. package/packages/algod_client/src/models/genesis.js.map +1 -1
  329. package/packages/algod_client/src/models/genesis.mjs +1 -2
  330. package/packages/algod_client/src/models/genesis.mjs.map +1 -1
  331. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +2 -4
  332. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
  333. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +1 -2
  334. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
  335. package/packages/algod_client/src/models/get-sync-round-response.js +2 -4
  336. package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
  337. package/packages/algod_client/src/models/get-sync-round-response.mjs +1 -2
  338. package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
  339. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +0 -1
  340. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +4 -5
  341. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
  342. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +1 -2
  343. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
  344. package/packages/algod_client/src/models/ledger-state-delta.d.ts +3 -8
  345. package/packages/algod_client/src/models/ledger-state-delta.js +98 -101
  346. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  347. package/packages/algod_client/src/models/ledger-state-delta.mjs +205 -210
  348. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  349. package/packages/algod_client/src/models/light-block-header-proof.js +3 -4
  350. package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
  351. package/packages/algod_client/src/models/light-block-header-proof.mjs +1 -2
  352. package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
  353. package/packages/algod_client/src/models/node-status-response.js +5 -6
  354. package/packages/algod_client/src/models/node-status-response.js.map +1 -1
  355. package/packages/algod_client/src/models/node-status-response.mjs +1 -2
  356. package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
  357. package/packages/algod_client/src/models/pending-transaction-response.d.ts +0 -1
  358. package/packages/algod_client/src/models/pending-transaction-response.js +9 -10
  359. package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
  360. package/packages/algod_client/src/models/pending-transaction-response.mjs +1 -2
  361. package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
  362. package/packages/algod_client/src/models/pending-transactions-response.d.ts +0 -1
  363. package/packages/algod_client/src/models/pending-transactions-response.js +5 -6
  364. package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
  365. package/packages/algod_client/src/models/pending-transactions-response.mjs +1 -2
  366. package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
  367. package/packages/algod_client/src/models/post-transactions-response.js +2 -4
  368. package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
  369. package/packages/algod_client/src/models/post-transactions-response.mjs +1 -2
  370. package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
  371. package/packages/algod_client/src/models/scratch-change.d.ts +0 -1
  372. package/packages/algod_client/src/models/scratch-change.js +4 -5
  373. package/packages/algod_client/src/models/scratch-change.js.map +1 -1
  374. package/packages/algod_client/src/models/scratch-change.mjs +1 -2
  375. package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
  376. package/packages/algod_client/src/models/simulate-initial-states.d.ts +0 -1
  377. package/packages/algod_client/src/models/simulate-initial-states.js +4 -5
  378. package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
  379. package/packages/algod_client/src/models/simulate-initial-states.mjs +1 -2
  380. package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
  381. package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +0 -1
  382. package/packages/algod_client/src/models/simulate-request-transaction-group.js +4 -5
  383. package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
  384. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +1 -2
  385. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
  386. package/packages/algod_client/src/models/simulate-request.d.ts +0 -1
  387. package/packages/algod_client/src/models/simulate-request.js +8 -9
  388. package/packages/algod_client/src/models/simulate-request.js.map +1 -1
  389. package/packages/algod_client/src/models/simulate-request.mjs +1 -2
  390. package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
  391. package/packages/algod_client/src/models/simulate-response.js +10 -11
  392. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  393. package/packages/algod_client/src/models/simulate-response.mjs +1 -2
  394. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  395. package/packages/algod_client/src/models/simulate-trace-config.js +2 -3
  396. package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
  397. package/packages/algod_client/src/models/simulate-trace-config.mjs +1 -2
  398. package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
  399. package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +0 -1
  400. package/packages/algod_client/src/models/simulate-transaction-group-result.js +7 -8
  401. package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
  402. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +1 -2
  403. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
  404. package/packages/algod_client/src/models/simulate-transaction-result.d.ts +0 -1
  405. package/packages/algod_client/src/models/simulate-transaction-result.js +7 -8
  406. package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
  407. package/packages/algod_client/src/models/simulate-transaction-result.mjs +1 -2
  408. package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
  409. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +0 -1
  410. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +5 -6
  411. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  412. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +1 -2
  413. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  414. package/packages/algod_client/src/models/simulation-eval-overrides.js +3 -4
  415. package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
  416. package/packages/algod_client/src/models/simulation-eval-overrides.mjs +1 -2
  417. package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
  418. package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +0 -1
  419. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +7 -8
  420. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
  421. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +1 -2
  422. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
  423. package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +0 -1
  424. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +7 -8
  425. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
  426. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +1 -2
  427. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
  428. package/packages/algod_client/src/models/source-map.js +4 -5
  429. package/packages/algod_client/src/models/source-map.js.map +1 -1
  430. package/packages/algod_client/src/models/source-map.mjs +1 -2
  431. package/packages/algod_client/src/models/source-map.mjs.map +1 -1
  432. package/packages/algod_client/src/models/state-delta.d.ts +0 -1
  433. package/packages/algod_client/src/models/state-delta.js +4 -5
  434. package/packages/algod_client/src/models/state-delta.js.map +1 -1
  435. package/packages/algod_client/src/models/state-delta.mjs +1 -2
  436. package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
  437. package/packages/algod_client/src/models/state-proof-message.js +3 -4
  438. package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
  439. package/packages/algod_client/src/models/state-proof-message.mjs +1 -2
  440. package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
  441. package/packages/algod_client/src/models/state-proof.d.ts +0 -1
  442. package/packages/algod_client/src/models/state-proof.js +4 -5
  443. package/packages/algod_client/src/models/state-proof.js.map +1 -1
  444. package/packages/algod_client/src/models/state-proof.mjs +1 -2
  445. package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
  446. package/packages/algod_client/src/models/supply-response.js +2 -3
  447. package/packages/algod_client/src/models/supply-response.js.map +1 -1
  448. package/packages/algod_client/src/models/supply-response.mjs +1 -2
  449. package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
  450. package/packages/algod_client/src/models/teal-key-value-store.d.ts +0 -1
  451. package/packages/algod_client/src/models/teal-key-value-store.js +4 -5
  452. package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
  453. package/packages/algod_client/src/models/teal-key-value-store.mjs +1 -2
  454. package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
  455. package/packages/algod_client/src/models/teal-key-value.d.ts +0 -1
  456. package/packages/algod_client/src/models/teal-key-value.js +4 -5
  457. package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
  458. package/packages/algod_client/src/models/teal-key-value.mjs +1 -2
  459. package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
  460. package/packages/algod_client/src/models/teal-value.js +4 -6
  461. package/packages/algod_client/src/models/teal-value.js.map +1 -1
  462. package/packages/algod_client/src/models/teal-value.mjs +1 -2
  463. package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
  464. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +4 -5
  465. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
  466. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +1 -2
  467. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
  468. package/packages/algod_client/src/models/transaction-parameters-response.js +4 -5
  469. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  470. package/packages/algod_client/src/models/transaction-parameters-response.mjs +1 -2
  471. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  472. package/packages/algod_client/src/models/transaction-proof.js +4 -5
  473. package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
  474. package/packages/algod_client/src/models/transaction-proof.mjs +1 -2
  475. package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
  476. package/packages/algod_client/src/models/version.d.ts +0 -1
  477. package/packages/algod_client/src/models/version.js +6 -7
  478. package/packages/algod_client/src/models/version.js.map +1 -1
  479. package/packages/algod_client/src/models/version.mjs +1 -2
  480. package/packages/algod_client/src/models/version.mjs.map +1 -1
  481. package/packages/common/src/address.js +12 -13
  482. package/packages/common/src/address.js.map +1 -1
  483. package/packages/common/src/address.mjs +10 -11
  484. package/packages/common/src/address.mjs.map +1 -1
  485. package/packages/common/src/array.js +1 -2
  486. package/packages/common/src/array.js.map +1 -1
  487. package/packages/common/src/array.mjs +1 -1
  488. package/packages/common/src/codecs/codec.d.ts +0 -1
  489. package/packages/common/src/codecs/codec.js +1 -2
  490. package/packages/common/src/codecs/codec.js.map +1 -1
  491. package/packages/common/src/codecs/codec.mjs +1 -1
  492. package/packages/common/src/codecs/codec.mjs.map +1 -1
  493. package/packages/common/src/codecs/composite/array.js +8 -9
  494. package/packages/common/src/codecs/composite/array.js.map +1 -1
  495. package/packages/common/src/codecs/composite/array.mjs +1 -2
  496. package/packages/common/src/codecs/composite/array.mjs.map +1 -1
  497. package/packages/common/src/codecs/composite/map.d.ts +0 -1
  498. package/packages/common/src/codecs/composite/map.js +2 -3
  499. package/packages/common/src/codecs/composite/map.js.map +1 -1
  500. package/packages/common/src/codecs/composite/map.mjs +1 -2
  501. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  502. package/packages/common/src/codecs/composite/record.d.ts +0 -1
  503. package/packages/common/src/codecs/composite/record.js +3 -4
  504. package/packages/common/src/codecs/composite/record.js.map +1 -1
  505. package/packages/common/src/codecs/composite/record.mjs +1 -2
  506. package/packages/common/src/codecs/composite/record.mjs.map +1 -1
  507. package/packages/common/src/codecs/models/array-model.js +2 -3
  508. package/packages/common/src/codecs/models/array-model.js.map +1 -1
  509. package/packages/common/src/codecs/models/array-model.mjs +1 -2
  510. package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
  511. package/packages/common/src/codecs/models/object-model.js +4 -6
  512. package/packages/common/src/codecs/models/object-model.js.map +1 -1
  513. package/packages/common/src/codecs/models/object-model.mjs +2 -4
  514. package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
  515. package/packages/common/src/codecs/models/primitive-model.js +2 -3
  516. package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
  517. package/packages/common/src/codecs/models/primitive-model.mjs +1 -2
  518. package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
  519. package/packages/common/src/codecs/primitives/address.js +7 -8
  520. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  521. package/packages/common/src/codecs/primitives/address.mjs +4 -5
  522. package/packages/common/src/codecs/primitives/address.mjs.map +1 -1
  523. package/packages/common/src/codecs/primitives/bigint.js +2 -3
  524. package/packages/common/src/codecs/primitives/bigint.js.map +1 -1
  525. package/packages/common/src/codecs/primitives/bigint.mjs +1 -2
  526. package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -1
  527. package/packages/common/src/codecs/primitives/boolean.js +2 -3
  528. package/packages/common/src/codecs/primitives/boolean.js.map +1 -1
  529. package/packages/common/src/codecs/primitives/boolean.mjs +1 -2
  530. package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -1
  531. package/packages/common/src/codecs/primitives/bytes-base64.js +3 -4
  532. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -1
  533. package/packages/common/src/codecs/primitives/bytes-base64.mjs +1 -2
  534. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -1
  535. package/packages/common/src/codecs/primitives/bytes.js +3 -4
  536. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  537. package/packages/common/src/codecs/primitives/bytes.mjs +1 -2
  538. package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -1
  539. package/packages/common/src/codecs/primitives/fixed-bytes.js +3 -4
  540. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  541. package/packages/common/src/codecs/primitives/fixed-bytes.mjs +1 -2
  542. package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
  543. package/packages/common/src/codecs/primitives/number.js +2 -3
  544. package/packages/common/src/codecs/primitives/number.js.map +1 -1
  545. package/packages/common/src/codecs/primitives/number.mjs +1 -2
  546. package/packages/common/src/codecs/primitives/number.mjs.map +1 -1
  547. package/packages/common/src/codecs/primitives/string.js +3 -4
  548. package/packages/common/src/codecs/primitives/string.js.map +1 -1
  549. package/packages/common/src/codecs/primitives/string.mjs +1 -2
  550. package/packages/common/src/codecs/primitives/string.mjs.map +1 -1
  551. package/packages/common/src/codecs/primitives/unknown.d.ts +0 -1
  552. package/packages/common/src/codecs/primitives/unknown.js +10 -11
  553. package/packages/common/src/codecs/primitives/unknown.js.map +1 -1
  554. package/packages/common/src/codecs/primitives/unknown.mjs +3 -4
  555. package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -1
  556. package/packages/common/src/codecs/types.d.ts +0 -1
  557. package/packages/common/src/codecs/wire.js +2 -3
  558. package/packages/common/src/codecs/wire.js.map +1 -1
  559. package/packages/common/src/codecs/wire.mjs +1 -2
  560. package/packages/common/src/codecs/wire.mjs.map +1 -1
  561. package/packages/common/src/constants.js +2 -3
  562. package/packages/common/src/constants.js.map +1 -1
  563. package/packages/common/src/constants.mjs +2 -2
  564. package/packages/common/src/constants.mjs.map +1 -1
  565. package/packages/common/src/encoding.js +2 -3
  566. package/packages/common/src/encoding.js.map +1 -1
  567. package/packages/common/src/encoding.mjs +1 -2
  568. package/packages/common/src/encoding.mjs.map +1 -1
  569. package/packages/common/src/json.js +2 -3
  570. package/packages/common/src/json.js.map +1 -1
  571. package/packages/common/src/json.mjs +1 -2
  572. package/packages/common/src/json.mjs.map +1 -1
  573. package/packages/common/src/msgpack.js +2 -3
  574. package/packages/common/src/msgpack.js.map +1 -1
  575. package/packages/common/src/msgpack.mjs +1 -2
  576. package/packages/common/src/msgpack.mjs.map +1 -1
  577. package/packages/common/src/sourcemap.js +2 -3
  578. package/packages/common/src/sourcemap.js.map +1 -1
  579. package/packages/common/src/sourcemap.mjs +1 -2
  580. package/packages/common/src/sourcemap.mjs.map +1 -1
  581. package/packages/crypto/src/ed25519.js +2 -3
  582. package/packages/crypto/src/ed25519.js.map +1 -1
  583. package/packages/crypto/src/ed25519.mjs +1 -2
  584. package/packages/crypto/src/ed25519.mjs.map +1 -1
  585. package/packages/crypto/src/hash.js +4 -5
  586. package/packages/crypto/src/hash.js.map +1 -1
  587. package/packages/crypto/src/hash.mjs +3 -4
  588. package/packages/crypto/src/hash.mjs.map +1 -1
  589. package/packages/crypto/src/hd.d.ts +3 -7
  590. package/packages/crypto/src/hd.js +2 -3
  591. package/packages/crypto/src/hd.js.map +1 -1
  592. package/packages/crypto/src/hd.mjs +1 -2
  593. package/packages/crypto/src/hd.mjs.map +1 -1
  594. package/packages/crypto/src/index.js +8 -7
  595. package/packages/crypto/src/index.js.map +1 -1
  596. package/packages/crypto/src/index.mjs +7 -6
  597. package/packages/crypto/src/index.mjs.map +1 -1
  598. package/packages/indexer_client/src/apis/api-service.js +19 -20
  599. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  600. package/packages/indexer_client/src/apis/api-service.mjs +1 -2
  601. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  602. package/packages/indexer_client/src/client.js +3 -4
  603. package/packages/indexer_client/src/client.js.map +1 -1
  604. package/packages/indexer_client/src/client.mjs +1 -2
  605. package/packages/indexer_client/src/client.mjs.map +1 -1
  606. package/packages/indexer_client/src/core/api-error.js +1 -2
  607. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  608. package/packages/indexer_client/src/core/api-error.mjs +1 -1
  609. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  610. package/packages/indexer_client/src/core/base-http-request.js +1 -2
  611. package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
  612. package/packages/indexer_client/src/core/base-http-request.mjs +1 -1
  613. package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
  614. package/packages/indexer_client/src/core/fetch-http-request.js +3 -4
  615. package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
  616. package/packages/indexer_client/src/core/fetch-http-request.mjs +1 -2
  617. package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
  618. package/packages/indexer_client/src/core/model-runtime.js +2 -3
  619. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  620. package/packages/indexer_client/src/core/model-runtime.mjs +1 -2
  621. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  622. package/packages/indexer_client/src/core/request.js +5 -6
  623. package/packages/indexer_client/src/core/request.js.map +1 -1
  624. package/packages/indexer_client/src/core/request.mjs +1 -2
  625. package/packages/indexer_client/src/core/request.mjs.map +1 -1
  626. package/packages/indexer_client/src/models/account-participation.js +3 -4
  627. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  628. package/packages/indexer_client/src/models/account-participation.mjs +1 -2
  629. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  630. package/packages/indexer_client/src/models/account-response.js +4 -5
  631. package/packages/indexer_client/src/models/account-response.js.map +1 -1
  632. package/packages/indexer_client/src/models/account-response.mjs +1 -2
  633. package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
  634. package/packages/indexer_client/src/models/account-state-delta.d.ts +0 -1
  635. package/packages/indexer_client/src/models/account-state-delta.js +4 -5
  636. package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
  637. package/packages/indexer_client/src/models/account-state-delta.mjs +1 -2
  638. package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
  639. package/packages/indexer_client/src/models/account.d.ts +0 -1
  640. package/packages/indexer_client/src/models/account.js +14 -15
  641. package/packages/indexer_client/src/models/account.js.map +1 -1
  642. package/packages/indexer_client/src/models/account.mjs +1 -2
  643. package/packages/indexer_client/src/models/account.mjs.map +1 -1
  644. package/packages/indexer_client/src/models/accounts-response.js +6 -7
  645. package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
  646. package/packages/indexer_client/src/models/accounts-response.mjs +1 -2
  647. package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
  648. package/packages/indexer_client/src/models/application-local-state.d.ts +0 -1
  649. package/packages/indexer_client/src/models/application-local-state.js +7 -8
  650. package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
  651. package/packages/indexer_client/src/models/application-local-state.mjs +1 -2
  652. package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
  653. package/packages/indexer_client/src/models/application-local-states-response.js +6 -7
  654. package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
  655. package/packages/indexer_client/src/models/application-local-states-response.mjs +1 -2
  656. package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
  657. package/packages/indexer_client/src/models/application-log-data.js +3 -4
  658. package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
  659. package/packages/indexer_client/src/models/application-log-data.mjs +1 -2
  660. package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
  661. package/packages/indexer_client/src/models/application-logs-response.js +6 -7
  662. package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
  663. package/packages/indexer_client/src/models/application-logs-response.mjs +1 -2
  664. package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
  665. package/packages/indexer_client/src/models/application-params.d.ts +0 -1
  666. package/packages/indexer_client/src/models/application-params.js +8 -9
  667. package/packages/indexer_client/src/models/application-params.js.map +1 -1
  668. package/packages/indexer_client/src/models/application-params.mjs +1 -2
  669. package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
  670. package/packages/indexer_client/src/models/application-response.js +4 -5
  671. package/packages/indexer_client/src/models/application-response.js.map +1 -1
  672. package/packages/indexer_client/src/models/application-response.mjs +1 -2
  673. package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
  674. package/packages/indexer_client/src/models/application-state-schema.js +2 -3
  675. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  676. package/packages/indexer_client/src/models/application-state-schema.mjs +1 -2
  677. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  678. package/packages/indexer_client/src/models/application.d.ts +0 -1
  679. package/packages/indexer_client/src/models/application.js +5 -6
  680. package/packages/indexer_client/src/models/application.js.map +1 -1
  681. package/packages/indexer_client/src/models/application.mjs +1 -2
  682. package/packages/indexer_client/src/models/application.mjs.map +1 -1
  683. package/packages/indexer_client/src/models/applications-response.js +6 -7
  684. package/packages/indexer_client/src/models/applications-response.js.map +1 -1
  685. package/packages/indexer_client/src/models/applications-response.mjs +1 -2
  686. package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
  687. package/packages/indexer_client/src/models/asset-balances-response.js +6 -7
  688. package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
  689. package/packages/indexer_client/src/models/asset-balances-response.mjs +1 -2
  690. package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
  691. package/packages/indexer_client/src/models/asset-holding.js +3 -4
  692. package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
  693. package/packages/indexer_client/src/models/asset-holding.mjs +1 -2
  694. package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
  695. package/packages/indexer_client/src/models/asset-holdings-response.js +6 -7
  696. package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
  697. package/packages/indexer_client/src/models/asset-holdings-response.mjs +1 -2
  698. package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
  699. package/packages/indexer_client/src/models/asset-params.js +7 -8
  700. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  701. package/packages/indexer_client/src/models/asset-params.mjs +1 -2
  702. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  703. package/packages/indexer_client/src/models/asset-response.js +4 -5
  704. package/packages/indexer_client/src/models/asset-response.js.map +1 -1
  705. package/packages/indexer_client/src/models/asset-response.mjs +1 -2
  706. package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
  707. package/packages/indexer_client/src/models/asset.d.ts +0 -1
  708. package/packages/indexer_client/src/models/asset.js +5 -6
  709. package/packages/indexer_client/src/models/asset.js.map +1 -1
  710. package/packages/indexer_client/src/models/asset.mjs +1 -2
  711. package/packages/indexer_client/src/models/asset.mjs.map +1 -1
  712. package/packages/indexer_client/src/models/assets-response.js +6 -7
  713. package/packages/indexer_client/src/models/assets-response.js.map +1 -1
  714. package/packages/indexer_client/src/models/assets-response.mjs +1 -2
  715. package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
  716. package/packages/indexer_client/src/models/block-headers-response.js +6 -7
  717. package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
  718. package/packages/indexer_client/src/models/block-headers-response.mjs +1 -2
  719. package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
  720. package/packages/indexer_client/src/models/block-rewards.js +3 -4
  721. package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
  722. package/packages/indexer_client/src/models/block-rewards.mjs +1 -2
  723. package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
  724. package/packages/indexer_client/src/models/block-upgrade-state.js +4 -5
  725. package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
  726. package/packages/indexer_client/src/models/block-upgrade-state.mjs +1 -2
  727. package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
  728. package/packages/indexer_client/src/models/block-upgrade-vote.js +4 -5
  729. package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
  730. package/packages/indexer_client/src/models/block-upgrade-vote.mjs +1 -2
  731. package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
  732. package/packages/indexer_client/src/models/block.d.ts +0 -1
  733. package/packages/indexer_client/src/models/block.js +14 -15
  734. package/packages/indexer_client/src/models/block.js.map +1 -1
  735. package/packages/indexer_client/src/models/block.mjs +1 -2
  736. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  737. package/packages/indexer_client/src/models/box-descriptor.js +2 -4
  738. package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
  739. package/packages/indexer_client/src/models/box-descriptor.mjs +1 -2
  740. package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
  741. package/packages/indexer_client/src/models/box-reference.js +3 -4
  742. package/packages/indexer_client/src/models/box-reference.js.map +1 -1
  743. package/packages/indexer_client/src/models/box-reference.mjs +1 -2
  744. package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
  745. package/packages/indexer_client/src/models/box.js +3 -4
  746. package/packages/indexer_client/src/models/box.js.map +1 -1
  747. package/packages/indexer_client/src/models/box.mjs +1 -2
  748. package/packages/indexer_client/src/models/box.mjs.map +1 -1
  749. package/packages/indexer_client/src/models/boxes-response.js +6 -7
  750. package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
  751. package/packages/indexer_client/src/models/boxes-response.mjs +1 -2
  752. package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
  753. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +0 -1
  754. package/packages/indexer_client/src/models/eval-delta-key-value.js +4 -5
  755. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  756. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +1 -2
  757. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  758. package/packages/indexer_client/src/models/eval-delta.js +4 -6
  759. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  760. package/packages/indexer_client/src/models/eval-delta.mjs +1 -2
  761. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  762. package/packages/indexer_client/src/models/hash-factory.js +2 -4
  763. package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
  764. package/packages/indexer_client/src/models/hash-factory.mjs +1 -2
  765. package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
  766. package/packages/indexer_client/src/models/hb-proof-fields.js +2 -3
  767. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  768. package/packages/indexer_client/src/models/hb-proof-fields.mjs +1 -2
  769. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  770. package/packages/indexer_client/src/models/health-check.js +7 -8
  771. package/packages/indexer_client/src/models/health-check.js.map +1 -1
  772. package/packages/indexer_client/src/models/health-check.mjs +1 -2
  773. package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
  774. package/packages/indexer_client/src/models/holding-ref.d.ts +0 -1
  775. package/packages/indexer_client/src/models/holding-ref.js +3 -4
  776. package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
  777. package/packages/indexer_client/src/models/holding-ref.mjs +1 -2
  778. package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
  779. package/packages/indexer_client/src/models/indexer-state-proof-message.js +3 -4
  780. package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
  781. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +1 -2
  782. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
  783. package/packages/indexer_client/src/models/locals-ref.d.ts +0 -1
  784. package/packages/indexer_client/src/models/locals-ref.js +3 -4
  785. package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
  786. package/packages/indexer_client/src/models/locals-ref.mjs +1 -2
  787. package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
  788. package/packages/indexer_client/src/models/merkle-array-proof.js +5 -6
  789. package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
  790. package/packages/indexer_client/src/models/merkle-array-proof.mjs +1 -2
  791. package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
  792. package/packages/indexer_client/src/models/mini-asset-holding.js +4 -6
  793. package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
  794. package/packages/indexer_client/src/models/mini-asset-holding.mjs +1 -2
  795. package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
  796. package/packages/indexer_client/src/models/on-completion.js +2 -4
  797. package/packages/indexer_client/src/models/on-completion.js.map +1 -1
  798. package/packages/indexer_client/src/models/on-completion.mjs +1 -2
  799. package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
  800. package/packages/indexer_client/src/models/participation-updates.js +2 -3
  801. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  802. package/packages/indexer_client/src/models/participation-updates.mjs +1 -2
  803. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  804. package/packages/indexer_client/src/models/resource-ref.d.ts +0 -1
  805. package/packages/indexer_client/src/models/resource-ref.js +7 -8
  806. package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
  807. package/packages/indexer_client/src/models/resource-ref.mjs +1 -2
  808. package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
  809. package/packages/indexer_client/src/models/state-delta.d.ts +0 -1
  810. package/packages/indexer_client/src/models/state-delta.js +4 -5
  811. package/packages/indexer_client/src/models/state-delta.js.map +1 -1
  812. package/packages/indexer_client/src/models/state-delta.mjs +1 -2
  813. package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
  814. package/packages/indexer_client/src/models/state-proof-fields.d.ts +0 -1
  815. package/packages/indexer_client/src/models/state-proof-fields.js +8 -9
  816. package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
  817. package/packages/indexer_client/src/models/state-proof-fields.mjs +1 -2
  818. package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
  819. package/packages/indexer_client/src/models/state-proof-participant.js +4 -5
  820. package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
  821. package/packages/indexer_client/src/models/state-proof-participant.mjs +1 -2
  822. package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
  823. package/packages/indexer_client/src/models/state-proof-reveal.js +5 -6
  824. package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
  825. package/packages/indexer_client/src/models/state-proof-reveal.mjs +1 -2
  826. package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
  827. package/packages/indexer_client/src/models/state-proof-sig-slot.js +4 -5
  828. package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
  829. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +1 -2
  830. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
  831. package/packages/indexer_client/src/models/state-proof-signature.js +5 -6
  832. package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
  833. package/packages/indexer_client/src/models/state-proof-signature.mjs +1 -2
  834. package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
  835. package/packages/indexer_client/src/models/state-proof-tracking.js +4 -5
  836. package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
  837. package/packages/indexer_client/src/models/state-proof-tracking.mjs +1 -2
  838. package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
  839. package/packages/indexer_client/src/models/state-proof-verifier.js +3 -5
  840. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  841. package/packages/indexer_client/src/models/state-proof-verifier.mjs +1 -2
  842. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  843. package/packages/indexer_client/src/models/state-schema.js +2 -3
  844. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  845. package/packages/indexer_client/src/models/state-schema.mjs +1 -2
  846. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  847. package/packages/indexer_client/src/models/teal-key-value-store.d.ts +0 -1
  848. package/packages/indexer_client/src/models/teal-key-value-store.js +4 -5
  849. package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
  850. package/packages/indexer_client/src/models/teal-key-value-store.mjs +1 -2
  851. package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
  852. package/packages/indexer_client/src/models/teal-key-value.d.ts +0 -1
  853. package/packages/indexer_client/src/models/teal-key-value.js +4 -5
  854. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  855. package/packages/indexer_client/src/models/teal-key-value.mjs +1 -2
  856. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  857. package/packages/indexer_client/src/models/teal-value.js +4 -6
  858. package/packages/indexer_client/src/models/teal-value.js.map +1 -1
  859. package/packages/indexer_client/src/models/teal-value.mjs +1 -2
  860. package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
  861. package/packages/indexer_client/src/models/transaction-application.d.ts +0 -1
  862. package/packages/indexer_client/src/models/transaction-application.js +11 -12
  863. package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
  864. package/packages/indexer_client/src/models/transaction-application.mjs +1 -2
  865. package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
  866. package/packages/indexer_client/src/models/transaction-asset-config.d.ts +0 -1
  867. package/packages/indexer_client/src/models/transaction-asset-config.js +4 -5
  868. package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
  869. package/packages/indexer_client/src/models/transaction-asset-config.mjs +1 -2
  870. package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
  871. package/packages/indexer_client/src/models/transaction-asset-freeze.js +4 -6
  872. package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
  873. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +1 -2
  874. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
  875. package/packages/indexer_client/src/models/transaction-asset-transfer.js +3 -4
  876. package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
  877. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +1 -2
  878. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
  879. package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +0 -1
  880. package/packages/indexer_client/src/models/transaction-heartbeat.js +7 -8
  881. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  882. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +1 -2
  883. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  884. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -5
  885. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  886. package/packages/indexer_client/src/models/transaction-keyreg.mjs +1 -2
  887. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  888. package/packages/indexer_client/src/models/transaction-payment.js +3 -4
  889. package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
  890. package/packages/indexer_client/src/models/transaction-payment.mjs +1 -2
  891. package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
  892. package/packages/indexer_client/src/models/transaction-response.js +4 -5
  893. package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
  894. package/packages/indexer_client/src/models/transaction-response.mjs +1 -2
  895. package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
  896. package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +0 -1
  897. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +6 -7
  898. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  899. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +1 -2
  900. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  901. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +2 -3
  902. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  903. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +1 -2
  904. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  905. package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +0 -1
  906. package/packages/indexer_client/src/models/transaction-signature-multisig.js +5 -6
  907. package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
  908. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +1 -2
  909. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
  910. package/packages/indexer_client/src/models/transaction-signature.d.ts +0 -1
  911. package/packages/indexer_client/src/models/transaction-signature.js +5 -6
  912. package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
  913. package/packages/indexer_client/src/models/transaction-signature.mjs +1 -2
  914. package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
  915. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +0 -1
  916. package/packages/indexer_client/src/models/transaction-state-proof.js +5 -6
  917. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  918. package/packages/indexer_client/src/models/transaction-state-proof.mjs +1 -2
  919. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  920. package/packages/indexer_client/src/models/transaction.d.ts +0 -1
  921. package/packages/indexer_client/src/models/transaction.js +21 -22
  922. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  923. package/packages/indexer_client/src/models/transaction.mjs +1 -2
  924. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  925. package/packages/indexer_client/src/models/transactions-response.js +6 -7
  926. package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
  927. package/packages/indexer_client/src/models/transactions-response.mjs +1 -2
  928. package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
  929. package/packages/kmd_client/src/apis/api-service.js +44 -46
  930. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  931. package/packages/kmd_client/src/apis/api-service.mjs +3 -5
  932. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  933. package/packages/kmd_client/src/client.js +3 -4
  934. package/packages/kmd_client/src/client.js.map +1 -1
  935. package/packages/kmd_client/src/client.mjs +1 -2
  936. package/packages/kmd_client/src/client.mjs.map +1 -1
  937. package/packages/kmd_client/src/core/api-error.js +1 -2
  938. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  939. package/packages/kmd_client/src/core/api-error.mjs +1 -1
  940. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  941. package/packages/kmd_client/src/core/base-http-request.js +1 -2
  942. package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
  943. package/packages/kmd_client/src/core/base-http-request.mjs +1 -1
  944. package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
  945. package/packages/kmd_client/src/core/fetch-http-request.js +3 -4
  946. package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
  947. package/packages/kmd_client/src/core/fetch-http-request.mjs +1 -2
  948. package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
  949. package/packages/kmd_client/src/core/model-runtime.js +3 -4
  950. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  951. package/packages/kmd_client/src/core/model-runtime.mjs +1 -2
  952. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  953. package/packages/kmd_client/src/core/request.js +5 -6
  954. package/packages/kmd_client/src/core/request.js.map +1 -1
  955. package/packages/kmd_client/src/core/request.mjs +1 -2
  956. package/packages/kmd_client/src/core/request.mjs.map +1 -1
  957. package/packages/kmd_client/src/models/create-wallet-request.js +3 -4
  958. package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
  959. package/packages/kmd_client/src/models/create-wallet-request.mjs +1 -2
  960. package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
  961. package/packages/kmd_client/src/models/create-wallet-response.d.ts +0 -1
  962. package/packages/kmd_client/src/models/create-wallet-response.js +3 -4
  963. package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
  964. package/packages/kmd_client/src/models/create-wallet-response.mjs +1 -2
  965. package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
  966. package/packages/kmd_client/src/models/delete-key-request.d.ts +0 -1
  967. package/packages/kmd_client/src/models/delete-key-request.js +3 -4
  968. package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
  969. package/packages/kmd_client/src/models/delete-key-request.mjs +1 -2
  970. package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
  971. package/packages/kmd_client/src/models/delete-multisig-request.d.ts +0 -1
  972. package/packages/kmd_client/src/models/delete-multisig-request.js +3 -4
  973. package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
  974. package/packages/kmd_client/src/models/delete-multisig-request.mjs +1 -2
  975. package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
  976. package/packages/kmd_client/src/models/export-key-request.d.ts +0 -1
  977. package/packages/kmd_client/src/models/export-key-request.js +3 -4
  978. package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
  979. package/packages/kmd_client/src/models/export-key-request.mjs +1 -2
  980. package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
  981. package/packages/kmd_client/src/models/export-key-response.js +2 -4
  982. package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
  983. package/packages/kmd_client/src/models/export-key-response.mjs +1 -2
  984. package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
  985. package/packages/kmd_client/src/models/export-master-key-request.js +2 -3
  986. package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
  987. package/packages/kmd_client/src/models/export-master-key-request.mjs +1 -2
  988. package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
  989. package/packages/kmd_client/src/models/export-master-key-response.js +2 -4
  990. package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
  991. package/packages/kmd_client/src/models/export-master-key-response.mjs +1 -2
  992. package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
  993. package/packages/kmd_client/src/models/export-multisig-request.d.ts +0 -1
  994. package/packages/kmd_client/src/models/export-multisig-request.js +3 -4
  995. package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
  996. package/packages/kmd_client/src/models/export-multisig-request.mjs +1 -2
  997. package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
  998. package/packages/kmd_client/src/models/export-multisig-response.js +3 -4
  999. package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
  1000. package/packages/kmd_client/src/models/export-multisig-response.mjs +1 -2
  1001. package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
  1002. package/packages/kmd_client/src/models/generate-key-request.js +2 -4
  1003. package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
  1004. package/packages/kmd_client/src/models/generate-key-request.mjs +1 -2
  1005. package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
  1006. package/packages/kmd_client/src/models/generate-key-response.d.ts +0 -1
  1007. package/packages/kmd_client/src/models/generate-key-response.js +2 -4
  1008. package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
  1009. package/packages/kmd_client/src/models/generate-key-response.mjs +1 -2
  1010. package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
  1011. package/packages/kmd_client/src/models/import-key-request.js +3 -4
  1012. package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
  1013. package/packages/kmd_client/src/models/import-key-request.mjs +1 -2
  1014. package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
  1015. package/packages/kmd_client/src/models/import-key-response.d.ts +0 -1
  1016. package/packages/kmd_client/src/models/import-key-response.js +2 -4
  1017. package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
  1018. package/packages/kmd_client/src/models/import-key-response.mjs +1 -2
  1019. package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
  1020. package/packages/kmd_client/src/models/import-multisig-request.js +4 -5
  1021. package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
  1022. package/packages/kmd_client/src/models/import-multisig-request.mjs +1 -2
  1023. package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
  1024. package/packages/kmd_client/src/models/import-multisig-response.d.ts +0 -1
  1025. package/packages/kmd_client/src/models/import-multisig-response.js +2 -4
  1026. package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
  1027. package/packages/kmd_client/src/models/import-multisig-response.mjs +1 -2
  1028. package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
  1029. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +2 -3
  1030. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
  1031. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +1 -2
  1032. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
  1033. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +2 -4
  1034. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
  1035. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +1 -2
  1036. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
  1037. package/packages/kmd_client/src/models/list-keys-request.js +2 -4
  1038. package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
  1039. package/packages/kmd_client/src/models/list-keys-request.mjs +1 -2
  1040. package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
  1041. package/packages/kmd_client/src/models/list-keys-response.d.ts +0 -1
  1042. package/packages/kmd_client/src/models/list-keys-response.js +2 -4
  1043. package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
  1044. package/packages/kmd_client/src/models/list-keys-response.mjs +1 -2
  1045. package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
  1046. package/packages/kmd_client/src/models/list-multisig-request.js +2 -4
  1047. package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
  1048. package/packages/kmd_client/src/models/list-multisig-request.mjs +1 -2
  1049. package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
  1050. package/packages/kmd_client/src/models/list-multisig-response.d.ts +0 -1
  1051. package/packages/kmd_client/src/models/list-multisig-response.js +2 -4
  1052. package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
  1053. package/packages/kmd_client/src/models/list-multisig-response.mjs +1 -2
  1054. package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
  1055. package/packages/kmd_client/src/models/list-wallets-response.d.ts +0 -1
  1056. package/packages/kmd_client/src/models/list-wallets-response.js +4 -5
  1057. package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
  1058. package/packages/kmd_client/src/models/list-wallets-response.mjs +1 -2
  1059. package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
  1060. package/packages/kmd_client/src/models/multisig-sig.d.ts +0 -1
  1061. package/packages/kmd_client/src/models/multisig-sig.js +5 -6
  1062. package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
  1063. package/packages/kmd_client/src/models/multisig-sig.mjs +1 -2
  1064. package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
  1065. package/packages/kmd_client/src/models/multisig-subsig.js +2 -3
  1066. package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
  1067. package/packages/kmd_client/src/models/multisig-subsig.mjs +1 -2
  1068. package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
  1069. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +2 -4
  1070. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
  1071. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +1 -2
  1072. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
  1073. package/packages/kmd_client/src/models/rename-wallet-request.js +2 -3
  1074. package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
  1075. package/packages/kmd_client/src/models/rename-wallet-request.mjs +1 -2
  1076. package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
  1077. package/packages/kmd_client/src/models/rename-wallet-response.d.ts +0 -1
  1078. package/packages/kmd_client/src/models/rename-wallet-response.js +3 -4
  1079. package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
  1080. package/packages/kmd_client/src/models/rename-wallet-response.mjs +1 -2
  1081. package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
  1082. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +2 -4
  1083. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
  1084. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +1 -2
  1085. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
  1086. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +0 -1
  1087. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +3 -4
  1088. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
  1089. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +1 -2
  1090. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
  1091. package/packages/kmd_client/src/models/sign-multisig-response.js +2 -4
  1092. package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
  1093. package/packages/kmd_client/src/models/sign-multisig-response.mjs +1 -2
  1094. package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
  1095. package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +0 -1
  1096. package/packages/kmd_client/src/models/sign-multisig-txn-request.js +5 -6
  1097. package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
  1098. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +1 -2
  1099. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
  1100. package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +0 -1
  1101. package/packages/kmd_client/src/models/sign-program-multisig-request.js +7 -8
  1102. package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
  1103. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +1 -2
  1104. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
  1105. package/packages/kmd_client/src/models/sign-program-multisig-response.js +2 -4
  1106. package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
  1107. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +1 -2
  1108. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
  1109. package/packages/kmd_client/src/models/sign-program-request.d.ts +0 -1
  1110. package/packages/kmd_client/src/models/sign-program-request.js +4 -5
  1111. package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
  1112. package/packages/kmd_client/src/models/sign-program-request.mjs +1 -2
  1113. package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
  1114. package/packages/kmd_client/src/models/sign-program-response.js +2 -4
  1115. package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
  1116. package/packages/kmd_client/src/models/sign-program-response.mjs +1 -2
  1117. package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
  1118. package/packages/kmd_client/src/models/sign-transaction-response.js +2 -4
  1119. package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
  1120. package/packages/kmd_client/src/models/sign-transaction-response.mjs +1 -2
  1121. package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
  1122. package/packages/kmd_client/src/models/sign-txn-request.js +3 -4
  1123. package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
  1124. package/packages/kmd_client/src/models/sign-txn-request.mjs +1 -2
  1125. package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
  1126. package/packages/kmd_client/src/models/tx-type.js +2 -4
  1127. package/packages/kmd_client/src/models/tx-type.js.map +1 -1
  1128. package/packages/kmd_client/src/models/tx-type.mjs +1 -2
  1129. package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
  1130. package/packages/kmd_client/src/models/versions-response.js +2 -4
  1131. package/packages/kmd_client/src/models/versions-response.js.map +1 -1
  1132. package/packages/kmd_client/src/models/versions-response.mjs +1 -2
  1133. package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
  1134. package/packages/kmd_client/src/models/wallet-handle.d.ts +0 -1
  1135. package/packages/kmd_client/src/models/wallet-handle.js +4 -5
  1136. package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
  1137. package/packages/kmd_client/src/models/wallet-handle.mjs +1 -2
  1138. package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
  1139. package/packages/kmd_client/src/models/wallet-info-request.js +2 -4
  1140. package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
  1141. package/packages/kmd_client/src/models/wallet-info-request.mjs +1 -2
  1142. package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
  1143. package/packages/kmd_client/src/models/wallet-info-response.d.ts +0 -1
  1144. package/packages/kmd_client/src/models/wallet-info-response.js +3 -4
  1145. package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
  1146. package/packages/kmd_client/src/models/wallet-info-response.mjs +1 -2
  1147. package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
  1148. package/packages/kmd_client/src/models/wallet.d.ts +0 -1
  1149. package/packages/kmd_client/src/models/wallet.js +7 -8
  1150. package/packages/kmd_client/src/models/wallet.js.map +1 -1
  1151. package/packages/kmd_client/src/models/wallet.mjs +1 -2
  1152. package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
  1153. package/packages/testing/src/globalSetup.js +3 -4
  1154. package/packages/testing/src/globalSetup.js.map +1 -1
  1155. package/packages/testing/src/globalSetup.mjs +1 -2
  1156. package/packages/testing/src/globalSetup.mjs.map +1 -1
  1157. package/packages/testing/src/mockServer.js +1 -2
  1158. package/packages/testing/src/mockServer.js.map +1 -1
  1159. package/packages/testing/src/mockServer.mjs +1 -1
  1160. package/packages/transact/src/logicsig.d.ts +0 -1
  1161. package/packages/transact/src/logicsig.js +8 -9
  1162. package/packages/transact/src/logicsig.js.map +1 -1
  1163. package/packages/transact/src/logicsig.mjs +1 -2
  1164. package/packages/transact/src/logicsig.mjs.map +1 -1
  1165. package/packages/transact/src/multisig.js +9 -10
  1166. package/packages/transact/src/multisig.js.map +1 -1
  1167. package/packages/transact/src/multisig.mjs +6 -7
  1168. package/packages/transact/src/multisig.mjs.map +1 -1
  1169. package/packages/transact/src/signer.js +5 -6
  1170. package/packages/transact/src/signer.js.map +1 -1
  1171. package/packages/transact/src/signer.mjs +1 -2
  1172. package/packages/transact/src/signer.mjs.map +1 -1
  1173. package/packages/transact/src/transactions/app-call.d.ts +8 -19
  1174. package/packages/transact/src/transactions/app-call.js +22 -23
  1175. package/packages/transact/src/transactions/app-call.js.map +1 -1
  1176. package/packages/transact/src/transactions/app-call.mjs +21 -22
  1177. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  1178. package/packages/transact/src/transactions/asset-config.d.ts +0 -1
  1179. package/packages/transact/src/transactions/asset-config.js +11 -12
  1180. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  1181. package/packages/transact/src/transactions/asset-config.mjs +10 -11
  1182. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  1183. package/packages/transact/src/transactions/asset-freeze.d.ts +0 -1
  1184. package/packages/transact/src/transactions/asset-freeze.js +2 -3
  1185. package/packages/transact/src/transactions/asset-freeze.js.map +1 -1
  1186. package/packages/transact/src/transactions/asset-freeze.mjs +1 -2
  1187. package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -1
  1188. package/packages/transact/src/transactions/asset-transfer.d.ts +0 -1
  1189. package/packages/transact/src/transactions/asset-transfer.js +2 -3
  1190. package/packages/transact/src/transactions/asset-transfer.js.map +1 -1
  1191. package/packages/transact/src/transactions/asset-transfer.mjs +1 -2
  1192. package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -1
  1193. package/packages/transact/src/transactions/common.js +1 -2
  1194. package/packages/transact/src/transactions/common.js.map +1 -1
  1195. package/packages/transact/src/transactions/common.mjs +1 -1
  1196. package/packages/transact/src/transactions/common.mjs.map +1 -1
  1197. package/packages/transact/src/transactions/heartbeat.d.ts +8 -19
  1198. package/packages/transact/src/transactions/key-registration.js +2 -3
  1199. package/packages/transact/src/transactions/key-registration.js.map +1 -1
  1200. package/packages/transact/src/transactions/key-registration.mjs +1 -2
  1201. package/packages/transact/src/transactions/key-registration.mjs.map +1 -1
  1202. package/packages/transact/src/transactions/payment.d.ts +0 -1
  1203. package/packages/transact/src/transactions/reference-types-meta.d.ts +0 -1
  1204. package/packages/transact/src/transactions/reference-types-meta.js +4 -5
  1205. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -1
  1206. package/packages/transact/src/transactions/reference-types-meta.mjs +1 -2
  1207. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -1
  1208. package/packages/transact/src/transactions/signed-transaction-meta.d.ts +0 -1
  1209. package/packages/transact/src/transactions/signed-transaction-meta.js +8 -9
  1210. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  1211. package/packages/transact/src/transactions/signed-transaction-meta.mjs +1 -2
  1212. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  1213. package/packages/transact/src/transactions/signed-transaction.d.ts +0 -1
  1214. package/packages/transact/src/transactions/signed-transaction.js +5 -6
  1215. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  1216. package/packages/transact/src/transactions/signed-transaction.mjs +1 -2
  1217. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  1218. package/packages/transact/src/transactions/state-proof.d.ts +2 -5
  1219. package/packages/transact/src/transactions/transaction-meta.d.ts +0 -1
  1220. package/packages/transact/src/transactions/transaction-meta.js +15 -16
  1221. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  1222. package/packages/transact/src/transactions/transaction-meta.mjs +1 -2
  1223. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  1224. package/packages/transact/src/transactions/transaction-type.d.ts +1 -1
  1225. package/packages/transact/src/transactions/transaction-type.js +1 -2
  1226. package/packages/transact/src/transactions/transaction-type.js.map +1 -1
  1227. package/packages/transact/src/transactions/transaction-type.mjs +1 -1
  1228. package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
  1229. package/packages/transact/src/transactions/transaction.js +22 -23
  1230. package/packages/transact/src/transactions/transaction.js.map +1 -1
  1231. package/packages/transact/src/transactions/transaction.mjs +8 -9
  1232. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  1233. package/testing/account.d.ts +0 -1
  1234. package/testing/account.js +4 -5
  1235. package/testing/account.js.map +1 -1
  1236. package/testing/account.mjs +1 -2
  1237. package/testing/account.mjs.map +1 -1
  1238. package/testing/fixtures/algokit-log-capture-fixture.d.ts +0 -1
  1239. package/testing/fixtures/algokit-log-capture-fixture.js +3 -4
  1240. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  1241. package/testing/fixtures/algokit-log-capture-fixture.mjs +1 -2
  1242. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  1243. package/testing/fixtures/algorand-fixture.d.ts +0 -1
  1244. package/testing/fixtures/algorand-fixture.js +8 -9
  1245. package/testing/fixtures/algorand-fixture.js.map +1 -1
  1246. package/testing/fixtures/algorand-fixture.mjs +1 -2
  1247. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  1248. package/testing/index.js +10 -11
  1249. package/testing/index.mjs +1 -2
  1250. package/testing/indexer.js +1 -2
  1251. package/testing/indexer.js.map +1 -1
  1252. package/testing/indexer.mjs +1 -1
  1253. package/testing/test-logger.d.ts +0 -1
  1254. package/testing/test-logger.js +2 -3
  1255. package/testing/test-logger.js.map +1 -1
  1256. package/testing/test-logger.mjs +1 -2
  1257. package/testing/test-logger.mjs.map +1 -1
  1258. package/testing/transaction-logger.d.ts +0 -1
  1259. package/testing/transaction-logger.js +4 -5
  1260. package/testing/transaction-logger.js.map +1 -1
  1261. package/testing/transaction-logger.mjs +1 -2
  1262. package/testing/transaction-logger.mjs.map +1 -1
  1263. package/transact/index.js +12 -13
  1264. package/transact/index.mjs +1 -2
  1265. package/transaction/index.js +4 -5
  1266. package/transaction/index.mjs +1 -2
  1267. package/transaction/perform-transaction-composer-simulate.d.ts +0 -1
  1268. package/transaction/perform-transaction-composer-simulate.js +3 -5
  1269. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  1270. package/transaction/perform-transaction-composer-simulate.mjs +3 -4
  1271. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  1272. package/transaction/transaction.js +2 -3
  1273. package/transaction/transaction.js.map +1 -1
  1274. package/transaction/transaction.mjs +1 -2
  1275. package/transaction/transaction.mjs.map +1 -1
  1276. package/transactions/app-call.d.ts +15 -32
  1277. package/transactions/app-call.js +17 -18
  1278. package/transactions/app-call.js.map +1 -1
  1279. package/transactions/app-call.mjs +10 -11
  1280. package/transactions/app-call.mjs.map +1 -1
  1281. package/transactions/asset-config.d.ts +4 -10
  1282. package/transactions/asset-config.js +5 -6
  1283. package/transactions/asset-config.js.map +1 -1
  1284. package/transactions/asset-config.mjs +1 -2
  1285. package/transactions/asset-config.mjs.map +1 -1
  1286. package/transactions/asset-transfer.d.ts +4 -10
  1287. package/transactions/asset-transfer.js +5 -6
  1288. package/transactions/asset-transfer.js.map +1 -1
  1289. package/transactions/asset-transfer.mjs +1 -2
  1290. package/transactions/asset-transfer.mjs.map +1 -1
  1291. package/transactions/common.d.ts +7 -14
  1292. package/transactions/common.js +3 -4
  1293. package/transactions/common.js.map +1 -1
  1294. package/transactions/common.mjs +1 -2
  1295. package/transactions/common.mjs.map +1 -1
  1296. package/transactions/fee-coverage.js +1 -2
  1297. package/transactions/fee-coverage.js.map +1 -1
  1298. package/transactions/fee-coverage.mjs +1 -1
  1299. package/transactions/fee-coverage.mjs.map +1 -1
  1300. package/transactions/key-registration.d.ts +6 -14
  1301. package/transactions/key-registration.js +4 -5
  1302. package/transactions/key-registration.js.map +1 -1
  1303. package/transactions/key-registration.mjs +1 -2
  1304. package/transactions/key-registration.mjs.map +1 -1
  1305. package/transactions/method-call.d.ts +1 -3
  1306. package/transactions/method-call.js +11 -14
  1307. package/transactions/method-call.js.map +1 -1
  1308. package/transactions/method-call.mjs +2 -5
  1309. package/transactions/method-call.mjs.map +1 -1
  1310. package/transactions/payment.d.ts +1 -4
  1311. package/transactions/payment.js +5 -6
  1312. package/transactions/payment.js.map +1 -1
  1313. package/transactions/payment.mjs +1 -2
  1314. package/transactions/payment.mjs.map +1 -1
  1315. package/types/account-manager.js +3 -4
  1316. package/types/account-manager.js.map +1 -1
  1317. package/types/account-manager.mjs +1 -2
  1318. package/types/account-manager.mjs.map +1 -1
  1319. package/types/account.js +3 -5
  1320. package/types/account.js.map +1 -1
  1321. package/types/account.mjs +1 -2
  1322. package/types/account.mjs.map +1 -1
  1323. package/types/algorand-client-transaction-creator.js +3 -5
  1324. package/types/algorand-client-transaction-creator.js.map +1 -1
  1325. package/types/algorand-client-transaction-creator.mjs +1 -2
  1326. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  1327. package/types/algorand-client-transaction-sender.js +3 -5
  1328. package/types/algorand-client-transaction-sender.js.map +1 -1
  1329. package/types/algorand-client-transaction-sender.mjs +1 -2
  1330. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  1331. package/types/algorand-client.js +3 -5
  1332. package/types/algorand-client.js.map +1 -1
  1333. package/types/algorand-client.mjs +1 -2
  1334. package/types/algorand-client.mjs.map +1 -1
  1335. package/types/amount.js +3 -5
  1336. package/types/amount.js.map +1 -1
  1337. package/types/amount.mjs +1 -2
  1338. package/types/amount.mjs.map +1 -1
  1339. package/types/app-client.js +3 -5
  1340. package/types/app-client.js.map +1 -1
  1341. package/types/app-client.mjs +1 -2
  1342. package/types/app-client.mjs.map +1 -1
  1343. package/types/app-deployer.js +3 -5
  1344. package/types/app-deployer.js.map +1 -1
  1345. package/types/app-deployer.mjs +1 -2
  1346. package/types/app-deployer.mjs.map +1 -1
  1347. package/types/app-factory.js +3 -5
  1348. package/types/app-factory.js.map +1 -1
  1349. package/types/app-factory.mjs +1 -2
  1350. package/types/app-factory.mjs.map +1 -1
  1351. package/types/app-manager.js +3 -5
  1352. package/types/app-manager.js.map +1 -1
  1353. package/types/app-manager.mjs +1 -2
  1354. package/types/app-manager.mjs.map +1 -1
  1355. package/types/app-spec.js +3 -5
  1356. package/types/app-spec.js.map +1 -1
  1357. package/types/app-spec.mjs +1 -2
  1358. package/types/app-spec.mjs.map +1 -1
  1359. package/types/app.js +3 -4
  1360. package/types/app.js.map +1 -1
  1361. package/types/app.mjs +1 -2
  1362. package/types/app.mjs.map +1 -1
  1363. package/types/asset-manager.js +3 -5
  1364. package/types/asset-manager.js.map +1 -1
  1365. package/types/asset-manager.mjs +1 -2
  1366. package/types/asset-manager.mjs.map +1 -1
  1367. package/types/async-event-emitter.js +3 -5
  1368. package/types/async-event-emitter.js.map +1 -1
  1369. package/types/async-event-emitter.mjs +1 -2
  1370. package/types/async-event-emitter.mjs.map +1 -1
  1371. package/types/client-manager.js +3 -5
  1372. package/types/client-manager.js.map +1 -1
  1373. package/types/client-manager.mjs +1 -2
  1374. package/types/client-manager.mjs.map +1 -1
  1375. package/types/composer.js +3 -5
  1376. package/types/composer.js.map +1 -1
  1377. package/types/composer.mjs +1 -2
  1378. package/types/composer.mjs.map +1 -1
  1379. package/types/config.js +3 -5
  1380. package/types/config.js.map +1 -1
  1381. package/types/config.mjs +1 -2
  1382. package/types/config.mjs.map +1 -1
  1383. package/types/debugging.js +4 -5
  1384. package/types/debugging.js.map +1 -1
  1385. package/types/debugging.mjs +3 -4
  1386. package/types/debugging.mjs.map +1 -1
  1387. package/types/dispenser-client.js +3 -5
  1388. package/types/dispenser-client.js.map +1 -1
  1389. package/types/dispenser-client.mjs +1 -2
  1390. package/types/dispenser-client.mjs.map +1 -1
  1391. package/types/indexer.js +3 -4
  1392. package/types/indexer.js.map +1 -1
  1393. package/types/indexer.mjs +1 -2
  1394. package/types/indexer.mjs.map +1 -1
  1395. package/types/kmd-account-manager.js +3 -5
  1396. package/types/kmd-account-manager.js.map +1 -1
  1397. package/types/kmd-account-manager.mjs +1 -2
  1398. package/types/kmd-account-manager.mjs.map +1 -1
  1399. package/types/lifecycle-events.js +3 -5
  1400. package/types/lifecycle-events.js.map +1 -1
  1401. package/types/lifecycle-events.mjs +1 -2
  1402. package/types/lifecycle-events.mjs.map +1 -1
  1403. package/types/logging.js +3 -4
  1404. package/types/logging.js.map +1 -1
  1405. package/types/logging.mjs +1 -2
  1406. package/types/logging.mjs.map +1 -1
  1407. package/types/logic-error.js +3 -5
  1408. package/types/logic-error.js.map +1 -1
  1409. package/types/logic-error.mjs +1 -2
  1410. package/types/logic-error.mjs.map +1 -1
  1411. package/types/network-client.js +3 -5
  1412. package/types/network-client.js.map +1 -1
  1413. package/types/network-client.mjs +1 -2
  1414. package/types/network-client.mjs.map +1 -1
  1415. package/updatable-config.js +3 -4
  1416. package/updatable-config.js.map +1 -1
  1417. package/updatable-config.mjs +1 -2
  1418. package/updatable-config.mjs.map +1 -1
  1419. package/util.js +2 -3
  1420. package/util.js.map +1 -1
  1421. package/util.mjs +1 -2
  1422. package/util.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"client-manager.js","names":["genesisIdIsLocalNet","TestNetDispenserApiClient","AppFactory","AppClient","AlgodClient","Config","IndexerClient","KmdClient"],"sources":["../src/client-manager.ts"],"sourcesContent":["import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport { Expand } from '@algorandfoundation/algokit-common'\nimport { IndexerClient } from '@algorandfoundation/algokit-indexer-client'\nimport { KmdClient } from '@algorandfoundation/algokit-kmd-client'\nimport { Config } from './config'\nimport { type AlgorandClient } from './algorand-client'\nimport { AppClient, AppClientParams, ResolveAppClientByCreatorAndName } from './app-client'\nimport { AppFactory, AppFactoryParams } from './app-factory'\nimport { TestNetDispenserApiClient, TestNetDispenserApiClientParams } from './dispenser-client'\nimport { AlgoClientConfig, AlgoConfig, NetworkDetails, genesisIdIsLocalNet } from './network-client'\n\n/** Clients from algosdk that interact with the official Algorand APIs */\nexport interface AlgoSdkClients {\n /** Algod client, see https://dev.algorand.co/reference/rest-apis/algod/ */\n algod: AlgodClient\n /** Optional indexer client, see https://dev.algorand.co/reference/rest-apis/indexer */\n indexer?: IndexerClient\n /** Optional KMD client, see https://dev.algorand.co/reference/rest-apis/kmd/ */\n kmd?: KmdClient\n}\n\n/** Params to get an app factory from `ClientManager`. */\nexport type ClientAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand'>>\n\n/** Params to get an app client by creator address and name from `ClientManager`. */\nexport type ClientResolveAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand'>>\n\n/** Params to get an app client by ID from `ClientManager`. */\nexport type ClientAppClientParams = Expand<Omit<AppClientParams, 'algorand'>>\n\n/** Params to get an app client by network from `ClientManager`. */\nexport type ClientAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appId'>>\n\n/** Params to get a typed app client by creator address and name from `ClientManager`. */\nexport type ClientTypedAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by ID from `ClientManager`. */\nexport type ClientTypedAppClientParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by network from `ClientManager`. */\nexport type ClientTypedAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec' | 'appId'>>\n\n/** Params to get a typed app factory from `ClientManager`. */\nexport type ClientTypedAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand' | 'appSpec'>>\n\n/** Exposes access to various API clients. */\nexport class ClientManager {\n private _algod: AlgodClient\n private _indexer?: IndexerClient\n private _kmd?: KmdClient\n private _algorand?: AlgorandClient\n\n /**\n * algosdk clients or config for interacting with the official Algorand APIs.\n * @param clientsOrConfig The clients or config to use\n * @example Algod client only\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient })\n * ```\n * @example All clients\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient, indexer: indexerClient, kmd: kmdClient })\n * ```\n * @example Algod config only\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig })\n * ```\n * @example All client configs\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig, indexerConfig, kmdConfig })\n * ```\n */\n constructor(clientsOrConfig: AlgoConfig | AlgoSdkClients, algorandClient?: AlgorandClient) {\n const _clients =\n 'algod' in clientsOrConfig\n ? clientsOrConfig\n : {\n algod: ClientManager.getAlgodClient(clientsOrConfig.algodConfig),\n indexer: clientsOrConfig.indexerConfig ? ClientManager.getIndexerClient(clientsOrConfig.indexerConfig) : undefined,\n kmd: clientsOrConfig.kmdConfig ? ClientManager.getKmdClient(clientsOrConfig.kmdConfig) : undefined,\n }\n this._algod = _clients.algod\n this._indexer = _clients.indexer\n this._kmd = _clients.kmd\n this._algorand = algorandClient\n }\n\n /**\n * Returns an Algod API client.\n * @returns The Algod client\n */\n public get algod(): AlgodClient {\n return this._algod\n }\n\n /**\n * Returns an Indexer API client or throws an error if it's not been provided.\n * @returns The Indexer client\n * @throws Error if no Indexer client is configured\n */\n public get indexer(): IndexerClient {\n if (!this._indexer) throw new Error('Attempt to use Indexer client in AlgoKit instance with no Indexer configured')\n return this._indexer\n }\n\n /**\n * Returns an Indexer API client or `undefined` if it's not been provided.\n * @returns The Indexer client or `undefined`\n */\n public get indexerIfPresent(): IndexerClient | undefined {\n return this._indexer\n }\n\n /**\n * Returns a KMD API client or throws an error if it's not been provided.\n * @returns The KMD client\n * @throws Error if no KMD client is configured\n */\n public get kmd(): KmdClient {\n if (!this._kmd) throw new Error('Attempt to use Kmd client in AlgoKit instance with no Kmd configured')\n return this._kmd\n }\n\n private _getNetworkPromise: Promise<SuggestedParams> | undefined\n /**\n * Get details about the current network.\n * @example Getting genesis ID\n * ```typescript\n * const network = await networkClient.network()\n * const genesisId = network.genesisId\n * ```\n * @returns The current network details\n */\n public async network(): Promise<NetworkDetails> {\n if (!this._getNetworkPromise) {\n this._getNetworkPromise = this._algod.suggestedParams()\n }\n\n const params = await this._getNetworkPromise\n return {\n isTestNet: ['testnet-v1.0', 'testnet-v1', 'testnet'].includes(params.genesisId ?? 'unknown'),\n isMainNet: ['mainnet-v1.0', 'mainnet-v1', 'mainnet'].includes(params.genesisId ?? 'unknown'),\n isLocalNet: ClientManager.genesisIdIsLocalNet(params.genesisId ?? 'unknown'),\n genesisId: params.genesisId ?? 'unknown',\n genesisHash: params.genesisHash ? Buffer.from(params.genesisHash).toString('base64') : 'unknown',\n }\n }\n\n /**\n * Returns true if the given network genesisId is associated with a LocalNet network.\n * @param genesisId The network genesis ID\n * @returns Whether the given genesis ID is associated with a LocalNet network\n * @example\n * ```typescript\n * const isLocalNet = ClientManager.genesisIdIsLocalNet('testnet-v1.0')\n * ```\n */\n public static genesisIdIsLocalNet(genesisId: string) {\n return genesisIdIsLocalNet(genesisId)\n }\n\n /**\n * Returns true if the current network is LocalNet.\n * @returns True if the current network is LocalNet.\n * @example\n * ```typescript\n * const isLocalNet = await clientManager.isLocalNet()\n * ```\n */\n public async isLocalNet() {\n return (await this.network()).isLocalNet\n }\n\n /**\n * Returns true if the current network is TestNet.\n * @returns True if the current network is TestNet.\n * @example\n * ```typescript\n * const isTestNet = await clientManager.isTestNet()\n * ```\n */\n public async isTestNet() {\n return (await this.network()).isTestNet\n }\n\n /**\n * Returns true if the current network is MainNet.\n * @returns True if the current network is MainNet.\n * @example\n * ```typescript\n * const isMainNet = await clientManager.isMainNet()\n * ```\n */\n public async isMainNet() {\n return (await this.network()).isMainNet\n }\n\n /**\n * Returns a TestNet Dispenser API client.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenser(\n * {\n * authToken: 'your_auth_token',\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenser(params: TestNetDispenserApiClientParams) {\n return new TestNetDispenserApiClient(params)\n }\n\n /**\n * Returns a TestNet Dispenser API client, loading the auth token from `process.env.ALGOKIT_DISPENSER_ACCESS_TOKEN`.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenserFromEnvironment(\n * {\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenserFromEnvironment(params?: Omit<TestNetDispenserApiClientParams, 'authToken'>) {\n return new TestNetDispenserApiClient(params ? { ...params, authToken: '' } : undefined)\n }\n\n /**\n * Returns a new `AppFactory` client\n * @param params The parameters to create the app factory\n * @example Basic example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\/}',\n * })\n * ```\n * @example Advanced example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: parsedAppSpec_AppSpec_or_Arc56Contract,\n * defaultSender: \"SENDERADDRESS\",\n * appName: \"OverriddenAppName\",\n * version: \"2.0.0\",\n * updatable: true,\n * deletable: false,\n * deployTimeParams: { ONE: 1, TWO: 'value' }\n * })\n * ```\n * @returns The `AppFactory` instance\n */\n public getAppFactory(params: ClientAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new AppFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * This method resolves the app ID by looking up the creator address and name\n * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByCreatorAndName({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by looking for app ID of named app by this creator\n * creatorAddress: 'CREATORADDRESS',\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientByCreatorAndName(params: ClientResolveAppClientByCreatorAndNameParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return AppClient.fromCreatorAndName({\n ...params,\n algorand: this._algorand,\n })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientById({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * appId: 12345n,\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientById(params: ClientAppClientParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return new AppClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-56 app.\n * This method resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByNetwork({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by using ARC-56 spec to find app ID for current network\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public async getAppClientByNetwork(params: ClientAppClientByNetworkParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return AppClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by creator address and name.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by creator address and name\n * @example Use name in ARC-32 / ARC-56 app spec\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * defaultSender: alice,\n * })\n * ```\n * @example Specify name\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * name: \"contract-name\",\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public async getTypedAppClientByCreatorAndName<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientByCreatorAndNameParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromCreatorAndName({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by app ID.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by ID\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientById(MyContractClient, {\n * appId: 12345n,\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientById<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return new typedClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by network\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByNetwork(MyContractClient, {\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientByNetwork<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params?: ClientTypedAppClientByNetworkParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed app factory.\n * @param typedFactory The typed factory type to use\n * @param params The params to resolve the factory by\n * @example\n * ```typescript\n * const appFactory = clientManager.getTypedAppFactory(MyContractClient, {\n * sender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppFactory<TClient>(typedFactory: TypedAppFactory<TClient>, params?: ClientTypedAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new typedFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Retrieve client configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment)\n *\n * If both `process.env.INDEXER_SERVER` and `process.env.ALGOD_SERVER` is defined it will use both along with optional `process.env.ALGOD_PORT`, `process.env.ALGOD_TOKEN`, `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n *\n * If only `process.env.ALGOD_SERVER` is defined it will use this along with optional `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN` and leave indexer as `undefined`.\n *\n * If only `process.env.INDEXER_SERVER` is defined it will use the default (LocalNet) configuration for both algod and indexer.\n *\n * It will return a KMD configuration that uses `process.env.KMD_PORT` (or port 4002) if `process.env.ALGOD_SERVER` is defined,\n * otherwise it will use the default LocalNet config unless it detects testnet or mainnet.\n * @example\n * ```typescript\n * const config = ClientManager.getConfigFromEnvironmentOrLocalNet()\n * ```\n * @returns The config for algod, indexer and kmd\n */\n public static getConfigFromEnvironmentOrLocalNet(): AlgoConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default client configuration from a non Node.js context; supply the config instead')\n }\n const [algodConfig, indexerConfig, kmdConfig] = process.env.ALGOD_SERVER\n ? [\n ClientManager.getAlgodConfigFromEnvironment(),\n process.env.INDEXER_SERVER ? ClientManager.getIndexerConfigFromEnvironment() : undefined,\n !process.env.ALGOD_SERVER.includes('mainnet') && !process.env.ALGOD_SERVER.includes('testnet')\n ? { ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' }\n : undefined,\n ]\n : [\n ClientManager.getDefaultLocalNetConfig('algod'),\n ClientManager.getDefaultLocalNetConfig('indexer'),\n ClientManager.getDefaultLocalNetConfig('kmd'),\n ]\n\n return {\n algodConfig,\n indexerConfig,\n kmdConfig,\n }\n }\n\n /**\n * Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment)\n *\n * Expects `process.env.ALGOD_SERVER` to be defined, and you can also specify `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN`.\n * @returns The Algod client configuration\n * @throws Error if `process.env.ALGOD_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getAlgodConfigFromEnvironment()\n * ```\n */\n public static getAlgodConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default algod configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.ALGOD_SERVER) {\n throw new Error('Attempt to get default algod configuration without specifying ALGOD_SERVER in the environment variables')\n }\n\n return {\n server: process.env.ALGOD_SERVER,\n port: process.env.ALGOD_PORT,\n token: process.env.ALGOD_TOKEN,\n }\n }\n\n /**\n * Retrieve the indexer configuration from environment variables (expects to be called from a Node.js environment).\n *\n * Expects `process.env.INDEXER_SERVER` to be defined, and you can also specify `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n * @returns The Indexer client configuration\n * @throws Error if `process.env.INDEXER_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getIndexerConfigFromEnvironment()\n * ```\n */\n public static getIndexerConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default indexer configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.INDEXER_SERVER) {\n throw new Error('Attempt to get default indexer configuration without specifying INDEXER_SERVER in the environment variables')\n }\n\n return {\n server: process.env.INDEXER_SERVER,\n port: process.env.INDEXER_PORT,\n token: process.env.INDEXER_TOKEN,\n }\n }\n\n /** Returns the Algorand configuration to point to the free tier of the AlgoNode service.\n *\n * @param network Which network to connect to - TestNet or MainNet\n * @param config Which algod config to return - Algod or Indexer\n * @returns The AlgoNode client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getAlgoNodeConfig('testnet', 'algod')\n * ```\n */\n public static getAlgoNodeConfig(network: 'testnet' | 'mainnet', config: 'algod' | 'indexer'): AlgoClientConfig {\n return {\n server: `https://${network}-${config === 'algod' ? 'api' : 'idx'}.algonode.cloud/`,\n port: 443,\n }\n }\n\n /** Returns the Algorand configuration to point to the default LocalNet.\n *\n * @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number\n * @returns The LocalNet client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getDefaultLocalNetConfig('algod')\n * ```\n */\n public static getDefaultLocalNetConfig(configOrPort: 'algod' | 'indexer' | 'kmd' | number): AlgoClientConfig {\n return {\n server: `http://localhost`,\n port: configOrPort === 'algod' ? 4001 : configOrPort === 'indexer' ? 8980 : configOrPort === 'kmd' ? 4002 : configOrPort,\n token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n }\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls.\n *\n * @param config The config of the client\n * @returns The Algod client\n * @example AlgoNode (testnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('testnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('mainnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient({server: 'http://localhost', port: '4001', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClient(config: AlgoClientConfig): AlgodClient {\n const { token, server, port } = config\n return new AlgodClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Algod client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.ALGOD_PORT and process.env.ALGOD_TOKEN\n * const algod = ClientManager.getAlgodClientFromEnvironment()\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClientFromEnvironment(): AlgodClient {\n return ClientManager.getAlgodClient(ClientManager.getAlgodConfigFromEnvironment())\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls\n *\n * @param config The config of the client\n * @returns The Indexer client\n * @example AlgoNode (testnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('testnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('mainnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient({server: 'http://localhost', port: '8980', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClient(config: AlgoClientConfig): IndexerClient {\n const { token, server, port } = config\n return new IndexerClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Indexer client\n * @example\n *\n * ```typescript\n * // Uses process.env.INDEXER_SERVER, process.env.INDEXER_PORT and process.env.INDEXER_TOKEN\n * const indexer = ClientManager.getIndexerClientFromEnvironment()\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClientFromEnvironment(): IndexerClient {\n return ClientManager.getIndexerClient(ClientManager.getIndexerConfigFromEnvironment())\n }\n\n /**\n * Returns a KMD SDK client.\n *\n * KMD client allows you to export private keys, which is useful to (for instance) get the default account in a LocalNet network.\n *\n * @param config The config for the client\n * @returns The KMD client\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const kmd = ClientManager.getKmdClient({server: 'http://localhost', port: '4002', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * ```\n */\n public static getKmdClient(config: AlgoClientConfig): KmdClient {\n const { token, server, port } = config\n return new KmdClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns a KMD SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The KMD client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.KMD_PORT (or if not specified: port 4002) and process.env.ALGOD_TOKEN\n * const kmd = ClientManager.getKmdClientFromEnvironment()\n * ```\n */\n public static getKmdClientFromEnvironment(): KmdClient {\n // We can only use Kmd on the LocalNet otherwise it's not exposed so this makes some assumptions\n // (e.g. same token and server as algod and port 4002 by default)\n return ClientManager.getKmdClient({ ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' })\n }\n}\n\n/**\n * Interface to identify a typed client that can be used to interact with an application.\n */\nexport interface TypedAppClient<TClient> {\n new (params: Omit<AppClientParams, 'appSpec'>): TClient\n fromNetwork(params: Omit<AppClientParams, 'appId' | 'appSpec'>): Promise<TClient>\n fromCreatorAndName(params: Omit<ResolveAppClientByCreatorAndName, 'appSpec'>): Promise<TClient>\n}\n\n/**\n * Interface to identify a typed factory that can be used to create and deploy an application.\n */\nexport interface TypedAppFactory<TClient> {\n new (params: Omit<AppFactoryParams, 'appSpec'>): TClient\n}\n"],"mappings":";;;;;;;;;;;;AA8CA,IAAa,gBAAb,MAAa,cAAc;CACzB,AAAQ;CACR,AAAQ;CACR,AAAQ;CACR,AAAQ;;;;;;;;;;;;;;;;;;;;;CAsBR,YAAY,iBAA8C,gBAAiC;EACzF,MAAM,WACJ,WAAW,kBACP,kBACA;GACE,OAAO,cAAc,eAAe,gBAAgB,YAAY;GAChE,SAAS,gBAAgB,gBAAgB,cAAc,iBAAiB,gBAAgB,cAAc,GAAG;GACzG,KAAK,gBAAgB,YAAY,cAAc,aAAa,gBAAgB,UAAU,GAAG;GAC1F;AACP,OAAK,SAAS,SAAS;AACvB,OAAK,WAAW,SAAS;AACzB,OAAK,OAAO,SAAS;AACrB,OAAK,YAAY;;;;;;CAOnB,IAAW,QAAqB;AAC9B,SAAO,KAAK;;;;;;;CAQd,IAAW,UAAyB;AAClC,MAAI,CAAC,KAAK,SAAU,OAAM,IAAI,MAAM,+EAA+E;AACnH,SAAO,KAAK;;;;;;CAOd,IAAW,mBAA8C;AACvD,SAAO,KAAK;;;;;;;CAQd,IAAW,MAAiB;AAC1B,MAAI,CAAC,KAAK,KAAM,OAAM,IAAI,MAAM,uEAAuE;AACvG,SAAO,KAAK;;CAGd,AAAQ;;;;;;;;;;CAUR,MAAa,UAAmC;AAC9C,MAAI,CAAC,KAAK,mBACR,MAAK,qBAAqB,KAAK,OAAO,iBAAiB;EAGzD,MAAM,SAAS,MAAM,KAAK;AAC1B,SAAO;GACL,WAAW;IAAC;IAAgB;IAAc;IAAU,CAAC,SAAS,OAAO,aAAa,UAAU;GAC5F,WAAW;IAAC;IAAgB;IAAc;IAAU,CAAC,SAAS,OAAO,aAAa,UAAU;GAC5F,YAAY,cAAc,oBAAoB,OAAO,aAAa,UAAU;GAC5E,WAAW,OAAO,aAAa;GAC/B,aAAa,OAAO,cAAc,OAAO,KAAK,OAAO,YAAY,CAAC,SAAS,SAAS,GAAG;GACxF;;;;;;;;;;;CAYH,OAAc,oBAAoB,WAAmB;AACnD,SAAOA,2CAAoB,UAAU;;;;;;;;;;CAWvC,MAAa,aAAa;AACxB,UAAQ,MAAM,KAAK,SAAS,EAAE;;;;;;;;;;CAWhC,MAAa,YAAY;AACvB,UAAQ,MAAM,KAAK,SAAS,EAAE;;;;;;;;;;CAWhC,MAAa,YAAY;AACvB,UAAQ,MAAM,KAAK,SAAS,EAAE;;;;;;;;;;;;;;;;;;CAmBhC,AAAO,oBAAoB,QAAyC;AAClE,SAAO,IAAIC,mDAA0B,OAAO;;;;;;;;;;;;;;;;;CAkB9C,AAAO,mCAAmC,QAA6D;AACrG,SAAO,IAAIA,mDAA0B,SAAS;GAAE,GAAG;GAAQ,WAAW;GAAI,GAAG,OAAU;;;;;;;;;;;;;;;;;;;;;;;;;CA0BzF,AAAO,cAAc,QAAgC;AACnD,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,6EAA6E;AAG/F,SAAO,IAAIC,+BAAW;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;;;CAkBhE,AAAO,6BAA6B,QAAsD;AACxF,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAG9F,SAAOC,6BAAU,mBAAmB;GAClC,GAAG;GACH,UAAU,KAAK;GAChB,CAAC;;;;;;;;;;;;;;CAeJ,AAAO,iBAAiB,QAA+B;AACrD,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAE9F,SAAO,IAAIA,6BAAU;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;;;;CAmB/D,MAAa,sBAAsB,QAAwC;AACzE,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAE9F,SAAOA,6BAAU,YAAY;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;CAwBvE,MAAa,kCACX,aACA,QACA;AACA,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAG9F,SAAO,YAAY,mBAAmB;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;CAgBhF,AAAO,sBACL,aACA,QACA;AACA,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAG9F,SAAO,IAAI,YAAY;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;;;CAkBjE,AAAO,2BACL,aACA,QACA;AACA,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,4EAA4E;AAG9F,SAAO,YAAY,YAAY;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;CAezE,AAAO,mBAA4B,cAAwC,QAAsC;AAC/G,MAAI,CAAC,KAAK,UACR,OAAM,IAAI,MAAM,6EAA6E;AAG/F,SAAO,IAAI,aAAa;GAAE,GAAG;GAAQ,UAAU,KAAK;GAAW,CAAC;;;;;;;;;;;;;;;;;;;CAoBlE,OAAc,qCAAiD;AAC7D,MAAI,CAAC,WAAW,CAAC,QAAQ,IACvB,OAAM,IAAI,MAAM,oGAAoG;EAEtH,MAAM,CAAC,aAAa,eAAe,aAAa,QAAQ,IAAI,eACxD;GACE,cAAc,+BAA+B;GAC7C,QAAQ,IAAI,iBAAiB,cAAc,iCAAiC,GAAG;GAC/E,CAAC,QAAQ,IAAI,aAAa,SAAS,UAAU,IAAI,CAAC,QAAQ,IAAI,aAAa,SAAS,UAAU,GAC1F;IAAE,GAAG,cAAc,+BAA+B;IAAE,MAAM,SAAS,KAAK,YAAY;IAAQ,GAC5F;GACL,GACD;GACE,cAAc,yBAAyB,QAAQ;GAC/C,cAAc,yBAAyB,UAAU;GACjD,cAAc,yBAAyB,MAAM;GAC9C;AAEL,SAAO;GACL;GACA;GACA;GACD;;;;;;;;;;;;;CAcH,OAAc,gCAAkD;AAC9D,MAAI,CAAC,WAAW,CAAC,QAAQ,IACvB,OAAM,IAAI,MAAM,mGAAmG;AAGrH,MAAI,CAAC,QAAQ,IAAI,aACf,OAAM,IAAI,MAAM,0GAA0G;AAG5H,SAAO;GACL,QAAQ,QAAQ,IAAI;GACpB,MAAM,QAAQ,IAAI;GAClB,OAAO,QAAQ,IAAI;GACpB;;;;;;;;;;;;;CAcH,OAAc,kCAAoD;AAChE,MAAI,CAAC,WAAW,CAAC,QAAQ,IACvB,OAAM,IAAI,MAAM,qGAAqG;AAGvH,MAAI,CAAC,QAAQ,IAAI,eACf,OAAM,IAAI,MAAM,8GAA8G;AAGhI,SAAO;GACL,QAAQ,QAAQ,IAAI;GACpB,MAAM,QAAQ,IAAI;GAClB,OAAO,QAAQ,IAAI;GACpB;;;;;;;;;;;;CAaH,OAAc,kBAAkB,SAAgC,QAA+C;AAC7G,SAAO;GACL,QAAQ,WAAW,QAAQ,GAAG,WAAW,UAAU,QAAQ,MAAM;GACjE,MAAM;GACP;;;;;;;;;;;CAYH,OAAc,yBAAyB,cAAsE;AAC3G,SAAO;GACL,QAAQ;GACR,MAAM,iBAAiB,UAAU,OAAO,iBAAiB,YAAY,OAAO,iBAAiB,QAAQ,OAAO;GAC5G,OAAO;GACR;;;;;;;;;;;;;;;;;;;;;;;CAwBH,OAAc,eAAe,QAAuC;EAClE,MAAM,EAAE,OAAO,QAAQ,SAAS;AAChC,SAAO,IAAIC,2BAAY;GACrB,SAAS;GACT;GACA;GACA,QAAQC,sBAAO;GAChB,CAAC;;;;;;;;;;;;;CAcJ,OAAc,gCAA6C;AACzD,SAAO,cAAc,eAAe,cAAc,+BAA+B,CAAC;;;;;;;;;;;;;;;;;;;;;;;CAwBpF,OAAc,iBAAiB,QAAyC;EACtE,MAAM,EAAE,OAAO,QAAQ,SAAS;AAChC,SAAO,IAAIC,+BAAc;GACvB,SAAS;GACT;GACA;GACA,QAAQD,sBAAO;GAChB,CAAC;;;;;;;;;;;;;;CAeJ,OAAc,kCAAiD;AAC7D,SAAO,cAAc,iBAAiB,cAAc,iCAAiC,CAAC;;;;;;;;;;;;;;CAexF,OAAc,aAAa,QAAqC;EAC9D,MAAM,EAAE,OAAO,QAAQ,SAAS;AAChC,SAAO,IAAIE,2BAAU;GACnB,SAAS;GACT;GACA;GACA,QAAQF,sBAAO;GAChB,CAAC;;;;;;;;;;;;CAaJ,OAAc,8BAAyC;AAGrD,SAAO,cAAc,aAAa;GAAE,GAAG,cAAc,+BAA+B;GAAE,MAAM,SAAS,KAAK,YAAY;GAAQ,CAAC"}
1
+ {"version":3,"file":"client-manager.js","names":["genesisIdIsLocalNet","TestNetDispenserApiClient","AppFactory","AppClient","AlgodClient","Config","IndexerClient","KmdClient"],"sources":["../src/client-manager.ts"],"sourcesContent":["import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport { Expand } from '@algorandfoundation/algokit-common'\nimport { IndexerClient } from '@algorandfoundation/algokit-indexer-client'\nimport { KmdClient } from '@algorandfoundation/algokit-kmd-client'\nimport { Config } from './config'\nimport { type AlgorandClient } from './algorand-client'\nimport { AppClient, AppClientParams, ResolveAppClientByCreatorAndName } from './app-client'\nimport { AppFactory, AppFactoryParams } from './app-factory'\nimport { TestNetDispenserApiClient, TestNetDispenserApiClientParams } from './dispenser-client'\nimport { AlgoClientConfig, AlgoConfig, NetworkDetails, genesisIdIsLocalNet } from './network-client'\n\n/** Clients from algosdk that interact with the official Algorand APIs */\nexport interface AlgoSdkClients {\n /** Algod client, see https://dev.algorand.co/reference/rest-apis/algod/ */\n algod: AlgodClient\n /** Optional indexer client, see https://dev.algorand.co/reference/rest-apis/indexer */\n indexer?: IndexerClient\n /** Optional KMD client, see https://dev.algorand.co/reference/rest-apis/kmd/ */\n kmd?: KmdClient\n}\n\n/** Params to get an app factory from `ClientManager`. */\nexport type ClientAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand'>>\n\n/** Params to get an app client by creator address and name from `ClientManager`. */\nexport type ClientResolveAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand'>>\n\n/** Params to get an app client by ID from `ClientManager`. */\nexport type ClientAppClientParams = Expand<Omit<AppClientParams, 'algorand'>>\n\n/** Params to get an app client by network from `ClientManager`. */\nexport type ClientAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appId'>>\n\n/** Params to get a typed app client by creator address and name from `ClientManager`. */\nexport type ClientTypedAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by ID from `ClientManager`. */\nexport type ClientTypedAppClientParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by network from `ClientManager`. */\nexport type ClientTypedAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec' | 'appId'>>\n\n/** Params to get a typed app factory from `ClientManager`. */\nexport type ClientTypedAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand' | 'appSpec'>>\n\n/** Exposes access to various API clients. */\nexport class ClientManager {\n private _algod: AlgodClient\n private _indexer?: IndexerClient\n private _kmd?: KmdClient\n private _algorand?: AlgorandClient\n\n /**\n * algosdk clients or config for interacting with the official Algorand APIs.\n * @param clientsOrConfig The clients or config to use\n * @example Algod client only\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient })\n * ```\n * @example All clients\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient, indexer: indexerClient, kmd: kmdClient })\n * ```\n * @example Algod config only\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig })\n * ```\n * @example All client configs\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig, indexerConfig, kmdConfig })\n * ```\n */\n constructor(clientsOrConfig: AlgoConfig | AlgoSdkClients, algorandClient?: AlgorandClient) {\n const _clients =\n 'algod' in clientsOrConfig\n ? clientsOrConfig\n : {\n algod: ClientManager.getAlgodClient(clientsOrConfig.algodConfig),\n indexer: clientsOrConfig.indexerConfig ? ClientManager.getIndexerClient(clientsOrConfig.indexerConfig) : undefined,\n kmd: clientsOrConfig.kmdConfig ? ClientManager.getKmdClient(clientsOrConfig.kmdConfig) : undefined,\n }\n this._algod = _clients.algod\n this._indexer = _clients.indexer\n this._kmd = _clients.kmd\n this._algorand = algorandClient\n }\n\n /**\n * Returns an Algod API client.\n * @returns The Algod client\n */\n public get algod(): AlgodClient {\n return this._algod\n }\n\n /**\n * Returns an Indexer API client or throws an error if it's not been provided.\n * @returns The Indexer client\n * @throws Error if no Indexer client is configured\n */\n public get indexer(): IndexerClient {\n if (!this._indexer) throw new Error('Attempt to use Indexer client in AlgoKit instance with no Indexer configured')\n return this._indexer\n }\n\n /**\n * Returns an Indexer API client or `undefined` if it's not been provided.\n * @returns The Indexer client or `undefined`\n */\n public get indexerIfPresent(): IndexerClient | undefined {\n return this._indexer\n }\n\n /**\n * Returns a KMD API client or throws an error if it's not been provided.\n * @returns The KMD client\n * @throws Error if no KMD client is configured\n */\n public get kmd(): KmdClient {\n if (!this._kmd) throw new Error('Attempt to use Kmd client in AlgoKit instance with no Kmd configured')\n return this._kmd\n }\n\n private _getNetworkPromise: Promise<SuggestedParams> | undefined\n /**\n * Get details about the current network.\n * @example Getting genesis ID\n * ```typescript\n * const network = await networkClient.network()\n * const genesisId = network.genesisId\n * ```\n * @returns The current network details\n */\n public async network(): Promise<NetworkDetails> {\n if (!this._getNetworkPromise) {\n this._getNetworkPromise = this._algod.suggestedParams()\n }\n\n const params = await this._getNetworkPromise\n return {\n isTestNet: ['testnet-v1.0', 'testnet-v1', 'testnet'].includes(params.genesisId ?? 'unknown'),\n isMainNet: ['mainnet-v1.0', 'mainnet-v1', 'mainnet'].includes(params.genesisId ?? 'unknown'),\n isLocalNet: ClientManager.genesisIdIsLocalNet(params.genesisId ?? 'unknown'),\n genesisId: params.genesisId ?? 'unknown',\n genesisHash: params.genesisHash ? Buffer.from(params.genesisHash).toString('base64') : 'unknown',\n }\n }\n\n /**\n * Returns true if the given network genesisId is associated with a LocalNet network.\n * @param genesisId The network genesis ID\n * @returns Whether the given genesis ID is associated with a LocalNet network\n * @example\n * ```typescript\n * const isLocalNet = ClientManager.genesisIdIsLocalNet('testnet-v1.0')\n * ```\n */\n public static genesisIdIsLocalNet(genesisId: string) {\n return genesisIdIsLocalNet(genesisId)\n }\n\n /**\n * Returns true if the current network is LocalNet.\n * @returns True if the current network is LocalNet.\n * @example\n * ```typescript\n * const isLocalNet = await clientManager.isLocalNet()\n * ```\n */\n public async isLocalNet() {\n return (await this.network()).isLocalNet\n }\n\n /**\n * Returns true if the current network is TestNet.\n * @returns True if the current network is TestNet.\n * @example\n * ```typescript\n * const isTestNet = await clientManager.isTestNet()\n * ```\n */\n public async isTestNet() {\n return (await this.network()).isTestNet\n }\n\n /**\n * Returns true if the current network is MainNet.\n * @returns True if the current network is MainNet.\n * @example\n * ```typescript\n * const isMainNet = await clientManager.isMainNet()\n * ```\n */\n public async isMainNet() {\n return (await this.network()).isMainNet\n }\n\n /**\n * Returns a TestNet Dispenser API client.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenser(\n * {\n * authToken: 'your_auth_token',\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenser(params: TestNetDispenserApiClientParams) {\n return new TestNetDispenserApiClient(params)\n }\n\n /**\n * Returns a TestNet Dispenser API client, loading the auth token from `process.env.ALGOKIT_DISPENSER_ACCESS_TOKEN`.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenserFromEnvironment(\n * {\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenserFromEnvironment(params?: Omit<TestNetDispenserApiClientParams, 'authToken'>) {\n return new TestNetDispenserApiClient(params ? { ...params, authToken: '' } : undefined)\n }\n\n /**\n * Returns a new `AppFactory` client\n * @param params The parameters to create the app factory\n * @example Basic example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\/}',\n * })\n * ```\n * @example Advanced example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: parsedAppSpec_AppSpec_or_Arc56Contract,\n * defaultSender: \"SENDERADDRESS\",\n * appName: \"OverriddenAppName\",\n * version: \"2.0.0\",\n * updatable: true,\n * deletable: false,\n * deployTimeParams: { ONE: 1, TWO: 'value' }\n * })\n * ```\n * @returns The `AppFactory` instance\n */\n public getAppFactory(params: ClientAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new AppFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * This method resolves the app ID by looking up the creator address and name\n * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByCreatorAndName({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by looking for app ID of named app by this creator\n * creatorAddress: 'CREATORADDRESS',\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientByCreatorAndName(params: ClientResolveAppClientByCreatorAndNameParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return AppClient.fromCreatorAndName({\n ...params,\n algorand: this._algorand,\n })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientById({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * appId: 12345n,\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientById(params: ClientAppClientParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return new AppClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-56 app.\n * This method resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByNetwork({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by using ARC-56 spec to find app ID for current network\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public async getAppClientByNetwork(params: ClientAppClientByNetworkParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return AppClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by creator address and name.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by creator address and name\n * @example Use name in ARC-32 / ARC-56 app spec\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * defaultSender: alice,\n * })\n * ```\n * @example Specify name\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * name: \"contract-name\",\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public async getTypedAppClientByCreatorAndName<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientByCreatorAndNameParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromCreatorAndName({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by app ID.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by ID\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientById(MyContractClient, {\n * appId: 12345n,\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientById<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return new typedClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by network\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByNetwork(MyContractClient, {\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientByNetwork<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params?: ClientTypedAppClientByNetworkParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed app factory.\n * @param typedFactory The typed factory type to use\n * @param params The params to resolve the factory by\n * @example\n * ```typescript\n * const appFactory = clientManager.getTypedAppFactory(MyContractClient, {\n * sender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppFactory<TClient>(typedFactory: TypedAppFactory<TClient>, params?: ClientTypedAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new typedFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Retrieve client configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment)\n *\n * If both `process.env.INDEXER_SERVER` and `process.env.ALGOD_SERVER` is defined it will use both along with optional `process.env.ALGOD_PORT`, `process.env.ALGOD_TOKEN`, `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n *\n * If only `process.env.ALGOD_SERVER` is defined it will use this along with optional `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN` and leave indexer as `undefined`.\n *\n * If only `process.env.INDEXER_SERVER` is defined it will use the default (LocalNet) configuration for both algod and indexer.\n *\n * It will return a KMD configuration that uses `process.env.KMD_PORT` (or port 4002) if `process.env.ALGOD_SERVER` is defined,\n * otherwise it will use the default LocalNet config unless it detects testnet or mainnet.\n * @example\n * ```typescript\n * const config = ClientManager.getConfigFromEnvironmentOrLocalNet()\n * ```\n * @returns The config for algod, indexer and kmd\n */\n public static getConfigFromEnvironmentOrLocalNet(): AlgoConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default client configuration from a non Node.js context; supply the config instead')\n }\n const [algodConfig, indexerConfig, kmdConfig] = process.env.ALGOD_SERVER\n ? [\n ClientManager.getAlgodConfigFromEnvironment(),\n process.env.INDEXER_SERVER ? ClientManager.getIndexerConfigFromEnvironment() : undefined,\n !process.env.ALGOD_SERVER.includes('mainnet') && !process.env.ALGOD_SERVER.includes('testnet')\n ? { ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' }\n : undefined,\n ]\n : [\n ClientManager.getDefaultLocalNetConfig('algod'),\n ClientManager.getDefaultLocalNetConfig('indexer'),\n ClientManager.getDefaultLocalNetConfig('kmd'),\n ]\n\n return {\n algodConfig,\n indexerConfig,\n kmdConfig,\n }\n }\n\n /**\n * Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment)\n *\n * Expects `process.env.ALGOD_SERVER` to be defined, and you can also specify `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN`.\n * @returns The Algod client configuration\n * @throws Error if `process.env.ALGOD_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getAlgodConfigFromEnvironment()\n * ```\n */\n public static getAlgodConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default algod configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.ALGOD_SERVER) {\n throw new Error('Attempt to get default algod configuration without specifying ALGOD_SERVER in the environment variables')\n }\n\n return {\n server: process.env.ALGOD_SERVER,\n port: process.env.ALGOD_PORT,\n token: process.env.ALGOD_TOKEN,\n }\n }\n\n /**\n * Retrieve the indexer configuration from environment variables (expects to be called from a Node.js environment).\n *\n * Expects `process.env.INDEXER_SERVER` to be defined, and you can also specify `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n * @returns The Indexer client configuration\n * @throws Error if `process.env.INDEXER_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getIndexerConfigFromEnvironment()\n * ```\n */\n public static getIndexerConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default indexer configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.INDEXER_SERVER) {\n throw new Error('Attempt to get default indexer configuration without specifying INDEXER_SERVER in the environment variables')\n }\n\n return {\n server: process.env.INDEXER_SERVER,\n port: process.env.INDEXER_PORT,\n token: process.env.INDEXER_TOKEN,\n }\n }\n\n /** Returns the Algorand configuration to point to the free tier of the AlgoNode service.\n *\n * @param network Which network to connect to - TestNet or MainNet\n * @param config Which algod config to return - Algod or Indexer\n * @returns The AlgoNode client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getAlgoNodeConfig('testnet', 'algod')\n * ```\n */\n public static getAlgoNodeConfig(network: 'testnet' | 'mainnet', config: 'algod' | 'indexer'): AlgoClientConfig {\n return {\n server: `https://${network}-${config === 'algod' ? 'api' : 'idx'}.algonode.cloud/`,\n port: 443,\n }\n }\n\n /** Returns the Algorand configuration to point to the default LocalNet.\n *\n * @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number\n * @returns The LocalNet client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getDefaultLocalNetConfig('algod')\n * ```\n */\n public static getDefaultLocalNetConfig(configOrPort: 'algod' | 'indexer' | 'kmd' | number): AlgoClientConfig {\n return {\n server: `http://localhost`,\n port: configOrPort === 'algod' ? 4001 : configOrPort === 'indexer' ? 8980 : configOrPort === 'kmd' ? 4002 : configOrPort,\n token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n }\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls.\n *\n * @param config The config of the client\n * @returns The Algod client\n * @example AlgoNode (testnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('testnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('mainnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient({server: 'http://localhost', port: '4001', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClient(config: AlgoClientConfig): AlgodClient {\n const { token, server, port } = config\n return new AlgodClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Algod client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.ALGOD_PORT and process.env.ALGOD_TOKEN\n * const algod = ClientManager.getAlgodClientFromEnvironment()\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClientFromEnvironment(): AlgodClient {\n return ClientManager.getAlgodClient(ClientManager.getAlgodConfigFromEnvironment())\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls\n *\n * @param config The config of the client\n * @returns The Indexer client\n * @example AlgoNode (testnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('testnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('mainnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient({server: 'http://localhost', port: '8980', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClient(config: AlgoClientConfig): IndexerClient {\n const { token, server, port } = config\n return new IndexerClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Indexer client\n * @example\n *\n * ```typescript\n * // Uses process.env.INDEXER_SERVER, process.env.INDEXER_PORT and process.env.INDEXER_TOKEN\n * const indexer = ClientManager.getIndexerClientFromEnvironment()\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClientFromEnvironment(): IndexerClient {\n return ClientManager.getIndexerClient(ClientManager.getIndexerConfigFromEnvironment())\n }\n\n /**\n * Returns a KMD SDK client.\n *\n * KMD client allows you to export private keys, which is useful to (for instance) get the default account in a LocalNet network.\n *\n * @param config The config for the client\n * @returns The KMD client\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const kmd = ClientManager.getKmdClient({server: 'http://localhost', port: '4002', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * ```\n */\n public static getKmdClient(config: AlgoClientConfig): KmdClient {\n const { token, server, port } = config\n return new KmdClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns a KMD SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The KMD client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.KMD_PORT (or if not specified: port 4002) and process.env.ALGOD_TOKEN\n * const kmd = ClientManager.getKmdClientFromEnvironment()\n * ```\n */\n public static getKmdClientFromEnvironment(): KmdClient {\n // We can only use Kmd on the LocalNet otherwise it's not exposed so this makes some assumptions\n // (e.g. same token and server as algod and port 4002 by default)\n return ClientManager.getKmdClient({ ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' })\n }\n}\n\n/**\n * Interface to identify a typed client that can be used to interact with an application.\n */\nexport interface TypedAppClient<TClient> {\n new (params: Omit<AppClientParams, 'appSpec'>): TClient\n fromNetwork(params: Omit<AppClientParams, 'appId' | 'appSpec'>): Promise<TClient>\n fromCreatorAndName(params: Omit<ResolveAppClientByCreatorAndName, 'appSpec'>): Promise<TClient>\n}\n\n/**\n * Interface to identify a typed factory that can be used to create and deploy an application.\n */\nexport interface TypedAppFactory<TClient> {\n new (params: Omit<AppFactoryParams, 'appSpec'>): TClient\n}\n"],"mappings":"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"}
@@ -6,7 +6,6 @@ import { KmdClient } from "./packages/kmd_client/src/client.mjs";
6
6
  import { AppClient } from "./app-client.mjs";
7
7
  import { AppFactory } from "./app-factory.mjs";
8
8
  import { TestNetDispenserApiClient } from "./dispenser-client.mjs";
9
-
10
9
  //#region src/client-manager.ts
11
10
  /** Exposes access to various API clients. */
12
11
  var ClientManager = class ClientManager {
@@ -610,7 +609,7 @@ var ClientManager = class ClientManager {
610
609
  });
611
610
  }
612
611
  };
613
-
614
612
  //#endregion
615
613
  export { ClientManager };
614
+
616
615
  //# sourceMappingURL=client-manager.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-manager.mjs","names":[],"sources":["../src/client-manager.ts"],"sourcesContent":["import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport { Expand } from '@algorandfoundation/algokit-common'\nimport { IndexerClient } from '@algorandfoundation/algokit-indexer-client'\nimport { KmdClient } from '@algorandfoundation/algokit-kmd-client'\nimport { Config } from './config'\nimport { type AlgorandClient } from './algorand-client'\nimport { AppClient, AppClientParams, ResolveAppClientByCreatorAndName } from './app-client'\nimport { AppFactory, AppFactoryParams } from './app-factory'\nimport { TestNetDispenserApiClient, TestNetDispenserApiClientParams } from './dispenser-client'\nimport { AlgoClientConfig, AlgoConfig, NetworkDetails, genesisIdIsLocalNet } from './network-client'\n\n/** Clients from algosdk that interact with the official Algorand APIs */\nexport interface AlgoSdkClients {\n /** Algod client, see https://dev.algorand.co/reference/rest-apis/algod/ */\n algod: AlgodClient\n /** Optional indexer client, see https://dev.algorand.co/reference/rest-apis/indexer */\n indexer?: IndexerClient\n /** Optional KMD client, see https://dev.algorand.co/reference/rest-apis/kmd/ */\n kmd?: KmdClient\n}\n\n/** Params to get an app factory from `ClientManager`. */\nexport type ClientAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand'>>\n\n/** Params to get an app client by creator address and name from `ClientManager`. */\nexport type ClientResolveAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand'>>\n\n/** Params to get an app client by ID from `ClientManager`. */\nexport type ClientAppClientParams = Expand<Omit<AppClientParams, 'algorand'>>\n\n/** Params to get an app client by network from `ClientManager`. */\nexport type ClientAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appId'>>\n\n/** Params to get a typed app client by creator address and name from `ClientManager`. */\nexport type ClientTypedAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by ID from `ClientManager`. */\nexport type ClientTypedAppClientParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by network from `ClientManager`. */\nexport type ClientTypedAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec' | 'appId'>>\n\n/** Params to get a typed app factory from `ClientManager`. */\nexport type ClientTypedAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand' | 'appSpec'>>\n\n/** Exposes access to various API clients. */\nexport class ClientManager {\n private _algod: AlgodClient\n private _indexer?: IndexerClient\n private _kmd?: KmdClient\n private _algorand?: AlgorandClient\n\n /**\n * algosdk clients or config for interacting with the official Algorand APIs.\n * @param clientsOrConfig The clients or config to use\n * @example Algod client only\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient })\n * ```\n * @example All clients\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient, indexer: indexerClient, kmd: kmdClient })\n * ```\n * @example Algod config only\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig })\n * ```\n * @example All client configs\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig, indexerConfig, kmdConfig })\n * ```\n */\n constructor(clientsOrConfig: AlgoConfig | AlgoSdkClients, algorandClient?: AlgorandClient) {\n const _clients =\n 'algod' in clientsOrConfig\n ? clientsOrConfig\n : {\n algod: ClientManager.getAlgodClient(clientsOrConfig.algodConfig),\n indexer: clientsOrConfig.indexerConfig ? ClientManager.getIndexerClient(clientsOrConfig.indexerConfig) : undefined,\n kmd: clientsOrConfig.kmdConfig ? ClientManager.getKmdClient(clientsOrConfig.kmdConfig) : undefined,\n }\n this._algod = _clients.algod\n this._indexer = _clients.indexer\n this._kmd = _clients.kmd\n this._algorand = algorandClient\n }\n\n /**\n * Returns an Algod API client.\n * @returns The Algod client\n */\n public get algod(): AlgodClient {\n return this._algod\n }\n\n /**\n * Returns an Indexer API client or throws an error if it's not been provided.\n * @returns The Indexer client\n * @throws Error if no Indexer client is configured\n */\n public get indexer(): IndexerClient {\n if (!this._indexer) throw new Error('Attempt to use Indexer client in AlgoKit instance with no Indexer configured')\n return this._indexer\n }\n\n /**\n * Returns an Indexer API client or `undefined` if it's not been provided.\n * @returns The Indexer client or `undefined`\n */\n public get indexerIfPresent(): IndexerClient | undefined {\n return this._indexer\n }\n\n /**\n * Returns a KMD API client or throws an error if it's not been provided.\n * @returns The KMD client\n * @throws Error if no KMD client is configured\n */\n public get kmd(): KmdClient {\n if (!this._kmd) throw new Error('Attempt to use Kmd client in AlgoKit instance with no Kmd configured')\n return this._kmd\n }\n\n private _getNetworkPromise: Promise<SuggestedParams> | undefined\n /**\n * Get details about the current network.\n * @example Getting genesis ID\n * ```typescript\n * const network = await networkClient.network()\n * const genesisId = network.genesisId\n * ```\n * @returns The current network details\n */\n public async network(): Promise<NetworkDetails> {\n if (!this._getNetworkPromise) {\n this._getNetworkPromise = this._algod.suggestedParams()\n }\n\n const params = await this._getNetworkPromise\n return {\n isTestNet: ['testnet-v1.0', 'testnet-v1', 'testnet'].includes(params.genesisId ?? 'unknown'),\n isMainNet: ['mainnet-v1.0', 'mainnet-v1', 'mainnet'].includes(params.genesisId ?? 'unknown'),\n isLocalNet: ClientManager.genesisIdIsLocalNet(params.genesisId ?? 'unknown'),\n genesisId: params.genesisId ?? 'unknown',\n genesisHash: params.genesisHash ? Buffer.from(params.genesisHash).toString('base64') : 'unknown',\n }\n }\n\n /**\n * Returns true if the given network genesisId is associated with a LocalNet network.\n * @param genesisId The network genesis ID\n * @returns Whether the given genesis ID is associated with a LocalNet network\n * @example\n * ```typescript\n * const isLocalNet = ClientManager.genesisIdIsLocalNet('testnet-v1.0')\n * ```\n */\n public static genesisIdIsLocalNet(genesisId: string) {\n return genesisIdIsLocalNet(genesisId)\n }\n\n /**\n * Returns true if the current network is LocalNet.\n * @returns True if the current network is LocalNet.\n * @example\n * ```typescript\n * const isLocalNet = await clientManager.isLocalNet()\n * ```\n */\n public async isLocalNet() {\n return (await this.network()).isLocalNet\n }\n\n /**\n * Returns true if the current network is TestNet.\n * @returns True if the current network is TestNet.\n * @example\n * ```typescript\n * const isTestNet = await clientManager.isTestNet()\n * ```\n */\n public async isTestNet() {\n return (await this.network()).isTestNet\n }\n\n /**\n * Returns true if the current network is MainNet.\n * @returns True if the current network is MainNet.\n * @example\n * ```typescript\n * const isMainNet = await clientManager.isMainNet()\n * ```\n */\n public async isMainNet() {\n return (await this.network()).isMainNet\n }\n\n /**\n * Returns a TestNet Dispenser API client.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenser(\n * {\n * authToken: 'your_auth_token',\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenser(params: TestNetDispenserApiClientParams) {\n return new TestNetDispenserApiClient(params)\n }\n\n /**\n * Returns a TestNet Dispenser API client, loading the auth token from `process.env.ALGOKIT_DISPENSER_ACCESS_TOKEN`.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenserFromEnvironment(\n * {\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenserFromEnvironment(params?: Omit<TestNetDispenserApiClientParams, 'authToken'>) {\n return new TestNetDispenserApiClient(params ? { ...params, authToken: '' } : undefined)\n }\n\n /**\n * Returns a new `AppFactory` client\n * @param params The parameters to create the app factory\n * @example Basic example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\/}',\n * })\n * ```\n * @example Advanced example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: parsedAppSpec_AppSpec_or_Arc56Contract,\n * defaultSender: \"SENDERADDRESS\",\n * appName: \"OverriddenAppName\",\n * version: \"2.0.0\",\n * updatable: true,\n * deletable: false,\n * deployTimeParams: { ONE: 1, TWO: 'value' }\n * })\n * ```\n * @returns The `AppFactory` instance\n */\n public getAppFactory(params: ClientAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new AppFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * This method resolves the app ID by looking up the creator address and name\n * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByCreatorAndName({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by looking for app ID of named app by this creator\n * creatorAddress: 'CREATORADDRESS',\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientByCreatorAndName(params: ClientResolveAppClientByCreatorAndNameParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return AppClient.fromCreatorAndName({\n ...params,\n algorand: this._algorand,\n })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientById({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * appId: 12345n,\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientById(params: ClientAppClientParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return new AppClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-56 app.\n * This method resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByNetwork({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by using ARC-56 spec to find app ID for current network\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public async getAppClientByNetwork(params: ClientAppClientByNetworkParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return AppClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by creator address and name.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by creator address and name\n * @example Use name in ARC-32 / ARC-56 app spec\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * defaultSender: alice,\n * })\n * ```\n * @example Specify name\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * name: \"contract-name\",\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public async getTypedAppClientByCreatorAndName<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientByCreatorAndNameParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromCreatorAndName({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by app ID.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by ID\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientById(MyContractClient, {\n * appId: 12345n,\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientById<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return new typedClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by network\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByNetwork(MyContractClient, {\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientByNetwork<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params?: ClientTypedAppClientByNetworkParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed app factory.\n * @param typedFactory The typed factory type to use\n * @param params The params to resolve the factory by\n * @example\n * ```typescript\n * const appFactory = clientManager.getTypedAppFactory(MyContractClient, {\n * sender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppFactory<TClient>(typedFactory: TypedAppFactory<TClient>, params?: ClientTypedAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new typedFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Retrieve client configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment)\n *\n * If both `process.env.INDEXER_SERVER` and `process.env.ALGOD_SERVER` is defined it will use both along with optional `process.env.ALGOD_PORT`, `process.env.ALGOD_TOKEN`, `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n *\n * If only `process.env.ALGOD_SERVER` is defined it will use this along with optional `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN` and leave indexer as `undefined`.\n *\n * If only `process.env.INDEXER_SERVER` is defined it will use the default (LocalNet) configuration for both algod and indexer.\n *\n * It will return a KMD configuration that uses `process.env.KMD_PORT` (or port 4002) if `process.env.ALGOD_SERVER` is defined,\n * otherwise it will use the default LocalNet config unless it detects testnet or mainnet.\n * @example\n * ```typescript\n * const config = ClientManager.getConfigFromEnvironmentOrLocalNet()\n * ```\n * @returns The config for algod, indexer and kmd\n */\n public static getConfigFromEnvironmentOrLocalNet(): AlgoConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default client configuration from a non Node.js context; supply the config instead')\n }\n const [algodConfig, indexerConfig, kmdConfig] = process.env.ALGOD_SERVER\n ? [\n ClientManager.getAlgodConfigFromEnvironment(),\n process.env.INDEXER_SERVER ? ClientManager.getIndexerConfigFromEnvironment() : undefined,\n !process.env.ALGOD_SERVER.includes('mainnet') && !process.env.ALGOD_SERVER.includes('testnet')\n ? { ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' }\n : undefined,\n ]\n : [\n ClientManager.getDefaultLocalNetConfig('algod'),\n ClientManager.getDefaultLocalNetConfig('indexer'),\n ClientManager.getDefaultLocalNetConfig('kmd'),\n ]\n\n return {\n algodConfig,\n indexerConfig,\n kmdConfig,\n }\n }\n\n /**\n * Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment)\n *\n * Expects `process.env.ALGOD_SERVER` to be defined, and you can also specify `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN`.\n * @returns The Algod client configuration\n * @throws Error if `process.env.ALGOD_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getAlgodConfigFromEnvironment()\n * ```\n */\n public static getAlgodConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default algod configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.ALGOD_SERVER) {\n throw new Error('Attempt to get default algod configuration without specifying ALGOD_SERVER in the environment variables')\n }\n\n return {\n server: process.env.ALGOD_SERVER,\n port: process.env.ALGOD_PORT,\n token: process.env.ALGOD_TOKEN,\n }\n }\n\n /**\n * Retrieve the indexer configuration from environment variables (expects to be called from a Node.js environment).\n *\n * Expects `process.env.INDEXER_SERVER` to be defined, and you can also specify `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n * @returns The Indexer client configuration\n * @throws Error if `process.env.INDEXER_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getIndexerConfigFromEnvironment()\n * ```\n */\n public static getIndexerConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default indexer configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.INDEXER_SERVER) {\n throw new Error('Attempt to get default indexer configuration without specifying INDEXER_SERVER in the environment variables')\n }\n\n return {\n server: process.env.INDEXER_SERVER,\n port: process.env.INDEXER_PORT,\n token: process.env.INDEXER_TOKEN,\n }\n }\n\n /** Returns the Algorand configuration to point to the free tier of the AlgoNode service.\n *\n * @param network Which network to connect to - TestNet or MainNet\n * @param config Which algod config to return - Algod or Indexer\n * @returns The AlgoNode client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getAlgoNodeConfig('testnet', 'algod')\n * ```\n */\n public static getAlgoNodeConfig(network: 'testnet' | 'mainnet', config: 'algod' | 'indexer'): AlgoClientConfig {\n return {\n server: `https://${network}-${config === 'algod' ? 'api' : 'idx'}.algonode.cloud/`,\n port: 443,\n }\n }\n\n /** Returns the Algorand configuration to point to the default LocalNet.\n *\n * @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number\n * @returns The LocalNet client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getDefaultLocalNetConfig('algod')\n * ```\n */\n public static getDefaultLocalNetConfig(configOrPort: 'algod' | 'indexer' | 'kmd' | number): AlgoClientConfig {\n return {\n server: `http://localhost`,\n port: configOrPort === 'algod' ? 4001 : configOrPort === 'indexer' ? 8980 : configOrPort === 'kmd' ? 4002 : configOrPort,\n token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n }\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls.\n *\n * @param config The config of the client\n * @returns The Algod client\n * @example AlgoNode (testnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('testnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('mainnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient({server: 'http://localhost', port: '4001', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClient(config: AlgoClientConfig): AlgodClient {\n const { token, server, port } = config\n return new AlgodClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Algod client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.ALGOD_PORT and process.env.ALGOD_TOKEN\n * const algod = ClientManager.getAlgodClientFromEnvironment()\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClientFromEnvironment(): AlgodClient {\n return ClientManager.getAlgodClient(ClientManager.getAlgodConfigFromEnvironment())\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls\n *\n * @param config The config of the client\n * @returns The Indexer client\n * @example AlgoNode (testnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('testnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('mainnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient({server: 'http://localhost', port: '8980', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClient(config: AlgoClientConfig): IndexerClient {\n const { token, server, port } = config\n return new IndexerClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Indexer client\n * @example\n *\n * ```typescript\n * // Uses process.env.INDEXER_SERVER, process.env.INDEXER_PORT and process.env.INDEXER_TOKEN\n * const indexer = ClientManager.getIndexerClientFromEnvironment()\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClientFromEnvironment(): IndexerClient {\n return ClientManager.getIndexerClient(ClientManager.getIndexerConfigFromEnvironment())\n }\n\n /**\n * Returns a KMD SDK client.\n *\n * KMD client allows you to export private keys, which is useful to (for instance) get the default account in a LocalNet network.\n *\n * @param config The config for the client\n * @returns The KMD client\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const kmd = ClientManager.getKmdClient({server: 'http://localhost', port: '4002', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * ```\n */\n public static getKmdClient(config: AlgoClientConfig): KmdClient {\n const { token, server, port } = config\n return new KmdClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns a KMD SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The KMD client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.KMD_PORT (or if not specified: port 4002) and process.env.ALGOD_TOKEN\n * const kmd = ClientManager.getKmdClientFromEnvironment()\n * ```\n */\n public static getKmdClientFromEnvironment(): KmdClient {\n // We can only use Kmd on the LocalNet otherwise it's not exposed so this makes some assumptions\n // (e.g. same token and server as algod and port 4002 by default)\n return ClientManager.getKmdClient({ ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' })\n }\n}\n\n/**\n * Interface to identify a typed client that can be used to interact with an application.\n */\nexport interface TypedAppClient<TClient> {\n new (params: Omit<AppClientParams, 'appSpec'>): TClient\n fromNetwork(params: Omit<AppClientParams, 'appId' | 'appSpec'>): Promise<TClient>\n fromCreatorAndName(params: Omit<ResolveAppClientByCreatorAndName, 'appSpec'>): Promise<TClient>\n}\n\n/**\n * Interface to identify a typed factory that can be used to create and deploy an application.\n */\nexport interface TypedAppFactory<TClient> {\n new (params: Omit<AppFactoryParams, 'appSpec'>): TClient\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"client-manager.mjs","names":[],"sources":["../src/client-manager.ts"],"sourcesContent":["import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport { Expand } from '@algorandfoundation/algokit-common'\nimport { IndexerClient } from '@algorandfoundation/algokit-indexer-client'\nimport { KmdClient } from '@algorandfoundation/algokit-kmd-client'\nimport { Config } from './config'\nimport { type AlgorandClient } from './algorand-client'\nimport { AppClient, AppClientParams, ResolveAppClientByCreatorAndName } from './app-client'\nimport { AppFactory, AppFactoryParams } from './app-factory'\nimport { TestNetDispenserApiClient, TestNetDispenserApiClientParams } from './dispenser-client'\nimport { AlgoClientConfig, AlgoConfig, NetworkDetails, genesisIdIsLocalNet } from './network-client'\n\n/** Clients from algosdk that interact with the official Algorand APIs */\nexport interface AlgoSdkClients {\n /** Algod client, see https://dev.algorand.co/reference/rest-apis/algod/ */\n algod: AlgodClient\n /** Optional indexer client, see https://dev.algorand.co/reference/rest-apis/indexer */\n indexer?: IndexerClient\n /** Optional KMD client, see https://dev.algorand.co/reference/rest-apis/kmd/ */\n kmd?: KmdClient\n}\n\n/** Params to get an app factory from `ClientManager`. */\nexport type ClientAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand'>>\n\n/** Params to get an app client by creator address and name from `ClientManager`. */\nexport type ClientResolveAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand'>>\n\n/** Params to get an app client by ID from `ClientManager`. */\nexport type ClientAppClientParams = Expand<Omit<AppClientParams, 'algorand'>>\n\n/** Params to get an app client by network from `ClientManager`. */\nexport type ClientAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appId'>>\n\n/** Params to get a typed app client by creator address and name from `ClientManager`. */\nexport type ClientTypedAppClientByCreatorAndNameParams = Expand<Omit<ResolveAppClientByCreatorAndName, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by ID from `ClientManager`. */\nexport type ClientTypedAppClientParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec'>>\n\n/** Params to get a typed app client by network from `ClientManager`. */\nexport type ClientTypedAppClientByNetworkParams = Expand<Omit<AppClientParams, 'algorand' | 'appSpec' | 'appId'>>\n\n/** Params to get a typed app factory from `ClientManager`. */\nexport type ClientTypedAppFactoryParams = Expand<Omit<AppFactoryParams, 'algorand' | 'appSpec'>>\n\n/** Exposes access to various API clients. */\nexport class ClientManager {\n private _algod: AlgodClient\n private _indexer?: IndexerClient\n private _kmd?: KmdClient\n private _algorand?: AlgorandClient\n\n /**\n * algosdk clients or config for interacting with the official Algorand APIs.\n * @param clientsOrConfig The clients or config to use\n * @example Algod client only\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient })\n * ```\n * @example All clients\n * ```typescript\n * const clientManager = new ClientManager({ algod: algodClient, indexer: indexerClient, kmd: kmdClient })\n * ```\n * @example Algod config only\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig })\n * ```\n * @example All client configs\n * ```typescript\n * const clientManager = new ClientManager({ algodConfig, indexerConfig, kmdConfig })\n * ```\n */\n constructor(clientsOrConfig: AlgoConfig | AlgoSdkClients, algorandClient?: AlgorandClient) {\n const _clients =\n 'algod' in clientsOrConfig\n ? clientsOrConfig\n : {\n algod: ClientManager.getAlgodClient(clientsOrConfig.algodConfig),\n indexer: clientsOrConfig.indexerConfig ? ClientManager.getIndexerClient(clientsOrConfig.indexerConfig) : undefined,\n kmd: clientsOrConfig.kmdConfig ? ClientManager.getKmdClient(clientsOrConfig.kmdConfig) : undefined,\n }\n this._algod = _clients.algod\n this._indexer = _clients.indexer\n this._kmd = _clients.kmd\n this._algorand = algorandClient\n }\n\n /**\n * Returns an Algod API client.\n * @returns The Algod client\n */\n public get algod(): AlgodClient {\n return this._algod\n }\n\n /**\n * Returns an Indexer API client or throws an error if it's not been provided.\n * @returns The Indexer client\n * @throws Error if no Indexer client is configured\n */\n public get indexer(): IndexerClient {\n if (!this._indexer) throw new Error('Attempt to use Indexer client in AlgoKit instance with no Indexer configured')\n return this._indexer\n }\n\n /**\n * Returns an Indexer API client or `undefined` if it's not been provided.\n * @returns The Indexer client or `undefined`\n */\n public get indexerIfPresent(): IndexerClient | undefined {\n return this._indexer\n }\n\n /**\n * Returns a KMD API client or throws an error if it's not been provided.\n * @returns The KMD client\n * @throws Error if no KMD client is configured\n */\n public get kmd(): KmdClient {\n if (!this._kmd) throw new Error('Attempt to use Kmd client in AlgoKit instance with no Kmd configured')\n return this._kmd\n }\n\n private _getNetworkPromise: Promise<SuggestedParams> | undefined\n /**\n * Get details about the current network.\n * @example Getting genesis ID\n * ```typescript\n * const network = await networkClient.network()\n * const genesisId = network.genesisId\n * ```\n * @returns The current network details\n */\n public async network(): Promise<NetworkDetails> {\n if (!this._getNetworkPromise) {\n this._getNetworkPromise = this._algod.suggestedParams()\n }\n\n const params = await this._getNetworkPromise\n return {\n isTestNet: ['testnet-v1.0', 'testnet-v1', 'testnet'].includes(params.genesisId ?? 'unknown'),\n isMainNet: ['mainnet-v1.0', 'mainnet-v1', 'mainnet'].includes(params.genesisId ?? 'unknown'),\n isLocalNet: ClientManager.genesisIdIsLocalNet(params.genesisId ?? 'unknown'),\n genesisId: params.genesisId ?? 'unknown',\n genesisHash: params.genesisHash ? Buffer.from(params.genesisHash).toString('base64') : 'unknown',\n }\n }\n\n /**\n * Returns true if the given network genesisId is associated with a LocalNet network.\n * @param genesisId The network genesis ID\n * @returns Whether the given genesis ID is associated with a LocalNet network\n * @example\n * ```typescript\n * const isLocalNet = ClientManager.genesisIdIsLocalNet('testnet-v1.0')\n * ```\n */\n public static genesisIdIsLocalNet(genesisId: string) {\n return genesisIdIsLocalNet(genesisId)\n }\n\n /**\n * Returns true if the current network is LocalNet.\n * @returns True if the current network is LocalNet.\n * @example\n * ```typescript\n * const isLocalNet = await clientManager.isLocalNet()\n * ```\n */\n public async isLocalNet() {\n return (await this.network()).isLocalNet\n }\n\n /**\n * Returns true if the current network is TestNet.\n * @returns True if the current network is TestNet.\n * @example\n * ```typescript\n * const isTestNet = await clientManager.isTestNet()\n * ```\n */\n public async isTestNet() {\n return (await this.network()).isTestNet\n }\n\n /**\n * Returns true if the current network is MainNet.\n * @returns True if the current network is MainNet.\n * @example\n * ```typescript\n * const isMainNet = await clientManager.isMainNet()\n * ```\n */\n public async isMainNet() {\n return (await this.network()).isMainNet\n }\n\n /**\n * Returns a TestNet Dispenser API client.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenser(\n * {\n * authToken: 'your_auth_token',\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenser(params: TestNetDispenserApiClientParams) {\n return new TestNetDispenserApiClient(params)\n }\n\n /**\n * Returns a TestNet Dispenser API client, loading the auth token from `process.env.ALGOKIT_DISPENSER_ACCESS_TOKEN`.\n *\n * Refer to [docs](https://github.com/algorandfoundation/algokit/blob/main/docs/testnet_api.md) on guidance to obtain an access token.\n *\n * @param params An object containing parameters for the TestNetDispenserApiClient class.\n * @example\n * const client = clientManager.getTestNetDispenserFromEnvironment(\n * {\n * requestTimeout: 15,\n * }\n * )\n *\n * @returns An instance of the TestNetDispenserApiClient class.\n */\n public getTestNetDispenserFromEnvironment(params?: Omit<TestNetDispenserApiClientParams, 'authToken'>) {\n return new TestNetDispenserApiClient(params ? { ...params, authToken: '' } : undefined)\n }\n\n /**\n * Returns a new `AppFactory` client\n * @param params The parameters to create the app factory\n * @example Basic example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\/}',\n * })\n * ```\n * @example Advanced example\n * ```typescript\n * const factory = clientManager.getAppFactory({\n * appSpec: parsedAppSpec_AppSpec_or_Arc56Contract,\n * defaultSender: \"SENDERADDRESS\",\n * appName: \"OverriddenAppName\",\n * version: \"2.0.0\",\n * updatable: true,\n * deletable: false,\n * deployTimeParams: { ONE: 1, TWO: 'value' }\n * })\n * ```\n * @returns The `AppFactory` instance\n */\n public getAppFactory(params: ClientAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new AppFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * This method resolves the app ID by looking up the creator address and name\n * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByCreatorAndName({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by looking for app ID of named app by this creator\n * creatorAddress: 'CREATORADDRESS',\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientByCreatorAndName(params: ClientResolveAppClientByCreatorAndNameParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return AppClient.fromCreatorAndName({\n ...params,\n algorand: this._algorand,\n })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC-56 app.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientById({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * appId: 12345n,\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public getAppClientById(params: ClientAppClientParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return new AppClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new `AppClient` client for managing calls and state for an ARC-56 app.\n * This method resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param params The parameters to create the app client\n * @example Basic\n * ```typescript\n * const appClient = clientManager.getAppClientByNetwork({\n * appSpec: '{/* ARC-56 or ARC-32 compatible JSON *\\}',\n * // appId resolved by using ARC-56 spec to find app ID for current network\n * })\n * ```\n * @returns The `AppClient` instance\n */\n public async getAppClientByNetwork(params: ClientAppClientByNetworkParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n return AppClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by creator address and name.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by creator address and name\n * @example Use name in ARC-32 / ARC-56 app spec\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * defaultSender: alice,\n * })\n * ```\n * @example Specify name\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByCreatorAndName(MyContractClient, {\n * creatorAddress: \"CREATORADDRESS\",\n * name: \"contract-name\",\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public async getTypedAppClientByCreatorAndName<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientByCreatorAndNameParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromCreatorAndName({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolving the app by app ID.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by ID\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientById(MyContractClient, {\n * appId: 12345n,\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientById<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params: ClientTypedAppClientParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return new typedClient({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed client, resolves the app ID for the current network based on\n * pre-determined network-specific app IDs specified in the ARC-56 app spec.\n *\n * If no IDs are in the app spec or the network isn't recognised, an error is thrown.\n * @param typedClient The typed client type to use\n * @param params The params to resolve the app by network\n * @example\n * ```typescript\n * const appClient = clientManager.getTypedAppClientByNetwork(MyContractClient, {\n * defaultSender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppClientByNetwork<TClient extends TypedAppClient<InstanceType<TClient>>>(\n typedClient: TClient,\n params?: ClientTypedAppClientByNetworkParams,\n ) {\n if (!this._algorand) {\n throw new Error('Attempt to get app client from a ClientManager without an Algorand client')\n }\n\n return typedClient.fromNetwork({ ...params, algorand: this._algorand })\n }\n\n /**\n * Returns a new typed app factory.\n * @param typedFactory The typed factory type to use\n * @param params The params to resolve the factory by\n * @example\n * ```typescript\n * const appFactory = clientManager.getTypedAppFactory(MyContractClient, {\n * sender: alice,\n * })\n * ```\n * @returns The typed client instance\n */\n public getTypedAppFactory<TClient>(typedFactory: TypedAppFactory<TClient>, params?: ClientTypedAppFactoryParams) {\n if (!this._algorand) {\n throw new Error('Attempt to get app factory from a ClientManager without an Algorand client')\n }\n\n return new typedFactory({ ...params, algorand: this._algorand })\n }\n\n /**\n * Retrieve client configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment)\n *\n * If both `process.env.INDEXER_SERVER` and `process.env.ALGOD_SERVER` is defined it will use both along with optional `process.env.ALGOD_PORT`, `process.env.ALGOD_TOKEN`, `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n *\n * If only `process.env.ALGOD_SERVER` is defined it will use this along with optional `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN` and leave indexer as `undefined`.\n *\n * If only `process.env.INDEXER_SERVER` is defined it will use the default (LocalNet) configuration for both algod and indexer.\n *\n * It will return a KMD configuration that uses `process.env.KMD_PORT` (or port 4002) if `process.env.ALGOD_SERVER` is defined,\n * otherwise it will use the default LocalNet config unless it detects testnet or mainnet.\n * @example\n * ```typescript\n * const config = ClientManager.getConfigFromEnvironmentOrLocalNet()\n * ```\n * @returns The config for algod, indexer and kmd\n */\n public static getConfigFromEnvironmentOrLocalNet(): AlgoConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default client configuration from a non Node.js context; supply the config instead')\n }\n const [algodConfig, indexerConfig, kmdConfig] = process.env.ALGOD_SERVER\n ? [\n ClientManager.getAlgodConfigFromEnvironment(),\n process.env.INDEXER_SERVER ? ClientManager.getIndexerConfigFromEnvironment() : undefined,\n !process.env.ALGOD_SERVER.includes('mainnet') && !process.env.ALGOD_SERVER.includes('testnet')\n ? { ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' }\n : undefined,\n ]\n : [\n ClientManager.getDefaultLocalNetConfig('algod'),\n ClientManager.getDefaultLocalNetConfig('indexer'),\n ClientManager.getDefaultLocalNetConfig('kmd'),\n ]\n\n return {\n algodConfig,\n indexerConfig,\n kmdConfig,\n }\n }\n\n /**\n * Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment)\n *\n * Expects `process.env.ALGOD_SERVER` to be defined, and you can also specify `process.env.ALGOD_PORT` and `process.env.ALGOD_TOKEN`.\n * @returns The Algod client configuration\n * @throws Error if `process.env.ALGOD_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getAlgodConfigFromEnvironment()\n * ```\n */\n public static getAlgodConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default algod configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.ALGOD_SERVER) {\n throw new Error('Attempt to get default algod configuration without specifying ALGOD_SERVER in the environment variables')\n }\n\n return {\n server: process.env.ALGOD_SERVER,\n port: process.env.ALGOD_PORT,\n token: process.env.ALGOD_TOKEN,\n }\n }\n\n /**\n * Retrieve the indexer configuration from environment variables (expects to be called from a Node.js environment).\n *\n * Expects `process.env.INDEXER_SERVER` to be defined, and you can also specify `process.env.INDEXER_PORT` and `process.env.INDEXER_TOKEN`.\n * @returns The Indexer client configuration\n * @throws Error if `process.env.INDEXER_SERVER` is not defined\n * @example\n * ```typescript\n * const config = ClientManager.getIndexerConfigFromEnvironment()\n * ```\n */\n public static getIndexerConfigFromEnvironment(): AlgoClientConfig {\n if (!process || !process.env) {\n throw new Error('Attempt to get default indexer configuration from a non Node.js context; supply the config instead')\n }\n\n if (!process.env.INDEXER_SERVER) {\n throw new Error('Attempt to get default indexer configuration without specifying INDEXER_SERVER in the environment variables')\n }\n\n return {\n server: process.env.INDEXER_SERVER,\n port: process.env.INDEXER_PORT,\n token: process.env.INDEXER_TOKEN,\n }\n }\n\n /** Returns the Algorand configuration to point to the free tier of the AlgoNode service.\n *\n * @param network Which network to connect to - TestNet or MainNet\n * @param config Which algod config to return - Algod or Indexer\n * @returns The AlgoNode client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getAlgoNodeConfig('testnet', 'algod')\n * ```\n */\n public static getAlgoNodeConfig(network: 'testnet' | 'mainnet', config: 'algod' | 'indexer'): AlgoClientConfig {\n return {\n server: `https://${network}-${config === 'algod' ? 'api' : 'idx'}.algonode.cloud/`,\n port: 443,\n }\n }\n\n /** Returns the Algorand configuration to point to the default LocalNet.\n *\n * @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number\n * @returns The LocalNet client configuration\n * @example\n * ```typescript\n * const config = ClientManager.getDefaultLocalNetConfig('algod')\n * ```\n */\n public static getDefaultLocalNetConfig(configOrPort: 'algod' | 'indexer' | 'kmd' | number): AlgoClientConfig {\n return {\n server: `http://localhost`,\n port: configOrPort === 'algod' ? 4001 : configOrPort === 'indexer' ? 8980 : configOrPort === 'kmd' ? 4002 : configOrPort,\n token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',\n }\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls.\n *\n * @param config The config of the client\n * @returns The Algod client\n * @example AlgoNode (testnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('testnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient(ClientManager.getAlgoNodeConfig('mainnet', 'algod'))\n * await algod.healthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet)\n * ```typescript\n * const algod = ClientManager.getAlgodClient({server: 'http://localhost', port: '4001', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClient(config: AlgoClientConfig): AlgodClient {\n const { token, server, port } = config\n return new AlgodClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an algod SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Algod client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.ALGOD_PORT and process.env.ALGOD_TOKEN\n * const algod = ClientManager.getAlgodClientFromEnvironment()\n * await algod.healthCheck().do()\n * ```\n */\n public static getAlgodClientFromEnvironment(): AlgodClient {\n return ClientManager.getAlgodClient(ClientManager.getAlgodConfigFromEnvironment())\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls\n *\n * @param config The config of the client\n * @returns The Indexer client\n * @example AlgoNode (testnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('testnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example AlgoNode (mainnet)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient(ClientManager.getAlgoNodeConfig('mainnet', 'indexer'))\n * await indexer.makeHealthCheck().do()\n * ```\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const indexer = ClientManager.getIndexerClient({server: 'http://localhost', port: '8980', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClient(config: AlgoClientConfig): IndexerClient {\n const { token, server, port } = config\n return new IndexerClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns an indexer SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The Indexer client\n * @example\n *\n * ```typescript\n * // Uses process.env.INDEXER_SERVER, process.env.INDEXER_PORT and process.env.INDEXER_TOKEN\n * const indexer = ClientManager.getIndexerClientFromEnvironment()\n * await indexer.makeHealthCheck().do()\n * ```\n */\n public static getIndexerClientFromEnvironment(): IndexerClient {\n return ClientManager.getIndexerClient(ClientManager.getIndexerConfigFromEnvironment())\n }\n\n /**\n * Returns a KMD SDK client.\n *\n * KMD client allows you to export private keys, which is useful to (for instance) get the default account in a LocalNet network.\n *\n * @param config The config for the client\n * @returns The KMD client\n * @example Custom (e.g. default LocalNet, although we recommend loading this into a .env and using the Default option instead)\n * ```typescript\n * const kmd = ClientManager.getKmdClient({server: 'http://localhost', port: '4002', token: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'})\n * ```\n */\n public static getKmdClient(config: AlgoClientConfig): KmdClient {\n const { token, server, port } = config\n return new KmdClient({\n baseUrl: server,\n port,\n token,\n logger: Config.logger,\n })\n }\n\n /**\n * Returns a KMD SDK client that automatically retries on idempotent calls loaded from environment variables (expects to be called from a Node.js environment).\n *\n * @returns The KMD client\n * @example\n * ```typescript\n * // Uses process.env.ALGOD_SERVER, process.env.KMD_PORT (or if not specified: port 4002) and process.env.ALGOD_TOKEN\n * const kmd = ClientManager.getKmdClientFromEnvironment()\n * ```\n */\n public static getKmdClientFromEnvironment(): KmdClient {\n // We can only use Kmd on the LocalNet otherwise it's not exposed so this makes some assumptions\n // (e.g. same token and server as algod and port 4002 by default)\n return ClientManager.getKmdClient({ ...ClientManager.getAlgodConfigFromEnvironment(), port: process?.env?.KMD_PORT ?? '4002' })\n }\n}\n\n/**\n * Interface to identify a typed client that can be used to interact with an application.\n */\nexport interface TypedAppClient<TClient> {\n new (params: Omit<AppClientParams, 'appSpec'>): TClient\n fromNetwork(params: Omit<AppClientParams, 'appId' | 'appSpec'>): Promise<TClient>\n fromCreatorAndName(params: Omit<ResolveAppClientByCreatorAndName, 'appSpec'>): Promise<TClient>\n}\n\n/**\n * Interface to identify a typed factory that can be used to create and deploy an application.\n */\nexport interface TypedAppFactory<TClient> {\n new (params: Omit<AppFactoryParams, 'appSpec'>): TClient\n}\n"],"mappings":"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"}
package/common/index.js CHANGED
@@ -1,29 +1,28 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_array = require('../packages/common/src/array.js');
3
- const require_constants = require('../packages/common/src/constants.js');
4
- const require_address = require('../packages/common/src/address.js');
5
- const require_codec = require('../packages/common/src/codecs/codec.js');
6
- const require_address$1 = require('../packages/common/src/codecs/primitives/address.js');
7
- const require_bigint = require('../packages/common/src/codecs/primitives/bigint.js');
8
- const require_boolean = require('../packages/common/src/codecs/primitives/boolean.js');
9
- const require_bytes = require('../packages/common/src/codecs/primitives/bytes.js');
10
- const require_bytes_base64 = require('../packages/common/src/codecs/primitives/bytes-base64.js');
11
- const require_fixed_bytes = require('../packages/common/src/codecs/primitives/fixed-bytes.js');
12
- const require_number = require('../packages/common/src/codecs/primitives/number.js');
13
- const require_wire = require('../packages/common/src/codecs/wire.js');
14
- const require_string = require('../packages/common/src/codecs/primitives/string.js');
15
- const require_array$1 = require('../packages/common/src/codecs/composite/array.js');
16
- const require_record = require('../packages/common/src/codecs/composite/record.js');
17
- const require_unknown = require('../packages/common/src/codecs/primitives/unknown.js');
18
- const require_map = require('../packages/common/src/codecs/composite/map.js');
19
- const require_array_model = require('../packages/common/src/codecs/models/array-model.js');
20
- const require_object_model = require('../packages/common/src/codecs/models/object-model.js');
21
- const require_primitive_model = require('../packages/common/src/codecs/models/primitive-model.js');
22
- const require_encoding = require('../packages/common/src/encoding.js');
23
- const require_json = require('../packages/common/src/json.js');
24
- const require_msgpack = require('../packages/common/src/msgpack.js');
25
- const require_sourcemap = require('../packages/common/src/sourcemap.js');
26
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_array = require("../packages/common/src/array.js");
3
+ const require_constants = require("../packages/common/src/constants.js");
4
+ const require_address = require("../packages/common/src/address.js");
5
+ const require_codec = require("../packages/common/src/codecs/codec.js");
6
+ const require_address$1 = require("../packages/common/src/codecs/primitives/address.js");
7
+ const require_bigint = require("../packages/common/src/codecs/primitives/bigint.js");
8
+ const require_boolean = require("../packages/common/src/codecs/primitives/boolean.js");
9
+ const require_bytes = require("../packages/common/src/codecs/primitives/bytes.js");
10
+ const require_bytes_base64 = require("../packages/common/src/codecs/primitives/bytes-base64.js");
11
+ const require_fixed_bytes = require("../packages/common/src/codecs/primitives/fixed-bytes.js");
12
+ const require_number = require("../packages/common/src/codecs/primitives/number.js");
13
+ const require_wire = require("../packages/common/src/codecs/wire.js");
14
+ const require_string = require("../packages/common/src/codecs/primitives/string.js");
15
+ const require_array$1 = require("../packages/common/src/codecs/composite/array.js");
16
+ const require_record = require("../packages/common/src/codecs/composite/record.js");
17
+ const require_unknown = require("../packages/common/src/codecs/primitives/unknown.js");
18
+ const require_map = require("../packages/common/src/codecs/composite/map.js");
19
+ const require_array_model = require("../packages/common/src/codecs/models/array-model.js");
20
+ const require_object_model = require("../packages/common/src/codecs/models/object-model.js");
21
+ const require_primitive_model = require("../packages/common/src/codecs/models/primitive-model.js");
22
+ const require_encoding = require("../packages/common/src/encoding.js");
23
+ const require_json = require("../packages/common/src/json.js");
24
+ const require_msgpack = require("../packages/common/src/msgpack.js");
25
+ const require_sourcemap = require("../packages/common/src/sourcemap.js");
27
26
  exports.ADDRESS_LENGTH = require_constants.ADDRESS_LENGTH;
28
27
  exports.ALGORAND_ADDRESS_BYTE_LENGTH = require_address.ALGORAND_ADDRESS_BYTE_LENGTH;
29
28
  exports.ALGORAND_ADDRESS_LENGTH = require_address.ALGORAND_ADDRESS_LENGTH;
@@ -107,4 +106,4 @@ exports.stringArrayCodec = require_array$1.stringArrayCodec;
107
106
  exports.stringCodec = require_string.stringCodec;
108
107
  exports.stringToBytes = require_encoding.stringToBytes;
109
108
  exports.stringifyJson = require_json.stringifyJson;
110
- exports.unknownCodec = require_unknown.unknownCodec;
109
+ exports.unknownCodec = require_unknown.unknownCodec;
package/common/index.mjs CHANGED
@@ -22,5 +22,4 @@ import { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, hexToBytes, st
22
22
  import { parseJson, stringifyJson } from "../packages/common/src/json.mjs";
23
23
  import { decodeMsgpack, encodeMsgpack } from "../packages/common/src/msgpack.mjs";
24
24
  import { ProgramSourceMap } from "../packages/common/src/sourcemap.mjs";
25
-
26
- export { ADDRESS_LENGTH, ALGORAND_ADDRESS_BYTE_LENGTH, ALGORAND_ADDRESS_LENGTH, ALGORAND_CHECKSUM_BYTE_LENGTH, ALGORAND_ZERO_ADDRESS_STRING, Address, ArrayCodec, ArrayModelCodec, BOOL_FALSE_BYTE, BOOL_TRUE_BYTE, CHECKSUM_ADDRESS_ERROR_MSG, CHECKSUM_BYTE_LENGTH, Codec, EMPTY_SIGNATURE, HASH_BYTES_LENGTH, LENGTH_ENCODE_BYTE_SIZE, MALFORMED_ADDRESS_ERROR_MSG, MAX_ACCOUNT_REFERENCES, MAX_APP_ARGS, MAX_APP_REFERENCES, MAX_ARGS_SIZE, MAX_ASSET_DECIMALS, MAX_ASSET_NAME_LENGTH, MAX_ASSET_REFERENCES, MAX_ASSET_UNIT_NAME_LENGTH, MAX_ASSET_URL_LENGTH, MAX_BOX_REFERENCES, MAX_EXTRA_PROGRAM_PAGES, MAX_GLOBAL_STATE_KEYS, MAX_LOCAL_STATE_KEYS, MAX_OVERALL_REFERENCES, MAX_TRANSACTION_GROUP_SIZE, MULTISIG_DOMAIN_SEPARATOR, MapCodec, ObjectModelCodec, PROGRAM_PAGE_SIZE, PUBLIC_KEY_BYTE_LENGTH, PrimitiveModelCodec, ProgramSourceMap, RecordCodec, SIGNATURE_BYTE_LENGTH, SIGNATURE_ENCODING_INCR, TRANSACTION_DOMAIN_SEPARATOR, TRANSACTION_GROUP_DOMAIN_SEPARATOR, TRANSACTION_ID_LENGTH, addressArrayCodec, addressCodec, arrayEqual, base64ToBytes, bigIntArrayCodec, bigIntCodec, booleanArrayCodec, booleanCodec, bytesArrayCodec, bytesBase64Codec, bytesCodec, bytesToBase64, bytesToHex, bytesToString, checksumFromPublicKey, concatArrays, decodeAddress, decodeMsgpack, encodeAddress, encodeMsgpack, encodeUint64, fixedBytes1793Codec, fixedBytes32Codec, fixedBytes64Codec, getAddress, getApplicationAddress, getOptionalAddress, hexToBytes, isValidAddress, normalizeWireObject, normalizeWireString, numberArrayCodec, numberCodec, parseJson, stringArrayCodec, stringCodec, stringToBytes, stringifyJson, unknownCodec };
25
+ export { ADDRESS_LENGTH, ALGORAND_ADDRESS_BYTE_LENGTH, ALGORAND_ADDRESS_LENGTH, ALGORAND_CHECKSUM_BYTE_LENGTH, ALGORAND_ZERO_ADDRESS_STRING, Address, ArrayCodec, ArrayModelCodec, BOOL_FALSE_BYTE, BOOL_TRUE_BYTE, CHECKSUM_ADDRESS_ERROR_MSG, CHECKSUM_BYTE_LENGTH, Codec, EMPTY_SIGNATURE, HASH_BYTES_LENGTH, LENGTH_ENCODE_BYTE_SIZE, MALFORMED_ADDRESS_ERROR_MSG, MAX_ACCOUNT_REFERENCES, MAX_APP_ARGS, MAX_APP_REFERENCES, MAX_ARGS_SIZE, MAX_ASSET_DECIMALS, MAX_ASSET_NAME_LENGTH, MAX_ASSET_REFERENCES, MAX_ASSET_UNIT_NAME_LENGTH, MAX_ASSET_URL_LENGTH, MAX_BOX_REFERENCES, MAX_EXTRA_PROGRAM_PAGES, MAX_GLOBAL_STATE_KEYS, MAX_LOCAL_STATE_KEYS, MAX_OVERALL_REFERENCES, MAX_TRANSACTION_GROUP_SIZE, MULTISIG_DOMAIN_SEPARATOR, MapCodec, ObjectModelCodec, PROGRAM_PAGE_SIZE, PUBLIC_KEY_BYTE_LENGTH, PrimitiveModelCodec, ProgramSourceMap, RecordCodec, SIGNATURE_BYTE_LENGTH, SIGNATURE_ENCODING_INCR, TRANSACTION_DOMAIN_SEPARATOR, TRANSACTION_GROUP_DOMAIN_SEPARATOR, TRANSACTION_ID_LENGTH, addressArrayCodec, addressCodec, arrayEqual, base64ToBytes, bigIntArrayCodec, bigIntCodec, booleanArrayCodec, booleanCodec, bytesArrayCodec, bytesBase64Codec, bytesCodec, bytesToBase64, bytesToHex, bytesToString, checksumFromPublicKey, concatArrays, decodeAddress, decodeMsgpack, encodeAddress, encodeMsgpack, encodeUint64, fixedBytes1793Codec, fixedBytes32Codec, fixedBytes64Codec, getAddress, getApplicationAddress, getOptionalAddress, hexToBytes, isValidAddress, normalizeWireObject, normalizeWireString, numberArrayCodec, numberCodec, parseJson, stringArrayCodec, stringCodec, stringToBytes, stringifyJson, unknownCodec };
package/composer.d.ts CHANGED
@@ -20,7 +20,6 @@ import { AppCallMethodCall, AppCreateMethodCall, AppDeleteMethodCall, AppMethodC
20
20
  import { PaymentParams } from "./transactions/payment.js";
21
21
 
22
22
  //#region src/composer.d.ts
23
-
24
23
  /** Options to control a simulate request, that does not require transaction signing */
25
24
  type SkipSignaturesSimulateOptions = Expand<Omit<RawSimulateOptions, 'fixSigners' | 'allowEmptySignatures'> & {
26
25
  /** Whether or not to skip signatures for all built transactions and use an empty signer instead.
@@ -32,8 +31,7 @@ type SkipSignaturesSimulateOptions = Expand<Omit<RawSimulateOptions, 'fixSigners
32
31
  * See algod API docs for more information: https://dev.algorand.co/reference/rest-apis/algod/#simulatetransaction
33
32
  */
34
33
  type RawSimulateOptions = Expand<Omit<SimulateRequest, 'txnGroups'>> & {
35
- /** Whether or not to return the result on simulation failure instead of throwing an error */
36
- resultOnFailure?: boolean;
34
+ /** Whether or not to return the result on simulation failure instead of throwing an error */resultOnFailure?: boolean;
37
35
  };
38
36
  /** All options to control a simulate request */
39
37
  type SimulateOptions = Expand<Partial<SkipSignaturesSimulateOptions> & RawSimulateOptions>;
@@ -50,11 +48,8 @@ type TransactionComposerConfig = {
50
48
  };
51
49
  /** Parameters to create an `TransactionComposer`. */
52
50
  type TransactionComposerParams = {
53
- /** The algod client to use to get suggestedParams and send the transaction group */
54
- algod: AlgodClient;
55
- /** The function used to get the TransactionSigner for a given address */
56
- getSigner: (address: ReadableAddress) => TransactionSigner;
57
- /** The method used to get SuggestedParams for transactions in the group */
51
+ /** The algod client to use to get suggestedParams and send the transaction group */algod: AlgodClient; /** The function used to get the TransactionSigner for a given address */
52
+ getSigner: (address: ReadableAddress) => TransactionSigner; /** The method used to get SuggestedParams for transactions in the group */
58
53
  getSuggestedParams?: () => Promise<SuggestedParams>;
59
54
  /** How many rounds a transaction should be valid for by default; if not specified
60
55
  * then will be 10 rounds (or 1000 rounds if issuing transactions to LocalNet).
package/composer.js CHANGED
@@ -1,27 +1,26 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_runtime = require('./_virtual/_rolldown/runtime.js');
3
- const require_constants = require('./packages/common/src/constants.js');
4
- const require_app_call = require('./packages/transact/src/transactions/app-call.js');
5
- const require_transaction_type = require('./packages/transact/src/transactions/transaction-type.js');
6
- const require_transaction = require('./packages/transact/src/transactions/transaction.js');
7
- const require_signed_transaction = require('./packages/transact/src/transactions/signed-transaction.js');
8
- const require_signer = require('./packages/transact/src/signer.js');
9
- const require_amount = require('./amount.js');
10
- const require_config = require('./config.js');
11
- const require_util = require('./util.js');
12
- const require_transaction$1 = require('./transaction/transaction.js');
13
- const require_app_manager = require('./app-manager.js');
14
- const require_app_call$1 = require('./transactions/app-call.js');
15
- const require_asset_transfer = require('./transactions/asset-transfer.js');
16
- const require_lifecycle_events = require('./lifecycle-events.js');
17
- const require_network_client = require('./network-client.js');
18
- const require_asset_config = require('./transactions/asset-config.js');
19
- const require_fee_coverage = require('./transactions/fee-coverage.js');
20
- const require_key_registration = require('./transactions/key-registration.js');
21
- const require_method_call = require('./transactions/method-call.js');
22
- const require_payment = require('./transactions/payment.js');
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ require("./_virtual/_rolldown/runtime.js");
3
+ const require_constants = require("./packages/common/src/constants.js");
4
+ const require_app_call = require("./packages/transact/src/transactions/app-call.js");
5
+ const require_transaction_type = require("./packages/transact/src/transactions/transaction-type.js");
6
+ const require_transaction = require("./packages/transact/src/transactions/transaction.js");
7
+ const require_signed_transaction = require("./packages/transact/src/transactions/signed-transaction.js");
8
+ const require_signer = require("./packages/transact/src/signer.js");
9
+ const require_amount = require("./amount.js");
10
+ const require_config = require("./config.js");
11
+ const require_util = require("./util.js");
12
+ const require_transaction$1 = require("./transaction/transaction.js");
13
+ const require_app_manager = require("./app-manager.js");
14
+ const require_app_call$1 = require("./transactions/app-call.js");
15
+ const require_asset_transfer = require("./transactions/asset-transfer.js");
16
+ const require_lifecycle_events = require("./lifecycle-events.js");
17
+ const require_network_client = require("./network-client.js");
18
+ const require_asset_config = require("./transactions/asset-config.js");
19
+ const require_fee_coverage = require("./transactions/fee-coverage.js");
20
+ const require_key_registration = require("./transactions/key-registration.js");
21
+ const require_method_call = require("./transactions/method-call.js");
22
+ const require_payment = require("./transactions/payment.js");
23
23
  let buffer = require("buffer");
24
-
25
24
  //#region src/composer.ts
26
25
  var InvalidErrorTransformerValue = class extends Error {
27
26
  constructor(originalError, value) {
@@ -164,7 +163,7 @@ var TransactionComposer = class TransactionComposer {
164
163
  }
165
164
  push(...txns) {
166
165
  if (this.transactionsWithSigners) throw new Error("Cannot add new transactions after building");
167
- if (this.txns.length + txns.length > require_constants.MAX_TRANSACTION_GROUP_SIZE) throw new Error(`Adding ${txns.length} transaction(s) would exceed the maximum group size. Current: ${this.txns.length}, Maximum: ${require_constants.MAX_TRANSACTION_GROUP_SIZE}`);
166
+ if (this.txns.length + txns.length > 16) throw new Error(`Adding ${txns.length} transaction(s) would exceed the maximum group size. Current: ${this.txns.length}, Maximum: 16`);
168
167
  this.txns.push(...txns);
169
168
  }
170
169
  clone(composerConfig) {
@@ -1178,7 +1177,7 @@ var TransactionComposer = class TransactionComposer {
1178
1177
  if (signer) signers.set(transactionIndex, signer);
1179
1178
  transactionIndex++;
1180
1179
  }
1181
- if (transactions.length > require_constants.MAX_TRANSACTION_GROUP_SIZE) throw new Error(`Transaction group size ${transactions.length} exceeds the maximum limit of ${require_constants.MAX_TRANSACTION_GROUP_SIZE}`);
1180
+ if (transactions.length > 16) throw new Error(`Transaction group size ${transactions.length} exceeds the maximum limit of 16`);
1182
1181
  const methodCalls = /* @__PURE__ */ new Map();
1183
1182
  this.txns.forEach((txn, index) => {
1184
1183
  if (txn.type === "methodCall") methodCalls.set(index, txn.data.method);
@@ -1419,8 +1418,7 @@ var TransactionComposer = class TransactionComposer {
1419
1418
  confirmations
1420
1419
  };
1421
1420
  } catch (originalError) {
1422
- const errorMessage = originalError.body?.message ?? originalError.message ?? "Received error executing Transaction Composer";
1423
- const err = new Error(errorMessage);
1421
+ const err = new Error(originalError.body?.message ?? originalError.message ?? "Received error executing Transaction Composer");
1424
1422
  err.cause = originalError;
1425
1423
  if (typeof originalError === "object") err.name = originalError.name;
1426
1424
  let sentTransactions;
@@ -1579,7 +1577,7 @@ function getLogicalMaxFee(ctxn) {
1579
1577
  if (maxFee !== void 0 && (staticFee === void 0 || maxFee.microAlgos > staticFee.microAlgos)) return maxFee.microAlgos;
1580
1578
  return staticFee?.microAlgos;
1581
1579
  }
1582
-
1583
1580
  //#endregion
1584
1581
  exports.TransactionComposer = TransactionComposer;
1582
+
1585
1583
  //# sourceMappingURL=composer.js.map