@algorandfoundation/algokit-utils 10.0.0-alpha.4 → 10.0.0-alpha.41

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 (1132) hide show
  1. package/_virtual/{rolldown_runtime.js → _rolldown/runtime.js} +11 -16
  2. package/abi/index.d.ts +2 -1
  3. package/abi/index.js +4 -0
  4. package/abi/index.mjs +2 -1
  5. package/account-manager.d.ts +447 -0
  6. package/account-manager.js +618 -0
  7. package/account-manager.js.map +1 -0
  8. package/account-manager.mjs +614 -0
  9. package/account-manager.mjs.map +1 -0
  10. package/account.d.ts +156 -0
  11. package/account.js +11 -0
  12. package/account.js.map +1 -0
  13. package/account.mjs +9 -0
  14. package/account.mjs.map +1 -0
  15. package/algo25/index.js +1 -0
  16. package/algod-client/index.d.ts +3 -7
  17. package/algod-client/index.js +4 -5
  18. package/algod-client/index.mjs +2 -2
  19. package/algorand-client-transaction-creator.d.ts +891 -0
  20. package/algorand-client-transaction-creator.js +736 -0
  21. package/algorand-client-transaction-creator.js.map +1 -0
  22. package/algorand-client-transaction-creator.mjs +734 -0
  23. package/algorand-client-transaction-creator.mjs.map +1 -0
  24. package/algorand-client-transaction-sender.d.ts +1099 -0
  25. package/algorand-client-transaction-sender.js +928 -0
  26. package/algorand-client-transaction-sender.js.map +1 -0
  27. package/algorand-client-transaction-sender.mjs +926 -0
  28. package/algorand-client-transaction-sender.mjs.map +1 -0
  29. package/algorand-client.d.ts +266 -0
  30. package/algorand-client.js +350 -0
  31. package/algorand-client.js.map +1 -0
  32. package/algorand-client.mjs +349 -0
  33. package/algorand-client.mjs.map +1 -0
  34. package/amount.d.ts +58 -3
  35. package/amount.js +109 -17
  36. package/amount.js.map +1 -1
  37. package/amount.mjs +100 -11
  38. package/amount.mjs.map +1 -1
  39. package/app-client.d.ts +1064 -0
  40. package/app-client.js +912 -0
  41. package/app-client.js.map +1 -0
  42. package/app-client.mjs +910 -0
  43. package/app-client.mjs.map +1 -0
  44. package/app-deployer.d.ts +166 -0
  45. package/app-deployer.js +354 -0
  46. package/app-deployer.js.map +1 -0
  47. package/app-deployer.mjs +353 -0
  48. package/app-deployer.mjs.map +1 -0
  49. package/app-factory.d.ts +816 -0
  50. package/app-factory.js +449 -0
  51. package/app-factory.js.map +1 -0
  52. package/app-factory.mjs +448 -0
  53. package/app-factory.mjs.map +1 -0
  54. package/app-manager.d.ts +323 -0
  55. package/app-manager.js +469 -0
  56. package/app-manager.js.map +1 -0
  57. package/app-manager.mjs +468 -0
  58. package/app-manager.mjs.map +1 -0
  59. package/app-spec.d.ts +203 -0
  60. package/app-spec.js +138 -0
  61. package/app-spec.js.map +1 -0
  62. package/app-spec.mjs +137 -0
  63. package/app-spec.mjs.map +1 -0
  64. package/app.d.ts +257 -0
  65. package/app.js +50 -0
  66. package/app.js.map +1 -0
  67. package/app.mjs +42 -0
  68. package/app.mjs.map +1 -0
  69. package/asset-manager.d.ts +215 -0
  70. package/asset-manager.js +170 -0
  71. package/asset-manager.js.map +1 -0
  72. package/asset-manager.mjs +169 -0
  73. package/asset-manager.mjs.map +1 -0
  74. package/async-event-emitter.d.ts +16 -0
  75. package/async-event-emitter.js +39 -0
  76. package/async-event-emitter.js.map +1 -0
  77. package/async-event-emitter.mjs +37 -0
  78. package/async-event-emitter.mjs.map +1 -0
  79. package/client-manager.d.ts +475 -0
  80. package/client-manager.js +617 -0
  81. package/client-manager.js.map +1 -0
  82. package/client-manager.mjs +616 -0
  83. package/client-manager.mjs.map +1 -0
  84. package/common/index.d.ts +28 -0
  85. package/common/index.js +110 -0
  86. package/common/index.mjs +26 -0
  87. package/composer.d.ts +947 -0
  88. package/composer.js +1585 -0
  89. package/composer.js.map +1 -0
  90. package/composer.mjs +1583 -0
  91. package/composer.mjs.map +1 -0
  92. package/config.d.ts +1 -1
  93. package/config.js +3 -2
  94. package/config.js.map +1 -1
  95. package/config.mjs +1 -1
  96. package/config.mjs.map +1 -1
  97. package/crypto/index.d.ts +5 -0
  98. package/crypto/index.js +14 -0
  99. package/crypto/index.mjs +6 -0
  100. package/debugging.d.ts +47 -0
  101. package/debugging.js +21 -0
  102. package/debugging.js.map +1 -0
  103. package/debugging.mjs +15 -0
  104. package/debugging.mjs.map +1 -0
  105. package/dispenser-client.d.ts +91 -0
  106. package/dispenser-client.js +129 -0
  107. package/dispenser-client.js.map +1 -0
  108. package/dispenser-client.mjs +128 -0
  109. package/dispenser-client.mjs.map +1 -0
  110. package/expand.d.ts +2 -0
  111. package/expand.js +0 -0
  112. package/expand.mjs +0 -0
  113. package/index.d.ts +28 -7
  114. package/index.js +39 -10
  115. package/index.mjs +21 -6
  116. package/indexer-client/index.d.ts +2 -2
  117. package/indexer-client/index.js +7 -6
  118. package/indexer-client/index.mjs +2 -2
  119. package/{indexer-lookup.d.ts → indexer-client/indexer-lookup.d.ts} +8 -11
  120. package/{indexer-lookup.mjs → indexer-client/indexer-lookup.js} +6 -10
  121. package/indexer-client/indexer-lookup.js.map +1 -0
  122. package/{indexer-lookup.js → indexer-client/indexer-lookup.mjs} +3 -18
  123. package/indexer-client/indexer-lookup.mjs.map +1 -0
  124. package/indexer.d.ts +40 -0
  125. package/indexer.js +39 -0
  126. package/indexer.js.map +1 -0
  127. package/indexer.mjs +35 -0
  128. package/indexer.mjs.map +1 -0
  129. package/instance-of.d.ts +8 -0
  130. package/kmd-account-manager.d.ts +74 -0
  131. package/kmd-account-manager.js +168 -0
  132. package/kmd-account-manager.js.map +1 -0
  133. package/kmd-account-manager.mjs +165 -0
  134. package/kmd-account-manager.mjs.map +1 -0
  135. package/kmd-client/index.d.ts +1 -2
  136. package/kmd-client/index.js +1 -5
  137. package/kmd-client/index.mjs +1 -2
  138. package/lifecycle-events.d.ts +14 -0
  139. package/lifecycle-events.js +12 -0
  140. package/lifecycle-events.js.map +1 -0
  141. package/lifecycle-events.mjs +10 -0
  142. package/lifecycle-events.mjs.map +1 -0
  143. package/logging.d.ts +13 -0
  144. package/logging.js +48 -0
  145. package/logging.js.map +1 -0
  146. package/logging.mjs +42 -0
  147. package/logging.mjs.map +1 -0
  148. package/logic-error.d.ts +39 -0
  149. package/logic-error.js +55 -0
  150. package/logic-error.js.map +1 -0
  151. package/logic-error.mjs +53 -0
  152. package/logic-error.mjs.map +1 -0
  153. package/network-client.d.ts +43 -0
  154. package/network-client.js +15 -0
  155. package/network-client.js.map +1 -0
  156. package/network-client.mjs +13 -0
  157. package/network-client.mjs.map +1 -0
  158. package/network-manager.d.ts +143 -0
  159. package/network-manager.js +191 -0
  160. package/network-manager.js.map +1 -0
  161. package/network-manager.mjs +190 -0
  162. package/network-manager.mjs.map +1 -0
  163. package/package.json +28 -6
  164. package/packages/abi/src/abi-method.js +18 -19
  165. package/packages/abi/src/abi-method.js.map +1 -1
  166. package/packages/abi/src/abi-method.mjs +17 -17
  167. package/packages/abi/src/abi-method.mjs.map +1 -1
  168. package/packages/abi/src/abi-type.d.ts +1 -3
  169. package/packages/abi/src/abi-type.js +7 -36
  170. package/packages/abi/src/abi-type.js.map +1 -1
  171. package/packages/abi/src/abi-type.mjs +7 -36
  172. package/packages/abi/src/abi-type.mjs.map +1 -1
  173. package/packages/abi/src/arc56-contract.js +1 -0
  174. package/packages/abi/src/arc56-contract.js.map +1 -1
  175. package/packages/abi/src/arc56-contract.mjs +1 -0
  176. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  177. package/packages/abi/src/utils.d.ts +22 -0
  178. package/packages/abi/src/utils.js +57 -0
  179. package/packages/abi/src/utils.js.map +1 -0
  180. package/packages/abi/src/utils.mjs +55 -0
  181. package/packages/abi/src/utils.mjs.map +1 -0
  182. package/packages/algo25/src/index.d.ts +2 -2
  183. package/packages/algo25/src/index.js +2 -2
  184. package/packages/algo25/src/index.js.map +1 -1
  185. package/packages/algo25/src/index.mjs +1 -1
  186. package/packages/algo25/src/index.mjs.map +1 -1
  187. package/packages/algod_client/src/apis/api-service.d.ts +44 -44
  188. package/packages/algod_client/src/apis/api-service.js +155 -155
  189. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  190. package/packages/algod_client/src/apis/api-service.mjs +155 -155
  191. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  192. package/packages/algod_client/src/core/api-error.js +3 -1
  193. package/packages/algod_client/src/core/api-error.js.map +1 -1
  194. package/packages/algod_client/src/core/api-error.mjs +3 -1
  195. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  196. package/packages/algod_client/src/core/base-http-request.js.map +1 -1
  197. package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
  198. package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
  199. package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
  200. package/packages/algod_client/src/core/model-runtime.js +6 -6
  201. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  202. package/packages/algod_client/src/core/model-runtime.mjs +8 -8
  203. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  204. package/packages/algod_client/src/core/request.js.map +1 -1
  205. package/packages/algod_client/src/core/request.mjs.map +1 -1
  206. package/packages/algod_client/src/models/account-application-response.js.map +1 -1
  207. package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
  208. package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
  209. package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
  210. package/packages/algod_client/src/models/account-participation.js +4 -4
  211. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  212. package/packages/algod_client/src/models/account-participation.mjs +4 -4
  213. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  214. package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
  215. package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
  216. package/packages/algod_client/src/models/account.js.map +1 -1
  217. package/packages/algod_client/src/models/account.mjs.map +1 -1
  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.map +1 -1
  220. package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
  221. package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
  222. package/packages/algod_client/src/models/application-local-state.js.map +1 -1
  223. package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
  224. package/packages/algod_client/src/models/application-params.js.map +1 -1
  225. package/packages/algod_client/src/models/application-params.mjs.map +1 -1
  226. package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
  227. package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
  228. package/packages/algod_client/src/models/application-state-schema.d.ts +2 -2
  229. package/packages/algod_client/src/models/application-state-schema.js +2 -2
  230. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  231. package/packages/algod_client/src/models/application-state-schema.mjs +2 -2
  232. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  233. package/packages/algod_client/src/models/application.js.map +1 -1
  234. package/packages/algod_client/src/models/application.mjs.map +1 -1
  235. package/packages/algod_client/src/models/asset-holding.js.map +1 -1
  236. package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
  237. package/packages/algod_client/src/models/asset-params.js +2 -1
  238. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  239. package/packages/algod_client/src/models/asset-params.mjs +2 -1
  240. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  241. package/packages/algod_client/src/models/asset.js.map +1 -1
  242. package/packages/algod_client/src/models/asset.mjs.map +1 -1
  243. package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
  244. package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
  245. package/packages/algod_client/src/models/avm-value.js.map +1 -1
  246. package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
  247. package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
  248. package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
  249. package/packages/algod_client/src/models/block-response.js +1 -2
  250. package/packages/algod_client/src/models/block-response.js.map +1 -1
  251. package/packages/algod_client/src/models/block-response.mjs +2 -3
  252. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  253. package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
  254. package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
  255. package/packages/algod_client/src/models/block.d.ts +60 -40
  256. package/packages/algod_client/src/models/block.js +184 -108
  257. package/packages/algod_client/src/models/block.js.map +1 -1
  258. package/packages/algod_client/src/models/block.mjs +184 -108
  259. package/packages/algod_client/src/models/block.mjs.map +1 -1
  260. package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
  261. package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
  262. package/packages/algod_client/src/models/box.js.map +1 -1
  263. package/packages/algod_client/src/models/box.mjs.map +1 -1
  264. package/packages/algod_client/src/models/boxes-response.js.map +1 -1
  265. package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
  266. package/packages/algod_client/src/models/build-version.js.map +1 -1
  267. package/packages/algod_client/src/models/build-version.mjs.map +1 -1
  268. package/packages/algod_client/src/models/compile-response.js.map +1 -1
  269. package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
  270. package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
  271. package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
  272. package/packages/algod_client/src/models/eval-delta-key-value.js +2 -2
  273. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  274. package/packages/algod_client/src/models/eval-delta-key-value.mjs +2 -2
  275. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  276. package/packages/algod_client/src/models/eval-delta.js +2 -2
  277. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  278. package/packages/algod_client/src/models/eval-delta.mjs +2 -2
  279. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  280. package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
  281. package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
  282. package/packages/algod_client/src/models/genesis.js.map +1 -1
  283. package/packages/algod_client/src/models/genesis.mjs.map +1 -1
  284. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
  285. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
  286. package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
  287. package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
  288. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
  289. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
  290. package/packages/algod_client/src/models/ledger-state-delta.js +1 -1
  291. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  292. package/packages/algod_client/src/models/ledger-state-delta.mjs +2 -2
  293. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  294. package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
  295. package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
  296. package/packages/algod_client/src/models/node-status-response.js.map +1 -1
  297. package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
  298. package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
  299. package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
  300. package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
  301. package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
  302. package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
  303. package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
  304. package/packages/algod_client/src/models/scratch-change.js.map +1 -1
  305. package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
  306. package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
  307. package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
  308. package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
  309. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
  310. package/packages/algod_client/src/models/simulate-request.js +1 -1
  311. package/packages/algod_client/src/models/simulate-request.js.map +1 -1
  312. package/packages/algod_client/src/models/simulate-request.mjs +1 -1
  313. package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
  314. package/packages/algod_client/src/models/simulate-response.d.ts +3 -1
  315. package/packages/algod_client/src/models/simulate-response.js +10 -1
  316. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  317. package/packages/algod_client/src/models/simulate-response.mjs +9 -2
  318. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  319. package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
  320. package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
  321. package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
  322. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
  323. package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
  324. package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
  325. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +3 -5
  326. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +4 -6
  327. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  328. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +3 -5
  329. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  330. package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
  331. package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
  332. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
  333. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
  334. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
  335. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
  336. package/packages/algod_client/src/models/source-map.js.map +1 -1
  337. package/packages/algod_client/src/models/source-map.mjs.map +1 -1
  338. package/packages/algod_client/src/models/state-delta.js.map +1 -1
  339. package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
  340. package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
  341. package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
  342. package/packages/algod_client/src/models/state-proof.js.map +1 -1
  343. package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
  344. package/packages/algod_client/src/models/supply-response.js.map +1 -1
  345. package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
  346. package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
  347. package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
  348. package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
  349. package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
  350. package/packages/algod_client/src/models/teal-value.js.map +1 -1
  351. package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
  352. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
  353. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
  354. package/packages/algod_client/src/models/transaction-parameters-response.js +2 -2
  355. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  356. package/packages/algod_client/src/models/transaction-parameters-response.mjs +2 -2
  357. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  358. package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
  359. package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
  360. package/packages/algod_client/src/models/version.js.map +1 -1
  361. package/packages/algod_client/src/models/version.mjs.map +1 -1
  362. package/packages/common/src/address.d.ts +14 -3
  363. package/packages/common/src/address.js +14 -13
  364. package/packages/common/src/address.js.map +1 -1
  365. package/packages/common/src/address.mjs +8 -11
  366. package/packages/common/src/address.mjs.map +1 -1
  367. package/packages/common/src/array.d.ts +6 -0
  368. package/packages/common/src/codecs/composite/array.d.ts +25 -0
  369. package/packages/common/src/codecs/composite/array.js +1 -0
  370. package/packages/common/src/codecs/composite/array.js.map +1 -1
  371. package/packages/common/src/codecs/composite/array.mjs +1 -1
  372. package/packages/common/src/codecs/composite/array.mjs.map +1 -1
  373. package/packages/common/src/codecs/composite/map.d.ts +27 -0
  374. package/packages/common/src/codecs/composite/map.js +7 -4
  375. package/packages/common/src/codecs/composite/map.js.map +1 -1
  376. package/packages/common/src/codecs/composite/map.mjs +7 -4
  377. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  378. package/packages/common/src/codecs/composite/record.d.ts +20 -0
  379. package/packages/common/src/codecs/composite/record.js +1 -2
  380. package/packages/common/src/codecs/composite/record.js.map +1 -1
  381. package/packages/common/src/codecs/composite/record.mjs.map +1 -1
  382. package/packages/common/src/codecs/models/array-model.d.ts +19 -0
  383. package/packages/common/src/codecs/models/array-model.js.map +1 -1
  384. package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
  385. package/packages/common/src/codecs/models/object-model.js +2 -2
  386. package/packages/common/src/codecs/models/object-model.js.map +1 -1
  387. package/packages/common/src/codecs/models/object-model.mjs +2 -2
  388. package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
  389. package/packages/common/src/codecs/models/primitive-model.d.ts +19 -0
  390. package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
  391. package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
  392. package/packages/common/src/codecs/primitives/address.d.ts +16 -0
  393. package/packages/common/src/codecs/primitives/address.js +1 -2
  394. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  395. package/packages/common/src/codecs/primitives/bigint.d.ts +13 -0
  396. package/packages/common/src/codecs/primitives/boolean.d.ts +10 -0
  397. package/packages/common/src/codecs/primitives/bytes-base64.d.ts +15 -0
  398. package/packages/common/src/codecs/primitives/bytes-base64.js +26 -0
  399. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
  400. package/packages/common/src/codecs/primitives/bytes-base64.mjs +25 -0
  401. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
  402. package/packages/common/src/codecs/primitives/bytes.d.ts +15 -0
  403. package/packages/common/src/codecs/primitives/bytes.js +1 -2
  404. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  405. package/packages/common/src/codecs/primitives/fixed-bytes.d.ts +19 -0
  406. package/packages/common/src/codecs/primitives/fixed-bytes.js +1 -2
  407. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  408. package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
  409. package/packages/common/src/codecs/primitives/number.d.ts +11 -0
  410. package/packages/common/src/codecs/primitives/string.d.ts +13 -0
  411. package/packages/common/src/codecs/primitives/unknown.d.ts +27 -0
  412. package/packages/common/src/codecs/types.d.ts +12 -1
  413. package/packages/common/src/codecs/wire.d.ts +17 -1
  414. package/packages/common/src/codecs/wire.js +1 -2
  415. package/packages/common/src/codecs/wire.js.map +1 -1
  416. package/packages/common/src/codecs/wire.mjs.map +1 -1
  417. package/packages/common/src/constants.d.ts +34 -0
  418. package/packages/common/src/constants.js +2 -0
  419. package/packages/common/src/constants.js.map +1 -1
  420. package/packages/common/src/constants.mjs +2 -1
  421. package/packages/common/src/constants.mjs.map +1 -1
  422. package/packages/common/src/encoding.d.ts +10 -0
  423. package/packages/common/src/encoding.js +31 -0
  424. package/packages/common/src/encoding.js.map +1 -0
  425. package/packages/common/src/encoding.mjs +25 -0
  426. package/packages/common/src/encoding.mjs.map +1 -0
  427. package/packages/common/src/json.d.ts +17 -0
  428. package/packages/common/src/json.js +2 -2
  429. package/packages/common/src/json.mjs +2 -2
  430. package/packages/common/src/json.mjs.map +1 -1
  431. package/packages/common/src/msgpack.d.ts +11 -0
  432. package/packages/common/src/msgpack.js +1 -2
  433. package/packages/common/src/msgpack.js.map +1 -1
  434. package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +1 -1
  435. package/packages/{sdk/src/logic → common/src}/sourcemap.js +3 -3
  436. package/packages/common/src/sourcemap.js.map +1 -0
  437. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +1 -1
  438. package/packages/common/src/sourcemap.mjs.map +1 -0
  439. package/packages/crypto/src/ed25519.d.ts +60 -0
  440. package/packages/crypto/src/ed25519.js +59 -0
  441. package/packages/crypto/src/ed25519.js.map +1 -0
  442. package/packages/crypto/src/ed25519.mjs +54 -0
  443. package/packages/crypto/src/ed25519.mjs.map +1 -0
  444. package/packages/crypto/src/hash.d.ts +8 -0
  445. package/packages/crypto/src/hash.js +15 -0
  446. package/packages/crypto/src/hash.js.map +1 -0
  447. package/packages/crypto/src/hash.mjs +14 -0
  448. package/packages/crypto/src/hash.mjs.map +1 -0
  449. package/packages/crypto/src/hd.d.ts +40 -0
  450. package/packages/crypto/src/hd.js +37 -0
  451. package/packages/crypto/src/hd.js.map +1 -0
  452. package/packages/crypto/src/hd.mjs +36 -0
  453. package/packages/crypto/src/hd.mjs.map +1 -0
  454. package/packages/crypto/src/index.d.ts +28 -0
  455. package/packages/crypto/src/index.js +141 -0
  456. package/packages/crypto/src/index.js.map +1 -0
  457. package/packages/crypto/src/index.mjs +138 -0
  458. package/packages/crypto/src/index.mjs.map +1 -0
  459. package/packages/indexer_client/src/apis/api-service.d.ts +1 -1
  460. package/packages/indexer_client/src/apis/api-service.js +12 -12
  461. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  462. package/packages/indexer_client/src/apis/api-service.mjs +12 -12
  463. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  464. package/packages/indexer_client/src/core/api-error.js +3 -1
  465. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  466. package/packages/indexer_client/src/core/api-error.mjs +3 -1
  467. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  468. package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
  469. package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
  470. package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
  471. package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
  472. package/packages/indexer_client/src/core/model-runtime.js +0 -15
  473. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  474. package/packages/indexer_client/src/core/model-runtime.mjs +1 -13
  475. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  476. package/packages/indexer_client/src/core/request.js.map +1 -1
  477. package/packages/indexer_client/src/core/request.mjs.map +1 -1
  478. package/packages/indexer_client/src/models/account-participation.js +4 -4
  479. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  480. package/packages/indexer_client/src/models/account-participation.mjs +4 -4
  481. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  482. package/packages/indexer_client/src/models/account-response.js.map +1 -1
  483. package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
  484. package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
  485. package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
  486. package/packages/indexer_client/src/models/account.js.map +1 -1
  487. package/packages/indexer_client/src/models/account.mjs.map +1 -1
  488. package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
  489. package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
  490. package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
  491. package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
  492. package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
  493. package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
  494. package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
  495. package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
  496. package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
  497. package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
  498. package/packages/indexer_client/src/models/application-params.js.map +1 -1
  499. package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
  500. package/packages/indexer_client/src/models/application-response.js.map +1 -1
  501. package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
  502. package/packages/indexer_client/src/models/application-state-schema.d.ts +2 -2
  503. package/packages/indexer_client/src/models/application-state-schema.js +2 -2
  504. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  505. package/packages/indexer_client/src/models/application-state-schema.mjs +2 -2
  506. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  507. package/packages/indexer_client/src/models/application.js.map +1 -1
  508. package/packages/indexer_client/src/models/application.mjs.map +1 -1
  509. package/packages/indexer_client/src/models/applications-response.js.map +1 -1
  510. package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
  511. package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
  512. package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
  513. package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
  514. package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
  515. package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
  516. package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
  517. package/packages/indexer_client/src/models/asset-params.js +2 -1
  518. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  519. package/packages/indexer_client/src/models/asset-params.mjs +2 -1
  520. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  521. package/packages/indexer_client/src/models/asset-response.js.map +1 -1
  522. package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
  523. package/packages/indexer_client/src/models/asset.js.map +1 -1
  524. package/packages/indexer_client/src/models/asset.mjs.map +1 -1
  525. package/packages/indexer_client/src/models/assets-response.js.map +1 -1
  526. package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
  527. package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
  528. package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
  529. package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
  530. package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
  531. package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
  532. package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
  533. package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
  534. package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
  535. package/packages/indexer_client/src/models/block.d.ts +5 -5
  536. package/packages/indexer_client/src/models/block.js +13 -13
  537. package/packages/indexer_client/src/models/block.js.map +1 -1
  538. package/packages/indexer_client/src/models/block.mjs +13 -13
  539. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  540. package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
  541. package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
  542. package/packages/indexer_client/src/models/box-reference.js.map +1 -1
  543. package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
  544. package/packages/indexer_client/src/models/box.js.map +1 -1
  545. package/packages/indexer_client/src/models/box.mjs.map +1 -1
  546. package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
  547. package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
  548. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +1 -1
  549. package/packages/indexer_client/src/models/eval-delta-key-value.js +2 -2
  550. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  551. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +2 -2
  552. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  553. package/packages/indexer_client/src/models/eval-delta.d.ts +1 -1
  554. package/packages/indexer_client/src/models/eval-delta.js +2 -2
  555. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  556. package/packages/indexer_client/src/models/eval-delta.mjs +2 -2
  557. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  558. package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
  559. package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
  560. package/packages/indexer_client/src/models/hb-proof-fields.js +6 -6
  561. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  562. package/packages/indexer_client/src/models/hb-proof-fields.mjs +6 -6
  563. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  564. package/packages/indexer_client/src/models/health-check.js.map +1 -1
  565. package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
  566. package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
  567. package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
  568. package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
  569. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
  570. package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
  571. package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
  572. package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
  573. package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
  574. package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
  575. package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
  576. package/packages/indexer_client/src/models/on-completion.js.map +1 -1
  577. package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
  578. package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
  579. package/packages/indexer_client/src/models/participation-updates.js +2 -2
  580. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  581. package/packages/indexer_client/src/models/participation-updates.mjs +2 -2
  582. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  583. package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
  584. package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
  585. package/packages/indexer_client/src/models/state-delta.js.map +1 -1
  586. package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
  587. package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
  588. package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
  589. package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
  590. package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
  591. package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
  592. package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
  593. package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
  594. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
  595. package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
  596. package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
  597. package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
  598. package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
  599. package/packages/indexer_client/src/models/state-proof-verifier.js +2 -2
  600. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  601. package/packages/indexer_client/src/models/state-proof-verifier.mjs +2 -2
  602. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  603. package/packages/indexer_client/src/models/state-schema.d.ts +2 -2
  604. package/packages/indexer_client/src/models/state-schema.js +2 -2
  605. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  606. package/packages/indexer_client/src/models/state-schema.mjs +2 -2
  607. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  608. package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
  609. package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
  610. package/packages/indexer_client/src/models/teal-key-value.d.ts +1 -1
  611. package/packages/indexer_client/src/models/teal-key-value.js +2 -2
  612. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  613. package/packages/indexer_client/src/models/teal-key-value.mjs +2 -2
  614. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  615. package/packages/indexer_client/src/models/teal-value.js.map +1 -1
  616. package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
  617. package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
  618. package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
  619. package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
  620. package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
  621. package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
  622. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
  623. package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
  624. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
  625. package/packages/indexer_client/src/models/transaction-heartbeat.js +2 -1
  626. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  627. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +2 -1
  628. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  629. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -4
  630. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  631. package/packages/indexer_client/src/models/transaction-keyreg.mjs +4 -4
  632. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  633. package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
  634. package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
  635. package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
  636. package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
  637. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +2 -1
  638. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  639. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +2 -1
  640. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  641. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +3 -3
  642. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  643. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +3 -3
  644. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  645. package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
  646. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
  647. package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
  648. package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
  649. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -1
  650. package/packages/indexer_client/src/models/transaction-state-proof.js +2 -2
  651. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  652. package/packages/indexer_client/src/models/transaction-state-proof.mjs +2 -2
  653. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  654. package/packages/indexer_client/src/models/transaction.d.ts +2 -2
  655. package/packages/indexer_client/src/models/transaction.js +6 -5
  656. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  657. package/packages/indexer_client/src/models/transaction.mjs +6 -5
  658. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  659. package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
  660. package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
  661. package/packages/kmd_client/src/apis/api-service.d.ts +5 -5
  662. package/packages/kmd_client/src/apis/api-service.js +32 -32
  663. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  664. package/packages/kmd_client/src/apis/api-service.mjs +32 -32
  665. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  666. package/packages/kmd_client/src/core/api-error.js +3 -1
  667. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  668. package/packages/kmd_client/src/core/api-error.mjs +3 -1
  669. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  670. package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
  671. package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
  672. package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
  673. package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
  674. package/packages/kmd_client/src/core/model-runtime.js +2 -12
  675. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  676. package/packages/kmd_client/src/core/model-runtime.mjs +3 -11
  677. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  678. package/packages/kmd_client/src/core/request.js.map +1 -1
  679. package/packages/kmd_client/src/core/request.mjs.map +1 -1
  680. package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
  681. package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
  682. package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
  683. package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
  684. package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
  685. package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
  686. package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
  687. package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
  688. package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
  689. package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
  690. package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
  691. package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
  692. package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
  693. package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
  694. package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
  695. package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
  696. package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
  697. package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
  698. package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
  699. package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
  700. package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
  701. package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
  702. package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
  703. package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
  704. package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
  705. package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
  706. package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
  707. package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
  708. package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
  709. package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
  710. package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
  711. package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
  712. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
  713. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
  714. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
  715. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
  716. package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
  717. package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
  718. package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
  719. package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
  720. package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
  721. package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
  722. package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
  723. package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
  724. package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
  725. package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
  726. package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
  727. package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
  728. package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
  729. package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
  730. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
  731. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
  732. package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
  733. package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
  734. package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
  735. package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
  736. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
  737. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
  738. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
  739. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
  740. package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
  741. package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
  742. package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
  743. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
  744. package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
  745. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
  746. package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
  747. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
  748. package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
  749. package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
  750. package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
  751. package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
  752. package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
  753. package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
  754. package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
  755. package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
  756. package/packages/kmd_client/src/models/tx-type.js.map +1 -1
  757. package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
  758. package/packages/kmd_client/src/models/versions-response.js.map +1 -1
  759. package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
  760. package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
  761. package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
  762. package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
  763. package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
  764. package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
  765. package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
  766. package/packages/kmd_client/src/models/wallet.js.map +1 -1
  767. package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
  768. package/packages/testing/src/globalSetup.js +40 -0
  769. package/packages/testing/src/globalSetup.js.map +1 -0
  770. package/packages/testing/src/globalSetup.mjs +36 -0
  771. package/packages/testing/src/globalSetup.mjs.map +1 -0
  772. package/packages/testing/src/mockServer.js +95 -0
  773. package/packages/testing/src/mockServer.js.map +1 -0
  774. package/packages/testing/src/mockServer.mjs +83 -0
  775. package/packages/testing/src/mockServer.mjs.map +1 -0
  776. package/packages/transact/src/logicsig.d.ts +35 -33
  777. package/packages/transact/src/logicsig.js +75 -77
  778. package/packages/transact/src/logicsig.js.map +1 -1
  779. package/packages/transact/src/logicsig.mjs +78 -79
  780. package/packages/transact/src/logicsig.mjs.map +1 -1
  781. package/packages/transact/src/multisig.d.ts +11 -116
  782. package/packages/transact/src/multisig.js +108 -138
  783. package/packages/transact/src/multisig.js.map +1 -1
  784. package/packages/transact/src/multisig.mjs +109 -119
  785. package/packages/transact/src/multisig.mjs.map +1 -1
  786. package/packages/transact/src/signer.d.ts +11 -3
  787. package/packages/transact/src/signer.js +24 -2
  788. package/packages/transact/src/signer.js.map +1 -1
  789. package/packages/transact/src/signer.mjs +25 -4
  790. package/packages/transact/src/signer.mjs.map +1 -1
  791. package/packages/transact/src/transactions/app-call.d.ts +10 -15
  792. package/packages/transact/src/transactions/app-call.js +8 -8
  793. package/packages/transact/src/transactions/app-call.js.map +1 -1
  794. package/packages/transact/src/transactions/app-call.mjs +8 -8
  795. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  796. package/packages/transact/src/transactions/asset-config.d.ts +1 -6
  797. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  798. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  799. package/packages/transact/src/transactions/asset-freeze.d.ts +1 -6
  800. package/packages/transact/src/transactions/asset-transfer.d.ts +1 -6
  801. package/packages/transact/src/transactions/common.js +7 -7
  802. package/packages/transact/src/transactions/common.js.map +1 -1
  803. package/packages/transact/src/transactions/common.mjs +7 -7
  804. package/packages/transact/src/transactions/common.mjs.map +1 -1
  805. package/packages/transact/src/transactions/key-registration.d.ts +1 -8
  806. package/packages/transact/src/transactions/reference-types-meta.d.ts +26 -0
  807. package/packages/transact/src/transactions/reference-types-meta.js +71 -0
  808. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -0
  809. package/packages/transact/src/transactions/reference-types-meta.mjs +69 -0
  810. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -0
  811. package/packages/transact/src/transactions/signed-transaction-meta.js +8 -9
  812. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  813. package/packages/transact/src/transactions/signed-transaction-meta.mjs +8 -8
  814. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  815. package/packages/transact/src/transactions/signed-transaction.d.ts +22 -6
  816. package/packages/transact/src/transactions/signed-transaction.js +17 -1
  817. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  818. package/packages/transact/src/transactions/signed-transaction.mjs +16 -2
  819. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  820. package/packages/transact/src/transactions/state-proof.d.ts +1 -1
  821. package/packages/transact/src/transactions/transaction-meta.js +29 -23
  822. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  823. package/packages/transact/src/transactions/transaction-meta.mjs +29 -23
  824. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  825. package/packages/transact/src/transactions/transaction-type.js +11 -11
  826. package/packages/transact/src/transactions/transaction-type.js.map +1 -1
  827. package/packages/transact/src/transactions/transaction-type.mjs +11 -11
  828. package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
  829. package/packages/transact/src/transactions/transaction.d.ts +5 -2
  830. package/packages/transact/src/transactions/transaction.js +11 -10
  831. package/packages/transact/src/transactions/transaction.js.map +1 -1
  832. package/packages/transact/src/transactions/transaction.mjs +6 -5
  833. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  834. package/testing/account.d.ts +2 -2
  835. package/testing/account.js +2 -3
  836. package/testing/account.js.map +1 -1
  837. package/testing/account.mjs +2 -3
  838. package/testing/account.mjs.map +1 -1
  839. package/testing/fixtures/algokit-log-capture-fixture.d.ts +1 -1
  840. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  841. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  842. package/testing/fixtures/algorand-fixture.d.ts +5 -5
  843. package/testing/fixtures/algorand-fixture.js +2 -2
  844. package/testing/fixtures/algorand-fixture.js.map +1 -1
  845. package/testing/fixtures/algorand-fixture.mjs +2 -2
  846. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  847. package/testing/index.d.ts +2 -1
  848. package/testing/index.js +19 -0
  849. package/testing/index.mjs +3 -1
  850. package/testing/indexer.js.map +1 -1
  851. package/testing/indexer.mjs.map +1 -1
  852. package/testing/test-logger.d.ts +1 -1
  853. package/testing/test-logger.js.map +1 -1
  854. package/testing/test-logger.mjs.map +1 -1
  855. package/testing/types.d.ts +156 -0
  856. package/transact/index.d.ts +12 -11
  857. package/transact/index.js +10 -31
  858. package/transact/index.mjs +8 -11
  859. package/transaction/index.d.ts +4 -0
  860. package/transaction/index.js +10 -0
  861. package/transaction/index.mjs +4 -0
  862. package/transaction/perform-transaction-composer-simulate.d.ts +1 -1
  863. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  864. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  865. package/transaction/transaction.d.ts +2 -4
  866. package/transaction/transaction.js +2 -4
  867. package/transaction/transaction.js.map +1 -1
  868. package/transaction/transaction.mjs +2 -4
  869. package/transaction/transaction.mjs.map +1 -1
  870. package/transaction/types.d.ts +133 -0
  871. package/transactions/app-call.d.ts +6 -5
  872. package/transactions/app-call.js +49 -49
  873. package/transactions/app-call.js.map +1 -1
  874. package/transactions/app-call.mjs +49 -49
  875. package/transactions/app-call.mjs.map +1 -1
  876. package/transactions/asset-config.d.ts +1 -1
  877. package/transactions/asset-config.js +1 -1
  878. package/transactions/asset-config.js.map +1 -1
  879. package/transactions/asset-config.mjs +1 -1
  880. package/transactions/asset-config.mjs.map +1 -1
  881. package/transactions/common.d.ts +1 -1
  882. package/transactions/common.js.map +1 -1
  883. package/transactions/common.mjs.map +1 -1
  884. package/transactions/fee-coverage.js +6 -6
  885. package/transactions/fee-coverage.js.map +1 -1
  886. package/transactions/fee-coverage.mjs +6 -6
  887. package/transactions/fee-coverage.mjs.map +1 -1
  888. package/transactions/key-registration.d.ts +1 -1
  889. package/transactions/key-registration.js.map +1 -1
  890. package/transactions/key-registration.mjs.map +1 -1
  891. package/transactions/method-call.d.ts +2 -2
  892. package/transactions/method-call.js +74 -81
  893. package/transactions/method-call.js.map +1 -1
  894. package/transactions/method-call.mjs +74 -81
  895. package/transactions/method-call.mjs.map +1 -1
  896. package/transactions/payment.d.ts +1 -1
  897. package/transactions/payment.js.map +1 -1
  898. package/transactions/payment.mjs.map +1 -1
  899. package/types/account-manager.d.ts +11 -444
  900. package/types/account-manager.js +6 -606
  901. package/types/account-manager.js.map +1 -1
  902. package/types/account-manager.mjs +5 -604
  903. package/types/account-manager.mjs.map +1 -1
  904. package/types/account.d.ts +8 -150
  905. package/types/account.js +4 -4
  906. package/types/account.js.map +1 -1
  907. package/types/account.mjs +4 -4
  908. package/types/account.mjs.map +1 -1
  909. package/types/algorand-client-transaction-creator.d.ts +5 -1084
  910. package/types/algorand-client-transaction-creator.js +4 -721
  911. package/types/algorand-client-transaction-creator.js.map +1 -1
  912. package/types/algorand-client-transaction-creator.mjs +4 -721
  913. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  914. package/types/algorand-client-transaction-sender.d.ts +5 -1298
  915. package/types/algorand-client-transaction-sender.js +4 -920
  916. package/types/algorand-client-transaction-sender.js.map +1 -1
  917. package/types/algorand-client-transaction-sender.mjs +3 -918
  918. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  919. package/types/algorand-client.d.ts +5 -241
  920. package/types/algorand-client.js +4 -319
  921. package/types/algorand-client.js.map +1 -1
  922. package/types/algorand-client.mjs +3 -319
  923. package/types/algorand-client.mjs.map +1 -1
  924. package/types/amount.d.ts +6 -45
  925. package/types/amount.js +4 -60
  926. package/types/amount.js.map +1 -1
  927. package/types/amount.mjs +3 -60
  928. package/types/amount.mjs.map +1 -1
  929. package/types/app-client.d.ts +75 -2120
  930. package/types/app-client.js +4 -904
  931. package/types/app-client.js.map +1 -1
  932. package/types/app-client.mjs +3 -902
  933. package/types/app-client.mjs.map +1 -1
  934. package/types/app-deployer.d.ts +21 -161
  935. package/types/app-deployer.js +4 -347
  936. package/types/app-deployer.js.map +1 -1
  937. package/types/app-deployer.mjs +3 -347
  938. package/types/app-deployer.mjs.map +1 -1
  939. package/types/app-factory.d.ts +21 -957
  940. package/types/app-factory.js +4 -442
  941. package/types/app-factory.js.map +1 -1
  942. package/types/app-factory.mjs +3 -442
  943. package/types/app-factory.mjs.map +1 -1
  944. package/types/app-manager.d.ts +15 -316
  945. package/types/app-manager.js +4 -461
  946. package/types/app-manager.js.map +1 -1
  947. package/types/app-manager.mjs +3 -461
  948. package/types/app-manager.mjs.map +1 -1
  949. package/types/app-spec.d.ts +39 -198
  950. package/types/app-spec.js +4 -124
  951. package/types/app-spec.js.map +1 -1
  952. package/types/app-spec.mjs +3 -124
  953. package/types/app-spec.mjs.map +1 -1
  954. package/types/app.d.ts +63 -248
  955. package/types/app.js +16 -37
  956. package/types/app.js.map +1 -1
  957. package/types/app.mjs +16 -37
  958. package/types/app.mjs.map +1 -1
  959. package/types/asset-manager.d.ts +9 -207
  960. package/types/asset-manager.js +4 -160
  961. package/types/asset-manager.js.map +1 -1
  962. package/types/asset-manager.mjs +3 -160
  963. package/types/asset-manager.mjs.map +1 -1
  964. package/types/async-event-emitter.d.ts +7 -14
  965. package/types/async-event-emitter.js +4 -32
  966. package/types/async-event-emitter.js.map +1 -1
  967. package/types/async-event-emitter.mjs +4 -32
  968. package/types/async-event-emitter.mjs.map +1 -1
  969. package/types/client-manager.d.ts +27 -470
  970. package/types/client-manager.js +4 -610
  971. package/types/client-manager.js.map +1 -1
  972. package/types/client-manager.mjs +3 -610
  973. package/types/client-manager.mjs.map +1 -1
  974. package/types/composer.d.ts +79 -935
  975. package/types/composer.js +4 -1566
  976. package/types/composer.js.map +1 -1
  977. package/types/composer.mjs +3 -1564
  978. package/types/composer.mjs.map +1 -1
  979. package/types/config.d.ts +7 -52
  980. package/types/config.js +4 -74
  981. package/types/config.js.map +1 -1
  982. package/types/config.mjs +3 -74
  983. package/types/config.mjs.map +1 -1
  984. package/types/debugging.d.ts +12 -33
  985. package/types/debugging.js +12 -10
  986. package/types/debugging.js.map +1 -1
  987. package/types/debugging.mjs +12 -10
  988. package/types/debugging.mjs.map +1 -1
  989. package/types/dispenser-client.d.ts +11 -85
  990. package/types/dispenser-client.js +4 -121
  991. package/types/dispenser-client.js.map +1 -1
  992. package/types/dispenser-client.mjs +3 -121
  993. package/types/dispenser-client.mjs.map +1 -1
  994. package/types/expand.d.ts +4 -5
  995. package/types/indexer.d.ts +16 -36
  996. package/types/indexer.js +8 -30
  997. package/types/indexer.js.map +1 -1
  998. package/types/indexer.mjs +8 -30
  999. package/types/indexer.mjs.map +1 -1
  1000. package/types/instance-of.d.ts +4 -4
  1001. package/types/kmd-account-manager.d.ts +5 -68
  1002. package/types/kmd-account-manager.js +4 -150
  1003. package/types/kmd-account-manager.js.map +1 -1
  1004. package/types/kmd-account-manager.mjs +3 -148
  1005. package/types/kmd-account-manager.mjs.map +1 -1
  1006. package/types/lifecycle-events.d.ts +7 -10
  1007. package/types/lifecycle-events.js +4 -5
  1008. package/types/lifecycle-events.js.map +1 -1
  1009. package/types/lifecycle-events.mjs +4 -5
  1010. package/types/lifecycle-events.mjs.map +1 -1
  1011. package/types/logging.d.ts +14 -9
  1012. package/types/logging.js +12 -37
  1013. package/types/logging.js.map +1 -1
  1014. package/types/logging.mjs +12 -37
  1015. package/types/logging.mjs.map +1 -1
  1016. package/types/logic-error.d.ts +8 -35
  1017. package/types/logic-error.js +4 -48
  1018. package/types/logic-error.js.map +1 -1
  1019. package/types/logic-error.mjs +4 -48
  1020. package/types/logic-error.mjs.map +1 -1
  1021. package/types/network-client.d.ts +10 -39
  1022. package/types/network-client.js +4 -8
  1023. package/types/network-client.js.map +1 -1
  1024. package/types/network-client.mjs +4 -8
  1025. package/types/network-client.mjs.map +1 -1
  1026. package/types/testing.d.ts +13 -151
  1027. package/types/transaction.d.ts +33 -128
  1028. package/updatable-config.d.ts +57 -0
  1029. package/updatable-config.js +80 -0
  1030. package/updatable-config.js.map +1 -0
  1031. package/updatable-config.mjs +80 -0
  1032. package/updatable-config.mjs.map +1 -0
  1033. package/util.js +1 -1
  1034. package/util.js.map +1 -1
  1035. package/util.mjs +1 -1
  1036. package/util.mjs.map +1 -1
  1037. package/_virtual/rolldown_runtime.mjs +0 -13
  1038. package/indexer-lookup.js.map +0 -1
  1039. package/indexer-lookup.mjs.map +0 -1
  1040. package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
  1041. package/packages/algod_client/src/models/application-local-reference.d.ts +0 -20
  1042. package/packages/algod_client/src/models/application-local-reference.js +0 -23
  1043. package/packages/algod_client/src/models/application-local-reference.js.map +0 -1
  1044. package/packages/algod_client/src/models/application-local-reference.mjs +0 -23
  1045. package/packages/algod_client/src/models/application-local-reference.mjs.map +0 -1
  1046. package/packages/algod_client/src/models/asset-holding-reference.d.ts +0 -20
  1047. package/packages/algod_client/src/models/asset-holding-reference.js +0 -23
  1048. package/packages/algod_client/src/models/asset-holding-reference.js.map +0 -1
  1049. package/packages/algod_client/src/models/asset-holding-reference.mjs +0 -23
  1050. package/packages/algod_client/src/models/asset-holding-reference.mjs.map +0 -1
  1051. package/packages/algod_client/src/models/box-reference.d.ts +0 -17
  1052. package/packages/algod_client/src/models/box-reference.js +0 -23
  1053. package/packages/algod_client/src/models/box-reference.js.map +0 -1
  1054. package/packages/algod_client/src/models/box-reference.mjs +0 -23
  1055. package/packages/algod_client/src/models/box-reference.mjs.map +0 -1
  1056. package/packages/common/src/crypto.js +0 -13
  1057. package/packages/common/src/crypto.js.map +0 -1
  1058. package/packages/common/src/crypto.mjs +0 -11
  1059. package/packages/common/src/crypto.mjs.map +0 -1
  1060. package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
  1061. package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
  1062. package/packages/sdk/src/convert.d.ts +0 -17
  1063. package/packages/sdk/src/convert.js +0 -28
  1064. package/packages/sdk/src/convert.js.map +0 -1
  1065. package/packages/sdk/src/convert.mjs +0 -25
  1066. package/packages/sdk/src/convert.mjs.map +0 -1
  1067. package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
  1068. package/packages/sdk/src/encoding/binarydata.js +0 -65
  1069. package/packages/sdk/src/encoding/binarydata.js.map +0 -1
  1070. package/packages/sdk/src/encoding/binarydata.mjs +0 -60
  1071. package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
  1072. package/packages/sdk/src/encoding/encoding.d.ts +0 -237
  1073. package/packages/sdk/src/encoding/encoding.js +0 -302
  1074. package/packages/sdk/src/encoding/encoding.js.map +0 -1
  1075. package/packages/sdk/src/encoding/encoding.mjs +0 -287
  1076. package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
  1077. package/packages/sdk/src/encoding/schema/array.js +0 -35
  1078. package/packages/sdk/src/encoding/schema/array.js.map +0 -1
  1079. package/packages/sdk/src/encoding/schema/array.mjs +0 -35
  1080. package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
  1081. package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
  1082. package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
  1083. package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
  1084. package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
  1085. package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
  1086. package/packages/sdk/src/encoding/schema/map.js +0 -110
  1087. package/packages/sdk/src/encoding/schema/map.js.map +0 -1
  1088. package/packages/sdk/src/encoding/schema/map.mjs +0 -107
  1089. package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
  1090. package/packages/sdk/src/encoding/schema/optional.js +0 -46
  1091. package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
  1092. package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
  1093. package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
  1094. package/packages/sdk/src/encoding/schema/uint64.js +0 -30
  1095. package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
  1096. package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
  1097. package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
  1098. package/packages/sdk/src/encoding/uint64.d.ts +0 -34
  1099. package/packages/sdk/src/encoding/uint64.js +0 -34
  1100. package/packages/sdk/src/encoding/uint64.js.map +0 -1
  1101. package/packages/sdk/src/encoding/uint64.mjs +0 -33
  1102. package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
  1103. package/packages/sdk/src/index.d.ts +0 -44
  1104. package/packages/sdk/src/index.js +0 -62
  1105. package/packages/sdk/src/index.js.map +0 -1
  1106. package/packages/sdk/src/index.mjs +0 -58
  1107. package/packages/sdk/src/index.mjs.map +0 -1
  1108. package/packages/sdk/src/logic/sourcemap.js.map +0 -1
  1109. package/packages/sdk/src/logic/sourcemap.mjs.map +0 -1
  1110. package/packages/sdk/src/nacl/naclWrappers.js +0 -14
  1111. package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
  1112. package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
  1113. package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
  1114. package/packages/sdk/src/types/intDecoding.d.ts +0 -28
  1115. package/packages/sdk/src/types/intDecoding.js +0 -32
  1116. package/packages/sdk/src/types/intDecoding.js.map +0 -1
  1117. package/packages/sdk/src/types/intDecoding.mjs +0 -31
  1118. package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
  1119. package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
  1120. package/packages/sdk/src/types/transactions/encoded.js +0 -64
  1121. package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
  1122. package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
  1123. package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
  1124. package/packages/sdk/src/utils/utils.d.ts +0 -64
  1125. package/packages/sdk/src/utils/utils.js +0 -140
  1126. package/packages/sdk/src/utils/utils.js.map +0 -1
  1127. package/packages/sdk/src/utils/utils.mjs +0 -128
  1128. package/packages/sdk/src/utils/utils.mjs.map +0 -1
  1129. package/packages/transact/src/transactions/common.d.ts +0 -37
  1130. package/sdk/index.d.ts +0 -10
  1131. package/sdk/index.js +0 -59
  1132. package/sdk/index.mjs +0 -11
@@ -0,0 +1,36 @@
1
+ import { getMockServer } from "./mockServer.mjs";
2
+ import { config } from "dotenv";
3
+ import { resolve } from "node:path";
4
+ import { fileURLToPath } from "node:url";
5
+
6
+ //#region packages/testing/src/globalSetup.ts
7
+ /**
8
+ * Vitest global setup factory for mock server lifecycle.
9
+ * Set MOCK_ALGOD_URL / MOCK_INDEXER_URL / MOCK_KMD_URL to use an external server.
10
+ */
11
+ config({ path: resolve(resolve(resolve(fileURLToPath(import.meta.url), ".."), "..", "..", ".."), ".env") });
12
+ const log = process.env.DEBUG_MOCK_SERVER === "true" ? console.log.bind(console) : () => {};
13
+ function createGlobalSetup(clientType) {
14
+ let mockServer = null;
15
+ return async function setup() {
16
+ log(`[MockServer] Connecting to ${clientType} mock server...`);
17
+ try {
18
+ mockServer = await getMockServer(clientType);
19
+ log(`[MockServer] ${clientType} server ready at ${mockServer.baseUrl}`);
20
+ return async () => {
21
+ log(`[MockServer] Disconnecting from ${clientType} mock server...`);
22
+ log(`[MockServer] ${clientType} server disconnected`);
23
+ };
24
+ } catch (error) {
25
+ console.error(`[MockServer] Failed to connect to ${clientType} server:`, error);
26
+ throw error;
27
+ }
28
+ };
29
+ }
30
+ const algodGlobalSetup = createGlobalSetup("algod");
31
+ const indexerGlobalSetup = createGlobalSetup("indexer");
32
+ const kmdGlobalSetup = createGlobalSetup("kmd");
33
+
34
+ //#endregion
35
+ export { algodGlobalSetup, createGlobalSetup, indexerGlobalSetup, kmdGlobalSetup };
36
+ //# sourceMappingURL=globalSetup.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalSetup.mjs","names":[],"sources":["../../../../packages/testing/src/globalSetup.ts"],"sourcesContent":["/**\n * Vitest global setup factory for mock server lifecycle.\n * Set MOCK_ALGOD_URL / MOCK_INDEXER_URL / MOCK_KMD_URL to use an external server.\n */\n\nimport { config } from 'dotenv'\nimport { resolve } from 'node:path'\nimport { fileURLToPath } from 'node:url'\nimport { getMockServer, type ClientType, type MockServer } from './mockServer'\n\nconst currentDir = resolve(fileURLToPath(import.meta.url), '..')\nconst projectRoot = resolve(currentDir, '..', '..', '..')\nconfig({ path: resolve(projectRoot, '.env') })\n\nconst debug = process.env.DEBUG_MOCK_SERVER === 'true'\nconst log = debug ? console.log.bind(console) : () => {}\n\nexport function createGlobalSetup(clientType: ClientType) {\n let mockServer: MockServer | null = null\n\n return async function setup(): Promise<() => Promise<void>> {\n log(`[MockServer] Connecting to ${clientType} mock server...`)\n\n try {\n mockServer = await getMockServer(clientType)\n log(`[MockServer] ${clientType} server ready at ${mockServer.baseUrl}`)\n\n return async () => {\n log(`[MockServer] Disconnecting from ${clientType} mock server...`)\n log(`[MockServer] ${clientType} server disconnected`)\n }\n } catch (error) {\n console.error(`[MockServer] Failed to connect to ${clientType} server:`, error)\n throw error\n }\n }\n}\n\nexport const algodGlobalSetup = createGlobalSetup('algod')\nexport const indexerGlobalSetup = createGlobalSetup('indexer')\nexport const kmdGlobalSetup = createGlobalSetup('kmd')\n"],"mappings":";;;;;;;;;;AAYA,OAAO,EAAE,MAAM,QADK,QADD,QAAQ,cAAc,OAAO,KAAK,IAAI,EAAE,KAAK,EACxB,MAAM,MAAM,KAAK,EACrB,OAAO,EAAE,CAAC;AAG9C,MAAM,MADQ,QAAQ,IAAI,sBAAsB,SAC5B,QAAQ,IAAI,KAAK,QAAQ,SAAS;AAEtD,SAAgB,kBAAkB,YAAwB;CACxD,IAAI,aAAgC;AAEpC,QAAO,eAAe,QAAsC;AAC1D,MAAI,8BAA8B,WAAW,iBAAiB;AAE9D,MAAI;AACF,gBAAa,MAAM,cAAc,WAAW;AAC5C,OAAI,gBAAgB,WAAW,mBAAmB,WAAW,UAAU;AAEvE,UAAO,YAAY;AACjB,QAAI,mCAAmC,WAAW,iBAAiB;AACnE,QAAI,gBAAgB,WAAW,sBAAsB;;WAEhD,OAAO;AACd,WAAQ,MAAM,qCAAqC,WAAW,WAAW,MAAM;AAC/E,SAAM;;;;AAKZ,MAAa,mBAAmB,kBAAkB,QAAQ;AAC1D,MAAa,qBAAqB,kBAAkB,UAAU;AAC9D,MAAa,iBAAiB,kBAAkB,MAAM"}
@@ -0,0 +1,95 @@
1
+
2
+ //#region packages/testing/src/mockServer.ts
3
+ /** Environment variable names for external mock server URLs */
4
+ const EXTERNAL_URL_ENV_VARS = {
5
+ algod: "MOCK_ALGOD_URL",
6
+ indexer: "MOCK_INDEXER_URL",
7
+ kmd: "MOCK_KMD_URL"
8
+ };
9
+ /** Default token used for mock server authentication */
10
+ const DEFAULT_TOKEN = "a".repeat(64);
11
+ /** Default ports for mock servers when running locally (matches algokit-polytest defaults) */
12
+ const MOCK_PORTS = {
13
+ algod: { host: 8e3 },
14
+ indexer: { host: 8002 },
15
+ kmd: { host: 8001 }
16
+ };
17
+ /**
18
+ * Check if a server is reachable by performing a health check.
19
+ *
20
+ * @param url - The base URL of the server to check
21
+ * @param timeout - Maximum time to wait for the server to respond (default: 5000ms)
22
+ * @returns Promise resolving to true if server is healthy, false otherwise
23
+ */
24
+ async function checkServerHealth(url, timeout = 5e3) {
25
+ const healthUrl = `${url.replace(/\/$/, "")}/health`;
26
+ const start = Date.now();
27
+ while (Date.now() - start < timeout) try {
28
+ const controller = new AbortController();
29
+ const timeoutId = setTimeout(() => controller.abort(), 2e3);
30
+ try {
31
+ await fetch(healthUrl, { signal: controller.signal });
32
+ clearTimeout(timeoutId);
33
+ return true;
34
+ } catch (error) {
35
+ clearTimeout(timeoutId);
36
+ if (error instanceof Error && error.name === "AbortError") {
37
+ await new Promise((resolve) => setTimeout(resolve, 200));
38
+ continue;
39
+ }
40
+ throw error;
41
+ }
42
+ } catch {
43
+ await new Promise((resolve) => setTimeout(resolve, 200));
44
+ }
45
+ return false;
46
+ }
47
+ /**
48
+ * Get a mock server instance for the specified client type.
49
+ *
50
+ * Reads the appropriate environment variable (MOCK_ALGOD_URL, MOCK_INDEXER_URL, or MOCK_KMD_URL)
51
+ * and validates that the server is reachable before returning a MockServer instance.
52
+ *
53
+ * @param clientType - The type of client to get a mock server for ('algod', 'indexer', or 'kmd')
54
+ * @returns Promise resolving to a MockServer instance
55
+ * @throws Error if the environment variable is not set or the server is not reachable
56
+ *
57
+ * @example
58
+ * ```typescript
59
+ * const server = await getMockServer('algod')
60
+ * const client = new AlgodClient(DEFAULT_TOKEN, server.baseUrl)
61
+ * // ... run tests ...
62
+ * ```
63
+ */
64
+ async function getMockServer(clientType) {
65
+ const envVar = EXTERNAL_URL_ENV_VARS[clientType];
66
+ const externalUrl = process.env[envVar];
67
+ if (!externalUrl) throw new Error(`Environment variable ${envVar} is not set. Please start the mock server externally and set the URL. See the "Mock Server for Client Tests" section in README.md for local development setup.`);
68
+ if (!await checkServerHealth(externalUrl)) throw new Error(`Mock ${clientType} server at ${externalUrl} is not reachable. Please ensure the server is running and accessible.`);
69
+ return {
70
+ baseUrl: externalUrl.replace(/\/$/, ""),
71
+ clientType
72
+ };
73
+ }
74
+ const TEST_ADDRESS = "25M5BT2DMMED3V6CWDEYKSNEFGPXX4QBIINCOICLXXRU3UGTSGRMF3MTOE";
75
+ const TEST_APP_ID = 718348254;
76
+ const TEST_APP_ID_WITH_BOXES = 742949200;
77
+ const TEST_BOX_NAME = "b64:cBbHBNV+zUy/Mz5IRhIrBLxr1on5wmidhXEavV+SasC8";
78
+ const TEST_ASSET_ID = 705457144;
79
+ const TEST_TXID = "VIXTUMAPT7NR4RB2WVOGMETW4QY43KIDA3HWDWWXS3UEDKGTEECQ";
80
+ const TEST_ROUND = 24099447;
81
+
82
+ //#endregion
83
+ exports.DEFAULT_TOKEN = DEFAULT_TOKEN;
84
+ exports.EXTERNAL_URL_ENV_VARS = EXTERNAL_URL_ENV_VARS;
85
+ exports.MOCK_PORTS = MOCK_PORTS;
86
+ exports.TEST_ADDRESS = TEST_ADDRESS;
87
+ exports.TEST_APP_ID = TEST_APP_ID;
88
+ exports.TEST_APP_ID_WITH_BOXES = TEST_APP_ID_WITH_BOXES;
89
+ exports.TEST_ASSET_ID = TEST_ASSET_ID;
90
+ exports.TEST_BOX_NAME = TEST_BOX_NAME;
91
+ exports.TEST_ROUND = TEST_ROUND;
92
+ exports.TEST_TXID = TEST_TXID;
93
+ exports.checkServerHealth = checkServerHealth;
94
+ exports.getMockServer = getMockServer;
95
+ //# sourceMappingURL=mockServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockServer.js","names":[],"sources":["../../../../packages/testing/src/mockServer.ts"],"sourcesContent":["/**\n * Mock server infrastructure for algod/indexer/kmd client testing.\n *\n * Connects to externally managed mock servers that replay pre-recorded HAR files.\n * The mock server must be started separately (via GitHub Action in CI, or manually via bun for local dev).\n *\n * Set MOCK_ALGOD_URL / MOCK_INDEXER_URL / MOCK_KMD_URL environment variables to specify server URLs.\n */\n\n/** Supported client types for mock servers */\nexport type ClientType = 'algod' | 'indexer' | 'kmd'\n\n/** Environment variable names for external mock server URLs */\nexport const EXTERNAL_URL_ENV_VARS: Record<ClientType, string> = {\n algod: 'MOCK_ALGOD_URL',\n indexer: 'MOCK_INDEXER_URL',\n kmd: 'MOCK_KMD_URL',\n}\n\n/** Default token used for mock server authentication */\nexport const DEFAULT_TOKEN = 'a'.repeat(64)\n\n/** Default ports for mock servers when running locally (matches algokit-polytest defaults) */\nexport const MOCK_PORTS = {\n algod: { host: 8000 },\n indexer: { host: 8002 },\n kmd: { host: 8001 },\n} as const\n\n/** Mock server instance representing a connection to an external server */\nexport interface MockServer {\n /** Base URL of the mock server */\n baseUrl: string\n /** Type of client this server mocks */\n clientType: ClientType\n}\n\n/**\n * Check if a server is reachable by performing a health check.\n *\n * @param url - The base URL of the server to check\n * @param timeout - Maximum time to wait for the server to respond (default: 5000ms)\n * @returns Promise resolving to true if server is healthy, false otherwise\n */\nexport async function checkServerHealth(url: string, timeout = 5000): Promise<boolean> {\n const healthUrl = `${url.replace(/\\/$/, '')}/health`\n const start = Date.now()\n\n while (Date.now() - start < timeout) {\n try {\n const controller = new AbortController()\n const timeoutId = setTimeout(() => controller.abort(), 2000)\n try {\n await fetch(healthUrl, { signal: controller.signal })\n clearTimeout(timeoutId)\n // Any HTTP response (including 500) indicates the server is reachable\n // The mock server returns 500 for unrecorded endpoints like /health\n return true\n } catch (error) {\n clearTimeout(timeoutId)\n // If it's a network error, retry\n if (error instanceof Error && error.name === 'AbortError') {\n await new Promise((resolve) => setTimeout(resolve, 200))\n continue\n }\n throw error\n }\n } catch {\n await new Promise((resolve) => setTimeout(resolve, 200))\n }\n }\n return false\n}\n\n/**\n * Get a mock server instance for the specified client type.\n *\n * Reads the appropriate environment variable (MOCK_ALGOD_URL, MOCK_INDEXER_URL, or MOCK_KMD_URL)\n * and validates that the server is reachable before returning a MockServer instance.\n *\n * @param clientType - The type of client to get a mock server for ('algod', 'indexer', or 'kmd')\n * @returns Promise resolving to a MockServer instance\n * @throws Error if the environment variable is not set or the server is not reachable\n *\n * @example\n * ```typescript\n * const server = await getMockServer('algod')\n * const client = new AlgodClient(DEFAULT_TOKEN, server.baseUrl)\n * // ... run tests ...\n * ```\n */\nexport async function getMockServer(clientType: ClientType): Promise<MockServer> {\n const envVar = EXTERNAL_URL_ENV_VARS[clientType]\n const externalUrl = process.env[envVar]\n\n if (!externalUrl) {\n throw new Error(\n `Environment variable ${envVar} is not set. ` +\n `Please start the mock server externally and set the URL. ` +\n `See the \"Mock Server for Client Tests\" section in README.md for local development setup.`,\n )\n }\n\n const isHealthy = await checkServerHealth(externalUrl)\n if (!isHealthy) {\n throw new Error(\n `Mock ${clientType} server at ${externalUrl} is not reachable. ` + `Please ensure the server is running and accessible.`,\n )\n }\n\n return {\n baseUrl: externalUrl.replace(/\\/$/, ''),\n clientType,\n }\n}\n\n// Test data constants matching mock server recordings\nexport const TEST_ADDRESS = '25M5BT2DMMED3V6CWDEYKSNEFGPXX4QBIINCOICLXXRU3UGTSGRMF3MTOE'\nexport const TEST_APP_ID = 718348254\nexport const TEST_APP_ID_WITH_BOXES = 742949200\nexport const TEST_BOX_NAME = 'b64:cBbHBNV+zUy/Mz5IRhIrBLxr1on5wmidhXEavV+SasC8'\nexport const TEST_ASSET_ID = 705457144\nexport const TEST_TXID = 'VIXTUMAPT7NR4RB2WVOGMETW4QY43KIDA3HWDWWXS3UEDKGTEECQ'\nexport const TEST_ROUND = 24099447\n"],"mappings":";;;AAaA,MAAa,wBAAoD;CAC/D,OAAO;CACP,SAAS;CACT,KAAK;CACN;;AAGD,MAAa,gBAAgB,IAAI,OAAO,GAAG;;AAG3C,MAAa,aAAa;CACxB,OAAO,EAAE,MAAM,KAAM;CACrB,SAAS,EAAE,MAAM,MAAM;CACvB,KAAK,EAAE,MAAM,MAAM;CACpB;;;;;;;;AAiBD,eAAsB,kBAAkB,KAAa,UAAU,KAAwB;CACrF,MAAM,YAAY,GAAG,IAAI,QAAQ,OAAO,GAAG,CAAC;CAC5C,MAAM,QAAQ,KAAK,KAAK;AAExB,QAAO,KAAK,KAAK,GAAG,QAAQ,QAC1B,KAAI;EACF,MAAM,aAAa,IAAI,iBAAiB;EACxC,MAAM,YAAY,iBAAiB,WAAW,OAAO,EAAE,IAAK;AAC5D,MAAI;AACF,SAAM,MAAM,WAAW,EAAE,QAAQ,WAAW,QAAQ,CAAC;AACrD,gBAAa,UAAU;AAGvB,UAAO;WACA,OAAO;AACd,gBAAa,UAAU;AAEvB,OAAI,iBAAiB,SAAS,MAAM,SAAS,cAAc;AACzD,UAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;AACxD;;AAEF,SAAM;;SAEF;AACN,QAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;;AAG5D,QAAO;;;;;;;;;;;;;;;;;;;AAoBT,eAAsB,cAAc,YAA6C;CAC/E,MAAM,SAAS,sBAAsB;CACrC,MAAM,cAAc,QAAQ,IAAI;AAEhC,KAAI,CAAC,YACH,OAAM,IAAI,MACR,wBAAwB,OAAO,gKAGhC;AAIH,KAAI,CADc,MAAM,kBAAkB,YAAY,CAEpD,OAAM,IAAI,MACR,QAAQ,WAAW,aAAa,YAAY,wEAC7C;AAGH,QAAO;EACL,SAAS,YAAY,QAAQ,OAAO,GAAG;EACvC;EACD;;AAIH,MAAa,eAAe;AAC5B,MAAa,cAAc;AAC3B,MAAa,yBAAyB;AACtC,MAAa,gBAAgB;AAC7B,MAAa,gBAAgB;AAC7B,MAAa,YAAY;AACzB,MAAa,aAAa"}
@@ -0,0 +1,83 @@
1
+ //#region packages/testing/src/mockServer.ts
2
+ /** Environment variable names for external mock server URLs */
3
+ const EXTERNAL_URL_ENV_VARS = {
4
+ algod: "MOCK_ALGOD_URL",
5
+ indexer: "MOCK_INDEXER_URL",
6
+ kmd: "MOCK_KMD_URL"
7
+ };
8
+ /** Default token used for mock server authentication */
9
+ const DEFAULT_TOKEN = "a".repeat(64);
10
+ /** Default ports for mock servers when running locally (matches algokit-polytest defaults) */
11
+ const MOCK_PORTS = {
12
+ algod: { host: 8e3 },
13
+ indexer: { host: 8002 },
14
+ kmd: { host: 8001 }
15
+ };
16
+ /**
17
+ * Check if a server is reachable by performing a health check.
18
+ *
19
+ * @param url - The base URL of the server to check
20
+ * @param timeout - Maximum time to wait for the server to respond (default: 5000ms)
21
+ * @returns Promise resolving to true if server is healthy, false otherwise
22
+ */
23
+ async function checkServerHealth(url, timeout = 5e3) {
24
+ const healthUrl = `${url.replace(/\/$/, "")}/health`;
25
+ const start = Date.now();
26
+ while (Date.now() - start < timeout) try {
27
+ const controller = new AbortController();
28
+ const timeoutId = setTimeout(() => controller.abort(), 2e3);
29
+ try {
30
+ await fetch(healthUrl, { signal: controller.signal });
31
+ clearTimeout(timeoutId);
32
+ return true;
33
+ } catch (error) {
34
+ clearTimeout(timeoutId);
35
+ if (error instanceof Error && error.name === "AbortError") {
36
+ await new Promise((resolve) => setTimeout(resolve, 200));
37
+ continue;
38
+ }
39
+ throw error;
40
+ }
41
+ } catch {
42
+ await new Promise((resolve) => setTimeout(resolve, 200));
43
+ }
44
+ return false;
45
+ }
46
+ /**
47
+ * Get a mock server instance for the specified client type.
48
+ *
49
+ * Reads the appropriate environment variable (MOCK_ALGOD_URL, MOCK_INDEXER_URL, or MOCK_KMD_URL)
50
+ * and validates that the server is reachable before returning a MockServer instance.
51
+ *
52
+ * @param clientType - The type of client to get a mock server for ('algod', 'indexer', or 'kmd')
53
+ * @returns Promise resolving to a MockServer instance
54
+ * @throws Error if the environment variable is not set or the server is not reachable
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * const server = await getMockServer('algod')
59
+ * const client = new AlgodClient(DEFAULT_TOKEN, server.baseUrl)
60
+ * // ... run tests ...
61
+ * ```
62
+ */
63
+ async function getMockServer(clientType) {
64
+ const envVar = EXTERNAL_URL_ENV_VARS[clientType];
65
+ const externalUrl = process.env[envVar];
66
+ if (!externalUrl) throw new Error(`Environment variable ${envVar} is not set. Please start the mock server externally and set the URL. See the "Mock Server for Client Tests" section in README.md for local development setup.`);
67
+ if (!await checkServerHealth(externalUrl)) throw new Error(`Mock ${clientType} server at ${externalUrl} is not reachable. Please ensure the server is running and accessible.`);
68
+ return {
69
+ baseUrl: externalUrl.replace(/\/$/, ""),
70
+ clientType
71
+ };
72
+ }
73
+ const TEST_ADDRESS = "25M5BT2DMMED3V6CWDEYKSNEFGPXX4QBIINCOICLXXRU3UGTSGRMF3MTOE";
74
+ const TEST_APP_ID = 718348254;
75
+ const TEST_APP_ID_WITH_BOXES = 742949200;
76
+ const TEST_BOX_NAME = "b64:cBbHBNV+zUy/Mz5IRhIrBLxr1on5wmidhXEavV+SasC8";
77
+ const TEST_ASSET_ID = 705457144;
78
+ const TEST_TXID = "VIXTUMAPT7NR4RB2WVOGMETW4QY43KIDA3HWDWWXS3UEDKGTEECQ";
79
+ const TEST_ROUND = 24099447;
80
+
81
+ //#endregion
82
+ export { DEFAULT_TOKEN, EXTERNAL_URL_ENV_VARS, MOCK_PORTS, TEST_ADDRESS, TEST_APP_ID, TEST_APP_ID_WITH_BOXES, TEST_ASSET_ID, TEST_BOX_NAME, TEST_ROUND, TEST_TXID, checkServerHealth, getMockServer };
83
+ //# sourceMappingURL=mockServer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockServer.mjs","names":[],"sources":["../../../../packages/testing/src/mockServer.ts"],"sourcesContent":["/**\n * Mock server infrastructure for algod/indexer/kmd client testing.\n *\n * Connects to externally managed mock servers that replay pre-recorded HAR files.\n * The mock server must be started separately (via GitHub Action in CI, or manually via bun for local dev).\n *\n * Set MOCK_ALGOD_URL / MOCK_INDEXER_URL / MOCK_KMD_URL environment variables to specify server URLs.\n */\n\n/** Supported client types for mock servers */\nexport type ClientType = 'algod' | 'indexer' | 'kmd'\n\n/** Environment variable names for external mock server URLs */\nexport const EXTERNAL_URL_ENV_VARS: Record<ClientType, string> = {\n algod: 'MOCK_ALGOD_URL',\n indexer: 'MOCK_INDEXER_URL',\n kmd: 'MOCK_KMD_URL',\n}\n\n/** Default token used for mock server authentication */\nexport const DEFAULT_TOKEN = 'a'.repeat(64)\n\n/** Default ports for mock servers when running locally (matches algokit-polytest defaults) */\nexport const MOCK_PORTS = {\n algod: { host: 8000 },\n indexer: { host: 8002 },\n kmd: { host: 8001 },\n} as const\n\n/** Mock server instance representing a connection to an external server */\nexport interface MockServer {\n /** Base URL of the mock server */\n baseUrl: string\n /** Type of client this server mocks */\n clientType: ClientType\n}\n\n/**\n * Check if a server is reachable by performing a health check.\n *\n * @param url - The base URL of the server to check\n * @param timeout - Maximum time to wait for the server to respond (default: 5000ms)\n * @returns Promise resolving to true if server is healthy, false otherwise\n */\nexport async function checkServerHealth(url: string, timeout = 5000): Promise<boolean> {\n const healthUrl = `${url.replace(/\\/$/, '')}/health`\n const start = Date.now()\n\n while (Date.now() - start < timeout) {\n try {\n const controller = new AbortController()\n const timeoutId = setTimeout(() => controller.abort(), 2000)\n try {\n await fetch(healthUrl, { signal: controller.signal })\n clearTimeout(timeoutId)\n // Any HTTP response (including 500) indicates the server is reachable\n // The mock server returns 500 for unrecorded endpoints like /health\n return true\n } catch (error) {\n clearTimeout(timeoutId)\n // If it's a network error, retry\n if (error instanceof Error && error.name === 'AbortError') {\n await new Promise((resolve) => setTimeout(resolve, 200))\n continue\n }\n throw error\n }\n } catch {\n await new Promise((resolve) => setTimeout(resolve, 200))\n }\n }\n return false\n}\n\n/**\n * Get a mock server instance for the specified client type.\n *\n * Reads the appropriate environment variable (MOCK_ALGOD_URL, MOCK_INDEXER_URL, or MOCK_KMD_URL)\n * and validates that the server is reachable before returning a MockServer instance.\n *\n * @param clientType - The type of client to get a mock server for ('algod', 'indexer', or 'kmd')\n * @returns Promise resolving to a MockServer instance\n * @throws Error if the environment variable is not set or the server is not reachable\n *\n * @example\n * ```typescript\n * const server = await getMockServer('algod')\n * const client = new AlgodClient(DEFAULT_TOKEN, server.baseUrl)\n * // ... run tests ...\n * ```\n */\nexport async function getMockServer(clientType: ClientType): Promise<MockServer> {\n const envVar = EXTERNAL_URL_ENV_VARS[clientType]\n const externalUrl = process.env[envVar]\n\n if (!externalUrl) {\n throw new Error(\n `Environment variable ${envVar} is not set. ` +\n `Please start the mock server externally and set the URL. ` +\n `See the \"Mock Server for Client Tests\" section in README.md for local development setup.`,\n )\n }\n\n const isHealthy = await checkServerHealth(externalUrl)\n if (!isHealthy) {\n throw new Error(\n `Mock ${clientType} server at ${externalUrl} is not reachable. ` + `Please ensure the server is running and accessible.`,\n )\n }\n\n return {\n baseUrl: externalUrl.replace(/\\/$/, ''),\n clientType,\n }\n}\n\n// Test data constants matching mock server recordings\nexport const TEST_ADDRESS = '25M5BT2DMMED3V6CWDEYKSNEFGPXX4QBIINCOICLXXRU3UGTSGRMF3MTOE'\nexport const TEST_APP_ID = 718348254\nexport const TEST_APP_ID_WITH_BOXES = 742949200\nexport const TEST_BOX_NAME = 'b64:cBbHBNV+zUy/Mz5IRhIrBLxr1on5wmidhXEavV+SasC8'\nexport const TEST_ASSET_ID = 705457144\nexport const TEST_TXID = 'VIXTUMAPT7NR4RB2WVOGMETW4QY43KIDA3HWDWWXS3UEDKGTEECQ'\nexport const TEST_ROUND = 24099447\n"],"mappings":";;AAaA,MAAa,wBAAoD;CAC/D,OAAO;CACP,SAAS;CACT,KAAK;CACN;;AAGD,MAAa,gBAAgB,IAAI,OAAO,GAAG;;AAG3C,MAAa,aAAa;CACxB,OAAO,EAAE,MAAM,KAAM;CACrB,SAAS,EAAE,MAAM,MAAM;CACvB,KAAK,EAAE,MAAM,MAAM;CACpB;;;;;;;;AAiBD,eAAsB,kBAAkB,KAAa,UAAU,KAAwB;CACrF,MAAM,YAAY,GAAG,IAAI,QAAQ,OAAO,GAAG,CAAC;CAC5C,MAAM,QAAQ,KAAK,KAAK;AAExB,QAAO,KAAK,KAAK,GAAG,QAAQ,QAC1B,KAAI;EACF,MAAM,aAAa,IAAI,iBAAiB;EACxC,MAAM,YAAY,iBAAiB,WAAW,OAAO,EAAE,IAAK;AAC5D,MAAI;AACF,SAAM,MAAM,WAAW,EAAE,QAAQ,WAAW,QAAQ,CAAC;AACrD,gBAAa,UAAU;AAGvB,UAAO;WACA,OAAO;AACd,gBAAa,UAAU;AAEvB,OAAI,iBAAiB,SAAS,MAAM,SAAS,cAAc;AACzD,UAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;AACxD;;AAEF,SAAM;;SAEF;AACN,QAAM,IAAI,SAAS,YAAY,WAAW,SAAS,IAAI,CAAC;;AAG5D,QAAO;;;;;;;;;;;;;;;;;;;AAoBT,eAAsB,cAAc,YAA6C;CAC/E,MAAM,SAAS,sBAAsB;CACrC,MAAM,cAAc,QAAQ,IAAI;AAEhC,KAAI,CAAC,YACH,OAAM,IAAI,MACR,wBAAwB,OAAO,gKAGhC;AAIH,KAAI,CADc,MAAM,kBAAkB,YAAY,CAEpD,OAAM,IAAI,MACR,QAAQ,WAAW,aAAa,YAAY,wEAC7C;AAGH,QAAO;EACL,SAAS,YAAY,QAAQ,OAAO,GAAG;EACvC;EACD;;AAIH,MAAa,eAAe;AAC5B,MAAa,cAAc;AAC3B,MAAa,yBAAyB;AACtC,MAAa,gBAAgB;AAC7B,MAAa,gBAAgB;AAC7B,MAAa,YAAY;AACzB,MAAa,aAAa"}
@@ -1,47 +1,49 @@
1
- import { Address } from "../../common/src/address.js";
2
- import { LogicSignature, MultisigSignature } from "./transactions/signed-transaction.js";
1
+ import { Address, Addressable } from "../../common/src/address.js";
2
+ import { LogicSigSignature, MultisigSignature } from "./transactions/signed-transaction.js";
3
3
  import { MultisigAccount } from "./multisig.js";
4
- import { TransactionSigner } from "./signer.js";
4
+ import { AddressWithDelegatedLsigSigner, TransactionSigner } from "./signer.js";
5
5
 
6
6
  //#region packages/transact/src/logicsig.d.ts
7
7
 
8
- /** sanityCheckProgram performs heuristic program validation:
9
- * check if passed in bytes are Algorand address or is B64 encoded, rather than Teal bytes
10
- *
11
- * @param program - Program bytes to check
12
- */
13
- declare function sanityCheckProgram(program: Uint8Array): void;
14
- /** Function for signing logic signatures for delegation */
15
- type DelegatedLsigSigner = (lsig: LogicSigAccount, msig?: MultisigAccount) => Promise<Uint8Array>;
8
+ /** Function for signing logic signatures for delegation
9
+ * @param lsig - The logic signature that is being signed for delegation
10
+ * @param msig - Optional multisig account that should be set when a public key is signing as a subsigner of a multisig
11
+ * @returns The address of the delegator
12
+ * */
13
+ type DelegatedLsigSigner = (lsig: LogicSigAccount, msig?: MultisigAccount) => Promise<{
14
+ addr: Address;
15
+ } & ({
16
+ sig?: Uint8Array;
17
+ } | {
18
+ lmsig?: MultisigSignature;
19
+ })>;
16
20
  /** Function for signing program data for a logic signature */
17
- type ProgramDataSigner = (data: Uint8Array, lsig: LogicSigAccount) => Promise<Uint8Array>;
18
- declare class LogicSigAccount {
21
+ type ProgramDataSigner = (data: Uint8Array, lsig: LogicSig) => Promise<Uint8Array>;
22
+ declare class LogicSig implements Addressable {
19
23
  logic: Uint8Array;
20
24
  args: Uint8Array[];
21
- sig?: Uint8Array;
22
- msig?: MultisigSignature;
23
- lmsig?: MultisigSignature;
24
- constructor(program: Uint8Array, programArgs?: Array<Uint8Array> | null);
25
- get signer(): TransactionSigner;
26
- get addr(): Address;
27
- /**
28
- * Compute hash of the logic sig program (that is the same as escrow account address) as string address
29
- * @returns String representation of the address
30
- */
25
+ protected _addr: Address;
26
+ constructor(program: Uint8Array, programArgs?: Array<Uint8Array>);
27
+ static fromSignature(signature: LogicSigSignature): LogicSig;
28
+ static fromBytes(encodedLsig: Uint8Array): LogicSig;
31
29
  address(): Address;
32
- delegate(signer: DelegatedLsigSigner): Promise<void>;
33
- delegateMultisig(msig: MultisigAccount): Promise<void>;
30
+ get addr(): Address;
34
31
  bytesToSignForDelegation(msig?: MultisigAccount): Uint8Array;
35
32
  signProgramData(data: Uint8Array, signer: ProgramDataSigner): Promise<Uint8Array>;
36
33
  programDataToSign(data: Uint8Array): Uint8Array;
34
+ account(): LogicSigAccount;
35
+ delegatedAccount(delegator: Address): LogicSigAccount;
36
+ }
37
+ declare class LogicSigAccount extends LogicSig {
38
+ sig?: Uint8Array;
39
+ msig?: MultisigSignature;
40
+ lmsig?: MultisigSignature;
41
+ static fromSignature(signature: LogicSigSignature, delegator?: Address): LogicSigAccount;
42
+ static fromBytes(encodedLsig: Uint8Array, delegator?: Address): LogicSigAccount;
43
+ constructor(program: Uint8Array, programArgs?: Array<Uint8Array> | null, delegator?: Address);
44
+ get signer(): TransactionSigner;
45
+ signForDelegation(delegator: AddressWithDelegatedLsigSigner): Promise<void>;
37
46
  }
38
- /**
39
- * Decodes MsgPack bytes into a logic signature.
40
- *
41
- * @param encodedLogicSignature - The MsgPack encoded logic signature
42
- * @returns The decoded LogicSignature or an error if decoding fails.
43
- */
44
- declare function decodeLogicSignature(encodedLogicSignature: Uint8Array): LogicSignature;
45
47
  //#endregion
46
- export { DelegatedLsigSigner, LogicSigAccount, ProgramDataSigner, decodeLogicSignature, sanityCheckProgram };
48
+ export { DelegatedLsigSigner, LogicSig, LogicSigAccount, ProgramDataSigner };
47
49
  //# sourceMappingURL=logicsig.d.ts.map
@@ -1,46 +1,84 @@
1
1
  const require_array = require('../../common/src/array.js');
2
2
  const require_address = require('../../common/src/address.js');
3
- const require_crypto = require('../../common/src/crypto.js');
4
3
  const require_msgpack = require('../../common/src/msgpack.js');
4
+ const require_hash = require('../../crypto/src/hash.js');
5
5
  const require_signed_transaction_meta = require('./transactions/signed-transaction-meta.js');
6
6
  const require_signed_transaction = require('./transactions/signed-transaction.js');
7
+ const require_multisig = require('./multisig.js');
7
8
 
8
9
  //#region packages/transact/src/logicsig.ts
9
- const base64regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/;
10
- /** sanityCheckProgram performs heuristic program validation:
11
- * check if passed in bytes are Algorand address or is B64 encoded, rather than Teal bytes
12
- *
13
- * @param program - Program bytes to check
14
- */
15
- function sanityCheckProgram(program) {
16
- if (!program || program.length === 0) throw new Error("empty program");
17
- const lineBreakOrd = "\n".charCodeAt(0);
18
- const blankSpaceOrd = " ".charCodeAt(0);
19
- const tildeOrd = "~".charCodeAt(0);
20
- const isPrintable = (x) => blankSpaceOrd <= x && x <= tildeOrd;
21
- if (program.every((x) => x === lineBreakOrd || isPrintable(x))) {
22
- const programStr = new TextDecoder().decode(program);
23
- if (require_address.isValidAddress(programStr)) throw new Error("requesting program bytes, get Algorand address");
24
- if (base64regex.test(programStr)) throw new Error("program should not be b64 encoded");
25
- throw new Error("program bytes are all ASCII printable characters, not looking like Teal byte code");
26
- }
27
- }
28
10
  const PROGRAM_TAG = new TextEncoder().encode("Program");
29
11
  const MSIG_PROGRAM_TAG = new TextEncoder().encode("MsigProgram");
30
12
  const SIGN_PROGRAM_DATA_PREFIX = new TextEncoder().encode("ProgData");
31
- var LogicSigAccount = class {
13
+ var LogicSig = class LogicSig {
32
14
  logic;
33
15
  args;
16
+ _addr;
17
+ constructor(program, programArgs) {
18
+ this.logic = program;
19
+ this.args = programArgs ?? [];
20
+ this._addr = new require_address.Address(require_hash.hash(require_array.concatArrays(PROGRAM_TAG, this.logic)));
21
+ }
22
+ static fromSignature(signature) {
23
+ return new LogicSig(signature.logic, signature.args || []);
24
+ }
25
+ static fromBytes(encodedLsig) {
26
+ const decoded = require_msgpack.decodeMsgpack(encodedLsig);
27
+ const lsigSignature = require_signed_transaction_meta.logicSigSignatureCodec.decode(decoded, "msgpack");
28
+ return LogicSig.fromSignature(lsigSignature);
29
+ }
30
+ address() {
31
+ return this._addr;
32
+ }
33
+ get addr() {
34
+ return this._addr;
35
+ }
36
+ bytesToSignForDelegation(msig) {
37
+ if (msig) return require_array.concatArrays(MSIG_PROGRAM_TAG, msig.addr.publicKey, this.logic);
38
+ else return require_array.concatArrays(PROGRAM_TAG, this.logic);
39
+ }
40
+ signProgramData(data, signer) {
41
+ return signer(data, this);
42
+ }
43
+ programDataToSign(data) {
44
+ return require_array.concatArrays(SIGN_PROGRAM_DATA_PREFIX, this.address().publicKey, data);
45
+ }
46
+ account() {
47
+ return new LogicSigAccount(this.logic, this.args);
48
+ }
49
+ delegatedAccount(delegator) {
50
+ return new LogicSigAccount(this.logic, this.args, delegator);
51
+ }
52
+ };
53
+ var LogicSigAccount = class LogicSigAccount extends LogicSig {
34
54
  sig;
35
55
  msig;
36
56
  lmsig;
37
- constructor(program, programArgs) {
38
- if (programArgs && (!Array.isArray(programArgs) || !programArgs.every((arg) => arg.constructor === Uint8Array))) throw new TypeError("Invalid arguments");
39
- let args = [];
40
- if (programArgs != null) args = programArgs.map((arg) => new Uint8Array(arg));
41
- sanityCheckProgram(program);
42
- this.logic = program;
43
- this.args = args;
57
+ static fromSignature(signature, delegator) {
58
+ if (signature.lmsig || signature.msig) {
59
+ const msigAddr = require_multisig.MultisigAccount.fromSignature(signature.lmsig || signature.msig).addr;
60
+ if (delegator && !msigAddr.equals(delegator)) throw new Error("Provided delegator address does not match multisig address");
61
+ const lsig = new LogicSigAccount(signature.logic, signature.args || [], msigAddr);
62
+ lsig.lmsig = signature.lmsig;
63
+ lsig.msig = signature.msig;
64
+ return lsig;
65
+ }
66
+ const lsigAccount = new LogicSigAccount(signature.logic, signature.args || [], delegator);
67
+ if (signature.sig && delegator === void 0) throw new Error("Delegated address must be provided when logic sig has a signature");
68
+ if (signature.sig) {
69
+ lsigAccount.sig = signature.sig;
70
+ return lsigAccount;
71
+ }
72
+ return lsigAccount;
73
+ }
74
+ static fromBytes(encodedLsig, delegator) {
75
+ const decoded = require_msgpack.decodeMsgpack(encodedLsig);
76
+ const lsigSignature = require_signed_transaction_meta.logicSigSignatureCodec.decode(decoded, "msgpack");
77
+ return LogicSigAccount.fromSignature(lsigSignature, delegator);
78
+ }
79
+ constructor(program, programArgs, delegator) {
80
+ super(program, programArgs ?? void 0);
81
+ this._addr = delegator ?? this._addr;
44
82
  }
45
83
  get signer() {
46
84
  return async (txns, indexes) => {
@@ -56,63 +94,23 @@ var LogicSigAccount = class {
56
94
  sig: this.sig
57
95
  }
58
96
  };
97
+ if (!stxn.txn.sender.equals(this.addr)) stxn.authAddress = this.addr;
98
+ require_signed_transaction.validateSignedTransaction(stxn);
59
99
  signedTxns.push(require_signed_transaction.encodeSignedTransaction(stxn));
60
100
  }
61
101
  return signedTxns;
62
102
  };
63
103
  }
64
- get addr() {
65
- return this.address();
66
- }
67
- /**
68
- * Compute hash of the logic sig program (that is the same as escrow account address) as string address
69
- * @returns String representation of the address
70
- */
71
- address() {
72
- return new require_address.Address(require_crypto.hash(require_array.concatArrays(PROGRAM_TAG, this.logic)));
73
- }
74
- async delegate(signer) {
75
- this.sig = await signer(this);
76
- }
77
- async delegateMultisig(msig) {
78
- if (this.lmsig == void 0) this.lmsig = {
79
- subsignatures: [],
80
- version: msig.params.version,
81
- threshold: msig.params.threshold
82
- };
83
- for (const addrWithSigner of msig.subSigners) {
84
- const { lsigSigner, addr } = addrWithSigner;
85
- const signature = await lsigSigner(this, msig);
86
- this.lmsig.subsignatures.push({
87
- publicKey: addr.publicKey,
88
- signature
89
- });
90
- }
91
- }
92
- bytesToSignForDelegation(msig) {
93
- if (msig) return require_array.concatArrays(MSIG_PROGRAM_TAG, msig.addr.publicKey, this.logic);
94
- else return require_array.concatArrays(PROGRAM_TAG, this.logic);
95
- }
96
- signProgramData(data, signer) {
97
- return signer(data, this);
98
- }
99
- programDataToSign(data) {
100
- return require_array.concatArrays(SIGN_PROGRAM_DATA_PREFIX, this.address().publicKey, data);
104
+ async signForDelegation(delegator) {
105
+ const result = await delegator.lsigSigner(this);
106
+ if (!result.addr.equals(this._addr)) throw new Error(`Delegator address from signer does not match expected delegator address. Expected: ${this._addr.toString()}, got: ${result.addr.toString()}`);
107
+ if ("sig" in result && result.sig) this.sig = result.sig;
108
+ else if ("lmsig" in result && result.lmsig) this.lmsig = result.lmsig;
109
+ else throw new Error("Delegated lsig signer must return either a sig or lmsig");
101
110
  }
102
111
  };
103
- /**
104
- * Decodes MsgPack bytes into a logic signature.
105
- *
106
- * @param encodedLogicSignature - The MsgPack encoded logic signature
107
- * @returns The decoded LogicSignature or an error if decoding fails.
108
- */
109
- function decodeLogicSignature(encodedLogicSignature) {
110
- const decodedData = require_msgpack.decodeMsgpack(encodedLogicSignature);
111
- return require_signed_transaction_meta.logicSignatureCodec.decode(decodedData, "msgpack");
112
- }
113
112
 
114
113
  //#endregion
114
+ exports.LogicSig = LogicSig;
115
115
  exports.LogicSigAccount = LogicSigAccount;
116
- exports.decodeLogicSignature = decodeLogicSignature;
117
- exports.sanityCheckProgram = sanityCheckProgram;
118
116
  //# sourceMappingURL=logicsig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logicsig.js","names":["isValidAddress","args: Uint8Array[]","signedTxns: Uint8Array[]","stxn: SignedTransaction","encodeSignedTransaction","Address","hash","concatArrays","decodeMsgpack","logicSignatureCodec"],"sources":["../../../../packages/transact/src/logicsig.ts"],"sourcesContent":["import { Address, concatArrays, decodeMsgpack, hash, isValidAddress } from '@algorandfoundation/algokit-common'\nimport { MultisigAccount } from './multisig'\nimport { TransactionSigner } from './signer'\nimport { LogicSignature, MultisigSignature, SignedTransaction, encodeSignedTransaction } from './transactions/signed-transaction'\nimport { logicSignatureCodec } from './transactions/signed-transaction-meta'\nimport { Transaction } from './transactions/transaction'\n\n// base64regex is the regex to test for base64 strings\nconst base64regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/\n\n/** sanityCheckProgram performs heuristic program validation:\n * check if passed in bytes are Algorand address or is B64 encoded, rather than Teal bytes\n *\n * @param program - Program bytes to check\n */\nexport function sanityCheckProgram(program: Uint8Array) {\n if (!program || program.length === 0) throw new Error('empty program')\n\n const lineBreakOrd = '\\n'.charCodeAt(0)\n const blankSpaceOrd = ' '.charCodeAt(0)\n const tildeOrd = '~'.charCodeAt(0)\n\n const isPrintable = (x: number) => blankSpaceOrd <= x && x <= tildeOrd\n const isAsciiPrintable = program.every((x: number) => x === lineBreakOrd || isPrintable(x))\n\n if (isAsciiPrintable) {\n const programStr = new TextDecoder().decode(program)\n\n if (isValidAddress(programStr)) throw new Error('requesting program bytes, get Algorand address')\n\n if (base64regex.test(programStr)) throw new Error('program should not be b64 encoded')\n\n throw new Error('program bytes are all ASCII printable characters, not looking like Teal byte code')\n }\n}\n\nconst PROGRAM_TAG = new TextEncoder().encode('Program')\nconst MSIG_PROGRAM_TAG = new TextEncoder().encode('MsigProgram')\nconst SIGN_PROGRAM_DATA_PREFIX = new TextEncoder().encode('ProgData')\n\n/** Function for signing logic signatures for delegation */\nexport type DelegatedLsigSigner = (lsig: LogicSigAccount, msig?: MultisigAccount) => Promise<Uint8Array>\n\n/** Function for signing program data for a logic signature */\nexport type ProgramDataSigner = (data: Uint8Array, lsig: LogicSigAccount) => Promise<Uint8Array>\n\nexport class LogicSigAccount {\n logic: Uint8Array\n args: Uint8Array[]\n sig?: Uint8Array\n msig?: MultisigSignature\n lmsig?: MultisigSignature\n\n constructor(program: Uint8Array, programArgs?: Array<Uint8Array> | null) {\n if (programArgs && (!Array.isArray(programArgs) || !programArgs.every((arg) => arg.constructor === Uint8Array))) {\n throw new TypeError('Invalid arguments')\n }\n\n let args: Uint8Array[] = []\n if (programArgs != null) args = programArgs.map((arg) => new Uint8Array(arg))\n\n sanityCheckProgram(program)\n\n this.logic = program\n this.args = args\n }\n\n get signer(): TransactionSigner {\n return async (txns: Transaction[], indexes: number[]) => {\n const signedTxns: Uint8Array[] = []\n for (const index of indexes) {\n const txn = txns[index]\n\n const stxn: SignedTransaction = {\n txn,\n lsig: { logic: this.logic, args: this.args, msig: this.msig, lmsig: this.lmsig, sig: this.sig },\n }\n\n signedTxns.push(encodeSignedTransaction(stxn))\n }\n\n return signedTxns\n }\n }\n\n get addr(): Address {\n return this.address()\n }\n\n /**\n * Compute hash of the logic sig program (that is the same as escrow account address) as string address\n * @returns String representation of the address\n */\n address(): Address {\n const toBeSigned = concatArrays(PROGRAM_TAG, this.logic)\n const h = hash(toBeSigned)\n return new Address(h)\n }\n\n async delegate(signer: DelegatedLsigSigner) {\n this.sig = await signer(this)\n }\n\n async delegateMultisig(msig: MultisigAccount) {\n if (this.lmsig == undefined) {\n this.lmsig = {\n subsignatures: [],\n version: msig.params.version,\n threshold: msig.params.threshold,\n }\n }\n for (const addrWithSigner of msig.subSigners) {\n const { lsigSigner, addr } = addrWithSigner\n const signature = await lsigSigner(this, msig)\n\n this.lmsig.subsignatures.push({ publicKey: addr.publicKey, signature })\n }\n }\n\n bytesToSignForDelegation(msig?: MultisigAccount): Uint8Array {\n if (msig) {\n return concatArrays(MSIG_PROGRAM_TAG, msig.addr.publicKey, this.logic)\n } else {\n return concatArrays(PROGRAM_TAG, this.logic)\n }\n }\n\n signProgramData(data: Uint8Array, signer: ProgramDataSigner): Promise<Uint8Array> {\n return signer(data, this)\n }\n\n programDataToSign(data: Uint8Array): Uint8Array {\n return concatArrays(SIGN_PROGRAM_DATA_PREFIX, this.address().publicKey, data)\n }\n}\n\n/**\n * Decodes MsgPack bytes into a logic signature.\n *\n * @param encodedLogicSignature - The MsgPack encoded logic signature\n * @returns The decoded LogicSignature or an error if decoding fails.\n */\nexport function decodeLogicSignature(encodedLogicSignature: Uint8Array): LogicSignature {\n const decodedData = decodeMsgpack(encodedLogicSignature)\n return logicSignatureCodec.decode(decodedData, 'msgpack')\n}\n"],"mappings":";;;;;;;;AAQA,MAAM,cAAc;;;;;;AAOpB,SAAgB,mBAAmB,SAAqB;AACtD,KAAI,CAAC,WAAW,QAAQ,WAAW,EAAG,OAAM,IAAI,MAAM,gBAAgB;CAEtE,MAAM,eAAe,KAAK,WAAW,EAAE;CACvC,MAAM,gBAAgB,IAAI,WAAW,EAAE;CACvC,MAAM,WAAW,IAAI,WAAW,EAAE;CAElC,MAAM,eAAe,MAAc,iBAAiB,KAAK,KAAK;AAG9D,KAFyB,QAAQ,OAAO,MAAc,MAAM,gBAAgB,YAAY,EAAE,CAAC,EAErE;EACpB,MAAM,aAAa,IAAI,aAAa,CAAC,OAAO,QAAQ;AAEpD,MAAIA,+BAAe,WAAW,CAAE,OAAM,IAAI,MAAM,iDAAiD;AAEjG,MAAI,YAAY,KAAK,WAAW,CAAE,OAAM,IAAI,MAAM,oCAAoC;AAEtF,QAAM,IAAI,MAAM,oFAAoF;;;AAIxG,MAAM,cAAc,IAAI,aAAa,CAAC,OAAO,UAAU;AACvD,MAAM,mBAAmB,IAAI,aAAa,CAAC,OAAO,cAAc;AAChE,MAAM,2BAA2B,IAAI,aAAa,CAAC,OAAO,WAAW;AAQrE,IAAa,kBAAb,MAA6B;CAC3B;CACA;CACA;CACA;CACA;CAEA,YAAY,SAAqB,aAAwC;AACvE,MAAI,gBAAgB,CAAC,MAAM,QAAQ,YAAY,IAAI,CAAC,YAAY,OAAO,QAAQ,IAAI,gBAAgB,WAAW,EAC5G,OAAM,IAAI,UAAU,oBAAoB;EAG1C,IAAIC,OAAqB,EAAE;AAC3B,MAAI,eAAe,KAAM,QAAO,YAAY,KAAK,QAAQ,IAAI,WAAW,IAAI,CAAC;AAE7E,qBAAmB,QAAQ;AAE3B,OAAK,QAAQ;AACb,OAAK,OAAO;;CAGd,IAAI,SAA4B;AAC9B,SAAO,OAAO,MAAqB,YAAsB;GACvD,MAAMC,aAA2B,EAAE;AACnC,QAAK,MAAM,SAAS,SAAS;IAG3B,MAAMC,OAA0B;KAC9B,KAHU,KAAK;KAIf,MAAM;MAAE,OAAO,KAAK;MAAO,MAAM,KAAK;MAAM,MAAM,KAAK;MAAM,OAAO,KAAK;MAAO,KAAK,KAAK;MAAK;KAChG;AAED,eAAW,KAAKC,mDAAwB,KAAK,CAAC;;AAGhD,UAAO;;;CAIX,IAAI,OAAgB;AAClB,SAAO,KAAK,SAAS;;;;;;CAOvB,UAAmB;AAGjB,SAAO,IAAIC,wBADDC,oBADSC,2BAAa,aAAa,KAAK,MAAM,CAC9B,CACL;;CAGvB,MAAM,SAAS,QAA6B;AAC1C,OAAK,MAAM,MAAM,OAAO,KAAK;;CAG/B,MAAM,iBAAiB,MAAuB;AAC5C,MAAI,KAAK,SAAS,OAChB,MAAK,QAAQ;GACX,eAAe,EAAE;GACjB,SAAS,KAAK,OAAO;GACrB,WAAW,KAAK,OAAO;GACxB;AAEH,OAAK,MAAM,kBAAkB,KAAK,YAAY;GAC5C,MAAM,EAAE,YAAY,SAAS;GAC7B,MAAM,YAAY,MAAM,WAAW,MAAM,KAAK;AAE9C,QAAK,MAAM,cAAc,KAAK;IAAE,WAAW,KAAK;IAAW;IAAW,CAAC;;;CAI3E,yBAAyB,MAAoC;AAC3D,MAAI,KACF,QAAOA,2BAAa,kBAAkB,KAAK,KAAK,WAAW,KAAK,MAAM;MAEtE,QAAOA,2BAAa,aAAa,KAAK,MAAM;;CAIhD,gBAAgB,MAAkB,QAAgD;AAChF,SAAO,OAAO,MAAM,KAAK;;CAG3B,kBAAkB,MAA8B;AAC9C,SAAOA,2BAAa,0BAA0B,KAAK,SAAS,CAAC,WAAW,KAAK;;;;;;;;;AAUjF,SAAgB,qBAAqB,uBAAmD;CACtF,MAAM,cAAcC,8BAAc,sBAAsB;AACxD,QAAOC,oDAAoB,OAAO,aAAa,UAAU"}
1
+ {"version":3,"file":"logicsig.js","names":["Address","hash","concatArrays","decodeMsgpack","logicSigSignatureCodec","MultisigAccount","encodeSignedTransaction"],"sources":["../../../../packages/transact/src/logicsig.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, decodeMsgpack } from '@algorandfoundation/algokit-common'\nimport { hash } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\nimport { AddressWithDelegatedLsigSigner, TransactionSigner } from './signer'\nimport {\n LogicSigSignature,\n MultisigSignature,\n SignedTransaction,\n encodeSignedTransaction,\n validateSignedTransaction,\n} from './transactions/signed-transaction'\nimport { logicSigSignatureCodec } from './transactions/signed-transaction-meta'\nimport { Transaction } from './transactions/transaction'\n\nconst PROGRAM_TAG = new TextEncoder().encode('Program')\nconst MSIG_PROGRAM_TAG = new TextEncoder().encode('MsigProgram')\nconst SIGN_PROGRAM_DATA_PREFIX = new TextEncoder().encode('ProgData')\n\n/** Function for signing logic signatures for delegation\n * @param lsig - The logic signature that is being signed for delegation\n * @param msig - Optional multisig account that should be set when a public key is signing as a subsigner of a multisig\n * @returns The address of the delegator\n * */\nexport type DelegatedLsigSigner = (\n lsig: LogicSigAccount,\n msig?: MultisigAccount,\n) => Promise<{ addr: Address } & ({ sig?: Uint8Array } | { lmsig?: MultisigSignature })>\n\n/** Function for signing program data for a logic signature */\nexport type ProgramDataSigner = (data: Uint8Array, lsig: LogicSig) => Promise<Uint8Array>\n\nexport class LogicSig implements Addressable {\n logic: Uint8Array\n args: Uint8Array[]\n protected _addr: Address\n\n constructor(program: Uint8Array, programArgs?: Array<Uint8Array>) {\n this.logic = program\n this.args = programArgs ?? []\n const toBeSigned = concatArrays(PROGRAM_TAG, this.logic)\n const h = hash(toBeSigned)\n this._addr = new Address(h)\n }\n\n static fromSignature(signature: LogicSigSignature): LogicSig {\n return new LogicSig(signature.logic, signature.args || [])\n }\n\n static fromBytes(encodedLsig: Uint8Array): LogicSig {\n const decoded = decodeMsgpack(encodedLsig)\n const lsigSignature = logicSigSignatureCodec.decode(decoded, 'msgpack')\n return LogicSig.fromSignature(lsigSignature)\n }\n\n address(): Address {\n return this._addr\n }\n\n get addr(): Address {\n return this._addr\n }\n\n bytesToSignForDelegation(msig?: MultisigAccount): Uint8Array {\n if (msig) {\n return concatArrays(MSIG_PROGRAM_TAG, msig.addr.publicKey, this.logic)\n } else {\n return concatArrays(PROGRAM_TAG, this.logic)\n }\n }\n\n signProgramData(data: Uint8Array, signer: ProgramDataSigner): Promise<Uint8Array> {\n return signer(data, this)\n }\n\n programDataToSign(data: Uint8Array): Uint8Array {\n return concatArrays(SIGN_PROGRAM_DATA_PREFIX, this.address().publicKey, data)\n }\n\n account(): LogicSigAccount {\n return new LogicSigAccount(this.logic, this.args)\n }\n\n delegatedAccount(delegator: Address): LogicSigAccount {\n return new LogicSigAccount(this.logic, this.args, delegator)\n }\n}\n\nexport class LogicSigAccount extends LogicSig {\n sig?: Uint8Array\n msig?: MultisigSignature\n lmsig?: MultisigSignature\n\n static fromSignature(signature: LogicSigSignature, delegator?: Address): LogicSigAccount {\n if (signature.lmsig || signature.msig) {\n const msigAddr = MultisigAccount.fromSignature((signature.lmsig || signature.msig)!).addr\n\n if (delegator && !msigAddr.equals(delegator)) {\n throw new Error('Provided delegator address does not match multisig address')\n }\n\n const lsig = new LogicSigAccount(signature.logic, signature.args || [], msigAddr)\n lsig.lmsig = signature.lmsig\n lsig.msig = signature.msig\n return lsig\n }\n\n const lsigAccount = new LogicSigAccount(signature.logic, signature.args || [], delegator)\n\n if (signature.sig && delegator === undefined) {\n throw new Error('Delegated address must be provided when logic sig has a signature')\n }\n\n if (signature.sig) {\n lsigAccount.sig = signature.sig\n return lsigAccount\n }\n\n return lsigAccount\n }\n\n static fromBytes(encodedLsig: Uint8Array, delegator?: Address): LogicSigAccount {\n const decoded = decodeMsgpack(encodedLsig)\n const lsigSignature = logicSigSignatureCodec.decode(decoded, 'msgpack')\n return LogicSigAccount.fromSignature(lsigSignature, delegator)\n }\n\n constructor(program: Uint8Array, programArgs?: Array<Uint8Array> | null, delegator?: Address) {\n super(program, programArgs ?? undefined)\n this._addr = delegator ?? this._addr\n }\n\n get signer(): TransactionSigner {\n return async (txns: Transaction[], indexes: number[]) => {\n const signedTxns: Uint8Array[] = []\n for (const index of indexes) {\n const txn = txns[index]\n\n const stxn: SignedTransaction = {\n txn,\n lsig: { logic: this.logic, args: this.args, msig: this.msig, lmsig: this.lmsig, sig: this.sig },\n }\n\n if (!stxn.txn.sender.equals(this.addr)) {\n stxn.authAddress = this.addr\n }\n\n validateSignedTransaction(stxn)\n signedTxns.push(encodeSignedTransaction(stxn))\n }\n\n return signedTxns\n }\n }\n\n async signForDelegation(delegator: AddressWithDelegatedLsigSigner) {\n const result = await delegator.lsigSigner(this)\n\n if (!result.addr.equals(this._addr)) {\n throw new Error(\n `Delegator address from signer does not match expected delegator address. Expected: ${this._addr.toString()}, got: ${result.addr.toString()}`,\n )\n }\n\n if ('sig' in result && result.sig) {\n this.sig = result.sig\n } else if ('lmsig' in result && result.lmsig) {\n this.lmsig = result.lmsig\n } else {\n throw new Error('Delegated lsig signer must return either a sig or lmsig')\n }\n }\n}\n"],"mappings":";;;;;;;;;AAcA,MAAM,cAAc,IAAI,aAAa,CAAC,OAAO,UAAU;AACvD,MAAM,mBAAmB,IAAI,aAAa,CAAC,OAAO,cAAc;AAChE,MAAM,2BAA2B,IAAI,aAAa,CAAC,OAAO,WAAW;AAerE,IAAa,WAAb,MAAa,SAAgC;CAC3C;CACA;CACA,AAAU;CAEV,YAAY,SAAqB,aAAiC;AAChE,OAAK,QAAQ;AACb,OAAK,OAAO,eAAe,EAAE;AAG7B,OAAK,QAAQ,IAAIA,wBADPC,kBADSC,2BAAa,aAAa,KAAK,MAAM,CAC9B,CACC;;CAG7B,OAAO,cAAc,WAAwC;AAC3D,SAAO,IAAI,SAAS,UAAU,OAAO,UAAU,QAAQ,EAAE,CAAC;;CAG5D,OAAO,UAAU,aAAmC;EAClD,MAAM,UAAUC,8BAAc,YAAY;EAC1C,MAAM,gBAAgBC,uDAAuB,OAAO,SAAS,UAAU;AACvE,SAAO,SAAS,cAAc,cAAc;;CAG9C,UAAmB;AACjB,SAAO,KAAK;;CAGd,IAAI,OAAgB;AAClB,SAAO,KAAK;;CAGd,yBAAyB,MAAoC;AAC3D,MAAI,KACF,QAAOF,2BAAa,kBAAkB,KAAK,KAAK,WAAW,KAAK,MAAM;MAEtE,QAAOA,2BAAa,aAAa,KAAK,MAAM;;CAIhD,gBAAgB,MAAkB,QAAgD;AAChF,SAAO,OAAO,MAAM,KAAK;;CAG3B,kBAAkB,MAA8B;AAC9C,SAAOA,2BAAa,0BAA0B,KAAK,SAAS,CAAC,WAAW,KAAK;;CAG/E,UAA2B;AACzB,SAAO,IAAI,gBAAgB,KAAK,OAAO,KAAK,KAAK;;CAGnD,iBAAiB,WAAqC;AACpD,SAAO,IAAI,gBAAgB,KAAK,OAAO,KAAK,MAAM,UAAU;;;AAIhE,IAAa,kBAAb,MAAa,wBAAwB,SAAS;CAC5C;CACA;CACA;CAEA,OAAO,cAAc,WAA8B,WAAsC;AACvF,MAAI,UAAU,SAAS,UAAU,MAAM;GACrC,MAAM,WAAWG,iCAAgB,cAAe,UAAU,SAAS,UAAU,KAAO,CAAC;AAErF,OAAI,aAAa,CAAC,SAAS,OAAO,UAAU,CAC1C,OAAM,IAAI,MAAM,6DAA6D;GAG/E,MAAM,OAAO,IAAI,gBAAgB,UAAU,OAAO,UAAU,QAAQ,EAAE,EAAE,SAAS;AACjF,QAAK,QAAQ,UAAU;AACvB,QAAK,OAAO,UAAU;AACtB,UAAO;;EAGT,MAAM,cAAc,IAAI,gBAAgB,UAAU,OAAO,UAAU,QAAQ,EAAE,EAAE,UAAU;AAEzF,MAAI,UAAU,OAAO,cAAc,OACjC,OAAM,IAAI,MAAM,oEAAoE;AAGtF,MAAI,UAAU,KAAK;AACjB,eAAY,MAAM,UAAU;AAC5B,UAAO;;AAGT,SAAO;;CAGT,OAAO,UAAU,aAAyB,WAAsC;EAC9E,MAAM,UAAUF,8BAAc,YAAY;EAC1C,MAAM,gBAAgBC,uDAAuB,OAAO,SAAS,UAAU;AACvE,SAAO,gBAAgB,cAAc,eAAe,UAAU;;CAGhE,YAAY,SAAqB,aAAwC,WAAqB;AAC5F,QAAM,SAAS,eAAe,OAAU;AACxC,OAAK,QAAQ,aAAa,KAAK;;CAGjC,IAAI,SAA4B;AAC9B,SAAO,OAAO,MAAqB,YAAsB;GACvD,MAAM,aAA2B,EAAE;AACnC,QAAK,MAAM,SAAS,SAAS;IAG3B,MAAM,OAA0B;KAC9B,KAHU,KAAK;KAIf,MAAM;MAAE,OAAO,KAAK;MAAO,MAAM,KAAK;MAAM,MAAM,KAAK;MAAM,OAAO,KAAK;MAAO,KAAK,KAAK;MAAK;KAChG;AAED,QAAI,CAAC,KAAK,IAAI,OAAO,OAAO,KAAK,KAAK,CACpC,MAAK,cAAc,KAAK;AAG1B,yDAA0B,KAAK;AAC/B,eAAW,KAAKE,mDAAwB,KAAK,CAAC;;AAGhD,UAAO;;;CAIX,MAAM,kBAAkB,WAA2C;EACjE,MAAM,SAAS,MAAM,UAAU,WAAW,KAAK;AAE/C,MAAI,CAAC,OAAO,KAAK,OAAO,KAAK,MAAM,CACjC,OAAM,IAAI,MACR,sFAAsF,KAAK,MAAM,UAAU,CAAC,SAAS,OAAO,KAAK,UAAU,GAC5I;AAGH,MAAI,SAAS,UAAU,OAAO,IAC5B,MAAK,MAAM,OAAO;WACT,WAAW,UAAU,OAAO,MACrC,MAAK,QAAQ,OAAO;MAEpB,OAAM,IAAI,MAAM,0DAA0D"}