@algorandfoundation/algokit-utils 10.0.0-alpha.9 → 10.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1602) hide show
  1. package/_virtual/_rolldown/runtime.js +23 -0
  2. package/abi/index.d.ts +2 -1
  3. package/abi/index.js +8 -5
  4. package/abi/index.mjs +2 -2
  5. package/account-manager.d.ts +447 -0
  6. package/account-manager.js +617 -0
  7. package/account-manager.js.map +1 -0
  8. package/account-manager.mjs +613 -0
  9. package/account-manager.mjs.map +1 -0
  10. package/account.d.ts +151 -0
  11. package/account.js +10 -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 +3 -3
  16. package/algo25/index.mjs +1 -2
  17. package/algod-client/index.d.ts +2 -3
  18. package/algod-client/index.js +10 -12
  19. package/algod-client/index.mjs +2 -3
  20. package/algorand-client-transaction-creator.d.ts +891 -0
  21. package/algorand-client-transaction-creator.js +735 -0
  22. package/algorand-client-transaction-creator.js.map +1 -0
  23. package/algorand-client-transaction-creator.mjs +734 -0
  24. package/algorand-client-transaction-creator.mjs.map +1 -0
  25. package/algorand-client-transaction-sender.d.ts +1098 -0
  26. package/algorand-client-transaction-sender.js +927 -0
  27. package/algorand-client-transaction-sender.js.map +1 -0
  28. package/algorand-client-transaction-sender.mjs +925 -0
  29. package/algorand-client-transaction-sender.mjs.map +1 -0
  30. package/algorand-client.d.ts +266 -0
  31. package/algorand-client.js +349 -0
  32. package/algorand-client.js.map +1 -0
  33. package/algorand-client.mjs +348 -0
  34. package/algorand-client.mjs.map +1 -0
  35. package/amount.d.ts +58 -3
  36. package/amount.js +110 -19
  37. package/amount.js.map +1 -1
  38. package/amount.mjs +101 -12
  39. package/amount.mjs.map +1 -1
  40. package/app-client.d.ts +1042 -0
  41. package/app-client.js +911 -0
  42. package/app-client.js.map +1 -0
  43. package/app-client.mjs +909 -0
  44. package/app-client.mjs.map +1 -0
  45. package/app-deployer.d.ts +159 -0
  46. package/app-deployer.js +353 -0
  47. package/app-deployer.js.map +1 -0
  48. package/app-deployer.mjs +352 -0
  49. package/app-deployer.mjs.map +1 -0
  50. package/app-factory.d.ts +791 -0
  51. package/app-factory.js +448 -0
  52. package/app-factory.js.map +1 -0
  53. package/app-factory.mjs +447 -0
  54. package/app-factory.mjs.map +1 -0
  55. package/app-manager.d.ts +323 -0
  56. package/app-manager.js +466 -0
  57. package/app-manager.js.map +1 -0
  58. package/app-manager.mjs +465 -0
  59. package/app-manager.mjs.map +1 -0
  60. package/app-spec.d.ts +200 -0
  61. package/app-spec.js +137 -0
  62. package/app-spec.js.map +1 -0
  63. package/app-spec.mjs +136 -0
  64. package/app-spec.mjs.map +1 -0
  65. package/app.d.ts +251 -0
  66. package/app.js +49 -0
  67. package/app.js.map +1 -0
  68. package/app.mjs +42 -0
  69. package/app.mjs.map +1 -0
  70. package/asset-manager.d.ts +215 -0
  71. package/asset-manager.js +169 -0
  72. package/asset-manager.js.map +1 -0
  73. package/asset-manager.mjs +168 -0
  74. package/asset-manager.mjs.map +1 -0
  75. package/async-event-emitter.d.ts +16 -0
  76. package/async-event-emitter.js +38 -0
  77. package/async-event-emitter.js.map +1 -0
  78. package/async-event-emitter.mjs +37 -0
  79. package/async-event-emitter.mjs.map +1 -0
  80. package/client-manager.d.ts +475 -0
  81. package/client-manager.js +616 -0
  82. package/client-manager.js.map +1 -0
  83. package/client-manager.mjs +615 -0
  84. package/client-manager.mjs.map +1 -0
  85. package/common/index.d.ts +28 -0
  86. package/common/index.js +109 -0
  87. package/common/index.mjs +25 -0
  88. package/composer.d.ts +942 -0
  89. package/composer.js +1583 -0
  90. package/composer.js.map +1 -0
  91. package/composer.mjs +1581 -0
  92. package/composer.mjs.map +1 -0
  93. package/config.d.ts +1 -1
  94. package/config.js +3 -4
  95. package/config.js.map +1 -1
  96. package/config.mjs +2 -3
  97. package/config.mjs.map +1 -1
  98. package/crypto/index.d.ts +5 -0
  99. package/crypto/index.js +13 -0
  100. package/crypto/index.mjs +5 -0
  101. package/debugging.d.ts +41 -0
  102. package/debugging.js +20 -0
  103. package/debugging.js.map +1 -0
  104. package/debugging.mjs +15 -0
  105. package/debugging.mjs.map +1 -0
  106. package/dispenser-client.d.ts +91 -0
  107. package/dispenser-client.js +128 -0
  108. package/dispenser-client.js.map +1 -0
  109. package/dispenser-client.mjs +127 -0
  110. package/dispenser-client.mjs.map +1 -0
  111. package/expand.d.ts +2 -0
  112. package/expand.js +0 -0
  113. package/expand.mjs +0 -0
  114. package/index.d.ts +28 -7
  115. package/index.js +45 -17
  116. package/index.mjs +21 -7
  117. package/indexer-client/index.d.ts +2 -2
  118. package/indexer-client/index.js +12 -12
  119. package/indexer-client/index.mjs +2 -3
  120. package/{indexer-lookup.d.ts → indexer-client/indexer-lookup.d.ts} +8 -11
  121. package/{indexer-lookup.js → indexer-client/indexer-lookup.js} +4 -16
  122. package/indexer-client/indexer-lookup.js.map +1 -0
  123. package/{indexer-lookup.mjs → indexer-client/indexer-lookup.mjs} +3 -11
  124. package/indexer-client/indexer-lookup.mjs.map +1 -0
  125. package/indexer.d.ts +40 -0
  126. package/indexer.js +38 -0
  127. package/indexer.js.map +1 -0
  128. package/indexer.mjs +35 -0
  129. package/indexer.mjs.map +1 -0
  130. package/instance-of.d.ts +8 -0
  131. package/kmd-account-manager.d.ts +74 -0
  132. package/kmd-account-manager.js +167 -0
  133. package/kmd-account-manager.js.map +1 -0
  134. package/kmd-account-manager.mjs +164 -0
  135. package/kmd-account-manager.mjs.map +1 -0
  136. package/kmd-client/index.d.ts +1 -2
  137. package/kmd-client/index.js +7 -12
  138. package/kmd-client/index.mjs +1 -3
  139. package/lifecycle-events.d.ts +14 -0
  140. package/lifecycle-events.js +11 -0
  141. package/lifecycle-events.js.map +1 -0
  142. package/lifecycle-events.mjs +10 -0
  143. package/lifecycle-events.mjs.map +1 -0
  144. package/logging.d.ts +13 -0
  145. package/logging.js +47 -0
  146. package/logging.js.map +1 -0
  147. package/logging.mjs +42 -0
  148. package/logging.mjs.map +1 -0
  149. package/logic-error.d.ts +39 -0
  150. package/logic-error.js +54 -0
  151. package/logic-error.js.map +1 -0
  152. package/logic-error.mjs +53 -0
  153. package/logic-error.mjs.map +1 -0
  154. package/network-client.d.ts +43 -0
  155. package/network-client.js +14 -0
  156. package/network-client.js.map +1 -0
  157. package/network-client.mjs +13 -0
  158. package/network-client.mjs.map +1 -0
  159. package/network-manager.d.ts +143 -0
  160. package/network-manager.js +190 -0
  161. package/network-manager.js.map +1 -0
  162. package/network-manager.mjs +189 -0
  163. package/network-manager.mjs.map +1 -0
  164. package/package.json +34 -8
  165. package/packages/abi/src/abi-method.d.ts +7 -12
  166. package/packages/abi/src/abi-method.js +20 -22
  167. package/packages/abi/src/abi-method.js.map +1 -1
  168. package/packages/abi/src/abi-method.mjs +18 -19
  169. package/packages/abi/src/abi-method.mjs.map +1 -1
  170. package/packages/abi/src/abi-type.d.ts +1 -6
  171. package/packages/abi/src/abi-type.js +26 -59
  172. package/packages/abi/src/abi-type.js.map +1 -1
  173. package/packages/abi/src/abi-type.mjs +23 -56
  174. package/packages/abi/src/abi-type.mjs.map +1 -1
  175. package/packages/abi/src/arc28-event.d.ts +4 -10
  176. package/packages/abi/src/arc56-contract.d.ts +66 -155
  177. package/packages/abi/src/arc56-contract.js +2 -3
  178. package/packages/abi/src/arc56-contract.js.map +1 -1
  179. package/packages/abi/src/arc56-contract.mjs +1 -2
  180. package/packages/abi/src/arc56-contract.mjs.map +1 -1
  181. package/packages/abi/src/bigint.js +1 -2
  182. package/packages/abi/src/bigint.js.map +1 -1
  183. package/packages/abi/src/bigint.mjs +1 -1
  184. package/packages/abi/src/utils.d.ts +21 -0
  185. package/packages/abi/src/utils.js +56 -0
  186. package/packages/abi/src/utils.js.map +1 -0
  187. package/packages/abi/src/utils.mjs +55 -0
  188. package/packages/abi/src/utils.mjs.map +1 -0
  189. package/packages/algo25/src/english.js +2 -4
  190. package/packages/algo25/src/english.js.map +1 -1
  191. package/packages/algo25/src/english.mjs +2 -3
  192. package/packages/algo25/src/english.mjs.map +1 -1
  193. package/packages/algo25/src/index.d.ts +2 -2
  194. package/packages/algo25/src/index.js +4 -5
  195. package/packages/algo25/src/index.js.map +1 -1
  196. package/packages/algo25/src/index.mjs +6 -7
  197. package/packages/algo25/src/index.mjs.map +1 -1
  198. package/packages/algod_client/src/apis/api-service.js +33 -34
  199. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  200. package/packages/algod_client/src/apis/api-service.mjs +3 -4
  201. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  202. package/packages/algod_client/src/client.js +3 -4
  203. package/packages/algod_client/src/client.js.map +1 -1
  204. package/packages/algod_client/src/client.mjs +1 -2
  205. package/packages/algod_client/src/client.mjs.map +1 -1
  206. package/packages/algod_client/src/core/api-error.js +1 -2
  207. package/packages/algod_client/src/core/api-error.js.map +1 -1
  208. package/packages/algod_client/src/core/api-error.mjs +1 -1
  209. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  210. package/packages/algod_client/src/core/base-http-request.js +1 -2
  211. package/packages/algod_client/src/core/base-http-request.js.map +1 -1
  212. package/packages/algod_client/src/core/base-http-request.mjs +1 -1
  213. package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
  214. package/packages/algod_client/src/core/fetch-http-request.js +3 -4
  215. package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
  216. package/packages/algod_client/src/core/fetch-http-request.mjs +1 -2
  217. package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
  218. package/packages/algod_client/src/core/model-runtime.js +6 -7
  219. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  220. package/packages/algod_client/src/core/model-runtime.mjs +3 -4
  221. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  222. package/packages/algod_client/src/core/request.js +5 -6
  223. package/packages/algod_client/src/core/request.js.map +1 -1
  224. package/packages/algod_client/src/core/request.mjs +1 -2
  225. package/packages/algod_client/src/core/request.mjs.map +1 -1
  226. package/packages/algod_client/src/models/account-application-response.js +5 -6
  227. package/packages/algod_client/src/models/account-application-response.js.map +1 -1
  228. package/packages/algod_client/src/models/account-application-response.mjs +1 -2
  229. package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
  230. package/packages/algod_client/src/models/account-asset-response.js +5 -6
  231. package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
  232. package/packages/algod_client/src/models/account-asset-response.mjs +1 -2
  233. package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
  234. package/packages/algod_client/src/models/account-participation.js +3 -4
  235. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  236. package/packages/algod_client/src/models/account-participation.mjs +1 -2
  237. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  238. package/packages/algod_client/src/models/account-state-delta.d.ts +0 -1
  239. package/packages/algod_client/src/models/account-state-delta.js +4 -5
  240. package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
  241. package/packages/algod_client/src/models/account-state-delta.mjs +1 -2
  242. package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
  243. package/packages/algod_client/src/models/account.d.ts +0 -1
  244. package/packages/algod_client/src/models/account.js +14 -15
  245. package/packages/algod_client/src/models/account.js.map +1 -1
  246. package/packages/algod_client/src/models/account.mjs +1 -2
  247. package/packages/algod_client/src/models/account.mjs.map +1 -1
  248. package/packages/algod_client/src/models/application-initial-states.d.ts +0 -1
  249. package/packages/algod_client/src/models/application-initial-states.js +5 -6
  250. package/packages/algod_client/src/models/application-initial-states.js.map +1 -1
  251. package/packages/algod_client/src/models/application-initial-states.mjs +1 -2
  252. package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -1
  253. package/packages/algod_client/src/models/application-kv-storage.d.ts +0 -1
  254. package/packages/algod_client/src/models/application-kv-storage.js +5 -6
  255. package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
  256. package/packages/algod_client/src/models/application-kv-storage.mjs +1 -2
  257. package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
  258. package/packages/algod_client/src/models/application-local-state.d.ts +0 -1
  259. package/packages/algod_client/src/models/application-local-state.js +6 -7
  260. package/packages/algod_client/src/models/application-local-state.js.map +1 -1
  261. package/packages/algod_client/src/models/application-local-state.mjs +1 -2
  262. package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
  263. package/packages/algod_client/src/models/application-params.d.ts +0 -1
  264. package/packages/algod_client/src/models/application-params.js +8 -9
  265. package/packages/algod_client/src/models/application-params.js.map +1 -1
  266. package/packages/algod_client/src/models/application-params.mjs +1 -2
  267. package/packages/algod_client/src/models/application-params.mjs.map +1 -1
  268. package/packages/algod_client/src/models/application-state-operation.d.ts +0 -1
  269. package/packages/algod_client/src/models/application-state-operation.js +6 -7
  270. package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
  271. package/packages/algod_client/src/models/application-state-operation.mjs +1 -2
  272. package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
  273. package/packages/algod_client/src/models/application-state-schema.js +2 -3
  274. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  275. package/packages/algod_client/src/models/application-state-schema.mjs +1 -2
  276. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  277. package/packages/algod_client/src/models/application.d.ts +0 -1
  278. package/packages/algod_client/src/models/application.js +4 -5
  279. package/packages/algod_client/src/models/application.js.map +1 -1
  280. package/packages/algod_client/src/models/application.mjs +1 -2
  281. package/packages/algod_client/src/models/application.mjs.map +1 -1
  282. package/packages/algod_client/src/models/asset-holding.js +3 -4
  283. package/packages/algod_client/src/models/asset-holding.js.map +1 -1
  284. package/packages/algod_client/src/models/asset-holding.mjs +1 -2
  285. package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
  286. package/packages/algod_client/src/models/asset-params.js +7 -8
  287. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  288. package/packages/algod_client/src/models/asset-params.mjs +1 -2
  289. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  290. package/packages/algod_client/src/models/asset.d.ts +0 -1
  291. package/packages/algod_client/src/models/asset.js +4 -5
  292. package/packages/algod_client/src/models/asset.js.map +1 -1
  293. package/packages/algod_client/src/models/asset.mjs +1 -2
  294. package/packages/algod_client/src/models/asset.mjs.map +1 -1
  295. package/packages/algod_client/src/models/avm-key-value.d.ts +0 -1
  296. package/packages/algod_client/src/models/avm-key-value.js +4 -5
  297. package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
  298. package/packages/algod_client/src/models/avm-key-value.mjs +1 -2
  299. package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
  300. package/packages/algod_client/src/models/avm-value.js +4 -6
  301. package/packages/algod_client/src/models/avm-value.js.map +1 -1
  302. package/packages/algod_client/src/models/avm-value.mjs +1 -2
  303. package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
  304. package/packages/algod_client/src/models/block-hash-response.js +2 -4
  305. package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
  306. package/packages/algod_client/src/models/block-hash-response.mjs +1 -2
  307. package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
  308. package/packages/algod_client/src/models/block-response.d.ts +1 -3
  309. package/packages/algod_client/src/models/block-response.js +4 -6
  310. package/packages/algod_client/src/models/block-response.js.map +1 -1
  311. package/packages/algod_client/src/models/block-response.mjs +1 -2
  312. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  313. package/packages/algod_client/src/models/block-txids-response.js +2 -4
  314. package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
  315. package/packages/algod_client/src/models/block-txids-response.mjs +1 -2
  316. package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
  317. package/packages/algod_client/src/models/block.d.ts +45 -97
  318. package/packages/algod_client/src/models/block.js +30 -31
  319. package/packages/algod_client/src/models/block.js.map +1 -1
  320. package/packages/algod_client/src/models/block.mjs +19 -20
  321. package/packages/algod_client/src/models/block.mjs.map +1 -1
  322. package/packages/algod_client/src/models/box-descriptor.js +2 -4
  323. package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
  324. package/packages/algod_client/src/models/box-descriptor.mjs +1 -2
  325. package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
  326. package/packages/algod_client/src/models/box.js +3 -4
  327. package/packages/algod_client/src/models/box.js.map +1 -1
  328. package/packages/algod_client/src/models/box.mjs +1 -2
  329. package/packages/algod_client/src/models/box.mjs.map +1 -1
  330. package/packages/algod_client/src/models/boxes-response.js +4 -5
  331. package/packages/algod_client/src/models/boxes-response.js.map +1 -1
  332. package/packages/algod_client/src/models/boxes-response.mjs +1 -2
  333. package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
  334. package/packages/algod_client/src/models/build-version.js +3 -4
  335. package/packages/algod_client/src/models/build-version.js.map +1 -1
  336. package/packages/algod_client/src/models/build-version.mjs +1 -2
  337. package/packages/algod_client/src/models/build-version.mjs.map +1 -1
  338. package/packages/algod_client/src/models/compile-response.js +4 -5
  339. package/packages/algod_client/src/models/compile-response.js.map +1 -1
  340. package/packages/algod_client/src/models/compile-response.mjs +1 -2
  341. package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
  342. package/packages/algod_client/src/models/disassemble-response.js +2 -4
  343. package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
  344. package/packages/algod_client/src/models/disassemble-response.mjs +1 -2
  345. package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
  346. package/packages/algod_client/src/models/eval-delta-key-value.d.ts +0 -1
  347. package/packages/algod_client/src/models/eval-delta-key-value.js +5 -6
  348. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  349. package/packages/algod_client/src/models/eval-delta-key-value.mjs +3 -4
  350. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  351. package/packages/algod_client/src/models/eval-delta.js +5 -7
  352. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  353. package/packages/algod_client/src/models/eval-delta.mjs +3 -4
  354. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  355. package/packages/algod_client/src/models/genesis-allocation.js +59 -62
  356. package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
  357. package/packages/algod_client/src/models/genesis-allocation.mjs +55 -58
  358. package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
  359. package/packages/algod_client/src/models/genesis.js +7 -8
  360. package/packages/algod_client/src/models/genesis.js.map +1 -1
  361. package/packages/algod_client/src/models/genesis.mjs +1 -2
  362. package/packages/algod_client/src/models/genesis.mjs.map +1 -1
  363. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +2 -4
  364. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
  365. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +1 -2
  366. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
  367. package/packages/algod_client/src/models/get-sync-round-response.js +2 -4
  368. package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
  369. package/packages/algod_client/src/models/get-sync-round-response.mjs +1 -2
  370. package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
  371. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +0 -1
  372. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +4 -5
  373. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
  374. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +1 -2
  375. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
  376. package/packages/algod_client/src/models/ledger-state-delta.d.ts +3 -8
  377. package/packages/algod_client/src/models/ledger-state-delta.js +98 -101
  378. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  379. package/packages/algod_client/src/models/ledger-state-delta.mjs +205 -210
  380. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  381. package/packages/algod_client/src/models/light-block-header-proof.js +3 -4
  382. package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
  383. package/packages/algod_client/src/models/light-block-header-proof.mjs +1 -2
  384. package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
  385. package/packages/algod_client/src/models/node-status-response.js +5 -6
  386. package/packages/algod_client/src/models/node-status-response.js.map +1 -1
  387. package/packages/algod_client/src/models/node-status-response.mjs +1 -2
  388. package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
  389. package/packages/algod_client/src/models/pending-transaction-response.d.ts +0 -1
  390. package/packages/algod_client/src/models/pending-transaction-response.js +9 -10
  391. package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
  392. package/packages/algod_client/src/models/pending-transaction-response.mjs +1 -2
  393. package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
  394. package/packages/algod_client/src/models/pending-transactions-response.d.ts +0 -1
  395. package/packages/algod_client/src/models/pending-transactions-response.js +5 -6
  396. package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
  397. package/packages/algod_client/src/models/pending-transactions-response.mjs +1 -2
  398. package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
  399. package/packages/algod_client/src/models/post-transactions-response.js +2 -4
  400. package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
  401. package/packages/algod_client/src/models/post-transactions-response.mjs +1 -2
  402. package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
  403. package/packages/algod_client/src/models/scratch-change.d.ts +0 -1
  404. package/packages/algod_client/src/models/scratch-change.js +4 -5
  405. package/packages/algod_client/src/models/scratch-change.js.map +1 -1
  406. package/packages/algod_client/src/models/scratch-change.mjs +1 -2
  407. package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
  408. package/packages/algod_client/src/models/simulate-initial-states.d.ts +0 -1
  409. package/packages/algod_client/src/models/simulate-initial-states.js +4 -5
  410. package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
  411. package/packages/algod_client/src/models/simulate-initial-states.mjs +1 -2
  412. package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
  413. package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +0 -1
  414. package/packages/algod_client/src/models/simulate-request-transaction-group.js +4 -5
  415. package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
  416. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +1 -2
  417. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
  418. package/packages/algod_client/src/models/simulate-request.d.ts +0 -1
  419. package/packages/algod_client/src/models/simulate-request.js +8 -9
  420. package/packages/algod_client/src/models/simulate-request.js.map +1 -1
  421. package/packages/algod_client/src/models/simulate-request.mjs +2 -3
  422. package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
  423. package/packages/algod_client/src/models/simulate-response.d.ts +3 -1
  424. package/packages/algod_client/src/models/simulate-response.js +18 -10
  425. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  426. package/packages/algod_client/src/models/simulate-response.mjs +10 -4
  427. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  428. package/packages/algod_client/src/models/simulate-trace-config.js +2 -3
  429. package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
  430. package/packages/algod_client/src/models/simulate-trace-config.mjs +1 -2
  431. package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
  432. package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +0 -1
  433. package/packages/algod_client/src/models/simulate-transaction-group-result.js +7 -8
  434. package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
  435. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +1 -2
  436. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
  437. package/packages/algod_client/src/models/simulate-transaction-result.d.ts +0 -1
  438. package/packages/algod_client/src/models/simulate-transaction-result.js +7 -8
  439. package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
  440. package/packages/algod_client/src/models/simulate-transaction-result.mjs +1 -2
  441. package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
  442. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +0 -1
  443. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +5 -6
  444. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  445. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +1 -2
  446. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  447. package/packages/algod_client/src/models/simulation-eval-overrides.js +3 -4
  448. package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
  449. package/packages/algod_client/src/models/simulation-eval-overrides.mjs +1 -2
  450. package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
  451. package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +0 -1
  452. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +7 -8
  453. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
  454. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +1 -2
  455. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
  456. package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +0 -1
  457. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +7 -8
  458. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
  459. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +1 -2
  460. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
  461. package/packages/algod_client/src/models/source-map.js +4 -5
  462. package/packages/algod_client/src/models/source-map.js.map +1 -1
  463. package/packages/algod_client/src/models/source-map.mjs +1 -2
  464. package/packages/algod_client/src/models/source-map.mjs.map +1 -1
  465. package/packages/algod_client/src/models/state-delta.d.ts +0 -1
  466. package/packages/algod_client/src/models/state-delta.js +4 -5
  467. package/packages/algod_client/src/models/state-delta.js.map +1 -1
  468. package/packages/algod_client/src/models/state-delta.mjs +1 -2
  469. package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
  470. package/packages/algod_client/src/models/state-proof-message.js +3 -4
  471. package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
  472. package/packages/algod_client/src/models/state-proof-message.mjs +1 -2
  473. package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
  474. package/packages/algod_client/src/models/state-proof.d.ts +0 -1
  475. package/packages/algod_client/src/models/state-proof.js +4 -5
  476. package/packages/algod_client/src/models/state-proof.js.map +1 -1
  477. package/packages/algod_client/src/models/state-proof.mjs +1 -2
  478. package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
  479. package/packages/algod_client/src/models/supply-response.js +2 -3
  480. package/packages/algod_client/src/models/supply-response.js.map +1 -1
  481. package/packages/algod_client/src/models/supply-response.mjs +1 -2
  482. package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
  483. package/packages/algod_client/src/models/teal-key-value-store.d.ts +0 -1
  484. package/packages/algod_client/src/models/teal-key-value-store.js +4 -5
  485. package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
  486. package/packages/algod_client/src/models/teal-key-value-store.mjs +1 -2
  487. package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
  488. package/packages/algod_client/src/models/teal-key-value.d.ts +0 -1
  489. package/packages/algod_client/src/models/teal-key-value.js +4 -5
  490. package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
  491. package/packages/algod_client/src/models/teal-key-value.mjs +1 -2
  492. package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
  493. package/packages/algod_client/src/models/teal-value.js +4 -6
  494. package/packages/algod_client/src/models/teal-value.js.map +1 -1
  495. package/packages/algod_client/src/models/teal-value.mjs +1 -2
  496. package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
  497. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +4 -5
  498. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
  499. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +1 -2
  500. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
  501. package/packages/algod_client/src/models/transaction-parameters-response.js +4 -5
  502. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  503. package/packages/algod_client/src/models/transaction-parameters-response.mjs +1 -2
  504. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  505. package/packages/algod_client/src/models/transaction-proof.js +4 -5
  506. package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
  507. package/packages/algod_client/src/models/transaction-proof.mjs +1 -2
  508. package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
  509. package/packages/algod_client/src/models/version.d.ts +0 -1
  510. package/packages/algod_client/src/models/version.js +6 -7
  511. package/packages/algod_client/src/models/version.js.map +1 -1
  512. package/packages/algod_client/src/models/version.mjs +1 -2
  513. package/packages/algod_client/src/models/version.mjs.map +1 -1
  514. package/packages/common/src/address.d.ts +14 -3
  515. package/packages/common/src/address.js +24 -24
  516. package/packages/common/src/address.js.map +1 -1
  517. package/packages/common/src/address.mjs +17 -21
  518. package/packages/common/src/address.mjs.map +1 -1
  519. package/packages/common/src/array.d.ts +6 -0
  520. package/packages/common/src/array.js +1 -2
  521. package/packages/common/src/array.js.map +1 -1
  522. package/packages/common/src/array.mjs +1 -1
  523. package/packages/common/src/codecs/codec.d.ts +0 -1
  524. package/packages/common/src/codecs/codec.js +1 -2
  525. package/packages/common/src/codecs/codec.js.map +1 -1
  526. package/packages/common/src/codecs/codec.mjs +1 -1
  527. package/packages/common/src/codecs/codec.mjs.map +1 -1
  528. package/packages/common/src/codecs/composite/array.d.ts +25 -0
  529. package/packages/common/src/codecs/composite/array.js +9 -9
  530. package/packages/common/src/codecs/composite/array.js.map +1 -1
  531. package/packages/common/src/codecs/composite/array.mjs +2 -3
  532. package/packages/common/src/codecs/composite/array.mjs.map +1 -1
  533. package/packages/common/src/codecs/composite/map.d.ts +26 -0
  534. package/packages/common/src/codecs/composite/map.js +2 -3
  535. package/packages/common/src/codecs/composite/map.js.map +1 -1
  536. package/packages/common/src/codecs/composite/map.mjs +1 -2
  537. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  538. package/packages/common/src/codecs/composite/record.d.ts +19 -0
  539. package/packages/common/src/codecs/composite/record.js +3 -4
  540. package/packages/common/src/codecs/composite/record.js.map +1 -1
  541. package/packages/common/src/codecs/composite/record.mjs +1 -2
  542. package/packages/common/src/codecs/composite/record.mjs.map +1 -1
  543. package/packages/common/src/codecs/models/array-model.d.ts +19 -0
  544. package/packages/common/src/codecs/models/array-model.js +2 -3
  545. package/packages/common/src/codecs/models/array-model.js.map +1 -1
  546. package/packages/common/src/codecs/models/array-model.mjs +1 -2
  547. package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
  548. package/packages/common/src/codecs/models/object-model.js +6 -8
  549. package/packages/common/src/codecs/models/object-model.js.map +1 -1
  550. package/packages/common/src/codecs/models/object-model.mjs +4 -6
  551. package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
  552. package/packages/common/src/codecs/models/primitive-model.d.ts +19 -0
  553. package/packages/common/src/codecs/models/primitive-model.js +2 -3
  554. package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
  555. package/packages/common/src/codecs/models/primitive-model.mjs +1 -2
  556. package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
  557. package/packages/common/src/codecs/primitives/address.d.ts +16 -0
  558. package/packages/common/src/codecs/primitives/address.js +7 -8
  559. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  560. package/packages/common/src/codecs/primitives/address.mjs +4 -5
  561. package/packages/common/src/codecs/primitives/address.mjs.map +1 -1
  562. package/packages/common/src/codecs/primitives/bigint.d.ts +13 -0
  563. package/packages/common/src/codecs/primitives/bigint.js +2 -3
  564. package/packages/common/src/codecs/primitives/bigint.js.map +1 -1
  565. package/packages/common/src/codecs/primitives/bigint.mjs +1 -2
  566. package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -1
  567. package/packages/common/src/codecs/primitives/boolean.d.ts +10 -0
  568. package/packages/common/src/codecs/primitives/boolean.js +2 -3
  569. package/packages/common/src/codecs/primitives/boolean.js.map +1 -1
  570. package/packages/common/src/codecs/primitives/boolean.mjs +1 -2
  571. package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -1
  572. package/packages/common/src/codecs/primitives/bytes-base64.d.ts +15 -0
  573. package/packages/common/src/codecs/primitives/bytes-base64.js +25 -0
  574. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
  575. package/packages/common/src/codecs/primitives/bytes-base64.mjs +24 -0
  576. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
  577. package/packages/common/src/codecs/primitives/bytes.d.ts +15 -0
  578. package/packages/common/src/codecs/primitives/bytes.js +3 -4
  579. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  580. package/packages/common/src/codecs/primitives/bytes.mjs +1 -2
  581. package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -1
  582. package/packages/common/src/codecs/primitives/fixed-bytes.d.ts +19 -0
  583. package/packages/common/src/codecs/primitives/fixed-bytes.js +3 -4
  584. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  585. package/packages/common/src/codecs/primitives/fixed-bytes.mjs +1 -2
  586. package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
  587. package/packages/common/src/codecs/primitives/number.d.ts +11 -0
  588. package/packages/common/src/codecs/primitives/number.js +2 -3
  589. package/packages/common/src/codecs/primitives/number.js.map +1 -1
  590. package/packages/common/src/codecs/primitives/number.mjs +1 -2
  591. package/packages/common/src/codecs/primitives/number.mjs.map +1 -1
  592. package/packages/common/src/codecs/primitives/string.d.ts +13 -0
  593. package/packages/common/src/codecs/primitives/string.js +3 -4
  594. package/packages/common/src/codecs/primitives/string.js.map +1 -1
  595. package/packages/common/src/codecs/primitives/string.mjs +1 -2
  596. package/packages/common/src/codecs/primitives/string.mjs.map +1 -1
  597. package/packages/common/src/codecs/primitives/unknown.d.ts +26 -0
  598. package/packages/common/src/codecs/primitives/unknown.js +10 -11
  599. package/packages/common/src/codecs/primitives/unknown.js.map +1 -1
  600. package/packages/common/src/codecs/primitives/unknown.mjs +3 -4
  601. package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -1
  602. package/packages/common/src/codecs/types.d.ts +12 -2
  603. package/packages/common/src/codecs/wire.d.ts +17 -1
  604. package/packages/common/src/codecs/wire.js +2 -3
  605. package/packages/common/src/codecs/wire.js.map +1 -1
  606. package/packages/common/src/codecs/wire.mjs +1 -2
  607. package/packages/common/src/codecs/wire.mjs.map +1 -1
  608. package/packages/common/src/constants.d.ts +34 -0
  609. package/packages/common/src/constants.js +4 -3
  610. package/packages/common/src/constants.js.map +1 -1
  611. package/packages/common/src/constants.mjs +4 -3
  612. package/packages/common/src/constants.mjs.map +1 -1
  613. package/packages/common/src/encoding.d.ts +10 -0
  614. package/packages/common/src/encoding.js +30 -0
  615. package/packages/common/src/encoding.js.map +1 -0
  616. package/packages/common/src/encoding.mjs +24 -0
  617. package/packages/common/src/encoding.mjs.map +1 -0
  618. package/packages/common/src/json.d.ts +17 -0
  619. package/packages/common/src/json.js +3 -4
  620. package/packages/common/src/json.js.map +1 -1
  621. package/packages/common/src/json.mjs +3 -4
  622. package/packages/common/src/json.mjs.map +1 -1
  623. package/packages/common/src/msgpack.d.ts +11 -0
  624. package/packages/common/src/msgpack.js +2 -3
  625. package/packages/common/src/msgpack.js.map +1 -1
  626. package/packages/common/src/msgpack.mjs +1 -2
  627. package/packages/common/src/msgpack.mjs.map +1 -1
  628. package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +1 -1
  629. package/packages/{sdk/src/logic → common/src}/sourcemap.js +4 -5
  630. package/packages/common/src/sourcemap.js.map +1 -0
  631. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +2 -3
  632. package/packages/common/src/sourcemap.mjs.map +1 -0
  633. package/packages/crypto/src/ed25519.d.ts +60 -0
  634. package/packages/crypto/src/ed25519.js +58 -0
  635. package/packages/crypto/src/ed25519.js.map +1 -0
  636. package/packages/crypto/src/ed25519.mjs +53 -0
  637. package/packages/crypto/src/ed25519.mjs.map +1 -0
  638. package/packages/crypto/src/hash.d.ts +8 -0
  639. package/packages/crypto/src/hash.js +14 -0
  640. package/packages/crypto/src/hash.js.map +1 -0
  641. package/packages/crypto/src/hash.mjs +13 -0
  642. package/packages/crypto/src/hash.mjs.map +1 -0
  643. package/packages/crypto/src/hd.d.ts +36 -0
  644. package/packages/crypto/src/hd.js +36 -0
  645. package/packages/crypto/src/hd.js.map +1 -0
  646. package/packages/crypto/src/hd.mjs +35 -0
  647. package/packages/crypto/src/hd.mjs.map +1 -0
  648. package/packages/crypto/src/index.d.ts +28 -0
  649. package/packages/crypto/src/index.js +142 -0
  650. package/packages/crypto/src/index.js.map +1 -0
  651. package/packages/crypto/src/index.mjs +139 -0
  652. package/packages/crypto/src/index.mjs.map +1 -0
  653. package/packages/indexer_client/src/apis/api-service.js +19 -20
  654. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  655. package/packages/indexer_client/src/apis/api-service.mjs +1 -2
  656. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  657. package/packages/indexer_client/src/client.js +3 -4
  658. package/packages/indexer_client/src/client.js.map +1 -1
  659. package/packages/indexer_client/src/client.mjs +1 -2
  660. package/packages/indexer_client/src/client.mjs.map +1 -1
  661. package/packages/indexer_client/src/core/api-error.js +1 -2
  662. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  663. package/packages/indexer_client/src/core/api-error.mjs +1 -1
  664. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  665. package/packages/indexer_client/src/core/base-http-request.js +1 -2
  666. package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
  667. package/packages/indexer_client/src/core/base-http-request.mjs +1 -1
  668. package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
  669. package/packages/indexer_client/src/core/fetch-http-request.js +3 -4
  670. package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
  671. package/packages/indexer_client/src/core/fetch-http-request.mjs +1 -2
  672. package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
  673. package/packages/indexer_client/src/core/model-runtime.js +2 -18
  674. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  675. package/packages/indexer_client/src/core/model-runtime.mjs +2 -15
  676. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  677. package/packages/indexer_client/src/core/request.js +5 -6
  678. package/packages/indexer_client/src/core/request.js.map +1 -1
  679. package/packages/indexer_client/src/core/request.mjs +1 -2
  680. package/packages/indexer_client/src/core/request.mjs.map +1 -1
  681. package/packages/indexer_client/src/models/account-participation.js +3 -4
  682. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  683. package/packages/indexer_client/src/models/account-participation.mjs +1 -2
  684. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  685. package/packages/indexer_client/src/models/account-response.js +4 -5
  686. package/packages/indexer_client/src/models/account-response.js.map +1 -1
  687. package/packages/indexer_client/src/models/account-response.mjs +1 -2
  688. package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
  689. package/packages/indexer_client/src/models/account-state-delta.d.ts +0 -1
  690. package/packages/indexer_client/src/models/account-state-delta.js +4 -5
  691. package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
  692. package/packages/indexer_client/src/models/account-state-delta.mjs +1 -2
  693. package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
  694. package/packages/indexer_client/src/models/account.d.ts +0 -1
  695. package/packages/indexer_client/src/models/account.js +14 -15
  696. package/packages/indexer_client/src/models/account.js.map +1 -1
  697. package/packages/indexer_client/src/models/account.mjs +1 -2
  698. package/packages/indexer_client/src/models/account.mjs.map +1 -1
  699. package/packages/indexer_client/src/models/accounts-response.js +6 -7
  700. package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
  701. package/packages/indexer_client/src/models/accounts-response.mjs +1 -2
  702. package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
  703. package/packages/indexer_client/src/models/application-local-state.d.ts +0 -1
  704. package/packages/indexer_client/src/models/application-local-state.js +7 -8
  705. package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
  706. package/packages/indexer_client/src/models/application-local-state.mjs +1 -2
  707. package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
  708. package/packages/indexer_client/src/models/application-local-states-response.js +6 -7
  709. package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
  710. package/packages/indexer_client/src/models/application-local-states-response.mjs +1 -2
  711. package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
  712. package/packages/indexer_client/src/models/application-log-data.js +3 -4
  713. package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
  714. package/packages/indexer_client/src/models/application-log-data.mjs +1 -2
  715. package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
  716. package/packages/indexer_client/src/models/application-logs-response.js +6 -7
  717. package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
  718. package/packages/indexer_client/src/models/application-logs-response.mjs +1 -2
  719. package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
  720. package/packages/indexer_client/src/models/application-params.d.ts +0 -1
  721. package/packages/indexer_client/src/models/application-params.js +8 -9
  722. package/packages/indexer_client/src/models/application-params.js.map +1 -1
  723. package/packages/indexer_client/src/models/application-params.mjs +1 -2
  724. package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
  725. package/packages/indexer_client/src/models/application-response.js +4 -5
  726. package/packages/indexer_client/src/models/application-response.js.map +1 -1
  727. package/packages/indexer_client/src/models/application-response.mjs +1 -2
  728. package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
  729. package/packages/indexer_client/src/models/application-state-schema.js +2 -3
  730. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  731. package/packages/indexer_client/src/models/application-state-schema.mjs +1 -2
  732. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  733. package/packages/indexer_client/src/models/application.d.ts +0 -1
  734. package/packages/indexer_client/src/models/application.js +5 -6
  735. package/packages/indexer_client/src/models/application.js.map +1 -1
  736. package/packages/indexer_client/src/models/application.mjs +1 -2
  737. package/packages/indexer_client/src/models/application.mjs.map +1 -1
  738. package/packages/indexer_client/src/models/applications-response.js +6 -7
  739. package/packages/indexer_client/src/models/applications-response.js.map +1 -1
  740. package/packages/indexer_client/src/models/applications-response.mjs +1 -2
  741. package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
  742. package/packages/indexer_client/src/models/asset-balances-response.js +6 -7
  743. package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
  744. package/packages/indexer_client/src/models/asset-balances-response.mjs +1 -2
  745. package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
  746. package/packages/indexer_client/src/models/asset-holding.js +3 -4
  747. package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
  748. package/packages/indexer_client/src/models/asset-holding.mjs +1 -2
  749. package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
  750. package/packages/indexer_client/src/models/asset-holdings-response.js +6 -7
  751. package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
  752. package/packages/indexer_client/src/models/asset-holdings-response.mjs +1 -2
  753. package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
  754. package/packages/indexer_client/src/models/asset-params.js +7 -8
  755. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  756. package/packages/indexer_client/src/models/asset-params.mjs +1 -2
  757. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  758. package/packages/indexer_client/src/models/asset-response.js +4 -5
  759. package/packages/indexer_client/src/models/asset-response.js.map +1 -1
  760. package/packages/indexer_client/src/models/asset-response.mjs +1 -2
  761. package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
  762. package/packages/indexer_client/src/models/asset.d.ts +0 -1
  763. package/packages/indexer_client/src/models/asset.js +5 -6
  764. package/packages/indexer_client/src/models/asset.js.map +1 -1
  765. package/packages/indexer_client/src/models/asset.mjs +1 -2
  766. package/packages/indexer_client/src/models/asset.mjs.map +1 -1
  767. package/packages/indexer_client/src/models/assets-response.js +6 -7
  768. package/packages/indexer_client/src/models/assets-response.js.map +1 -1
  769. package/packages/indexer_client/src/models/assets-response.mjs +1 -2
  770. package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
  771. package/packages/indexer_client/src/models/block-headers-response.js +6 -7
  772. package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
  773. package/packages/indexer_client/src/models/block-headers-response.mjs +1 -2
  774. package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
  775. package/packages/indexer_client/src/models/block-rewards.js +3 -4
  776. package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
  777. package/packages/indexer_client/src/models/block-rewards.mjs +1 -2
  778. package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
  779. package/packages/indexer_client/src/models/block-upgrade-state.js +4 -5
  780. package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
  781. package/packages/indexer_client/src/models/block-upgrade-state.mjs +1 -2
  782. package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
  783. package/packages/indexer_client/src/models/block-upgrade-vote.js +4 -5
  784. package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
  785. package/packages/indexer_client/src/models/block-upgrade-vote.mjs +1 -2
  786. package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
  787. package/packages/indexer_client/src/models/block.d.ts +5 -6
  788. package/packages/indexer_client/src/models/block.js +19 -20
  789. package/packages/indexer_client/src/models/block.js.map +1 -1
  790. package/packages/indexer_client/src/models/block.mjs +6 -7
  791. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  792. package/packages/indexer_client/src/models/box-descriptor.js +2 -4
  793. package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
  794. package/packages/indexer_client/src/models/box-descriptor.mjs +1 -2
  795. package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
  796. package/packages/indexer_client/src/models/box-reference.js +3 -4
  797. package/packages/indexer_client/src/models/box-reference.js.map +1 -1
  798. package/packages/indexer_client/src/models/box-reference.mjs +1 -2
  799. package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
  800. package/packages/indexer_client/src/models/box.js +3 -4
  801. package/packages/indexer_client/src/models/box.js.map +1 -1
  802. package/packages/indexer_client/src/models/box.mjs +1 -2
  803. package/packages/indexer_client/src/models/box.mjs.map +1 -1
  804. package/packages/indexer_client/src/models/boxes-response.js +6 -7
  805. package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
  806. package/packages/indexer_client/src/models/boxes-response.mjs +1 -2
  807. package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
  808. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +0 -1
  809. package/packages/indexer_client/src/models/eval-delta-key-value.js +4 -5
  810. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  811. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +1 -2
  812. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  813. package/packages/indexer_client/src/models/eval-delta.js +4 -6
  814. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  815. package/packages/indexer_client/src/models/eval-delta.mjs +1 -2
  816. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  817. package/packages/indexer_client/src/models/hash-factory.js +2 -4
  818. package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
  819. package/packages/indexer_client/src/models/hash-factory.mjs +1 -2
  820. package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
  821. package/packages/indexer_client/src/models/hb-proof-fields.js +2 -3
  822. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  823. package/packages/indexer_client/src/models/hb-proof-fields.mjs +1 -2
  824. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  825. package/packages/indexer_client/src/models/health-check.js +7 -8
  826. package/packages/indexer_client/src/models/health-check.js.map +1 -1
  827. package/packages/indexer_client/src/models/health-check.mjs +1 -2
  828. package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
  829. package/packages/indexer_client/src/models/holding-ref.d.ts +0 -1
  830. package/packages/indexer_client/src/models/holding-ref.js +3 -4
  831. package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
  832. package/packages/indexer_client/src/models/holding-ref.mjs +1 -2
  833. package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
  834. package/packages/indexer_client/src/models/indexer-state-proof-message.js +3 -4
  835. package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
  836. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +1 -2
  837. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
  838. package/packages/indexer_client/src/models/locals-ref.d.ts +0 -1
  839. package/packages/indexer_client/src/models/locals-ref.js +3 -4
  840. package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
  841. package/packages/indexer_client/src/models/locals-ref.mjs +1 -2
  842. package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
  843. package/packages/indexer_client/src/models/merkle-array-proof.js +5 -6
  844. package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
  845. package/packages/indexer_client/src/models/merkle-array-proof.mjs +1 -2
  846. package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
  847. package/packages/indexer_client/src/models/mini-asset-holding.js +4 -6
  848. package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
  849. package/packages/indexer_client/src/models/mini-asset-holding.mjs +1 -2
  850. package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
  851. package/packages/indexer_client/src/models/on-completion.js +2 -4
  852. package/packages/indexer_client/src/models/on-completion.js.map +1 -1
  853. package/packages/indexer_client/src/models/on-completion.mjs +1 -2
  854. package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
  855. package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
  856. package/packages/indexer_client/src/models/participation-updates.js +4 -5
  857. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  858. package/packages/indexer_client/src/models/participation-updates.mjs +3 -4
  859. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  860. package/packages/indexer_client/src/models/resource-ref.d.ts +0 -1
  861. package/packages/indexer_client/src/models/resource-ref.js +7 -8
  862. package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
  863. package/packages/indexer_client/src/models/resource-ref.mjs +1 -2
  864. package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
  865. package/packages/indexer_client/src/models/state-delta.d.ts +0 -1
  866. package/packages/indexer_client/src/models/state-delta.js +4 -5
  867. package/packages/indexer_client/src/models/state-delta.js.map +1 -1
  868. package/packages/indexer_client/src/models/state-delta.mjs +1 -2
  869. package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
  870. package/packages/indexer_client/src/models/state-proof-fields.d.ts +0 -1
  871. package/packages/indexer_client/src/models/state-proof-fields.js +8 -9
  872. package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
  873. package/packages/indexer_client/src/models/state-proof-fields.mjs +1 -2
  874. package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
  875. package/packages/indexer_client/src/models/state-proof-participant.js +4 -5
  876. package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
  877. package/packages/indexer_client/src/models/state-proof-participant.mjs +1 -2
  878. package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
  879. package/packages/indexer_client/src/models/state-proof-reveal.js +5 -6
  880. package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
  881. package/packages/indexer_client/src/models/state-proof-reveal.mjs +1 -2
  882. package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
  883. package/packages/indexer_client/src/models/state-proof-sig-slot.js +4 -5
  884. package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
  885. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +1 -2
  886. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
  887. package/packages/indexer_client/src/models/state-proof-signature.js +5 -6
  888. package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
  889. package/packages/indexer_client/src/models/state-proof-signature.mjs +1 -2
  890. package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
  891. package/packages/indexer_client/src/models/state-proof-tracking.js +4 -5
  892. package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
  893. package/packages/indexer_client/src/models/state-proof-tracking.mjs +1 -2
  894. package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
  895. package/packages/indexer_client/src/models/state-proof-verifier.js +3 -5
  896. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  897. package/packages/indexer_client/src/models/state-proof-verifier.mjs +1 -2
  898. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  899. package/packages/indexer_client/src/models/state-schema.js +2 -3
  900. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  901. package/packages/indexer_client/src/models/state-schema.mjs +1 -2
  902. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  903. package/packages/indexer_client/src/models/teal-key-value-store.d.ts +0 -1
  904. package/packages/indexer_client/src/models/teal-key-value-store.js +4 -5
  905. package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
  906. package/packages/indexer_client/src/models/teal-key-value-store.mjs +1 -2
  907. package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
  908. package/packages/indexer_client/src/models/teal-key-value.d.ts +0 -1
  909. package/packages/indexer_client/src/models/teal-key-value.js +4 -5
  910. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  911. package/packages/indexer_client/src/models/teal-key-value.mjs +1 -2
  912. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  913. package/packages/indexer_client/src/models/teal-value.js +4 -6
  914. package/packages/indexer_client/src/models/teal-value.js.map +1 -1
  915. package/packages/indexer_client/src/models/teal-value.mjs +1 -2
  916. package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
  917. package/packages/indexer_client/src/models/transaction-application.d.ts +0 -1
  918. package/packages/indexer_client/src/models/transaction-application.js +11 -12
  919. package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
  920. package/packages/indexer_client/src/models/transaction-application.mjs +1 -2
  921. package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
  922. package/packages/indexer_client/src/models/transaction-asset-config.d.ts +0 -1
  923. package/packages/indexer_client/src/models/transaction-asset-config.js +4 -5
  924. package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
  925. package/packages/indexer_client/src/models/transaction-asset-config.mjs +1 -2
  926. package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
  927. package/packages/indexer_client/src/models/transaction-asset-freeze.js +4 -6
  928. package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
  929. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +1 -2
  930. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
  931. package/packages/indexer_client/src/models/transaction-asset-transfer.js +3 -4
  932. package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
  933. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +1 -2
  934. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
  935. package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +0 -1
  936. package/packages/indexer_client/src/models/transaction-heartbeat.js +7 -8
  937. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  938. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +1 -2
  939. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  940. package/packages/indexer_client/src/models/transaction-keyreg.js +4 -5
  941. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  942. package/packages/indexer_client/src/models/transaction-keyreg.mjs +1 -2
  943. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  944. package/packages/indexer_client/src/models/transaction-payment.js +3 -4
  945. package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
  946. package/packages/indexer_client/src/models/transaction-payment.mjs +1 -2
  947. package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
  948. package/packages/indexer_client/src/models/transaction-response.js +4 -5
  949. package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
  950. package/packages/indexer_client/src/models/transaction-response.mjs +1 -2
  951. package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
  952. package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +0 -1
  953. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +6 -7
  954. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  955. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +1 -2
  956. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  957. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +2 -3
  958. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  959. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +1 -2
  960. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  961. package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +0 -1
  962. package/packages/indexer_client/src/models/transaction-signature-multisig.js +5 -6
  963. package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
  964. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +1 -2
  965. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
  966. package/packages/indexer_client/src/models/transaction-signature.d.ts +0 -1
  967. package/packages/indexer_client/src/models/transaction-signature.js +5 -6
  968. package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
  969. package/packages/indexer_client/src/models/transaction-signature.mjs +1 -2
  970. package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
  971. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -2
  972. package/packages/indexer_client/src/models/transaction-state-proof.js +6 -7
  973. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  974. package/packages/indexer_client/src/models/transaction-state-proof.mjs +3 -4
  975. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  976. package/packages/indexer_client/src/models/transaction.d.ts +0 -1
  977. package/packages/indexer_client/src/models/transaction.js +21 -22
  978. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  979. package/packages/indexer_client/src/models/transaction.mjs +1 -2
  980. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  981. package/packages/indexer_client/src/models/transactions-response.js +6 -7
  982. package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
  983. package/packages/indexer_client/src/models/transactions-response.mjs +1 -2
  984. package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
  985. package/packages/kmd_client/src/apis/api-service.js +44 -46
  986. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  987. package/packages/kmd_client/src/apis/api-service.mjs +3 -5
  988. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  989. package/packages/kmd_client/src/client.js +3 -4
  990. package/packages/kmd_client/src/client.js.map +1 -1
  991. package/packages/kmd_client/src/client.mjs +1 -2
  992. package/packages/kmd_client/src/client.mjs.map +1 -1
  993. package/packages/kmd_client/src/core/api-error.js +1 -2
  994. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  995. package/packages/kmd_client/src/core/api-error.mjs +1 -1
  996. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  997. package/packages/kmd_client/src/core/base-http-request.js +1 -2
  998. package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
  999. package/packages/kmd_client/src/core/base-http-request.mjs +1 -1
  1000. package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
  1001. package/packages/kmd_client/src/core/fetch-http-request.js +3 -4
  1002. package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
  1003. package/packages/kmd_client/src/core/fetch-http-request.mjs +1 -2
  1004. package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
  1005. package/packages/kmd_client/src/core/model-runtime.js +5 -16
  1006. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  1007. package/packages/kmd_client/src/core/model-runtime.mjs +4 -13
  1008. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  1009. package/packages/kmd_client/src/core/request.js +5 -6
  1010. package/packages/kmd_client/src/core/request.js.map +1 -1
  1011. package/packages/kmd_client/src/core/request.mjs +1 -2
  1012. package/packages/kmd_client/src/core/request.mjs.map +1 -1
  1013. package/packages/kmd_client/src/models/create-wallet-request.js +3 -4
  1014. package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
  1015. package/packages/kmd_client/src/models/create-wallet-request.mjs +1 -2
  1016. package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
  1017. package/packages/kmd_client/src/models/create-wallet-response.d.ts +0 -1
  1018. package/packages/kmd_client/src/models/create-wallet-response.js +3 -4
  1019. package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
  1020. package/packages/kmd_client/src/models/create-wallet-response.mjs +1 -2
  1021. package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
  1022. package/packages/kmd_client/src/models/delete-key-request.d.ts +0 -1
  1023. package/packages/kmd_client/src/models/delete-key-request.js +3 -4
  1024. package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
  1025. package/packages/kmd_client/src/models/delete-key-request.mjs +1 -2
  1026. package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
  1027. package/packages/kmd_client/src/models/delete-multisig-request.d.ts +0 -1
  1028. package/packages/kmd_client/src/models/delete-multisig-request.js +3 -4
  1029. package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
  1030. package/packages/kmd_client/src/models/delete-multisig-request.mjs +1 -2
  1031. package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
  1032. package/packages/kmd_client/src/models/export-key-request.d.ts +0 -1
  1033. package/packages/kmd_client/src/models/export-key-request.js +3 -4
  1034. package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
  1035. package/packages/kmd_client/src/models/export-key-request.mjs +1 -2
  1036. package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
  1037. package/packages/kmd_client/src/models/export-key-response.js +2 -4
  1038. package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
  1039. package/packages/kmd_client/src/models/export-key-response.mjs +1 -2
  1040. package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
  1041. package/packages/kmd_client/src/models/export-master-key-request.js +2 -3
  1042. package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
  1043. package/packages/kmd_client/src/models/export-master-key-request.mjs +1 -2
  1044. package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
  1045. package/packages/kmd_client/src/models/export-master-key-response.js +2 -4
  1046. package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
  1047. package/packages/kmd_client/src/models/export-master-key-response.mjs +1 -2
  1048. package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
  1049. package/packages/kmd_client/src/models/export-multisig-request.d.ts +0 -1
  1050. package/packages/kmd_client/src/models/export-multisig-request.js +3 -4
  1051. package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
  1052. package/packages/kmd_client/src/models/export-multisig-request.mjs +1 -2
  1053. package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
  1054. package/packages/kmd_client/src/models/export-multisig-response.js +3 -4
  1055. package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
  1056. package/packages/kmd_client/src/models/export-multisig-response.mjs +1 -2
  1057. package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
  1058. package/packages/kmd_client/src/models/generate-key-request.js +2 -4
  1059. package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
  1060. package/packages/kmd_client/src/models/generate-key-request.mjs +1 -2
  1061. package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
  1062. package/packages/kmd_client/src/models/generate-key-response.d.ts +0 -1
  1063. package/packages/kmd_client/src/models/generate-key-response.js +2 -4
  1064. package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
  1065. package/packages/kmd_client/src/models/generate-key-response.mjs +1 -2
  1066. package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
  1067. package/packages/kmd_client/src/models/import-key-request.js +3 -4
  1068. package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
  1069. package/packages/kmd_client/src/models/import-key-request.mjs +1 -2
  1070. package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
  1071. package/packages/kmd_client/src/models/import-key-response.d.ts +0 -1
  1072. package/packages/kmd_client/src/models/import-key-response.js +2 -4
  1073. package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
  1074. package/packages/kmd_client/src/models/import-key-response.mjs +1 -2
  1075. package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
  1076. package/packages/kmd_client/src/models/import-multisig-request.js +4 -5
  1077. package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
  1078. package/packages/kmd_client/src/models/import-multisig-request.mjs +1 -2
  1079. package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
  1080. package/packages/kmd_client/src/models/import-multisig-response.d.ts +0 -1
  1081. package/packages/kmd_client/src/models/import-multisig-response.js +2 -4
  1082. package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
  1083. package/packages/kmd_client/src/models/import-multisig-response.mjs +1 -2
  1084. package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
  1085. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +2 -3
  1086. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
  1087. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +1 -2
  1088. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
  1089. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +2 -4
  1090. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
  1091. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +1 -2
  1092. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
  1093. package/packages/kmd_client/src/models/list-keys-request.js +2 -4
  1094. package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
  1095. package/packages/kmd_client/src/models/list-keys-request.mjs +1 -2
  1096. package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
  1097. package/packages/kmd_client/src/models/list-keys-response.d.ts +0 -1
  1098. package/packages/kmd_client/src/models/list-keys-response.js +2 -4
  1099. package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
  1100. package/packages/kmd_client/src/models/list-keys-response.mjs +1 -2
  1101. package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
  1102. package/packages/kmd_client/src/models/list-multisig-request.js +2 -4
  1103. package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
  1104. package/packages/kmd_client/src/models/list-multisig-request.mjs +1 -2
  1105. package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
  1106. package/packages/kmd_client/src/models/list-multisig-response.d.ts +0 -1
  1107. package/packages/kmd_client/src/models/list-multisig-response.js +2 -4
  1108. package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
  1109. package/packages/kmd_client/src/models/list-multisig-response.mjs +1 -2
  1110. package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
  1111. package/packages/kmd_client/src/models/list-wallets-response.d.ts +0 -1
  1112. package/packages/kmd_client/src/models/list-wallets-response.js +4 -5
  1113. package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
  1114. package/packages/kmd_client/src/models/list-wallets-response.mjs +1 -2
  1115. package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
  1116. package/packages/kmd_client/src/models/multisig-sig.d.ts +0 -1
  1117. package/packages/kmd_client/src/models/multisig-sig.js +5 -6
  1118. package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
  1119. package/packages/kmd_client/src/models/multisig-sig.mjs +1 -2
  1120. package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
  1121. package/packages/kmd_client/src/models/multisig-subsig.js +2 -3
  1122. package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
  1123. package/packages/kmd_client/src/models/multisig-subsig.mjs +1 -2
  1124. package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
  1125. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +2 -4
  1126. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
  1127. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +1 -2
  1128. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
  1129. package/packages/kmd_client/src/models/rename-wallet-request.js +2 -3
  1130. package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
  1131. package/packages/kmd_client/src/models/rename-wallet-request.mjs +1 -2
  1132. package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
  1133. package/packages/kmd_client/src/models/rename-wallet-response.d.ts +0 -1
  1134. package/packages/kmd_client/src/models/rename-wallet-response.js +3 -4
  1135. package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
  1136. package/packages/kmd_client/src/models/rename-wallet-response.mjs +1 -2
  1137. package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
  1138. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +2 -4
  1139. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
  1140. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +1 -2
  1141. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
  1142. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +0 -1
  1143. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +3 -4
  1144. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
  1145. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +1 -2
  1146. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
  1147. package/packages/kmd_client/src/models/sign-multisig-response.js +2 -4
  1148. package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
  1149. package/packages/kmd_client/src/models/sign-multisig-response.mjs +1 -2
  1150. package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
  1151. package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +0 -1
  1152. package/packages/kmd_client/src/models/sign-multisig-txn-request.js +5 -6
  1153. package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
  1154. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +1 -2
  1155. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
  1156. package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +0 -1
  1157. package/packages/kmd_client/src/models/sign-program-multisig-request.js +7 -8
  1158. package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
  1159. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +1 -2
  1160. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
  1161. package/packages/kmd_client/src/models/sign-program-multisig-response.js +2 -4
  1162. package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
  1163. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +1 -2
  1164. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
  1165. package/packages/kmd_client/src/models/sign-program-request.d.ts +0 -1
  1166. package/packages/kmd_client/src/models/sign-program-request.js +4 -5
  1167. package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
  1168. package/packages/kmd_client/src/models/sign-program-request.mjs +1 -2
  1169. package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
  1170. package/packages/kmd_client/src/models/sign-program-response.js +2 -4
  1171. package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
  1172. package/packages/kmd_client/src/models/sign-program-response.mjs +1 -2
  1173. package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
  1174. package/packages/kmd_client/src/models/sign-transaction-response.js +2 -4
  1175. package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
  1176. package/packages/kmd_client/src/models/sign-transaction-response.mjs +1 -2
  1177. package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
  1178. package/packages/kmd_client/src/models/sign-txn-request.js +3 -4
  1179. package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
  1180. package/packages/kmd_client/src/models/sign-txn-request.mjs +1 -2
  1181. package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
  1182. package/packages/kmd_client/src/models/tx-type.js +2 -4
  1183. package/packages/kmd_client/src/models/tx-type.js.map +1 -1
  1184. package/packages/kmd_client/src/models/tx-type.mjs +1 -2
  1185. package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
  1186. package/packages/kmd_client/src/models/versions-response.js +2 -4
  1187. package/packages/kmd_client/src/models/versions-response.js.map +1 -1
  1188. package/packages/kmd_client/src/models/versions-response.mjs +1 -2
  1189. package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
  1190. package/packages/kmd_client/src/models/wallet-handle.d.ts +0 -1
  1191. package/packages/kmd_client/src/models/wallet-handle.js +4 -5
  1192. package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
  1193. package/packages/kmd_client/src/models/wallet-handle.mjs +1 -2
  1194. package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
  1195. package/packages/kmd_client/src/models/wallet-info-request.js +2 -4
  1196. package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
  1197. package/packages/kmd_client/src/models/wallet-info-request.mjs +1 -2
  1198. package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
  1199. package/packages/kmd_client/src/models/wallet-info-response.d.ts +0 -1
  1200. package/packages/kmd_client/src/models/wallet-info-response.js +3 -4
  1201. package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
  1202. package/packages/kmd_client/src/models/wallet-info-response.mjs +1 -2
  1203. package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
  1204. package/packages/kmd_client/src/models/wallet.d.ts +0 -1
  1205. package/packages/kmd_client/src/models/wallet.js +7 -8
  1206. package/packages/kmd_client/src/models/wallet.js.map +1 -1
  1207. package/packages/kmd_client/src/models/wallet.mjs +1 -2
  1208. package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
  1209. package/packages/testing/src/globalSetup.js +39 -0
  1210. package/packages/testing/src/globalSetup.js.map +1 -0
  1211. package/packages/testing/src/globalSetup.mjs +35 -0
  1212. package/packages/testing/src/globalSetup.mjs.map +1 -0
  1213. package/packages/testing/src/mockServer.js +94 -0
  1214. package/packages/testing/src/mockServer.js.map +1 -0
  1215. package/packages/testing/src/mockServer.mjs +83 -0
  1216. package/packages/testing/src/mockServer.mjs.map +1 -0
  1217. package/packages/transact/src/logicsig.d.ts +35 -34
  1218. package/packages/transact/src/logicsig.js +81 -84
  1219. package/packages/transact/src/logicsig.js.map +1 -1
  1220. package/packages/transact/src/logicsig.mjs +79 -81
  1221. package/packages/transact/src/logicsig.mjs.map +1 -1
  1222. package/packages/transact/src/multisig.d.ts +11 -116
  1223. package/packages/transact/src/multisig.js +87 -118
  1224. package/packages/transact/src/multisig.js.map +1 -1
  1225. package/packages/transact/src/multisig.mjs +86 -97
  1226. package/packages/transact/src/multisig.mjs.map +1 -1
  1227. package/packages/transact/src/signer.d.ts +11 -3
  1228. package/packages/transact/src/signer.js +29 -8
  1229. package/packages/transact/src/signer.js.map +1 -1
  1230. package/packages/transact/src/signer.mjs +26 -6
  1231. package/packages/transact/src/signer.mjs.map +1 -1
  1232. package/packages/transact/src/transactions/app-call.d.ts +9 -25
  1233. package/packages/transact/src/transactions/app-call.js +30 -31
  1234. package/packages/transact/src/transactions/app-call.js.map +1 -1
  1235. package/packages/transact/src/transactions/app-call.mjs +29 -30
  1236. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  1237. package/packages/transact/src/transactions/asset-config.d.ts +1 -7
  1238. package/packages/transact/src/transactions/asset-config.js +11 -12
  1239. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  1240. package/packages/transact/src/transactions/asset-config.mjs +10 -11
  1241. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  1242. package/packages/transact/src/transactions/asset-freeze.d.ts +1 -7
  1243. package/packages/transact/src/transactions/asset-freeze.js +2 -3
  1244. package/packages/transact/src/transactions/asset-freeze.js.map +1 -1
  1245. package/packages/transact/src/transactions/asset-freeze.mjs +1 -2
  1246. package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -1
  1247. package/packages/transact/src/transactions/asset-transfer.d.ts +1 -7
  1248. package/packages/transact/src/transactions/asset-transfer.js +2 -3
  1249. package/packages/transact/src/transactions/asset-transfer.js.map +1 -1
  1250. package/packages/transact/src/transactions/asset-transfer.mjs +1 -2
  1251. package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -1
  1252. package/packages/transact/src/transactions/common.js +8 -9
  1253. package/packages/transact/src/transactions/common.js.map +1 -1
  1254. package/packages/transact/src/transactions/common.mjs +8 -8
  1255. package/packages/transact/src/transactions/common.mjs.map +1 -1
  1256. package/packages/transact/src/transactions/heartbeat.d.ts +8 -19
  1257. package/packages/transact/src/transactions/key-registration.d.ts +1 -8
  1258. package/packages/transact/src/transactions/key-registration.js +2 -3
  1259. package/packages/transact/src/transactions/key-registration.js.map +1 -1
  1260. package/packages/transact/src/transactions/key-registration.mjs +1 -2
  1261. package/packages/transact/src/transactions/key-registration.mjs.map +1 -1
  1262. package/packages/transact/src/transactions/payment.d.ts +0 -1
  1263. package/packages/transact/src/transactions/reference-types-meta.d.ts +0 -1
  1264. package/packages/transact/src/transactions/reference-types-meta.js +4 -5
  1265. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -1
  1266. package/packages/transact/src/transactions/reference-types-meta.mjs +1 -2
  1267. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -1
  1268. package/packages/transact/src/transactions/signed-transaction-meta.d.ts +0 -1
  1269. package/packages/transact/src/transactions/signed-transaction-meta.js +14 -16
  1270. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  1271. package/packages/transact/src/transactions/signed-transaction-meta.mjs +7 -8
  1272. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  1273. package/packages/transact/src/transactions/signed-transaction.d.ts +20 -5
  1274. package/packages/transact/src/transactions/signed-transaction.js +21 -6
  1275. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  1276. package/packages/transact/src/transactions/signed-transaction.mjs +17 -4
  1277. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  1278. package/packages/transact/src/transactions/state-proof.d.ts +2 -5
  1279. package/packages/transact/src/transactions/transaction-meta.d.ts +0 -1
  1280. package/packages/transact/src/transactions/transaction-meta.js +15 -16
  1281. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  1282. package/packages/transact/src/transactions/transaction-meta.mjs +1 -2
  1283. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  1284. package/packages/transact/src/transactions/transaction-type.d.ts +1 -1
  1285. package/packages/transact/src/transactions/transaction-type.js +12 -13
  1286. package/packages/transact/src/transactions/transaction-type.js.map +1 -1
  1287. package/packages/transact/src/transactions/transaction-type.mjs +12 -12
  1288. package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
  1289. package/packages/transact/src/transactions/transaction.d.ts +5 -2
  1290. package/packages/transact/src/transactions/transaction.js +29 -30
  1291. package/packages/transact/src/transactions/transaction.js.map +1 -1
  1292. package/packages/transact/src/transactions/transaction.mjs +13 -14
  1293. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  1294. package/testing/account.d.ts +2 -3
  1295. package/testing/account.js +5 -7
  1296. package/testing/account.js.map +1 -1
  1297. package/testing/account.mjs +3 -5
  1298. package/testing/account.mjs.map +1 -1
  1299. package/testing/fixtures/algokit-log-capture-fixture.d.ts +1 -2
  1300. package/testing/fixtures/algokit-log-capture-fixture.js +3 -4
  1301. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  1302. package/testing/fixtures/algokit-log-capture-fixture.mjs +1 -2
  1303. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  1304. package/testing/fixtures/algorand-fixture.d.ts +2 -3
  1305. package/testing/fixtures/algorand-fixture.js +8 -9
  1306. package/testing/fixtures/algorand-fixture.js.map +1 -1
  1307. package/testing/fixtures/algorand-fixture.mjs +3 -4
  1308. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  1309. package/testing/index.d.ts +2 -1
  1310. package/testing/index.js +26 -8
  1311. package/testing/index.mjs +3 -2
  1312. package/testing/indexer.js +1 -2
  1313. package/testing/indexer.js.map +1 -1
  1314. package/testing/indexer.mjs +1 -1
  1315. package/testing/indexer.mjs.map +1 -1
  1316. package/testing/test-logger.d.ts +1 -2
  1317. package/testing/test-logger.js +2 -3
  1318. package/testing/test-logger.js.map +1 -1
  1319. package/testing/test-logger.mjs +1 -2
  1320. package/testing/test-logger.mjs.map +1 -1
  1321. package/testing/transaction-logger.d.ts +0 -1
  1322. package/testing/transaction-logger.js +4 -5
  1323. package/testing/transaction-logger.js.map +1 -1
  1324. package/testing/transaction-logger.mjs +1 -2
  1325. package/testing/transaction-logger.mjs.map +1 -1
  1326. package/testing/types.d.ts +156 -0
  1327. package/transact/index.d.ts +12 -12
  1328. package/transact/index.js +16 -42
  1329. package/transact/index.mjs +7 -12
  1330. package/transaction/index.d.ts +4 -0
  1331. package/transaction/index.js +9 -0
  1332. package/transaction/index.mjs +3 -0
  1333. package/transaction/perform-transaction-composer-simulate.d.ts +1 -2
  1334. package/transaction/perform-transaction-composer-simulate.js +3 -5
  1335. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  1336. package/transaction/perform-transaction-composer-simulate.mjs +3 -4
  1337. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  1338. package/transaction/transaction.d.ts +2 -4
  1339. package/transaction/transaction.js +2 -5
  1340. package/transaction/transaction.js.map +1 -1
  1341. package/transaction/transaction.mjs +1 -4
  1342. package/transaction/transaction.mjs.map +1 -1
  1343. package/transaction/types.d.ts +133 -0
  1344. package/transactions/app-call.d.ts +17 -34
  1345. package/transactions/app-call.js +53 -54
  1346. package/transactions/app-call.js.map +1 -1
  1347. package/transactions/app-call.mjs +47 -48
  1348. package/transactions/app-call.mjs.map +1 -1
  1349. package/transactions/asset-config.d.ts +4 -10
  1350. package/transactions/asset-config.js +5 -6
  1351. package/transactions/asset-config.js.map +1 -1
  1352. package/transactions/asset-config.mjs +1 -2
  1353. package/transactions/asset-config.mjs.map +1 -1
  1354. package/transactions/asset-transfer.d.ts +4 -10
  1355. package/transactions/asset-transfer.js +5 -6
  1356. package/transactions/asset-transfer.js.map +1 -1
  1357. package/transactions/asset-transfer.mjs +1 -2
  1358. package/transactions/asset-transfer.mjs.map +1 -1
  1359. package/transactions/common.d.ts +8 -15
  1360. package/transactions/common.js +3 -4
  1361. package/transactions/common.js.map +1 -1
  1362. package/transactions/common.mjs +1 -2
  1363. package/transactions/common.mjs.map +1 -1
  1364. package/transactions/fee-coverage.js +7 -8
  1365. package/transactions/fee-coverage.js.map +1 -1
  1366. package/transactions/fee-coverage.mjs +7 -7
  1367. package/transactions/fee-coverage.mjs.map +1 -1
  1368. package/transactions/key-registration.d.ts +7 -15
  1369. package/transactions/key-registration.js +4 -5
  1370. package/transactions/key-registration.js.map +1 -1
  1371. package/transactions/key-registration.mjs +1 -2
  1372. package/transactions/key-registration.mjs.map +1 -1
  1373. package/transactions/method-call.d.ts +3 -5
  1374. package/transactions/method-call.js +84 -94
  1375. package/transactions/method-call.js.map +1 -1
  1376. package/transactions/method-call.mjs +76 -86
  1377. package/transactions/method-call.mjs.map +1 -1
  1378. package/transactions/payment.d.ts +2 -5
  1379. package/transactions/payment.js +5 -6
  1380. package/transactions/payment.js.map +1 -1
  1381. package/transactions/payment.mjs +1 -2
  1382. package/transactions/payment.mjs.map +1 -1
  1383. package/types/account-manager.d.ts +11 -444
  1384. package/types/account-manager.js +7 -608
  1385. package/types/account-manager.js.map +1 -1
  1386. package/types/account-manager.mjs +6 -606
  1387. package/types/account-manager.mjs.map +1 -1
  1388. package/types/account.d.ts +8 -150
  1389. package/types/account.js +4 -6
  1390. package/types/account.js.map +1 -1
  1391. package/types/account.mjs +4 -5
  1392. package/types/account.mjs.map +1 -1
  1393. package/types/algorand-client-transaction-creator.d.ts +5 -1098
  1394. package/types/algorand-client-transaction-creator.js +4 -731
  1395. package/types/algorand-client-transaction-creator.js.map +1 -1
  1396. package/types/algorand-client-transaction-creator.mjs +4 -730
  1397. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  1398. package/types/algorand-client-transaction-sender.d.ts +5 -1312
  1399. package/types/algorand-client-transaction-sender.js +4 -929
  1400. package/types/algorand-client-transaction-sender.js.map +1 -1
  1401. package/types/algorand-client-transaction-sender.mjs +4 -928
  1402. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  1403. package/types/algorand-client.d.ts +5 -241
  1404. package/types/algorand-client.js +4 -321
  1405. package/types/algorand-client.js.map +1 -1
  1406. package/types/algorand-client.mjs +4 -321
  1407. package/types/algorand-client.mjs.map +1 -1
  1408. package/types/amount.d.ts +6 -45
  1409. package/types/amount.js +4 -62
  1410. package/types/amount.js.map +1 -1
  1411. package/types/amount.mjs +4 -62
  1412. package/types/amount.mjs.map +1 -1
  1413. package/types/app-client.d.ts +75 -2125
  1414. package/types/app-client.js +4 -905
  1415. package/types/app-client.js.map +1 -1
  1416. package/types/app-client.mjs +4 -904
  1417. package/types/app-client.mjs.map +1 -1
  1418. package/types/app-deployer.d.ts +21 -161
  1419. package/types/app-deployer.js +4 -349
  1420. package/types/app-deployer.js.map +1 -1
  1421. package/types/app-deployer.mjs +4 -349
  1422. package/types/app-deployer.mjs.map +1 -1
  1423. package/types/app-factory.d.ts +21 -960
  1424. package/types/app-factory.js +4 -444
  1425. package/types/app-factory.js.map +1 -1
  1426. package/types/app-factory.mjs +4 -444
  1427. package/types/app-factory.mjs.map +1 -1
  1428. package/types/app-manager.d.ts +15 -318
  1429. package/types/app-manager.js +4 -464
  1430. package/types/app-manager.js.map +1 -1
  1431. package/types/app-manager.mjs +4 -464
  1432. package/types/app-manager.mjs.map +1 -1
  1433. package/types/app-spec.d.ts +39 -198
  1434. package/types/app-spec.js +4 -133
  1435. package/types/app-spec.js.map +1 -1
  1436. package/types/app-spec.mjs +4 -133
  1437. package/types/app-spec.mjs.map +1 -1
  1438. package/types/app.d.ts +63 -248
  1439. package/types/app.js +17 -39
  1440. package/types/app.js.map +1 -1
  1441. package/types/app.mjs +16 -38
  1442. package/types/app.mjs.map +1 -1
  1443. package/types/asset-manager.d.ts +9 -207
  1444. package/types/asset-manager.js +4 -162
  1445. package/types/asset-manager.js.map +1 -1
  1446. package/types/asset-manager.mjs +4 -162
  1447. package/types/asset-manager.mjs.map +1 -1
  1448. package/types/async-event-emitter.d.ts +7 -14
  1449. package/types/async-event-emitter.js +4 -34
  1450. package/types/async-event-emitter.js.map +1 -1
  1451. package/types/async-event-emitter.mjs +4 -33
  1452. package/types/async-event-emitter.mjs.map +1 -1
  1453. package/types/client-manager.d.ts +27 -470
  1454. package/types/client-manager.js +4 -612
  1455. package/types/client-manager.js.map +1 -1
  1456. package/types/client-manager.mjs +4 -612
  1457. package/types/client-manager.mjs.map +1 -1
  1458. package/types/composer.d.ts +79 -943
  1459. package/types/composer.js +4 -1575
  1460. package/types/composer.js.map +1 -1
  1461. package/types/composer.mjs +4 -1574
  1462. package/types/composer.mjs.map +1 -1
  1463. package/types/config.d.ts +7 -52
  1464. package/types/config.js +4 -76
  1465. package/types/config.js.map +1 -1
  1466. package/types/config.mjs +4 -76
  1467. package/types/config.mjs.map +1 -1
  1468. package/types/debugging.d.ts +12 -33
  1469. package/types/debugging.js +12 -11
  1470. package/types/debugging.js.map +1 -1
  1471. package/types/debugging.mjs +11 -10
  1472. package/types/debugging.mjs.map +1 -1
  1473. package/types/dispenser-client.d.ts +11 -85
  1474. package/types/dispenser-client.js +4 -123
  1475. package/types/dispenser-client.js.map +1 -1
  1476. package/types/dispenser-client.mjs +4 -123
  1477. package/types/dispenser-client.mjs.map +1 -1
  1478. package/types/expand.d.ts +4 -5
  1479. package/types/indexer.d.ts +16 -36
  1480. package/types/indexer.js +9 -32
  1481. package/types/indexer.js.map +1 -1
  1482. package/types/indexer.mjs +8 -31
  1483. package/types/indexer.mjs.map +1 -1
  1484. package/types/instance-of.d.ts +4 -4
  1485. package/types/kmd-account-manager.d.ts +5 -69
  1486. package/types/kmd-account-manager.js +4 -163
  1487. package/types/kmd-account-manager.js.map +1 -1
  1488. package/types/kmd-account-manager.mjs +4 -161
  1489. package/types/kmd-account-manager.mjs.map +1 -1
  1490. package/types/lifecycle-events.d.ts +7 -10
  1491. package/types/lifecycle-events.js +4 -7
  1492. package/types/lifecycle-events.js.map +1 -1
  1493. package/types/lifecycle-events.mjs +4 -6
  1494. package/types/lifecycle-events.mjs.map +1 -1
  1495. package/types/logging.d.ts +14 -9
  1496. package/types/logging.js +13 -39
  1497. package/types/logging.js.map +1 -1
  1498. package/types/logging.mjs +12 -38
  1499. package/types/logging.mjs.map +1 -1
  1500. package/types/logic-error.d.ts +8 -35
  1501. package/types/logic-error.js +4 -50
  1502. package/types/logic-error.js.map +1 -1
  1503. package/types/logic-error.mjs +4 -49
  1504. package/types/logic-error.mjs.map +1 -1
  1505. package/types/network-client.d.ts +10 -39
  1506. package/types/network-client.js +4 -10
  1507. package/types/network-client.js.map +1 -1
  1508. package/types/network-client.mjs +4 -9
  1509. package/types/network-client.mjs.map +1 -1
  1510. package/types/testing.d.ts +13 -151
  1511. package/types/transaction.d.ts +33 -128
  1512. package/updatable-config.d.ts +57 -0
  1513. package/updatable-config.js +79 -0
  1514. package/updatable-config.js.map +1 -0
  1515. package/updatable-config.mjs +79 -0
  1516. package/updatable-config.mjs.map +1 -0
  1517. package/util.js +2 -3
  1518. package/util.js.map +1 -1
  1519. package/util.mjs +2 -3
  1520. package/util.mjs.map +1 -1
  1521. package/_virtual/rolldown_runtime.js +0 -43
  1522. package/_virtual/rolldown_runtime.mjs +0 -18
  1523. package/indexer-lookup.js.map +0 -1
  1524. package/indexer-lookup.mjs.map +0 -1
  1525. package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
  1526. package/packages/common/src/crypto.js +0 -13
  1527. package/packages/common/src/crypto.js.map +0 -1
  1528. package/packages/common/src/crypto.mjs +0 -11
  1529. package/packages/common/src/crypto.mjs.map +0 -1
  1530. package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
  1531. package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
  1532. package/packages/sdk/src/convert.d.ts +0 -17
  1533. package/packages/sdk/src/convert.js +0 -28
  1534. package/packages/sdk/src/convert.js.map +0 -1
  1535. package/packages/sdk/src/convert.mjs +0 -25
  1536. package/packages/sdk/src/convert.mjs.map +0 -1
  1537. package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
  1538. package/packages/sdk/src/encoding/binarydata.js +0 -65
  1539. package/packages/sdk/src/encoding/binarydata.js.map +0 -1
  1540. package/packages/sdk/src/encoding/binarydata.mjs +0 -60
  1541. package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
  1542. package/packages/sdk/src/encoding/encoding.d.ts +0 -237
  1543. package/packages/sdk/src/encoding/encoding.js +0 -312
  1544. package/packages/sdk/src/encoding/encoding.js.map +0 -1
  1545. package/packages/sdk/src/encoding/encoding.mjs +0 -298
  1546. package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
  1547. package/packages/sdk/src/encoding/schema/array.js +0 -35
  1548. package/packages/sdk/src/encoding/schema/array.js.map +0 -1
  1549. package/packages/sdk/src/encoding/schema/array.mjs +0 -35
  1550. package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
  1551. package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
  1552. package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
  1553. package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
  1554. package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
  1555. package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
  1556. package/packages/sdk/src/encoding/schema/map.js +0 -108
  1557. package/packages/sdk/src/encoding/schema/map.js.map +0 -1
  1558. package/packages/sdk/src/encoding/schema/map.mjs +0 -107
  1559. package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
  1560. package/packages/sdk/src/encoding/schema/optional.js +0 -46
  1561. package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
  1562. package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
  1563. package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
  1564. package/packages/sdk/src/encoding/schema/uint64.js +0 -30
  1565. package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
  1566. package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
  1567. package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
  1568. package/packages/sdk/src/encoding/uint64.d.ts +0 -34
  1569. package/packages/sdk/src/encoding/uint64.js +0 -34
  1570. package/packages/sdk/src/encoding/uint64.js.map +0 -1
  1571. package/packages/sdk/src/encoding/uint64.mjs +0 -33
  1572. package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
  1573. package/packages/sdk/src/index.d.ts +0 -44
  1574. package/packages/sdk/src/index.js +0 -62
  1575. package/packages/sdk/src/index.js.map +0 -1
  1576. package/packages/sdk/src/index.mjs +0 -58
  1577. package/packages/sdk/src/index.mjs.map +0 -1
  1578. package/packages/sdk/src/logic/sourcemap.js.map +0 -1
  1579. package/packages/sdk/src/logic/sourcemap.mjs.map +0 -1
  1580. package/packages/sdk/src/nacl/naclWrappers.js +0 -14
  1581. package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
  1582. package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
  1583. package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
  1584. package/packages/sdk/src/types/intDecoding.d.ts +0 -28
  1585. package/packages/sdk/src/types/intDecoding.js +0 -32
  1586. package/packages/sdk/src/types/intDecoding.js.map +0 -1
  1587. package/packages/sdk/src/types/intDecoding.mjs +0 -31
  1588. package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
  1589. package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
  1590. package/packages/sdk/src/types/transactions/encoded.js +0 -64
  1591. package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
  1592. package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
  1593. package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
  1594. package/packages/sdk/src/utils/utils.d.ts +0 -64
  1595. package/packages/sdk/src/utils/utils.js +0 -140
  1596. package/packages/sdk/src/utils/utils.js.map +0 -1
  1597. package/packages/sdk/src/utils/utils.mjs +0 -128
  1598. package/packages/sdk/src/utils/utils.mjs.map +0 -1
  1599. package/packages/transact/src/transactions/common.d.ts +0 -37
  1600. package/sdk/index.d.ts +0 -10
  1601. package/sdk/index.js +0 -59
  1602. package/sdk/index.mjs +0 -11
@@ -1,52 +1,37 @@
1
1
  import { ReadableAddress } from "../packages/common/src/address.js";
2
+ import { Expand } from "../packages/common/src/expand.js";
2
3
  import { OnApplicationComplete, ResourceReference } from "../packages/transact/src/transactions/app-call.js";
3
- import { BoxIdentifier, BoxReference } from "../types/app-manager.js";
4
- import { Expand } from "../types/expand.js";
4
+ import { BoxIdentifier, BoxReference } from "../app-manager.js";
5
5
  import { CommonTransactionParams } from "./common.js";
6
6
 
7
7
  //#region src/transactions/app-call.d.ts
8
8
  /** Common parameters for defining an application call transaction. */
9
9
  type CommonAppCallParams = CommonTransactionParams & {
10
- /** ID of the application; 0 if the application is being created. */
11
- appId: bigint;
12
- /** The [on-complete](https://dev.algorand.co/concepts/smart-contracts/avm#oncomplete) action of the call; defaults to no-op. */
13
- onComplete?: OnApplicationComplete;
14
- /** Any [arguments to pass to the smart contract call](/concepts/smart-contracts/languages/teal/#argument-passing). */
15
- args?: Uint8Array[];
16
- /** Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
17
- accountReferences?: ReadableAddress[];
18
- /** The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
19
- appReferences?: bigint[];
20
- /** The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
10
+ /** ID of the application; 0 if the application is being created. */appId: bigint; /** The [on-complete](https://dev.algorand.co/concepts/smart-contracts/avm#oncomplete) action of the call; defaults to no-op. */
11
+ onComplete?: OnApplicationComplete; /** Any [arguments to pass to the smart contract call](/concepts/smart-contracts/languages/teal/#argument-passing). */
12
+ args?: Uint8Array[]; /** Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
13
+ accountReferences?: ReadableAddress[]; /** The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
14
+ appReferences?: bigint[]; /** The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */
21
15
  assetReferences?: bigint[];
22
16
  /** Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays).
23
17
  *
24
18
  * Either the name identifier (which will be set against app ID of `0` i.e.
25
19
  * the current app), or a box identifier with the name identifier and app ID.
26
20
  */
27
- boxReferences?: (BoxReference | BoxIdentifier)[];
28
- /** Access references unifies `accountReferences`, `appReferences`, `assetReferences`, and `boxReferences` under a single list. If non-empty, these other reference lists must be empty. If access is empty, those other reference lists may be non-empty. */
29
- accessReferences?: ResourceReference[];
30
- /** If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check. */
21
+ boxReferences?: (BoxReference | BoxIdentifier)[]; /** Access references unifies `accountReferences`, `appReferences`, `assetReferences`, and `boxReferences` under a single list. If non-empty, these other reference lists must be empty. If access is empty, those other reference lists may be non-empty. */
22
+ accessReferences?: ResourceReference[]; /** If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check. */
31
23
  rejectVersion?: number;
32
24
  };
33
25
  /** Parameters to define an app create transaction */
34
26
  type AppCreateParams = Expand<Omit<CommonAppCallParams, 'appId'> & {
35
27
  appId?: 0;
36
- onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.ClearState>;
37
- /** The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */
38
- approvalProgram: string | Uint8Array;
39
- /** The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */
40
- clearStateProgram: string | Uint8Array;
41
- /** The state schema for the app. This is immutable once the app is created. */
28
+ onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.ClearState>; /** The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */
29
+ approvalProgram: string | Uint8Array; /** The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */
30
+ clearStateProgram: string | Uint8Array; /** The state schema for the app. This is immutable once the app is created. */
42
31
  schema?: {
43
- /** The number of integers saved in global state. */
44
- globalInts: number;
45
- /** The number of byte slices saved in global state. */
46
- globalByteSlices: number;
47
- /** The number of integers saved in local state. */
48
- localInts: number;
49
- /** The number of byte slices saved in local state. */
32
+ /** The number of integers saved in global state. */globalInts: number; /** The number of byte slices saved in global state. */
33
+ globalByteSlices: number; /** The number of integers saved in local state. */
34
+ localInts: number; /** The number of byte slices saved in local state. */
50
35
  localByteSlices: number;
51
36
  };
52
37
  /** Number of extra pages required for the programs.
@@ -56,10 +41,8 @@ type AppCreateParams = Expand<Omit<CommonAppCallParams, 'appId'> & {
56
41
  }>;
57
42
  /** Parameters to define an app update transaction */
58
43
  type AppUpdateParams = Expand<CommonAppCallParams & {
59
- onComplete?: OnApplicationComplete.UpdateApplication;
60
- /** The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */
61
- approvalProgram: string | Uint8Array;
62
- /** The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */
44
+ onComplete?: OnApplicationComplete.UpdateApplication; /** The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */
45
+ approvalProgram: string | Uint8Array; /** The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */
63
46
  clearStateProgram: string | Uint8Array;
64
47
  }>;
65
48
  /** Parameters to define an application call transaction. */
@@ -1,12 +1,11 @@
1
- const require_constants = require('../packages/common/src/constants.js');
2
- const require_address = require('../packages/common/src/address.js');
3
- const require_app_call = require('../packages/transact/src/transactions/app-call.js');
4
- const require_transaction_type = require('../packages/transact/src/transactions/transaction-type.js');
5
- const require_transaction = require('../packages/transact/src/transactions/transaction.js');
6
- const require_util = require('../util.js');
7
- const require_app_manager = require('../types/app-manager.js');
8
- const require_common = require('./common.js');
9
-
1
+ require("../packages/common/src/constants.js");
2
+ const require_address = require("../packages/common/src/address.js");
3
+ const require_app_call = require("../packages/transact/src/transactions/app-call.js");
4
+ const require_transaction_type = require("../packages/transact/src/transactions/transaction-type.js");
5
+ const require_transaction = require("../packages/transact/src/transactions/transaction.js");
6
+ const require_util = require("../util.js");
7
+ const require_app_manager = require("../app-manager.js");
8
+ const require_common = require("./common.js");
10
9
  //#region src/transactions/app-call.ts
11
10
  const buildAppCreate = async (params, appManager, suggestedParams, defaultValidityWindow) => {
12
11
  const commonData = require_common.buildTransactionCommonData(params, suggestedParams, defaultValidityWindow);
@@ -118,17 +117,17 @@ function populateTransactionResources(transaction, resourcesAccessed, groupIndex
118
117
  for (const assetId of resourcesAccessed.assets) if (!transaction.appCall.assetReferences.includes(assetId)) transaction.appCall.assetReferences.push(assetId);
119
118
  assetsCount = transaction.appCall.assetReferences.length;
120
119
  }
121
- if (accountsCount + assetsCount + appsCount + boxesCount > require_constants.MAX_OVERALL_REFERENCES) throw new Error(`Resource reference limit of ${require_constants.MAX_OVERALL_REFERENCES} exceeded in transaction ${groupIndex}`);
120
+ if (accountsCount + assetsCount + appsCount + boxesCount > 8) throw new Error(`Resource reference limit of 8 exceeded in transaction ${groupIndex}`);
122
121
  }
123
- var GroupResourceType = /* @__PURE__ */ function(GroupResourceType$1) {
124
- GroupResourceType$1[GroupResourceType$1["Account"] = 0] = "Account";
125
- GroupResourceType$1[GroupResourceType$1["App"] = 1] = "App";
126
- GroupResourceType$1[GroupResourceType$1["Asset"] = 2] = "Asset";
127
- GroupResourceType$1[GroupResourceType$1["Box"] = 3] = "Box";
128
- GroupResourceType$1[GroupResourceType$1["ExtraBoxRef"] = 4] = "ExtraBoxRef";
129
- GroupResourceType$1[GroupResourceType$1["AssetHolding"] = 5] = "AssetHolding";
130
- GroupResourceType$1[GroupResourceType$1["AppLocal"] = 6] = "AppLocal";
131
- return GroupResourceType$1;
122
+ var GroupResourceType = /* @__PURE__ */ function(GroupResourceType) {
123
+ GroupResourceType[GroupResourceType["Account"] = 0] = "Account";
124
+ GroupResourceType[GroupResourceType["App"] = 1] = "App";
125
+ GroupResourceType[GroupResourceType["Asset"] = 2] = "Asset";
126
+ GroupResourceType[GroupResourceType["Box"] = 3] = "Box";
127
+ GroupResourceType[GroupResourceType["ExtraBoxRef"] = 4] = "ExtraBoxRef";
128
+ GroupResourceType[GroupResourceType["AssetHolding"] = 5] = "AssetHolding";
129
+ GroupResourceType[GroupResourceType["AppLocal"] = 6] = "AppLocal";
130
+ return GroupResourceType;
132
131
  }(GroupResourceType || {});
133
132
  /**
134
133
  * Populate group-level resources for app call transactions
@@ -194,7 +193,7 @@ function isAppCallBelowResourceLimit(txn) {
194
193
  const assetsCount = txn.appCall?.assetReferences?.length || 0;
195
194
  const appsCount = txn.appCall?.appReferences?.length || 0;
196
195
  const boxesCount = txn.appCall?.boxReferences?.length || 0;
197
- return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES;
196
+ return accountsCount + assetsCount + appsCount + boxesCount < 8;
198
197
  }
199
198
  /**
200
199
  * Helper function to populate a specific resource into a transaction group
@@ -204,49 +203,49 @@ function populateGroupResource(transactions, resource) {
204
203
  const address = resource.data.address;
205
204
  const groupIndex1 = transactions.findIndex((txn) => {
206
205
  if (!isAppCallBelowResourceLimit(txn)) return false;
207
- const appCall$1 = txn.appCall;
208
- if (appCall$1.accountReferences?.some((a) => a.equals(address))) return true;
209
- if (appCall$1.appReferences) {
210
- for (const appId of appCall$1.appReferences) if (address === require_address.getApplicationAddress(appId)) return true;
206
+ const appCall = txn.appCall;
207
+ if (appCall.accountReferences?.some((a) => a.equals(address))) return true;
208
+ if (appCall.appReferences) {
209
+ for (const appId of appCall.appReferences) if (address === require_address.getApplicationAddress(appId)) return true;
211
210
  }
212
211
  if (txn.sender.equals(address)) return true;
213
212
  return false;
214
213
  });
215
214
  if (groupIndex1 !== -1) {
216
- const appCall$1 = transactions[groupIndex1].appCall;
215
+ const appCall = transactions[groupIndex1].appCall;
217
216
  if (resource.type === GroupResourceType.AssetHolding) {
218
- appCall$1.assetReferences = appCall$1.assetReferences ?? [];
219
- if (!appCall$1.assetReferences.includes(resource.data.assetId)) appCall$1.assetReferences.push(resource.data.assetId);
217
+ appCall.assetReferences = appCall.assetReferences ?? [];
218
+ if (!appCall.assetReferences.includes(resource.data.assetId)) appCall.assetReferences.push(resource.data.assetId);
220
219
  } else {
221
- appCall$1.appReferences = appCall$1.appReferences ?? [];
222
- if (!appCall$1.appReferences.includes(resource.data.appId)) appCall$1.appReferences.push(resource.data.appId);
220
+ appCall.appReferences = appCall.appReferences ?? [];
221
+ if (!appCall.appReferences.includes(resource.data.appId)) appCall.appReferences.push(resource.data.appId);
223
222
  }
224
223
  return;
225
224
  }
226
225
  const groupIndex2 = transactions.findIndex((txn) => {
227
226
  if (!isAppCallBelowResourceLimit(txn)) return false;
228
- const appCall$1 = txn.appCall;
229
- if ((appCall$1.accountReferences?.length ?? 0) >= require_constants.MAX_ACCOUNT_REFERENCES) return false;
230
- if (resource.type === GroupResourceType.AssetHolding) return appCall$1.assetReferences?.includes(resource.data.assetId) || false;
231
- else return appCall$1.appReferences?.includes(resource.data.appId) || appCall$1.appId === resource.data.appId;
227
+ const appCall = txn.appCall;
228
+ if ((appCall.accountReferences?.length ?? 0) >= 8) return false;
229
+ if (resource.type === GroupResourceType.AssetHolding) return appCall.assetReferences?.includes(resource.data.assetId) || false;
230
+ else return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId;
232
231
  });
233
232
  if (groupIndex2 !== -1) {
234
- const appCall$1 = transactions[groupIndex2].appCall;
235
- appCall$1.accountReferences = appCall$1.accountReferences ?? [];
236
- if (!appCall$1.accountReferences.includes(address)) appCall$1.accountReferences.push(address);
233
+ const appCall = transactions[groupIndex2].appCall;
234
+ appCall.accountReferences = appCall.accountReferences ?? [];
235
+ if (!appCall.accountReferences.includes(address)) appCall.accountReferences.push(address);
237
236
  return;
238
237
  }
239
238
  }
240
239
  if (resource.type === GroupResourceType.Box) {
241
- const groupIndex$1 = transactions.findIndex((txn) => {
240
+ const groupIndex = transactions.findIndex((txn) => {
242
241
  if (!isAppCallBelowResourceLimit(txn)) return false;
243
- const appCall$1 = txn.appCall;
244
- return appCall$1.appReferences?.includes(resource.data.appId) || appCall$1.appId === resource.data.appId;
242
+ const appCall = txn.appCall;
243
+ return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId;
245
244
  });
246
- if (groupIndex$1 !== -1) {
247
- const appCall$1 = transactions[groupIndex$1].appCall;
248
- appCall$1.boxReferences = appCall$1.boxReferences ?? [];
249
- if (!appCall$1.boxReferences.some((b) => b.appId === resource.data.appId && b.name.length === resource.data.name.length && b.name.every((byte, i) => byte === resource.data.name[i]))) appCall$1.boxReferences.push({
245
+ if (groupIndex !== -1) {
246
+ const appCall = transactions[groupIndex].appCall;
247
+ appCall.boxReferences = appCall.boxReferences ?? [];
248
+ if (!appCall.boxReferences.some((b) => b.appId === resource.data.appId && b.name.length === resource.data.name.length && b.name.every((byte, i) => byte === resource.data.name[i]))) appCall.boxReferences.push({
250
249
  appId: resource.data.appId,
251
250
  name: resource.data.name
252
251
  });
@@ -256,18 +255,18 @@ function populateGroupResource(transactions, resource) {
256
255
  const groupIndex = transactions.findIndex((txn) => {
257
256
  if (txn.type !== require_transaction_type.TransactionType.AppCall) return false;
258
257
  if (txn.appCall?.accessReferences?.length) return false;
259
- const appCall$1 = txn.appCall;
260
- const accountsCount = appCall$1.accountReferences?.length ?? 0;
261
- const assetsCount = appCall$1.assetReferences?.length ?? 0;
262
- const appsCount = appCall$1.appReferences?.length ?? 0;
263
- const boxesCount = appCall$1.boxReferences?.length ?? 0;
258
+ const appCall = txn.appCall;
259
+ const accountsCount = appCall.accountReferences?.length ?? 0;
260
+ const assetsCount = appCall.assetReferences?.length ?? 0;
261
+ const appsCount = appCall.appReferences?.length ?? 0;
262
+ const boxesCount = appCall.boxReferences?.length ?? 0;
264
263
  switch (resource.type) {
265
- case GroupResourceType.Account: return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES;
264
+ case GroupResourceType.Account: return accountsCount + assetsCount + appsCount + boxesCount < 8;
266
265
  case GroupResourceType.AssetHolding:
267
- case GroupResourceType.AppLocal: return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES - 1;
268
- case GroupResourceType.Box: if (resource.data.appId !== 0n) return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES - 1;
269
- else return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES;
270
- default: return accountsCount + assetsCount + appsCount + boxesCount < require_constants.MAX_OVERALL_REFERENCES;
266
+ case GroupResourceType.AppLocal: return accountsCount + assetsCount + appsCount + boxesCount < 7;
267
+ case GroupResourceType.Box: if (resource.data.appId !== 0n) return accountsCount + assetsCount + appsCount + boxesCount < 7;
268
+ else return accountsCount + assetsCount + appsCount + boxesCount < 8;
269
+ default: return accountsCount + assetsCount + appsCount + boxesCount < 8;
271
270
  }
272
271
  });
273
272
  if (groupIndex === -1) throw new Error("No more transactions below reference limit. Add another app call to the group.");
@@ -323,11 +322,11 @@ function populateGroupResource(transactions, resource) {
323
322
  break;
324
323
  }
325
324
  }
326
-
327
325
  //#endregion
328
326
  exports.buildAppCall = buildAppCall;
329
327
  exports.buildAppCreate = buildAppCreate;
330
328
  exports.buildAppUpdate = buildAppUpdate;
331
329
  exports.populateGroupResources = populateGroupResources;
332
330
  exports.populateTransactionResources = populateTransactionResources;
331
+
333
332
  //# sourceMappingURL=app-call.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-call.js","names":["buildTransactionCommonData","calculateExtraProgramPages","Transaction","TransactionType","OnApplicationComplete","getAddress","AppManager","MAX_OVERALL_REFERENCES","appCall","getApplicationAddress","MAX_ACCOUNT_REFERENCES","groupIndex"],"sources":["../../src/transactions/app-call.ts"],"sourcesContent":["import { SimulateUnnamedResourcesAccessed, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_OVERALL_REFERENCES,\n ReadableAddress,\n getAddress,\n getApplicationAddress,\n} from '@algorandfoundation/algokit-common'\nimport {\n HoldingReference,\n LocalsReference,\n OnApplicationComplete,\n ResourceReference,\n BoxReference as TransactBoxReference,\n Transaction,\n TransactionType,\n} from '@algorandfoundation/algokit-transact'\nimport { AppManager, BoxIdentifier, BoxReference as UtilsBoxReference } from '../types/app-manager'\nimport { Expand } from '../types/expand'\nimport { calculateExtraProgramPages } from '../util'\nimport { CommonTransactionParams, buildTransactionCommonData } from './common'\n\n/** Common parameters for defining an application call transaction. */\nexport type CommonAppCallParams = CommonTransactionParams & {\n /** ID of the application; 0 if the application is being created. */\n appId: bigint\n /** The [on-complete](https://dev.algorand.co/concepts/smart-contracts/avm#oncomplete) action of the call; defaults to no-op. */\n onComplete?: OnApplicationComplete\n /** Any [arguments to pass to the smart contract call](/concepts/smart-contracts/languages/teal/#argument-passing). */\n args?: Uint8Array[]\n /** Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n accountReferences?: ReadableAddress[]\n /** The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n appReferences?: bigint[]\n /** The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n assetReferences?: bigint[]\n /** Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays).\n *\n * Either the name identifier (which will be set against app ID of `0` i.e.\n * the current app), or a box identifier with the name identifier and app ID.\n */\n boxReferences?: (UtilsBoxReference | BoxIdentifier)[]\n /** Access references unifies `accountReferences`, `appReferences`, `assetReferences`, and `boxReferences` under a single list. If non-empty, these other reference lists must be empty. If access is empty, those other reference lists may be non-empty. */\n accessReferences?: ResourceReference[]\n /** If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check. */\n rejectVersion?: number\n}\n\n/** Parameters to define an app create transaction */\nexport type AppCreateParams = Expand<\n Omit<CommonAppCallParams, 'appId'> & {\n appId?: 0\n onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.ClearState>\n /** The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */\n approvalProgram: string | Uint8Array\n /** The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */\n clearStateProgram: string | Uint8Array\n /** The state schema for the app. This is immutable once the app is created. */\n schema?: {\n /** The number of integers saved in global state. */\n globalInts: number\n /** The number of byte slices saved in global state. */\n globalByteSlices: number\n /** The number of integers saved in local state. */\n localInts: number\n /** The number of byte slices saved in local state. */\n localByteSlices: number\n }\n /** Number of extra pages required for the programs.\n * Defaults to the number needed for the programs in this call if not specified.\n * This is immutable once the app is created. */\n extraProgramPages?: number\n }\n>\n\n/** Parameters to define an app update transaction */\nexport type AppUpdateParams = Expand<\n CommonAppCallParams & {\n onComplete?: OnApplicationComplete.UpdateApplication\n /** The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */\n approvalProgram: string | Uint8Array\n /** The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */\n clearStateProgram: string | Uint8Array\n }\n>\n\n/** Parameters to define an application call transaction. */\nexport type AppCallParams = CommonAppCallParams & { onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.UpdateApplication> }\n\n/** Common parameters to define an ABI method call transaction. */\nexport type AppMethodCallParams = CommonAppCallParams & {\n onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.UpdateApplication | OnApplicationComplete.ClearState>\n}\n\n/** Parameters to define an application delete call transaction. */\nexport type AppDeleteParams = CommonAppCallParams & { onComplete?: OnApplicationComplete.DeleteApplication }\n\nexport const buildAppCreate = async (\n params: AppCreateParams,\n appManager: AppManager,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Promise<Transaction> => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n const approvalProgram =\n typeof params.approvalProgram === 'string'\n ? (await appManager.compileTeal(params.approvalProgram)).compiledBase64ToBytes\n : params.approvalProgram\n const clearStateProgram =\n typeof params.clearStateProgram === 'string'\n ? (await appManager.compileTeal(params.clearStateProgram)).compiledBase64ToBytes\n : params.clearStateProgram\n const globalStateSchema =\n params.schema?.globalByteSlices !== undefined || params.schema?.globalInts !== undefined\n ? { numByteSlices: params.schema?.globalByteSlices ?? 0, numUints: params.schema?.globalInts ?? 0 }\n : undefined\n const localStateSchema =\n params.schema?.localByteSlices !== undefined || params.schema?.localInts !== undefined\n ? { numByteSlices: params.schema?.localByteSlices ?? 0, numUints: params.schema?.localInts ?? 0 }\n : undefined\n const extraProgramPages =\n params.extraProgramPages !== undefined ? params.extraProgramPages : calculateExtraProgramPages(approvalProgram!, clearStateProgram!)\n\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: 0n, // App creation always uses ID 0\n onComplete: params.onComplete ?? OnApplicationComplete.NoOp,\n approvalProgram: approvalProgram,\n clearStateProgram: clearStateProgram,\n globalStateSchema: globalStateSchema,\n localStateSchema: localStateSchema,\n extraProgramPages: extraProgramPages,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\nexport const buildAppUpdate = async (\n params: AppUpdateParams,\n appManager: AppManager,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Promise<Transaction> => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n const approvalProgram =\n typeof params.approvalProgram === 'string'\n ? (await appManager.compileTeal(params.approvalProgram)).compiledBase64ToBytes\n : params.approvalProgram\n const clearStateProgram =\n typeof params.clearStateProgram === 'string'\n ? (await appManager.compileTeal(params.clearStateProgram)).compiledBase64ToBytes\n : params.clearStateProgram\n\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: params.appId,\n onComplete: OnApplicationComplete.UpdateApplication,\n approvalProgram: approvalProgram,\n clearStateProgram: clearStateProgram,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\nexport const buildAppCall = (\n params: AppCallParams | AppDeleteParams,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Transaction => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: params.appId,\n onComplete: params.onComplete ?? OnApplicationComplete.NoOp,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\n/**\n * Populate transaction-level resources for app call transactions\n */\nexport function populateTransactionResources(\n transaction: Transaction, // NOTE: transaction is mutated in place\n resourcesAccessed: SimulateUnnamedResourcesAccessed,\n groupIndex: number,\n): void {\n if (transaction.type !== TransactionType.AppCall || transaction.appCall === undefined) {\n return\n }\n\n // Check for unexpected resources at transaction level\n if (resourcesAccessed.boxes || resourcesAccessed.extraBoxRefs) {\n throw new Error('Unexpected boxes at the transaction level')\n }\n if (resourcesAccessed.appLocals) {\n throw new Error('Unexpected app locals at the transaction level')\n }\n if (resourcesAccessed.assetHoldings) {\n throw new Error('Unexpected asset holdings at the transaction level')\n }\n\n let accountsCount = 0\n let appsCount = 0\n let assetsCount = 0\n const boxesCount = transaction.appCall.boxReferences?.length ?? 0\n\n // Populate accounts\n if (resourcesAccessed.accounts) {\n transaction.appCall.accountReferences = transaction.appCall.accountReferences ?? []\n for (const account of resourcesAccessed.accounts) {\n const address = account\n if (!transaction.appCall.accountReferences.some((a) => a.equals(address))) {\n transaction.appCall.accountReferences.push(address)\n }\n }\n accountsCount = transaction.appCall.accountReferences.length\n }\n\n // Populate apps\n if (resourcesAccessed.apps) {\n transaction.appCall.appReferences = transaction.appCall.appReferences ?? []\n for (const appId of resourcesAccessed.apps) {\n if (!transaction.appCall.appReferences.includes(appId)) {\n transaction.appCall.appReferences.push(appId)\n }\n }\n appsCount = transaction.appCall.appReferences.length\n }\n\n // Populate assets\n if (resourcesAccessed.assets) {\n transaction.appCall.assetReferences = transaction.appCall.assetReferences ?? []\n for (const assetId of resourcesAccessed.assets) {\n if (!transaction.appCall.assetReferences.includes(assetId)) {\n transaction.appCall.assetReferences.push(assetId)\n }\n }\n assetsCount = transaction.appCall.assetReferences.length\n }\n\n if (accountsCount + assetsCount + appsCount + boxesCount > MAX_OVERALL_REFERENCES) {\n throw new Error(`Resource reference limit of ${MAX_OVERALL_REFERENCES} exceeded in transaction ${groupIndex}`)\n }\n}\n\nenum GroupResourceType {\n Account,\n App,\n Asset,\n Box,\n ExtraBoxRef,\n AssetHolding,\n AppLocal,\n}\n\n/**\n * Populate group-level resources for app call transactions\n */\nexport function populateGroupResources(\n transactions: Transaction[], // NOTE: transactions are mutated in place\n groupResources: SimulateUnnamedResourcesAccessed,\n): void {\n let remainingAccounts = [...(groupResources.accounts ?? [])]\n let remainingApps = [...(groupResources.apps ?? [])]\n let remainingAssets = [...(groupResources.assets ?? [])]\n const remainingBoxes = [...(groupResources.boxes ?? [])]\n\n // Process cross-reference resources first (app locals and asset holdings) as they are most restrictive\n if (groupResources.appLocals) {\n groupResources.appLocals.forEach((appLocal) => {\n populateGroupResource(transactions, { type: GroupResourceType.AppLocal, data: appLocal })\n // Remove resources from remaining if we're adding them here\n remainingAccounts = remainingAccounts.filter((acc) => acc !== appLocal.address)\n remainingApps = remainingApps.filter((app) => app !== appLocal.appId)\n })\n }\n\n if (groupResources.assetHoldings) {\n groupResources.assetHoldings.forEach((assetHolding) => {\n populateGroupResource(transactions, { type: GroupResourceType.AssetHolding, data: assetHolding })\n // Remove resources from remaining if we're adding them here\n remainingAccounts = remainingAccounts.filter((acc) => acc !== assetHolding.address)\n remainingAssets = remainingAssets.filter((asset) => asset !== assetHolding.assetId)\n })\n }\n\n // Process accounts next because account limit is 4\n remainingAccounts.forEach((account) => {\n populateGroupResource(transactions, { type: GroupResourceType.Account, data: account })\n })\n\n // Process boxes\n remainingBoxes.forEach((boxRef) => {\n populateGroupResource(transactions, { type: GroupResourceType.Box, data: { appId: boxRef.appId, name: boxRef.name } })\n // Remove apps as resource if we're adding it here\n remainingApps = remainingApps.filter((app) => app !== boxRef.appId)\n })\n\n // Process assets\n remainingAssets.forEach((asset) => {\n populateGroupResource(transactions, { type: GroupResourceType.Asset, data: asset })\n })\n\n // Process remaining apps\n remainingApps.forEach((app) => {\n populateGroupResource(transactions, { type: GroupResourceType.App, data: app })\n })\n\n // Handle extra box refs\n if (groupResources.extraBoxRefs) {\n for (let i = 0; i < groupResources.extraBoxRefs; i++) {\n populateGroupResource(transactions, { type: GroupResourceType.ExtraBoxRef })\n }\n }\n}\n\n/**\n * Helper function to check if an app call transaction is below resource limit\n */\nfunction isAppCallBelowResourceLimit(txn: Transaction): boolean {\n if (txn.type !== TransactionType.AppCall) {\n return false\n }\n if (txn.appCall?.accessReferences?.length) {\n return false\n }\n\n const accountsCount = txn.appCall?.accountReferences?.length || 0\n const assetsCount = txn.appCall?.assetReferences?.length || 0\n const appsCount = txn.appCall?.appReferences?.length || 0\n const boxesCount = txn.appCall?.boxReferences?.length || 0\n\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n}\n\ntype GroupResourceToPopulate =\n | { type: GroupResourceType.Account; data: Address }\n | { type: GroupResourceType.App; data: bigint }\n | { type: GroupResourceType.Asset; data: bigint }\n | { type: GroupResourceType.Box; data: TransactBoxReference }\n | { type: GroupResourceType.ExtraBoxRef }\n | { type: GroupResourceType.AssetHolding; data: HoldingReference }\n | { type: GroupResourceType.AppLocal; data: LocalsReference }\n\n/**\n * Helper function to populate a specific resource into a transaction group\n */\nfunction populateGroupResource(\n transactions: Transaction[], // NOTE: transactions are mutated in place\n resource: GroupResourceToPopulate,\n): void {\n // For asset holdings and app locals, first try to find a transaction that already has the account available\n if (resource.type === GroupResourceType.AssetHolding || resource.type === GroupResourceType.AppLocal) {\n const address = resource.data.address\n\n // Try to find a transaction that already has the account available\n const groupIndex1 = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n\n // Check if account is in foreign accounts array\n if (appCall.accountReferences?.some((a) => a.equals(address))) {\n return true\n }\n\n // Check if account is available as an app account\n if (appCall.appReferences) {\n for (const appId of appCall.appReferences) {\n if (address === getApplicationAddress(appId)) {\n return true\n }\n }\n }\n\n // Check if account appears in any app call transaction fields\n if (txn.sender.equals(address)) {\n return true\n }\n\n return false\n })\n\n if (groupIndex1 !== -1) {\n const appCall = transactions[groupIndex1].appCall!\n if (resource.type === GroupResourceType.AssetHolding) {\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data.assetId)) {\n appCall.assetReferences.push(resource.data.assetId)\n }\n } else {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n }\n return\n }\n\n // Try to find a transaction that has the asset/app available and space for account\n const groupIndex2 = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n if ((appCall.accountReferences?.length ?? 0) >= MAX_ACCOUNT_REFERENCES) {\n return false\n }\n\n if (resource.type === GroupResourceType.AssetHolding) {\n return appCall.assetReferences?.includes(resource.data.assetId) || false\n } else {\n return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId\n }\n })\n\n if (groupIndex2 !== -1) {\n const appCall = transactions[groupIndex2].appCall!\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.includes(address)) {\n appCall.accountReferences.push(address)\n }\n return\n }\n }\n\n // For boxes, first try to find a transaction that already has the app available\n if (resource.type === GroupResourceType.Box) {\n const groupIndex = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId\n })\n\n if (groupIndex !== -1) {\n const appCall = transactions[groupIndex].appCall!\n appCall.boxReferences = appCall.boxReferences ?? []\n const exists = appCall.boxReferences.some(\n (b) =>\n b.appId === resource.data.appId &&\n b.name.length === resource.data.name.length &&\n b.name.every((byte, i) => byte === resource.data.name[i]),\n )\n if (!exists) {\n appCall.boxReferences.push({ appId: resource.data.appId, name: resource.data.name })\n }\n return\n }\n }\n\n // Find the first transaction that can accommodate the resource\n const groupIndex = transactions.findIndex((txn) => {\n if (txn.type !== TransactionType.AppCall) {\n return false\n }\n if (txn.appCall?.accessReferences?.length) {\n return false\n }\n\n const appCall = txn.appCall!\n const accountsCount = appCall.accountReferences?.length ?? 0\n const assetsCount = appCall.assetReferences?.length ?? 0\n const appsCount = appCall.appReferences?.length ?? 0\n const boxesCount = appCall.boxReferences?.length ?? 0\n\n switch (resource.type) {\n case GroupResourceType.Account:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n case GroupResourceType.AssetHolding:\n case GroupResourceType.AppLocal:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1\n case GroupResourceType.Box:\n if (resource.data.appId !== 0n) {\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1\n } else {\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n }\n default:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n }\n })\n\n if (groupIndex === -1) {\n throw new Error('No more transactions below reference limit. Add another app call to the group.')\n }\n\n const appCall = transactions[groupIndex].appCall!\n\n switch (resource.type) {\n case GroupResourceType.Account: {\n appCall.accountReferences = appCall.accountReferences ?? []\n const address = resource.data\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.App:\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data)) {\n appCall.appReferences.push(resource.data)\n }\n break\n case GroupResourceType.Box: {\n appCall.boxReferences = appCall.boxReferences ?? []\n const exists = appCall.boxReferences.some(\n (b) =>\n b.appId === resource.data.appId &&\n b.name.length === resource.data.name.length &&\n b.name.every((byte, i) => byte === resource.data.name[i]),\n )\n if (!exists) {\n appCall.boxReferences.push({ appId: resource.data.appId, name: resource.data.name })\n }\n if (resource.data.appId !== 0n) {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n }\n break\n }\n case GroupResourceType.ExtraBoxRef:\n appCall.boxReferences = appCall.boxReferences ?? []\n appCall.boxReferences.push({ appId: 0n, name: new Uint8Array(0) })\n break\n case GroupResourceType.AssetHolding: {\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data.assetId)) {\n appCall.assetReferences.push(resource.data.assetId)\n }\n const address = resource.data.address\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.AppLocal: {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n const address = resource.data.address\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.Asset:\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data)) {\n appCall.assetReferences.push(resource.data)\n }\n break\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"app-call.js","names":["buildTransactionCommonData","calculateExtraProgramPages","Transaction","TransactionType","OnApplicationComplete","getAddress","AppManager","getApplicationAddress"],"sources":["../../src/transactions/app-call.ts"],"sourcesContent":["import { SimulateUnnamedResourcesAccessed, SuggestedParams } from '@algorandfoundation/algokit-algod-client'\nimport {\n Address,\n Expand,\n MAX_ACCOUNT_REFERENCES,\n MAX_OVERALL_REFERENCES,\n ReadableAddress,\n getAddress,\n getApplicationAddress,\n} from '@algorandfoundation/algokit-common'\nimport {\n HoldingReference,\n LocalsReference,\n OnApplicationComplete,\n ResourceReference,\n BoxReference as TransactBoxReference,\n Transaction,\n TransactionType,\n} from '@algorandfoundation/algokit-transact'\nimport { AppManager, BoxIdentifier, BoxReference as UtilsBoxReference } from '../app-manager'\nimport { calculateExtraProgramPages } from '../util'\nimport { CommonTransactionParams, buildTransactionCommonData } from './common'\n\n/** Common parameters for defining an application call transaction. */\nexport type CommonAppCallParams = CommonTransactionParams & {\n /** ID of the application; 0 if the application is being created. */\n appId: bigint\n /** The [on-complete](https://dev.algorand.co/concepts/smart-contracts/avm#oncomplete) action of the call; defaults to no-op. */\n onComplete?: OnApplicationComplete\n /** Any [arguments to pass to the smart contract call](/concepts/smart-contracts/languages/teal/#argument-passing). */\n args?: Uint8Array[]\n /** Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n accountReferences?: ReadableAddress[]\n /** The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n appReferences?: bigint[]\n /** The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). */\n assetReferences?: bigint[]\n /** Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays).\n *\n * Either the name identifier (which will be set against app ID of `0` i.e.\n * the current app), or a box identifier with the name identifier and app ID.\n */\n boxReferences?: (UtilsBoxReference | BoxIdentifier)[]\n /** Access references unifies `accountReferences`, `appReferences`, `assetReferences`, and `boxReferences` under a single list. If non-empty, these other reference lists must be empty. If access is empty, those other reference lists may be non-empty. */\n accessReferences?: ResourceReference[]\n /** If set, the transaction will be rejected when the app's version is greater than or equal to this value. This can be used to prevent calling an app after it has been updated. Set to 0 or leave undefined to skip the version check. */\n rejectVersion?: number\n}\n\n/** Parameters to define an app create transaction */\nexport type AppCreateParams = Expand<\n Omit<CommonAppCallParams, 'appId'> & {\n appId?: 0\n onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.ClearState>\n /** The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */\n approvalProgram: string | Uint8Array\n /** The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). */\n clearStateProgram: string | Uint8Array\n /** The state schema for the app. This is immutable once the app is created. */\n schema?: {\n /** The number of integers saved in global state. */\n globalInts: number\n /** The number of byte slices saved in global state. */\n globalByteSlices: number\n /** The number of integers saved in local state. */\n localInts: number\n /** The number of byte slices saved in local state. */\n localByteSlices: number\n }\n /** Number of extra pages required for the programs.\n * Defaults to the number needed for the programs in this call if not specified.\n * This is immutable once the app is created. */\n extraProgramPages?: number\n }\n>\n\n/** Parameters to define an app update transaction */\nexport type AppUpdateParams = Expand<\n CommonAppCallParams & {\n onComplete?: OnApplicationComplete.UpdateApplication\n /** The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */\n approvalProgram: string | Uint8Array\n /** The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) */\n clearStateProgram: string | Uint8Array\n }\n>\n\n/** Parameters to define an application call transaction. */\nexport type AppCallParams = CommonAppCallParams & { onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.UpdateApplication> }\n\n/** Common parameters to define an ABI method call transaction. */\nexport type AppMethodCallParams = CommonAppCallParams & {\n onComplete?: Exclude<OnApplicationComplete, OnApplicationComplete.UpdateApplication | OnApplicationComplete.ClearState>\n}\n\n/** Parameters to define an application delete call transaction. */\nexport type AppDeleteParams = CommonAppCallParams & { onComplete?: OnApplicationComplete.DeleteApplication }\n\nexport const buildAppCreate = async (\n params: AppCreateParams,\n appManager: AppManager,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Promise<Transaction> => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n const approvalProgram =\n typeof params.approvalProgram === 'string'\n ? (await appManager.compileTeal(params.approvalProgram)).compiledBase64ToBytes\n : params.approvalProgram\n const clearStateProgram =\n typeof params.clearStateProgram === 'string'\n ? (await appManager.compileTeal(params.clearStateProgram)).compiledBase64ToBytes\n : params.clearStateProgram\n const globalStateSchema =\n params.schema?.globalByteSlices !== undefined || params.schema?.globalInts !== undefined\n ? { numByteSlices: params.schema?.globalByteSlices ?? 0, numUints: params.schema?.globalInts ?? 0 }\n : undefined\n const localStateSchema =\n params.schema?.localByteSlices !== undefined || params.schema?.localInts !== undefined\n ? { numByteSlices: params.schema?.localByteSlices ?? 0, numUints: params.schema?.localInts ?? 0 }\n : undefined\n const extraProgramPages =\n params.extraProgramPages !== undefined ? params.extraProgramPages : calculateExtraProgramPages(approvalProgram!, clearStateProgram!)\n\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: 0n, // App creation always uses ID 0\n onComplete: params.onComplete ?? OnApplicationComplete.NoOp,\n approvalProgram: approvalProgram,\n clearStateProgram: clearStateProgram,\n globalStateSchema: globalStateSchema,\n localStateSchema: localStateSchema,\n extraProgramPages: extraProgramPages,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\nexport const buildAppUpdate = async (\n params: AppUpdateParams,\n appManager: AppManager,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Promise<Transaction> => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n const approvalProgram =\n typeof params.approvalProgram === 'string'\n ? (await appManager.compileTeal(params.approvalProgram)).compiledBase64ToBytes\n : params.approvalProgram\n const clearStateProgram =\n typeof params.clearStateProgram === 'string'\n ? (await appManager.compileTeal(params.clearStateProgram)).compiledBase64ToBytes\n : params.clearStateProgram\n\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: params.appId,\n onComplete: OnApplicationComplete.UpdateApplication,\n approvalProgram: approvalProgram,\n clearStateProgram: clearStateProgram,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\nexport const buildAppCall = (\n params: AppCallParams | AppDeleteParams,\n suggestedParams: SuggestedParams,\n defaultValidityWindow: bigint,\n): Transaction => {\n const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow)\n // If accessReferences is provided, we should not pass legacy foreign arrays\n const hasAccessReferences = params.accessReferences && params.accessReferences.length > 0\n\n return new Transaction({\n ...commonData,\n type: TransactionType.AppCall,\n appCall: {\n appId: params.appId,\n onComplete: params.onComplete ?? OnApplicationComplete.NoOp,\n args: params.args,\n ...(hasAccessReferences\n ? { accessReferences: params.accessReferences }\n : {\n accountReferences: params.accountReferences?.map((a) => getAddress(a)),\n appReferences: params.appReferences,\n assetReferences: params.assetReferences,\n boxReferences: params.boxReferences?.map(AppManager.getBoxReference),\n }),\n rejectVersion: params.rejectVersion,\n },\n })\n}\n\n/**\n * Populate transaction-level resources for app call transactions\n */\nexport function populateTransactionResources(\n transaction: Transaction, // NOTE: transaction is mutated in place\n resourcesAccessed: SimulateUnnamedResourcesAccessed,\n groupIndex: number,\n): void {\n if (transaction.type !== TransactionType.AppCall || transaction.appCall === undefined) {\n return\n }\n\n // Check for unexpected resources at transaction level\n if (resourcesAccessed.boxes || resourcesAccessed.extraBoxRefs) {\n throw new Error('Unexpected boxes at the transaction level')\n }\n if (resourcesAccessed.appLocals) {\n throw new Error('Unexpected app locals at the transaction level')\n }\n if (resourcesAccessed.assetHoldings) {\n throw new Error('Unexpected asset holdings at the transaction level')\n }\n\n let accountsCount = 0\n let appsCount = 0\n let assetsCount = 0\n const boxesCount = transaction.appCall.boxReferences?.length ?? 0\n\n // Populate accounts\n if (resourcesAccessed.accounts) {\n transaction.appCall.accountReferences = transaction.appCall.accountReferences ?? []\n for (const account of resourcesAccessed.accounts) {\n const address = account\n if (!transaction.appCall.accountReferences.some((a) => a.equals(address))) {\n transaction.appCall.accountReferences.push(address)\n }\n }\n accountsCount = transaction.appCall.accountReferences.length\n }\n\n // Populate apps\n if (resourcesAccessed.apps) {\n transaction.appCall.appReferences = transaction.appCall.appReferences ?? []\n for (const appId of resourcesAccessed.apps) {\n if (!transaction.appCall.appReferences.includes(appId)) {\n transaction.appCall.appReferences.push(appId)\n }\n }\n appsCount = transaction.appCall.appReferences.length\n }\n\n // Populate assets\n if (resourcesAccessed.assets) {\n transaction.appCall.assetReferences = transaction.appCall.assetReferences ?? []\n for (const assetId of resourcesAccessed.assets) {\n if (!transaction.appCall.assetReferences.includes(assetId)) {\n transaction.appCall.assetReferences.push(assetId)\n }\n }\n assetsCount = transaction.appCall.assetReferences.length\n }\n\n if (accountsCount + assetsCount + appsCount + boxesCount > MAX_OVERALL_REFERENCES) {\n throw new Error(`Resource reference limit of ${MAX_OVERALL_REFERENCES} exceeded in transaction ${groupIndex}`)\n }\n}\n\nenum GroupResourceType {\n Account,\n App,\n Asset,\n Box,\n ExtraBoxRef,\n AssetHolding,\n AppLocal,\n}\n\n/**\n * Populate group-level resources for app call transactions\n */\nexport function populateGroupResources(\n transactions: Transaction[], // NOTE: transactions are mutated in place\n groupResources: SimulateUnnamedResourcesAccessed,\n): void {\n let remainingAccounts = [...(groupResources.accounts ?? [])]\n let remainingApps = [...(groupResources.apps ?? [])]\n let remainingAssets = [...(groupResources.assets ?? [])]\n const remainingBoxes = [...(groupResources.boxes ?? [])]\n\n // Process cross-reference resources first (app locals and asset holdings) as they are most restrictive\n if (groupResources.appLocals) {\n groupResources.appLocals.forEach((appLocal) => {\n populateGroupResource(transactions, { type: GroupResourceType.AppLocal, data: appLocal })\n // Remove resources from remaining if we're adding them here\n remainingAccounts = remainingAccounts.filter((acc) => acc !== appLocal.address)\n remainingApps = remainingApps.filter((app) => app !== appLocal.appId)\n })\n }\n\n if (groupResources.assetHoldings) {\n groupResources.assetHoldings.forEach((assetHolding) => {\n populateGroupResource(transactions, { type: GroupResourceType.AssetHolding, data: assetHolding })\n // Remove resources from remaining if we're adding them here\n remainingAccounts = remainingAccounts.filter((acc) => acc !== assetHolding.address)\n remainingAssets = remainingAssets.filter((asset) => asset !== assetHolding.assetId)\n })\n }\n\n // Process accounts next because account limit is 4\n remainingAccounts.forEach((account) => {\n populateGroupResource(transactions, { type: GroupResourceType.Account, data: account })\n })\n\n // Process boxes\n remainingBoxes.forEach((boxRef) => {\n populateGroupResource(transactions, { type: GroupResourceType.Box, data: { appId: boxRef.appId, name: boxRef.name } })\n // Remove apps as resource if we're adding it here\n remainingApps = remainingApps.filter((app) => app !== boxRef.appId)\n })\n\n // Process assets\n remainingAssets.forEach((asset) => {\n populateGroupResource(transactions, { type: GroupResourceType.Asset, data: asset })\n })\n\n // Process remaining apps\n remainingApps.forEach((app) => {\n populateGroupResource(transactions, { type: GroupResourceType.App, data: app })\n })\n\n // Handle extra box refs\n if (groupResources.extraBoxRefs) {\n for (let i = 0; i < groupResources.extraBoxRefs; i++) {\n populateGroupResource(transactions, { type: GroupResourceType.ExtraBoxRef })\n }\n }\n}\n\n/**\n * Helper function to check if an app call transaction is below resource limit\n */\nfunction isAppCallBelowResourceLimit(txn: Transaction): boolean {\n if (txn.type !== TransactionType.AppCall) {\n return false\n }\n if (txn.appCall?.accessReferences?.length) {\n return false\n }\n\n const accountsCount = txn.appCall?.accountReferences?.length || 0\n const assetsCount = txn.appCall?.assetReferences?.length || 0\n const appsCount = txn.appCall?.appReferences?.length || 0\n const boxesCount = txn.appCall?.boxReferences?.length || 0\n\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n}\n\ntype GroupResourceToPopulate =\n | { type: GroupResourceType.Account; data: Address }\n | { type: GroupResourceType.App; data: bigint }\n | { type: GroupResourceType.Asset; data: bigint }\n | { type: GroupResourceType.Box; data: TransactBoxReference }\n | { type: GroupResourceType.ExtraBoxRef }\n | { type: GroupResourceType.AssetHolding; data: HoldingReference }\n | { type: GroupResourceType.AppLocal; data: LocalsReference }\n\n/**\n * Helper function to populate a specific resource into a transaction group\n */\nfunction populateGroupResource(\n transactions: Transaction[], // NOTE: transactions are mutated in place\n resource: GroupResourceToPopulate,\n): void {\n // For asset holdings and app locals, first try to find a transaction that already has the account available\n if (resource.type === GroupResourceType.AssetHolding || resource.type === GroupResourceType.AppLocal) {\n const address = resource.data.address\n\n // Try to find a transaction that already has the account available\n const groupIndex1 = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n\n // Check if account is in foreign accounts array\n if (appCall.accountReferences?.some((a) => a.equals(address))) {\n return true\n }\n\n // Check if account is available as an app account\n if (appCall.appReferences) {\n for (const appId of appCall.appReferences) {\n if (address === getApplicationAddress(appId)) {\n return true\n }\n }\n }\n\n // Check if account appears in any app call transaction fields\n if (txn.sender.equals(address)) {\n return true\n }\n\n return false\n })\n\n if (groupIndex1 !== -1) {\n const appCall = transactions[groupIndex1].appCall!\n if (resource.type === GroupResourceType.AssetHolding) {\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data.assetId)) {\n appCall.assetReferences.push(resource.data.assetId)\n }\n } else {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n }\n return\n }\n\n // Try to find a transaction that has the asset/app available and space for account\n const groupIndex2 = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n if ((appCall.accountReferences?.length ?? 0) >= MAX_ACCOUNT_REFERENCES) {\n return false\n }\n\n if (resource.type === GroupResourceType.AssetHolding) {\n return appCall.assetReferences?.includes(resource.data.assetId) || false\n } else {\n return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId\n }\n })\n\n if (groupIndex2 !== -1) {\n const appCall = transactions[groupIndex2].appCall!\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.includes(address)) {\n appCall.accountReferences.push(address)\n }\n return\n }\n }\n\n // For boxes, first try to find a transaction that already has the app available\n if (resource.type === GroupResourceType.Box) {\n const groupIndex = transactions.findIndex((txn) => {\n if (!isAppCallBelowResourceLimit(txn)) {\n return false\n }\n\n const appCall = txn.appCall!\n return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId\n })\n\n if (groupIndex !== -1) {\n const appCall = transactions[groupIndex].appCall!\n appCall.boxReferences = appCall.boxReferences ?? []\n const exists = appCall.boxReferences.some(\n (b) =>\n b.appId === resource.data.appId &&\n b.name.length === resource.data.name.length &&\n b.name.every((byte, i) => byte === resource.data.name[i]),\n )\n if (!exists) {\n appCall.boxReferences.push({ appId: resource.data.appId, name: resource.data.name })\n }\n return\n }\n }\n\n // Find the first transaction that can accommodate the resource\n const groupIndex = transactions.findIndex((txn) => {\n if (txn.type !== TransactionType.AppCall) {\n return false\n }\n if (txn.appCall?.accessReferences?.length) {\n return false\n }\n\n const appCall = txn.appCall!\n const accountsCount = appCall.accountReferences?.length ?? 0\n const assetsCount = appCall.assetReferences?.length ?? 0\n const appsCount = appCall.appReferences?.length ?? 0\n const boxesCount = appCall.boxReferences?.length ?? 0\n\n switch (resource.type) {\n case GroupResourceType.Account:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n case GroupResourceType.AssetHolding:\n case GroupResourceType.AppLocal:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1\n case GroupResourceType.Box:\n if (resource.data.appId !== 0n) {\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1\n } else {\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n }\n default:\n return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES\n }\n })\n\n if (groupIndex === -1) {\n throw new Error('No more transactions below reference limit. Add another app call to the group.')\n }\n\n const appCall = transactions[groupIndex].appCall!\n\n switch (resource.type) {\n case GroupResourceType.Account: {\n appCall.accountReferences = appCall.accountReferences ?? []\n const address = resource.data\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.App:\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data)) {\n appCall.appReferences.push(resource.data)\n }\n break\n case GroupResourceType.Box: {\n appCall.boxReferences = appCall.boxReferences ?? []\n const exists = appCall.boxReferences.some(\n (b) =>\n b.appId === resource.data.appId &&\n b.name.length === resource.data.name.length &&\n b.name.every((byte, i) => byte === resource.data.name[i]),\n )\n if (!exists) {\n appCall.boxReferences.push({ appId: resource.data.appId, name: resource.data.name })\n }\n if (resource.data.appId !== 0n) {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n }\n break\n }\n case GroupResourceType.ExtraBoxRef:\n appCall.boxReferences = appCall.boxReferences ?? []\n appCall.boxReferences.push({ appId: 0n, name: new Uint8Array(0) })\n break\n case GroupResourceType.AssetHolding: {\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data.assetId)) {\n appCall.assetReferences.push(resource.data.assetId)\n }\n const address = resource.data.address\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.AppLocal: {\n appCall.appReferences = appCall.appReferences ?? []\n if (!appCall.appReferences.includes(resource.data.appId)) {\n appCall.appReferences.push(resource.data.appId)\n }\n const address = resource.data.address\n appCall.accountReferences = appCall.accountReferences ?? []\n if (!appCall.accountReferences.some((a) => a.equals(address))) {\n appCall.accountReferences.push(address)\n }\n break\n }\n case GroupResourceType.Asset:\n appCall.assetReferences = appCall.assetReferences ?? []\n if (!appCall.assetReferences.includes(resource.data)) {\n appCall.assetReferences.push(resource.data)\n }\n break\n }\n}\n"],"mappings":"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"}
@@ -1,12 +1,11 @@
1
- import { MAX_ACCOUNT_REFERENCES, MAX_OVERALL_REFERENCES } from "../packages/common/src/constants.mjs";
1
+ import "../packages/common/src/constants.mjs";
2
2
  import { getAddress, getApplicationAddress } from "../packages/common/src/address.mjs";
3
3
  import { OnApplicationComplete } from "../packages/transact/src/transactions/app-call.mjs";
4
4
  import { TransactionType } from "../packages/transact/src/transactions/transaction-type.mjs";
5
5
  import { Transaction } from "../packages/transact/src/transactions/transaction.mjs";
6
6
  import { calculateExtraProgramPages } from "../util.mjs";
7
- import { AppManager } from "../types/app-manager.mjs";
7
+ import { AppManager } from "../app-manager.mjs";
8
8
  import { buildTransactionCommonData } from "./common.mjs";
9
-
10
9
  //#region src/transactions/app-call.ts
11
10
  const buildAppCreate = async (params, appManager, suggestedParams, defaultValidityWindow) => {
12
11
  const commonData = buildTransactionCommonData(params, suggestedParams, defaultValidityWindow);
@@ -118,17 +117,17 @@ function populateTransactionResources(transaction, resourcesAccessed, groupIndex
118
117
  for (const assetId of resourcesAccessed.assets) if (!transaction.appCall.assetReferences.includes(assetId)) transaction.appCall.assetReferences.push(assetId);
119
118
  assetsCount = transaction.appCall.assetReferences.length;
120
119
  }
121
- if (accountsCount + assetsCount + appsCount + boxesCount > MAX_OVERALL_REFERENCES) throw new Error(`Resource reference limit of ${MAX_OVERALL_REFERENCES} exceeded in transaction ${groupIndex}`);
120
+ if (accountsCount + assetsCount + appsCount + boxesCount > 8) throw new Error(`Resource reference limit of 8 exceeded in transaction ${groupIndex}`);
122
121
  }
123
- var GroupResourceType = /* @__PURE__ */ function(GroupResourceType$1) {
124
- GroupResourceType$1[GroupResourceType$1["Account"] = 0] = "Account";
125
- GroupResourceType$1[GroupResourceType$1["App"] = 1] = "App";
126
- GroupResourceType$1[GroupResourceType$1["Asset"] = 2] = "Asset";
127
- GroupResourceType$1[GroupResourceType$1["Box"] = 3] = "Box";
128
- GroupResourceType$1[GroupResourceType$1["ExtraBoxRef"] = 4] = "ExtraBoxRef";
129
- GroupResourceType$1[GroupResourceType$1["AssetHolding"] = 5] = "AssetHolding";
130
- GroupResourceType$1[GroupResourceType$1["AppLocal"] = 6] = "AppLocal";
131
- return GroupResourceType$1;
122
+ var GroupResourceType = /* @__PURE__ */ function(GroupResourceType) {
123
+ GroupResourceType[GroupResourceType["Account"] = 0] = "Account";
124
+ GroupResourceType[GroupResourceType["App"] = 1] = "App";
125
+ GroupResourceType[GroupResourceType["Asset"] = 2] = "Asset";
126
+ GroupResourceType[GroupResourceType["Box"] = 3] = "Box";
127
+ GroupResourceType[GroupResourceType["ExtraBoxRef"] = 4] = "ExtraBoxRef";
128
+ GroupResourceType[GroupResourceType["AssetHolding"] = 5] = "AssetHolding";
129
+ GroupResourceType[GroupResourceType["AppLocal"] = 6] = "AppLocal";
130
+ return GroupResourceType;
132
131
  }(GroupResourceType || {});
133
132
  /**
134
133
  * Populate group-level resources for app call transactions
@@ -194,7 +193,7 @@ function isAppCallBelowResourceLimit(txn) {
194
193
  const assetsCount = txn.appCall?.assetReferences?.length || 0;
195
194
  const appsCount = txn.appCall?.appReferences?.length || 0;
196
195
  const boxesCount = txn.appCall?.boxReferences?.length || 0;
197
- return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES;
196
+ return accountsCount + assetsCount + appsCount + boxesCount < 8;
198
197
  }
199
198
  /**
200
199
  * Helper function to populate a specific resource into a transaction group
@@ -204,49 +203,49 @@ function populateGroupResource(transactions, resource) {
204
203
  const address = resource.data.address;
205
204
  const groupIndex1 = transactions.findIndex((txn) => {
206
205
  if (!isAppCallBelowResourceLimit(txn)) return false;
207
- const appCall$1 = txn.appCall;
208
- if (appCall$1.accountReferences?.some((a) => a.equals(address))) return true;
209
- if (appCall$1.appReferences) {
210
- for (const appId of appCall$1.appReferences) if (address === getApplicationAddress(appId)) return true;
206
+ const appCall = txn.appCall;
207
+ if (appCall.accountReferences?.some((a) => a.equals(address))) return true;
208
+ if (appCall.appReferences) {
209
+ for (const appId of appCall.appReferences) if (address === getApplicationAddress(appId)) return true;
211
210
  }
212
211
  if (txn.sender.equals(address)) return true;
213
212
  return false;
214
213
  });
215
214
  if (groupIndex1 !== -1) {
216
- const appCall$1 = transactions[groupIndex1].appCall;
215
+ const appCall = transactions[groupIndex1].appCall;
217
216
  if (resource.type === GroupResourceType.AssetHolding) {
218
- appCall$1.assetReferences = appCall$1.assetReferences ?? [];
219
- if (!appCall$1.assetReferences.includes(resource.data.assetId)) appCall$1.assetReferences.push(resource.data.assetId);
217
+ appCall.assetReferences = appCall.assetReferences ?? [];
218
+ if (!appCall.assetReferences.includes(resource.data.assetId)) appCall.assetReferences.push(resource.data.assetId);
220
219
  } else {
221
- appCall$1.appReferences = appCall$1.appReferences ?? [];
222
- if (!appCall$1.appReferences.includes(resource.data.appId)) appCall$1.appReferences.push(resource.data.appId);
220
+ appCall.appReferences = appCall.appReferences ?? [];
221
+ if (!appCall.appReferences.includes(resource.data.appId)) appCall.appReferences.push(resource.data.appId);
223
222
  }
224
223
  return;
225
224
  }
226
225
  const groupIndex2 = transactions.findIndex((txn) => {
227
226
  if (!isAppCallBelowResourceLimit(txn)) return false;
228
- const appCall$1 = txn.appCall;
229
- if ((appCall$1.accountReferences?.length ?? 0) >= MAX_ACCOUNT_REFERENCES) return false;
230
- if (resource.type === GroupResourceType.AssetHolding) return appCall$1.assetReferences?.includes(resource.data.assetId) || false;
231
- else return appCall$1.appReferences?.includes(resource.data.appId) || appCall$1.appId === resource.data.appId;
227
+ const appCall = txn.appCall;
228
+ if ((appCall.accountReferences?.length ?? 0) >= 8) return false;
229
+ if (resource.type === GroupResourceType.AssetHolding) return appCall.assetReferences?.includes(resource.data.assetId) || false;
230
+ else return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId;
232
231
  });
233
232
  if (groupIndex2 !== -1) {
234
- const appCall$1 = transactions[groupIndex2].appCall;
235
- appCall$1.accountReferences = appCall$1.accountReferences ?? [];
236
- if (!appCall$1.accountReferences.includes(address)) appCall$1.accountReferences.push(address);
233
+ const appCall = transactions[groupIndex2].appCall;
234
+ appCall.accountReferences = appCall.accountReferences ?? [];
235
+ if (!appCall.accountReferences.includes(address)) appCall.accountReferences.push(address);
237
236
  return;
238
237
  }
239
238
  }
240
239
  if (resource.type === GroupResourceType.Box) {
241
- const groupIndex$1 = transactions.findIndex((txn) => {
240
+ const groupIndex = transactions.findIndex((txn) => {
242
241
  if (!isAppCallBelowResourceLimit(txn)) return false;
243
- const appCall$1 = txn.appCall;
244
- return appCall$1.appReferences?.includes(resource.data.appId) || appCall$1.appId === resource.data.appId;
242
+ const appCall = txn.appCall;
243
+ return appCall.appReferences?.includes(resource.data.appId) || appCall.appId === resource.data.appId;
245
244
  });
246
- if (groupIndex$1 !== -1) {
247
- const appCall$1 = transactions[groupIndex$1].appCall;
248
- appCall$1.boxReferences = appCall$1.boxReferences ?? [];
249
- if (!appCall$1.boxReferences.some((b) => b.appId === resource.data.appId && b.name.length === resource.data.name.length && b.name.every((byte, i) => byte === resource.data.name[i]))) appCall$1.boxReferences.push({
245
+ if (groupIndex !== -1) {
246
+ const appCall = transactions[groupIndex].appCall;
247
+ appCall.boxReferences = appCall.boxReferences ?? [];
248
+ if (!appCall.boxReferences.some((b) => b.appId === resource.data.appId && b.name.length === resource.data.name.length && b.name.every((byte, i) => byte === resource.data.name[i]))) appCall.boxReferences.push({
250
249
  appId: resource.data.appId,
251
250
  name: resource.data.name
252
251
  });
@@ -256,18 +255,18 @@ function populateGroupResource(transactions, resource) {
256
255
  const groupIndex = transactions.findIndex((txn) => {
257
256
  if (txn.type !== TransactionType.AppCall) return false;
258
257
  if (txn.appCall?.accessReferences?.length) return false;
259
- const appCall$1 = txn.appCall;
260
- const accountsCount = appCall$1.accountReferences?.length ?? 0;
261
- const assetsCount = appCall$1.assetReferences?.length ?? 0;
262
- const appsCount = appCall$1.appReferences?.length ?? 0;
263
- const boxesCount = appCall$1.boxReferences?.length ?? 0;
258
+ const appCall = txn.appCall;
259
+ const accountsCount = appCall.accountReferences?.length ?? 0;
260
+ const assetsCount = appCall.assetReferences?.length ?? 0;
261
+ const appsCount = appCall.appReferences?.length ?? 0;
262
+ const boxesCount = appCall.boxReferences?.length ?? 0;
264
263
  switch (resource.type) {
265
- case GroupResourceType.Account: return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES;
264
+ case GroupResourceType.Account: return accountsCount + assetsCount + appsCount + boxesCount < 8;
266
265
  case GroupResourceType.AssetHolding:
267
- case GroupResourceType.AppLocal: return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1;
268
- case GroupResourceType.Box: if (resource.data.appId !== 0n) return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES - 1;
269
- else return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES;
270
- default: return accountsCount + assetsCount + appsCount + boxesCount < MAX_OVERALL_REFERENCES;
266
+ case GroupResourceType.AppLocal: return accountsCount + assetsCount + appsCount + boxesCount < 7;
267
+ case GroupResourceType.Box: if (resource.data.appId !== 0n) return accountsCount + assetsCount + appsCount + boxesCount < 7;
268
+ else return accountsCount + assetsCount + appsCount + boxesCount < 8;
269
+ default: return accountsCount + assetsCount + appsCount + boxesCount < 8;
271
270
  }
272
271
  });
273
272
  if (groupIndex === -1) throw new Error("No more transactions below reference limit. Add another app call to the group.");
@@ -323,7 +322,7 @@ function populateGroupResource(transactions, resource) {
323
322
  break;
324
323
  }
325
324
  }
326
-
327
325
  //#endregion
328
326
  export { buildAppCall, buildAppCreate, buildAppUpdate, populateGroupResources, populateTransactionResources };
327
+
329
328
  //# sourceMappingURL=app-call.mjs.map