@algorandfoundation/algokit-utils 10.0.0-alpha.8 → 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 (1605) hide show
  1. package/_virtual/{rolldown_runtime.js → _rolldown/runtime.js} +2 -13
  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 +3 -4
  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 +2 -7
  171. package/packages/abi/src/abi-type.js +28 -60
  172. package/packages/abi/src/abi-type.js.map +1 -1
  173. package/packages/abi/src/abi-type.mjs +25 -57
  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 +3 -3
  178. package/packages/abi/src/arc56-contract.js.map +1 -1
  179. package/packages/abi/src/arc56-contract.mjs +2 -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.d.ts +44 -44
  199. package/packages/algod_client/src/apis/api-service.js +186 -187
  200. package/packages/algod_client/src/apis/api-service.js.map +1 -1
  201. package/packages/algod_client/src/apis/api-service.mjs +156 -157
  202. package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
  203. package/packages/algod_client/src/client.js +3 -4
  204. package/packages/algod_client/src/client.js.map +1 -1
  205. package/packages/algod_client/src/client.mjs +1 -2
  206. package/packages/algod_client/src/client.mjs.map +1 -1
  207. package/packages/algod_client/src/core/api-error.js +4 -3
  208. package/packages/algod_client/src/core/api-error.js.map +1 -1
  209. package/packages/algod_client/src/core/api-error.mjs +4 -2
  210. package/packages/algod_client/src/core/api-error.mjs.map +1 -1
  211. package/packages/algod_client/src/core/base-http-request.js +1 -2
  212. package/packages/algod_client/src/core/base-http-request.js.map +1 -1
  213. package/packages/algod_client/src/core/base-http-request.mjs +1 -1
  214. package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
  215. package/packages/algod_client/src/core/fetch-http-request.js +3 -4
  216. package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
  217. package/packages/algod_client/src/core/fetch-http-request.mjs +1 -2
  218. package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
  219. package/packages/algod_client/src/core/model-runtime.js +10 -11
  220. package/packages/algod_client/src/core/model-runtime.js.map +1 -1
  221. package/packages/algod_client/src/core/model-runtime.mjs +9 -10
  222. package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
  223. package/packages/algod_client/src/core/request.js +5 -6
  224. package/packages/algod_client/src/core/request.js.map +1 -1
  225. package/packages/algod_client/src/core/request.mjs +1 -2
  226. package/packages/algod_client/src/core/request.mjs.map +1 -1
  227. package/packages/algod_client/src/models/account-application-response.js +5 -6
  228. package/packages/algod_client/src/models/account-application-response.js.map +1 -1
  229. package/packages/algod_client/src/models/account-application-response.mjs +1 -2
  230. package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
  231. package/packages/algod_client/src/models/account-asset-response.js +5 -6
  232. package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
  233. package/packages/algod_client/src/models/account-asset-response.mjs +1 -2
  234. package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
  235. package/packages/algod_client/src/models/account-participation.js +6 -7
  236. package/packages/algod_client/src/models/account-participation.js.map +1 -1
  237. package/packages/algod_client/src/models/account-participation.mjs +5 -6
  238. package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
  239. package/packages/algod_client/src/models/account-state-delta.d.ts +0 -1
  240. package/packages/algod_client/src/models/account-state-delta.js +4 -5
  241. package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
  242. package/packages/algod_client/src/models/account-state-delta.mjs +1 -2
  243. package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
  244. package/packages/algod_client/src/models/account.d.ts +0 -1
  245. package/packages/algod_client/src/models/account.js +14 -15
  246. package/packages/algod_client/src/models/account.js.map +1 -1
  247. package/packages/algod_client/src/models/account.mjs +1 -2
  248. package/packages/algod_client/src/models/account.mjs.map +1 -1
  249. package/packages/algod_client/src/models/application-initial-states.d.ts +0 -1
  250. package/packages/algod_client/src/models/application-initial-states.js +5 -6
  251. package/packages/algod_client/src/models/application-initial-states.js.map +1 -1
  252. package/packages/algod_client/src/models/application-initial-states.mjs +1 -2
  253. package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -1
  254. package/packages/algod_client/src/models/application-kv-storage.d.ts +0 -1
  255. package/packages/algod_client/src/models/application-kv-storage.js +5 -6
  256. package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
  257. package/packages/algod_client/src/models/application-kv-storage.mjs +1 -2
  258. package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
  259. package/packages/algod_client/src/models/application-local-state.d.ts +0 -1
  260. package/packages/algod_client/src/models/application-local-state.js +6 -7
  261. package/packages/algod_client/src/models/application-local-state.js.map +1 -1
  262. package/packages/algod_client/src/models/application-local-state.mjs +1 -2
  263. package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
  264. package/packages/algod_client/src/models/application-params.d.ts +0 -1
  265. package/packages/algod_client/src/models/application-params.js +8 -9
  266. package/packages/algod_client/src/models/application-params.js.map +1 -1
  267. package/packages/algod_client/src/models/application-params.mjs +1 -2
  268. package/packages/algod_client/src/models/application-params.mjs.map +1 -1
  269. package/packages/algod_client/src/models/application-state-operation.d.ts +0 -1
  270. package/packages/algod_client/src/models/application-state-operation.js +6 -7
  271. package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
  272. package/packages/algod_client/src/models/application-state-operation.mjs +1 -2
  273. package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
  274. package/packages/algod_client/src/models/application-state-schema.js +2 -3
  275. package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
  276. package/packages/algod_client/src/models/application-state-schema.mjs +1 -2
  277. package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
  278. package/packages/algod_client/src/models/application.d.ts +0 -1
  279. package/packages/algod_client/src/models/application.js +4 -5
  280. package/packages/algod_client/src/models/application.js.map +1 -1
  281. package/packages/algod_client/src/models/application.mjs +1 -2
  282. package/packages/algod_client/src/models/application.mjs.map +1 -1
  283. package/packages/algod_client/src/models/asset-holding.js +3 -4
  284. package/packages/algod_client/src/models/asset-holding.js.map +1 -1
  285. package/packages/algod_client/src/models/asset-holding.mjs +1 -2
  286. package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
  287. package/packages/algod_client/src/models/asset-params.js +8 -8
  288. package/packages/algod_client/src/models/asset-params.js.map +1 -1
  289. package/packages/algod_client/src/models/asset-params.mjs +3 -3
  290. package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
  291. package/packages/algod_client/src/models/asset.d.ts +0 -1
  292. package/packages/algod_client/src/models/asset.js +4 -5
  293. package/packages/algod_client/src/models/asset.js.map +1 -1
  294. package/packages/algod_client/src/models/asset.mjs +1 -2
  295. package/packages/algod_client/src/models/asset.mjs.map +1 -1
  296. package/packages/algod_client/src/models/avm-key-value.d.ts +0 -1
  297. package/packages/algod_client/src/models/avm-key-value.js +4 -5
  298. package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
  299. package/packages/algod_client/src/models/avm-key-value.mjs +1 -2
  300. package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
  301. package/packages/algod_client/src/models/avm-value.js +4 -6
  302. package/packages/algod_client/src/models/avm-value.js.map +1 -1
  303. package/packages/algod_client/src/models/avm-value.mjs +1 -2
  304. package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
  305. package/packages/algod_client/src/models/block-hash-response.js +2 -4
  306. package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
  307. package/packages/algod_client/src/models/block-hash-response.mjs +1 -2
  308. package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
  309. package/packages/algod_client/src/models/block-response.d.ts +1 -3
  310. package/packages/algod_client/src/models/block-response.js +4 -7
  311. package/packages/algod_client/src/models/block-response.js.map +1 -1
  312. package/packages/algod_client/src/models/block-response.mjs +3 -5
  313. package/packages/algod_client/src/models/block-response.mjs.map +1 -1
  314. package/packages/algod_client/src/models/block-txids-response.js +2 -4
  315. package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
  316. package/packages/algod_client/src/models/block-txids-response.mjs +1 -2
  317. package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
  318. package/packages/algod_client/src/models/block.d.ts +60 -92
  319. package/packages/algod_client/src/models/block.js +194 -119
  320. package/packages/algod_client/src/models/block.js.map +1 -1
  321. package/packages/algod_client/src/models/block.mjs +184 -109
  322. package/packages/algod_client/src/models/block.mjs.map +1 -1
  323. package/packages/algod_client/src/models/box-descriptor.js +2 -4
  324. package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
  325. package/packages/algod_client/src/models/box-descriptor.mjs +1 -2
  326. package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
  327. package/packages/algod_client/src/models/box.js +3 -4
  328. package/packages/algod_client/src/models/box.js.map +1 -1
  329. package/packages/algod_client/src/models/box.mjs +1 -2
  330. package/packages/algod_client/src/models/box.mjs.map +1 -1
  331. package/packages/algod_client/src/models/boxes-response.js +4 -5
  332. package/packages/algod_client/src/models/boxes-response.js.map +1 -1
  333. package/packages/algod_client/src/models/boxes-response.mjs +1 -2
  334. package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
  335. package/packages/algod_client/src/models/build-version.js +3 -4
  336. package/packages/algod_client/src/models/build-version.js.map +1 -1
  337. package/packages/algod_client/src/models/build-version.mjs +1 -2
  338. package/packages/algod_client/src/models/build-version.mjs.map +1 -1
  339. package/packages/algod_client/src/models/compile-response.js +4 -5
  340. package/packages/algod_client/src/models/compile-response.js.map +1 -1
  341. package/packages/algod_client/src/models/compile-response.mjs +1 -2
  342. package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
  343. package/packages/algod_client/src/models/disassemble-response.js +2 -4
  344. package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
  345. package/packages/algod_client/src/models/disassemble-response.mjs +1 -2
  346. package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
  347. package/packages/algod_client/src/models/eval-delta-key-value.d.ts +0 -1
  348. package/packages/algod_client/src/models/eval-delta-key-value.js +5 -6
  349. package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
  350. package/packages/algod_client/src/models/eval-delta-key-value.mjs +3 -4
  351. package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
  352. package/packages/algod_client/src/models/eval-delta.js +5 -7
  353. package/packages/algod_client/src/models/eval-delta.js.map +1 -1
  354. package/packages/algod_client/src/models/eval-delta.mjs +3 -4
  355. package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
  356. package/packages/algod_client/src/models/genesis-allocation.js +59 -62
  357. package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
  358. package/packages/algod_client/src/models/genesis-allocation.mjs +55 -58
  359. package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
  360. package/packages/algod_client/src/models/genesis.js +7 -8
  361. package/packages/algod_client/src/models/genesis.js.map +1 -1
  362. package/packages/algod_client/src/models/genesis.mjs +1 -2
  363. package/packages/algod_client/src/models/genesis.mjs.map +1 -1
  364. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +2 -4
  365. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
  366. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +1 -2
  367. package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
  368. package/packages/algod_client/src/models/get-sync-round-response.js +2 -4
  369. package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
  370. package/packages/algod_client/src/models/get-sync-round-response.mjs +1 -2
  371. package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
  372. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +0 -1
  373. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +4 -5
  374. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
  375. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +1 -2
  376. package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
  377. package/packages/algod_client/src/models/ledger-state-delta.d.ts +3 -8
  378. package/packages/algod_client/src/models/ledger-state-delta.js +99 -102
  379. package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
  380. package/packages/algod_client/src/models/ledger-state-delta.mjs +207 -212
  381. package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
  382. package/packages/algod_client/src/models/light-block-header-proof.js +3 -4
  383. package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
  384. package/packages/algod_client/src/models/light-block-header-proof.mjs +1 -2
  385. package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
  386. package/packages/algod_client/src/models/node-status-response.js +5 -6
  387. package/packages/algod_client/src/models/node-status-response.js.map +1 -1
  388. package/packages/algod_client/src/models/node-status-response.mjs +1 -2
  389. package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
  390. package/packages/algod_client/src/models/pending-transaction-response.d.ts +0 -1
  391. package/packages/algod_client/src/models/pending-transaction-response.js +9 -10
  392. package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
  393. package/packages/algod_client/src/models/pending-transaction-response.mjs +1 -2
  394. package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
  395. package/packages/algod_client/src/models/pending-transactions-response.d.ts +0 -1
  396. package/packages/algod_client/src/models/pending-transactions-response.js +5 -6
  397. package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
  398. package/packages/algod_client/src/models/pending-transactions-response.mjs +1 -2
  399. package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
  400. package/packages/algod_client/src/models/post-transactions-response.js +2 -4
  401. package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
  402. package/packages/algod_client/src/models/post-transactions-response.mjs +1 -2
  403. package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
  404. package/packages/algod_client/src/models/scratch-change.d.ts +0 -1
  405. package/packages/algod_client/src/models/scratch-change.js +4 -5
  406. package/packages/algod_client/src/models/scratch-change.js.map +1 -1
  407. package/packages/algod_client/src/models/scratch-change.mjs +1 -2
  408. package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
  409. package/packages/algod_client/src/models/simulate-initial-states.d.ts +0 -1
  410. package/packages/algod_client/src/models/simulate-initial-states.js +4 -5
  411. package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
  412. package/packages/algod_client/src/models/simulate-initial-states.mjs +1 -2
  413. package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
  414. package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +0 -1
  415. package/packages/algod_client/src/models/simulate-request-transaction-group.js +4 -5
  416. package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
  417. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +1 -2
  418. package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
  419. package/packages/algod_client/src/models/simulate-request.d.ts +0 -1
  420. package/packages/algod_client/src/models/simulate-request.js +8 -9
  421. package/packages/algod_client/src/models/simulate-request.js.map +1 -1
  422. package/packages/algod_client/src/models/simulate-request.mjs +2 -3
  423. package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
  424. package/packages/algod_client/src/models/simulate-response.d.ts +3 -1
  425. package/packages/algod_client/src/models/simulate-response.js +18 -10
  426. package/packages/algod_client/src/models/simulate-response.js.map +1 -1
  427. package/packages/algod_client/src/models/simulate-response.mjs +10 -4
  428. package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
  429. package/packages/algod_client/src/models/simulate-trace-config.js +2 -3
  430. package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
  431. package/packages/algod_client/src/models/simulate-trace-config.mjs +1 -2
  432. package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
  433. package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +0 -1
  434. package/packages/algod_client/src/models/simulate-transaction-group-result.js +7 -8
  435. package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
  436. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +1 -2
  437. package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
  438. package/packages/algod_client/src/models/simulate-transaction-result.d.ts +0 -1
  439. package/packages/algod_client/src/models/simulate-transaction-result.js +7 -8
  440. package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
  441. package/packages/algod_client/src/models/simulate-transaction-result.mjs +1 -2
  442. package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
  443. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +0 -1
  444. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +5 -6
  445. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
  446. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +1 -2
  447. package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
  448. package/packages/algod_client/src/models/simulation-eval-overrides.js +3 -4
  449. package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
  450. package/packages/algod_client/src/models/simulation-eval-overrides.mjs +1 -2
  451. package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
  452. package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +0 -1
  453. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +7 -8
  454. package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
  455. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +1 -2
  456. package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
  457. package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +0 -1
  458. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +7 -8
  459. package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
  460. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +1 -2
  461. package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
  462. package/packages/algod_client/src/models/source-map.js +4 -5
  463. package/packages/algod_client/src/models/source-map.js.map +1 -1
  464. package/packages/algod_client/src/models/source-map.mjs +1 -2
  465. package/packages/algod_client/src/models/source-map.mjs.map +1 -1
  466. package/packages/algod_client/src/models/state-delta.d.ts +0 -1
  467. package/packages/algod_client/src/models/state-delta.js +4 -5
  468. package/packages/algod_client/src/models/state-delta.js.map +1 -1
  469. package/packages/algod_client/src/models/state-delta.mjs +1 -2
  470. package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
  471. package/packages/algod_client/src/models/state-proof-message.js +3 -4
  472. package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
  473. package/packages/algod_client/src/models/state-proof-message.mjs +1 -2
  474. package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
  475. package/packages/algod_client/src/models/state-proof.d.ts +0 -1
  476. package/packages/algod_client/src/models/state-proof.js +4 -5
  477. package/packages/algod_client/src/models/state-proof.js.map +1 -1
  478. package/packages/algod_client/src/models/state-proof.mjs +1 -2
  479. package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
  480. package/packages/algod_client/src/models/supply-response.js +2 -3
  481. package/packages/algod_client/src/models/supply-response.js.map +1 -1
  482. package/packages/algod_client/src/models/supply-response.mjs +1 -2
  483. package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
  484. package/packages/algod_client/src/models/teal-key-value-store.d.ts +0 -1
  485. package/packages/algod_client/src/models/teal-key-value-store.js +4 -5
  486. package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
  487. package/packages/algod_client/src/models/teal-key-value-store.mjs +1 -2
  488. package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
  489. package/packages/algod_client/src/models/teal-key-value.d.ts +0 -1
  490. package/packages/algod_client/src/models/teal-key-value.js +4 -5
  491. package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
  492. package/packages/algod_client/src/models/teal-key-value.mjs +1 -2
  493. package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
  494. package/packages/algod_client/src/models/teal-value.js +4 -6
  495. package/packages/algod_client/src/models/teal-value.js.map +1 -1
  496. package/packages/algod_client/src/models/teal-value.mjs +1 -2
  497. package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
  498. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +4 -5
  499. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
  500. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +1 -2
  501. package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
  502. package/packages/algod_client/src/models/transaction-parameters-response.js +5 -6
  503. package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
  504. package/packages/algod_client/src/models/transaction-parameters-response.mjs +3 -4
  505. package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
  506. package/packages/algod_client/src/models/transaction-proof.js +4 -5
  507. package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
  508. package/packages/algod_client/src/models/transaction-proof.mjs +1 -2
  509. package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
  510. package/packages/algod_client/src/models/version.d.ts +0 -1
  511. package/packages/algod_client/src/models/version.js +6 -7
  512. package/packages/algod_client/src/models/version.js.map +1 -1
  513. package/packages/algod_client/src/models/version.mjs +1 -2
  514. package/packages/algod_client/src/models/version.mjs.map +1 -1
  515. package/packages/common/src/address.d.ts +14 -3
  516. package/packages/common/src/address.js +24 -24
  517. package/packages/common/src/address.js.map +1 -1
  518. package/packages/common/src/address.mjs +17 -21
  519. package/packages/common/src/address.mjs.map +1 -1
  520. package/packages/common/src/array.d.ts +6 -0
  521. package/packages/common/src/array.js +1 -2
  522. package/packages/common/src/array.js.map +1 -1
  523. package/packages/common/src/array.mjs +1 -1
  524. package/packages/common/src/codecs/codec.d.ts +0 -1
  525. package/packages/common/src/codecs/codec.js +1 -2
  526. package/packages/common/src/codecs/codec.js.map +1 -1
  527. package/packages/common/src/codecs/codec.mjs +1 -1
  528. package/packages/common/src/codecs/codec.mjs.map +1 -1
  529. package/packages/common/src/codecs/composite/array.d.ts +25 -0
  530. package/packages/common/src/codecs/composite/array.js +9 -9
  531. package/packages/common/src/codecs/composite/array.js.map +1 -1
  532. package/packages/common/src/codecs/composite/array.mjs +2 -3
  533. package/packages/common/src/codecs/composite/array.mjs.map +1 -1
  534. package/packages/common/src/codecs/composite/map.d.ts +26 -0
  535. package/packages/common/src/codecs/composite/map.js +9 -7
  536. package/packages/common/src/codecs/composite/map.js.map +1 -1
  537. package/packages/common/src/codecs/composite/map.mjs +8 -6
  538. package/packages/common/src/codecs/composite/map.mjs.map +1 -1
  539. package/packages/common/src/codecs/composite/record.d.ts +19 -0
  540. package/packages/common/src/codecs/composite/record.js +3 -5
  541. package/packages/common/src/codecs/composite/record.js.map +1 -1
  542. package/packages/common/src/codecs/composite/record.mjs +1 -2
  543. package/packages/common/src/codecs/composite/record.mjs.map +1 -1
  544. package/packages/common/src/codecs/models/array-model.d.ts +19 -0
  545. package/packages/common/src/codecs/models/array-model.js +2 -3
  546. package/packages/common/src/codecs/models/array-model.js.map +1 -1
  547. package/packages/common/src/codecs/models/array-model.mjs +1 -2
  548. package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
  549. package/packages/common/src/codecs/models/object-model.js +6 -8
  550. package/packages/common/src/codecs/models/object-model.js.map +1 -1
  551. package/packages/common/src/codecs/models/object-model.mjs +4 -6
  552. package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
  553. package/packages/common/src/codecs/models/primitive-model.d.ts +19 -0
  554. package/packages/common/src/codecs/models/primitive-model.js +2 -3
  555. package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
  556. package/packages/common/src/codecs/models/primitive-model.mjs +1 -2
  557. package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
  558. package/packages/common/src/codecs/primitives/address.d.ts +16 -0
  559. package/packages/common/src/codecs/primitives/address.js +7 -9
  560. package/packages/common/src/codecs/primitives/address.js.map +1 -1
  561. package/packages/common/src/codecs/primitives/address.mjs +4 -5
  562. package/packages/common/src/codecs/primitives/address.mjs.map +1 -1
  563. package/packages/common/src/codecs/primitives/bigint.d.ts +13 -0
  564. package/packages/common/src/codecs/primitives/bigint.js +2 -3
  565. package/packages/common/src/codecs/primitives/bigint.js.map +1 -1
  566. package/packages/common/src/codecs/primitives/bigint.mjs +1 -2
  567. package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -1
  568. package/packages/common/src/codecs/primitives/boolean.d.ts +10 -0
  569. package/packages/common/src/codecs/primitives/boolean.js +2 -3
  570. package/packages/common/src/codecs/primitives/boolean.js.map +1 -1
  571. package/packages/common/src/codecs/primitives/boolean.mjs +1 -2
  572. package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -1
  573. package/packages/common/src/codecs/primitives/bytes-base64.d.ts +15 -0
  574. package/packages/common/src/codecs/primitives/bytes-base64.js +25 -0
  575. package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
  576. package/packages/common/src/codecs/primitives/bytes-base64.mjs +24 -0
  577. package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
  578. package/packages/common/src/codecs/primitives/bytes.d.ts +15 -0
  579. package/packages/common/src/codecs/primitives/bytes.js +3 -5
  580. package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
  581. package/packages/common/src/codecs/primitives/bytes.mjs +1 -2
  582. package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -1
  583. package/packages/common/src/codecs/primitives/fixed-bytes.d.ts +19 -0
  584. package/packages/common/src/codecs/primitives/fixed-bytes.js +3 -5
  585. package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
  586. package/packages/common/src/codecs/primitives/fixed-bytes.mjs +1 -2
  587. package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
  588. package/packages/common/src/codecs/primitives/number.d.ts +11 -0
  589. package/packages/common/src/codecs/primitives/number.js +2 -3
  590. package/packages/common/src/codecs/primitives/number.js.map +1 -1
  591. package/packages/common/src/codecs/primitives/number.mjs +1 -2
  592. package/packages/common/src/codecs/primitives/number.mjs.map +1 -1
  593. package/packages/common/src/codecs/primitives/string.d.ts +13 -0
  594. package/packages/common/src/codecs/primitives/string.js +3 -4
  595. package/packages/common/src/codecs/primitives/string.js.map +1 -1
  596. package/packages/common/src/codecs/primitives/string.mjs +1 -2
  597. package/packages/common/src/codecs/primitives/string.mjs.map +1 -1
  598. package/packages/common/src/codecs/primitives/unknown.d.ts +26 -0
  599. package/packages/common/src/codecs/primitives/unknown.js +10 -11
  600. package/packages/common/src/codecs/primitives/unknown.js.map +1 -1
  601. package/packages/common/src/codecs/primitives/unknown.mjs +3 -4
  602. package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -1
  603. package/packages/common/src/codecs/types.d.ts +12 -2
  604. package/packages/common/src/codecs/wire.d.ts +17 -1
  605. package/packages/common/src/codecs/wire.js +2 -4
  606. package/packages/common/src/codecs/wire.js.map +1 -1
  607. package/packages/common/src/codecs/wire.mjs +1 -2
  608. package/packages/common/src/codecs/wire.mjs.map +1 -1
  609. package/packages/common/src/constants.d.ts +34 -0
  610. package/packages/common/src/constants.js +4 -3
  611. package/packages/common/src/constants.js.map +1 -1
  612. package/packages/common/src/constants.mjs +4 -3
  613. package/packages/common/src/constants.mjs.map +1 -1
  614. package/packages/common/src/encoding.d.ts +10 -0
  615. package/packages/common/src/encoding.js +30 -0
  616. package/packages/common/src/encoding.js.map +1 -0
  617. package/packages/common/src/encoding.mjs +24 -0
  618. package/packages/common/src/encoding.mjs.map +1 -0
  619. package/packages/common/src/json.d.ts +17 -0
  620. package/packages/common/src/json.js +3 -4
  621. package/packages/common/src/json.js.map +1 -1
  622. package/packages/common/src/json.mjs +3 -4
  623. package/packages/common/src/json.mjs.map +1 -1
  624. package/packages/common/src/msgpack.d.ts +11 -0
  625. package/packages/common/src/msgpack.js +2 -4
  626. package/packages/common/src/msgpack.js.map +1 -1
  627. package/packages/common/src/msgpack.mjs +1 -2
  628. package/packages/common/src/msgpack.mjs.map +1 -1
  629. package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +1 -1
  630. package/packages/{sdk/src/logic → common/src}/sourcemap.js +4 -5
  631. package/packages/common/src/sourcemap.js.map +1 -0
  632. package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +2 -3
  633. package/packages/common/src/sourcemap.mjs.map +1 -0
  634. package/packages/crypto/src/ed25519.d.ts +60 -0
  635. package/packages/crypto/src/ed25519.js +58 -0
  636. package/packages/crypto/src/ed25519.js.map +1 -0
  637. package/packages/crypto/src/ed25519.mjs +53 -0
  638. package/packages/crypto/src/ed25519.mjs.map +1 -0
  639. package/packages/crypto/src/hash.d.ts +8 -0
  640. package/packages/crypto/src/hash.js +14 -0
  641. package/packages/crypto/src/hash.js.map +1 -0
  642. package/packages/crypto/src/hash.mjs +13 -0
  643. package/packages/crypto/src/hash.mjs.map +1 -0
  644. package/packages/crypto/src/hd.d.ts +36 -0
  645. package/packages/crypto/src/hd.js +36 -0
  646. package/packages/crypto/src/hd.js.map +1 -0
  647. package/packages/crypto/src/hd.mjs +35 -0
  648. package/packages/crypto/src/hd.mjs.map +1 -0
  649. package/packages/crypto/src/index.d.ts +28 -0
  650. package/packages/crypto/src/index.js +142 -0
  651. package/packages/crypto/src/index.js.map +1 -0
  652. package/packages/crypto/src/index.mjs +139 -0
  653. package/packages/crypto/src/index.mjs.map +1 -0
  654. package/packages/indexer_client/src/apis/api-service.d.ts +1 -1
  655. package/packages/indexer_client/src/apis/api-service.js +31 -32
  656. package/packages/indexer_client/src/apis/api-service.js.map +1 -1
  657. package/packages/indexer_client/src/apis/api-service.mjs +13 -14
  658. package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
  659. package/packages/indexer_client/src/client.js +3 -4
  660. package/packages/indexer_client/src/client.js.map +1 -1
  661. package/packages/indexer_client/src/client.mjs +1 -2
  662. package/packages/indexer_client/src/client.mjs.map +1 -1
  663. package/packages/indexer_client/src/core/api-error.js +4 -3
  664. package/packages/indexer_client/src/core/api-error.js.map +1 -1
  665. package/packages/indexer_client/src/core/api-error.mjs +4 -2
  666. package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
  667. package/packages/indexer_client/src/core/base-http-request.js +1 -2
  668. package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
  669. package/packages/indexer_client/src/core/base-http-request.mjs +1 -1
  670. package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
  671. package/packages/indexer_client/src/core/fetch-http-request.js +3 -4
  672. package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
  673. package/packages/indexer_client/src/core/fetch-http-request.mjs +1 -2
  674. package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
  675. package/packages/indexer_client/src/core/model-runtime.js +2 -18
  676. package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
  677. package/packages/indexer_client/src/core/model-runtime.mjs +2 -15
  678. package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
  679. package/packages/indexer_client/src/core/request.js +5 -6
  680. package/packages/indexer_client/src/core/request.js.map +1 -1
  681. package/packages/indexer_client/src/core/request.mjs +1 -2
  682. package/packages/indexer_client/src/core/request.mjs.map +1 -1
  683. package/packages/indexer_client/src/models/account-participation.js +6 -7
  684. package/packages/indexer_client/src/models/account-participation.js.map +1 -1
  685. package/packages/indexer_client/src/models/account-participation.mjs +5 -6
  686. package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
  687. package/packages/indexer_client/src/models/account-response.js +4 -5
  688. package/packages/indexer_client/src/models/account-response.js.map +1 -1
  689. package/packages/indexer_client/src/models/account-response.mjs +1 -2
  690. package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
  691. package/packages/indexer_client/src/models/account-state-delta.d.ts +0 -1
  692. package/packages/indexer_client/src/models/account-state-delta.js +4 -5
  693. package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
  694. package/packages/indexer_client/src/models/account-state-delta.mjs +1 -2
  695. package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
  696. package/packages/indexer_client/src/models/account.d.ts +0 -1
  697. package/packages/indexer_client/src/models/account.js +14 -15
  698. package/packages/indexer_client/src/models/account.js.map +1 -1
  699. package/packages/indexer_client/src/models/account.mjs +1 -2
  700. package/packages/indexer_client/src/models/account.mjs.map +1 -1
  701. package/packages/indexer_client/src/models/accounts-response.js +6 -7
  702. package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
  703. package/packages/indexer_client/src/models/accounts-response.mjs +1 -2
  704. package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
  705. package/packages/indexer_client/src/models/application-local-state.d.ts +0 -1
  706. package/packages/indexer_client/src/models/application-local-state.js +7 -8
  707. package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
  708. package/packages/indexer_client/src/models/application-local-state.mjs +1 -2
  709. package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
  710. package/packages/indexer_client/src/models/application-local-states-response.js +6 -7
  711. package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
  712. package/packages/indexer_client/src/models/application-local-states-response.mjs +1 -2
  713. package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
  714. package/packages/indexer_client/src/models/application-log-data.js +3 -4
  715. package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
  716. package/packages/indexer_client/src/models/application-log-data.mjs +1 -2
  717. package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
  718. package/packages/indexer_client/src/models/application-logs-response.js +6 -7
  719. package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
  720. package/packages/indexer_client/src/models/application-logs-response.mjs +1 -2
  721. package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
  722. package/packages/indexer_client/src/models/application-params.d.ts +0 -1
  723. package/packages/indexer_client/src/models/application-params.js +8 -9
  724. package/packages/indexer_client/src/models/application-params.js.map +1 -1
  725. package/packages/indexer_client/src/models/application-params.mjs +1 -2
  726. package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
  727. package/packages/indexer_client/src/models/application-response.js +4 -5
  728. package/packages/indexer_client/src/models/application-response.js.map +1 -1
  729. package/packages/indexer_client/src/models/application-response.mjs +1 -2
  730. package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
  731. package/packages/indexer_client/src/models/application-state-schema.js +2 -3
  732. package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
  733. package/packages/indexer_client/src/models/application-state-schema.mjs +1 -2
  734. package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
  735. package/packages/indexer_client/src/models/application.d.ts +0 -1
  736. package/packages/indexer_client/src/models/application.js +5 -6
  737. package/packages/indexer_client/src/models/application.js.map +1 -1
  738. package/packages/indexer_client/src/models/application.mjs +1 -2
  739. package/packages/indexer_client/src/models/application.mjs.map +1 -1
  740. package/packages/indexer_client/src/models/applications-response.js +6 -7
  741. package/packages/indexer_client/src/models/applications-response.js.map +1 -1
  742. package/packages/indexer_client/src/models/applications-response.mjs +1 -2
  743. package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
  744. package/packages/indexer_client/src/models/asset-balances-response.js +6 -7
  745. package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
  746. package/packages/indexer_client/src/models/asset-balances-response.mjs +1 -2
  747. package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
  748. package/packages/indexer_client/src/models/asset-holding.js +3 -4
  749. package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
  750. package/packages/indexer_client/src/models/asset-holding.mjs +1 -2
  751. package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
  752. package/packages/indexer_client/src/models/asset-holdings-response.js +6 -7
  753. package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
  754. package/packages/indexer_client/src/models/asset-holdings-response.mjs +1 -2
  755. package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
  756. package/packages/indexer_client/src/models/asset-params.js +8 -8
  757. package/packages/indexer_client/src/models/asset-params.js.map +1 -1
  758. package/packages/indexer_client/src/models/asset-params.mjs +3 -3
  759. package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
  760. package/packages/indexer_client/src/models/asset-response.js +4 -5
  761. package/packages/indexer_client/src/models/asset-response.js.map +1 -1
  762. package/packages/indexer_client/src/models/asset-response.mjs +1 -2
  763. package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
  764. package/packages/indexer_client/src/models/asset.d.ts +0 -1
  765. package/packages/indexer_client/src/models/asset.js +5 -6
  766. package/packages/indexer_client/src/models/asset.js.map +1 -1
  767. package/packages/indexer_client/src/models/asset.mjs +1 -2
  768. package/packages/indexer_client/src/models/asset.mjs.map +1 -1
  769. package/packages/indexer_client/src/models/assets-response.js +6 -7
  770. package/packages/indexer_client/src/models/assets-response.js.map +1 -1
  771. package/packages/indexer_client/src/models/assets-response.mjs +1 -2
  772. package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
  773. package/packages/indexer_client/src/models/block-headers-response.js +6 -7
  774. package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
  775. package/packages/indexer_client/src/models/block-headers-response.mjs +1 -2
  776. package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
  777. package/packages/indexer_client/src/models/block-rewards.js +3 -4
  778. package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
  779. package/packages/indexer_client/src/models/block-rewards.mjs +1 -2
  780. package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
  781. package/packages/indexer_client/src/models/block-upgrade-state.js +4 -5
  782. package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
  783. package/packages/indexer_client/src/models/block-upgrade-state.mjs +1 -2
  784. package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
  785. package/packages/indexer_client/src/models/block-upgrade-vote.js +4 -5
  786. package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
  787. package/packages/indexer_client/src/models/block-upgrade-vote.mjs +1 -2
  788. package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
  789. package/packages/indexer_client/src/models/block.d.ts +5 -6
  790. package/packages/indexer_client/src/models/block.js +26 -27
  791. package/packages/indexer_client/src/models/block.js.map +1 -1
  792. package/packages/indexer_client/src/models/block.mjs +14 -15
  793. package/packages/indexer_client/src/models/block.mjs.map +1 -1
  794. package/packages/indexer_client/src/models/box-descriptor.js +2 -4
  795. package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
  796. package/packages/indexer_client/src/models/box-descriptor.mjs +1 -2
  797. package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
  798. package/packages/indexer_client/src/models/box-reference.js +3 -4
  799. package/packages/indexer_client/src/models/box-reference.js.map +1 -1
  800. package/packages/indexer_client/src/models/box-reference.mjs +1 -2
  801. package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
  802. package/packages/indexer_client/src/models/box.js +3 -4
  803. package/packages/indexer_client/src/models/box.js.map +1 -1
  804. package/packages/indexer_client/src/models/box.mjs +1 -2
  805. package/packages/indexer_client/src/models/box.mjs.map +1 -1
  806. package/packages/indexer_client/src/models/boxes-response.js +6 -7
  807. package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
  808. package/packages/indexer_client/src/models/boxes-response.mjs +1 -2
  809. package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
  810. package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +1 -2
  811. package/packages/indexer_client/src/models/eval-delta-key-value.js +5 -6
  812. package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
  813. package/packages/indexer_client/src/models/eval-delta-key-value.mjs +3 -4
  814. package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
  815. package/packages/indexer_client/src/models/eval-delta.d.ts +1 -1
  816. package/packages/indexer_client/src/models/eval-delta.js +5 -7
  817. package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
  818. package/packages/indexer_client/src/models/eval-delta.mjs +3 -4
  819. package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
  820. package/packages/indexer_client/src/models/hash-factory.js +2 -4
  821. package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
  822. package/packages/indexer_client/src/models/hash-factory.mjs +1 -2
  823. package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
  824. package/packages/indexer_client/src/models/hb-proof-fields.js +7 -8
  825. package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
  826. package/packages/indexer_client/src/models/hb-proof-fields.mjs +7 -8
  827. package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
  828. package/packages/indexer_client/src/models/health-check.js +7 -8
  829. package/packages/indexer_client/src/models/health-check.js.map +1 -1
  830. package/packages/indexer_client/src/models/health-check.mjs +1 -2
  831. package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
  832. package/packages/indexer_client/src/models/holding-ref.d.ts +0 -1
  833. package/packages/indexer_client/src/models/holding-ref.js +3 -4
  834. package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
  835. package/packages/indexer_client/src/models/holding-ref.mjs +1 -2
  836. package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
  837. package/packages/indexer_client/src/models/indexer-state-proof-message.js +3 -4
  838. package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
  839. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +1 -2
  840. package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
  841. package/packages/indexer_client/src/models/locals-ref.d.ts +0 -1
  842. package/packages/indexer_client/src/models/locals-ref.js +3 -4
  843. package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
  844. package/packages/indexer_client/src/models/locals-ref.mjs +1 -2
  845. package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
  846. package/packages/indexer_client/src/models/merkle-array-proof.js +5 -6
  847. package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
  848. package/packages/indexer_client/src/models/merkle-array-proof.mjs +1 -2
  849. package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
  850. package/packages/indexer_client/src/models/mini-asset-holding.js +4 -6
  851. package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
  852. package/packages/indexer_client/src/models/mini-asset-holding.mjs +1 -2
  853. package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
  854. package/packages/indexer_client/src/models/on-completion.js +2 -4
  855. package/packages/indexer_client/src/models/on-completion.js.map +1 -1
  856. package/packages/indexer_client/src/models/on-completion.mjs +1 -2
  857. package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
  858. package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
  859. package/packages/indexer_client/src/models/participation-updates.js +4 -5
  860. package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
  861. package/packages/indexer_client/src/models/participation-updates.mjs +3 -4
  862. package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
  863. package/packages/indexer_client/src/models/resource-ref.d.ts +0 -1
  864. package/packages/indexer_client/src/models/resource-ref.js +7 -8
  865. package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
  866. package/packages/indexer_client/src/models/resource-ref.mjs +1 -2
  867. package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
  868. package/packages/indexer_client/src/models/state-delta.d.ts +0 -1
  869. package/packages/indexer_client/src/models/state-delta.js +4 -5
  870. package/packages/indexer_client/src/models/state-delta.js.map +1 -1
  871. package/packages/indexer_client/src/models/state-delta.mjs +1 -2
  872. package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
  873. package/packages/indexer_client/src/models/state-proof-fields.d.ts +0 -1
  874. package/packages/indexer_client/src/models/state-proof-fields.js +8 -9
  875. package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
  876. package/packages/indexer_client/src/models/state-proof-fields.mjs +1 -2
  877. package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
  878. package/packages/indexer_client/src/models/state-proof-participant.js +4 -5
  879. package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
  880. package/packages/indexer_client/src/models/state-proof-participant.mjs +1 -2
  881. package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
  882. package/packages/indexer_client/src/models/state-proof-reveal.js +5 -6
  883. package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
  884. package/packages/indexer_client/src/models/state-proof-reveal.mjs +1 -2
  885. package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
  886. package/packages/indexer_client/src/models/state-proof-sig-slot.js +4 -5
  887. package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
  888. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +1 -2
  889. package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
  890. package/packages/indexer_client/src/models/state-proof-signature.js +5 -6
  891. package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
  892. package/packages/indexer_client/src/models/state-proof-signature.mjs +1 -2
  893. package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
  894. package/packages/indexer_client/src/models/state-proof-tracking.js +4 -5
  895. package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
  896. package/packages/indexer_client/src/models/state-proof-tracking.mjs +1 -2
  897. package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
  898. package/packages/indexer_client/src/models/state-proof-verifier.js +3 -5
  899. package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
  900. package/packages/indexer_client/src/models/state-proof-verifier.mjs +3 -4
  901. package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
  902. package/packages/indexer_client/src/models/state-schema.js +2 -3
  903. package/packages/indexer_client/src/models/state-schema.js.map +1 -1
  904. package/packages/indexer_client/src/models/state-schema.mjs +1 -2
  905. package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
  906. package/packages/indexer_client/src/models/teal-key-value-store.d.ts +0 -1
  907. package/packages/indexer_client/src/models/teal-key-value-store.js +4 -5
  908. package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
  909. package/packages/indexer_client/src/models/teal-key-value-store.mjs +1 -2
  910. package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
  911. package/packages/indexer_client/src/models/teal-key-value.d.ts +1 -2
  912. package/packages/indexer_client/src/models/teal-key-value.js +5 -6
  913. package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
  914. package/packages/indexer_client/src/models/teal-key-value.mjs +3 -4
  915. package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
  916. package/packages/indexer_client/src/models/teal-value.js +4 -6
  917. package/packages/indexer_client/src/models/teal-value.js.map +1 -1
  918. package/packages/indexer_client/src/models/teal-value.mjs +1 -2
  919. package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
  920. package/packages/indexer_client/src/models/transaction-application.d.ts +0 -1
  921. package/packages/indexer_client/src/models/transaction-application.js +11 -12
  922. package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
  923. package/packages/indexer_client/src/models/transaction-application.mjs +1 -2
  924. package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
  925. package/packages/indexer_client/src/models/transaction-asset-config.d.ts +0 -1
  926. package/packages/indexer_client/src/models/transaction-asset-config.js +4 -5
  927. package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
  928. package/packages/indexer_client/src/models/transaction-asset-config.mjs +1 -2
  929. package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
  930. package/packages/indexer_client/src/models/transaction-asset-freeze.js +4 -6
  931. package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
  932. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +1 -2
  933. package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
  934. package/packages/indexer_client/src/models/transaction-asset-transfer.js +3 -4
  935. package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
  936. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +1 -2
  937. package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
  938. package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +0 -1
  939. package/packages/indexer_client/src/models/transaction-heartbeat.js +8 -8
  940. package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
  941. package/packages/indexer_client/src/models/transaction-heartbeat.mjs +3 -3
  942. package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
  943. package/packages/indexer_client/src/models/transaction-keyreg.js +7 -8
  944. package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
  945. package/packages/indexer_client/src/models/transaction-keyreg.mjs +5 -6
  946. package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
  947. package/packages/indexer_client/src/models/transaction-payment.js +3 -4
  948. package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
  949. package/packages/indexer_client/src/models/transaction-payment.mjs +1 -2
  950. package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
  951. package/packages/indexer_client/src/models/transaction-response.js +4 -5
  952. package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
  953. package/packages/indexer_client/src/models/transaction-response.mjs +1 -2
  954. package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
  955. package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +0 -1
  956. package/packages/indexer_client/src/models/transaction-signature-logicsig.js +7 -7
  957. package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
  958. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +3 -3
  959. package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
  960. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +4 -5
  961. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
  962. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +4 -5
  963. package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
  964. package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +0 -1
  965. package/packages/indexer_client/src/models/transaction-signature-multisig.js +5 -6
  966. package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
  967. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +1 -2
  968. package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
  969. package/packages/indexer_client/src/models/transaction-signature.d.ts +0 -1
  970. package/packages/indexer_client/src/models/transaction-signature.js +5 -6
  971. package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
  972. package/packages/indexer_client/src/models/transaction-signature.mjs +1 -2
  973. package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
  974. package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -2
  975. package/packages/indexer_client/src/models/transaction-state-proof.js +6 -7
  976. package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
  977. package/packages/indexer_client/src/models/transaction-state-proof.mjs +3 -4
  978. package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
  979. package/packages/indexer_client/src/models/transaction.d.ts +0 -1
  980. package/packages/indexer_client/src/models/transaction.js +24 -24
  981. package/packages/indexer_client/src/models/transaction.js.map +1 -1
  982. package/packages/indexer_client/src/models/transaction.mjs +5 -5
  983. package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
  984. package/packages/indexer_client/src/models/transactions-response.js +6 -7
  985. package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
  986. package/packages/indexer_client/src/models/transactions-response.mjs +1 -2
  987. package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
  988. package/packages/kmd_client/src/apis/api-service.d.ts +5 -5
  989. package/packages/kmd_client/src/apis/api-service.js +76 -78
  990. package/packages/kmd_client/src/apis/api-service.js.map +1 -1
  991. package/packages/kmd_client/src/apis/api-service.mjs +35 -37
  992. package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
  993. package/packages/kmd_client/src/client.js +3 -4
  994. package/packages/kmd_client/src/client.js.map +1 -1
  995. package/packages/kmd_client/src/client.mjs +1 -2
  996. package/packages/kmd_client/src/client.mjs.map +1 -1
  997. package/packages/kmd_client/src/core/api-error.js +4 -3
  998. package/packages/kmd_client/src/core/api-error.js.map +1 -1
  999. package/packages/kmd_client/src/core/api-error.mjs +4 -2
  1000. package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
  1001. package/packages/kmd_client/src/core/base-http-request.js +1 -2
  1002. package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
  1003. package/packages/kmd_client/src/core/base-http-request.mjs +1 -1
  1004. package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
  1005. package/packages/kmd_client/src/core/fetch-http-request.js +3 -4
  1006. package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
  1007. package/packages/kmd_client/src/core/fetch-http-request.mjs +1 -2
  1008. package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
  1009. package/packages/kmd_client/src/core/model-runtime.js +5 -16
  1010. package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
  1011. package/packages/kmd_client/src/core/model-runtime.mjs +4 -13
  1012. package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
  1013. package/packages/kmd_client/src/core/request.js +5 -6
  1014. package/packages/kmd_client/src/core/request.js.map +1 -1
  1015. package/packages/kmd_client/src/core/request.mjs +1 -2
  1016. package/packages/kmd_client/src/core/request.mjs.map +1 -1
  1017. package/packages/kmd_client/src/models/create-wallet-request.js +3 -4
  1018. package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
  1019. package/packages/kmd_client/src/models/create-wallet-request.mjs +1 -2
  1020. package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
  1021. package/packages/kmd_client/src/models/create-wallet-response.d.ts +0 -1
  1022. package/packages/kmd_client/src/models/create-wallet-response.js +3 -4
  1023. package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
  1024. package/packages/kmd_client/src/models/create-wallet-response.mjs +1 -2
  1025. package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
  1026. package/packages/kmd_client/src/models/delete-key-request.d.ts +0 -1
  1027. package/packages/kmd_client/src/models/delete-key-request.js +3 -4
  1028. package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
  1029. package/packages/kmd_client/src/models/delete-key-request.mjs +1 -2
  1030. package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
  1031. package/packages/kmd_client/src/models/delete-multisig-request.d.ts +0 -1
  1032. package/packages/kmd_client/src/models/delete-multisig-request.js +3 -4
  1033. package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
  1034. package/packages/kmd_client/src/models/delete-multisig-request.mjs +1 -2
  1035. package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
  1036. package/packages/kmd_client/src/models/export-key-request.d.ts +0 -1
  1037. package/packages/kmd_client/src/models/export-key-request.js +3 -4
  1038. package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
  1039. package/packages/kmd_client/src/models/export-key-request.mjs +1 -2
  1040. package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
  1041. package/packages/kmd_client/src/models/export-key-response.js +2 -4
  1042. package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
  1043. package/packages/kmd_client/src/models/export-key-response.mjs +1 -2
  1044. package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
  1045. package/packages/kmd_client/src/models/export-master-key-request.js +2 -3
  1046. package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
  1047. package/packages/kmd_client/src/models/export-master-key-request.mjs +1 -2
  1048. package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
  1049. package/packages/kmd_client/src/models/export-master-key-response.js +2 -4
  1050. package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
  1051. package/packages/kmd_client/src/models/export-master-key-response.mjs +1 -2
  1052. package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
  1053. package/packages/kmd_client/src/models/export-multisig-request.d.ts +0 -1
  1054. package/packages/kmd_client/src/models/export-multisig-request.js +3 -4
  1055. package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
  1056. package/packages/kmd_client/src/models/export-multisig-request.mjs +1 -2
  1057. package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
  1058. package/packages/kmd_client/src/models/export-multisig-response.js +3 -4
  1059. package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
  1060. package/packages/kmd_client/src/models/export-multisig-response.mjs +1 -2
  1061. package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
  1062. package/packages/kmd_client/src/models/generate-key-request.js +2 -4
  1063. package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
  1064. package/packages/kmd_client/src/models/generate-key-request.mjs +1 -2
  1065. package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
  1066. package/packages/kmd_client/src/models/generate-key-response.d.ts +0 -1
  1067. package/packages/kmd_client/src/models/generate-key-response.js +2 -4
  1068. package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
  1069. package/packages/kmd_client/src/models/generate-key-response.mjs +1 -2
  1070. package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
  1071. package/packages/kmd_client/src/models/import-key-request.js +3 -4
  1072. package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
  1073. package/packages/kmd_client/src/models/import-key-request.mjs +1 -2
  1074. package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
  1075. package/packages/kmd_client/src/models/import-key-response.d.ts +0 -1
  1076. package/packages/kmd_client/src/models/import-key-response.js +2 -4
  1077. package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
  1078. package/packages/kmd_client/src/models/import-key-response.mjs +1 -2
  1079. package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
  1080. package/packages/kmd_client/src/models/import-multisig-request.js +4 -5
  1081. package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
  1082. package/packages/kmd_client/src/models/import-multisig-request.mjs +1 -2
  1083. package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
  1084. package/packages/kmd_client/src/models/import-multisig-response.d.ts +0 -1
  1085. package/packages/kmd_client/src/models/import-multisig-response.js +2 -4
  1086. package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
  1087. package/packages/kmd_client/src/models/import-multisig-response.mjs +1 -2
  1088. package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
  1089. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +2 -3
  1090. package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
  1091. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +1 -2
  1092. package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
  1093. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +2 -4
  1094. package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
  1095. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +1 -2
  1096. package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
  1097. package/packages/kmd_client/src/models/list-keys-request.js +2 -4
  1098. package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
  1099. package/packages/kmd_client/src/models/list-keys-request.mjs +1 -2
  1100. package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
  1101. package/packages/kmd_client/src/models/list-keys-response.d.ts +0 -1
  1102. package/packages/kmd_client/src/models/list-keys-response.js +2 -4
  1103. package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
  1104. package/packages/kmd_client/src/models/list-keys-response.mjs +1 -2
  1105. package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
  1106. package/packages/kmd_client/src/models/list-multisig-request.js +2 -4
  1107. package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
  1108. package/packages/kmd_client/src/models/list-multisig-request.mjs +1 -2
  1109. package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
  1110. package/packages/kmd_client/src/models/list-multisig-response.d.ts +0 -1
  1111. package/packages/kmd_client/src/models/list-multisig-response.js +2 -4
  1112. package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
  1113. package/packages/kmd_client/src/models/list-multisig-response.mjs +1 -2
  1114. package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
  1115. package/packages/kmd_client/src/models/list-wallets-response.d.ts +0 -1
  1116. package/packages/kmd_client/src/models/list-wallets-response.js +4 -5
  1117. package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
  1118. package/packages/kmd_client/src/models/list-wallets-response.mjs +1 -2
  1119. package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
  1120. package/packages/kmd_client/src/models/multisig-sig.d.ts +0 -1
  1121. package/packages/kmd_client/src/models/multisig-sig.js +5 -6
  1122. package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
  1123. package/packages/kmd_client/src/models/multisig-sig.mjs +1 -2
  1124. package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
  1125. package/packages/kmd_client/src/models/multisig-subsig.js +2 -3
  1126. package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
  1127. package/packages/kmd_client/src/models/multisig-subsig.mjs +1 -2
  1128. package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
  1129. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +2 -4
  1130. package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
  1131. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +1 -2
  1132. package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
  1133. package/packages/kmd_client/src/models/rename-wallet-request.js +2 -3
  1134. package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
  1135. package/packages/kmd_client/src/models/rename-wallet-request.mjs +1 -2
  1136. package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
  1137. package/packages/kmd_client/src/models/rename-wallet-response.d.ts +0 -1
  1138. package/packages/kmd_client/src/models/rename-wallet-response.js +3 -4
  1139. package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
  1140. package/packages/kmd_client/src/models/rename-wallet-response.mjs +1 -2
  1141. package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
  1142. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +2 -4
  1143. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
  1144. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +1 -2
  1145. package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
  1146. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +0 -1
  1147. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +3 -4
  1148. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
  1149. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +1 -2
  1150. package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
  1151. package/packages/kmd_client/src/models/sign-multisig-response.js +2 -4
  1152. package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
  1153. package/packages/kmd_client/src/models/sign-multisig-response.mjs +1 -2
  1154. package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
  1155. package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +0 -1
  1156. package/packages/kmd_client/src/models/sign-multisig-txn-request.js +5 -6
  1157. package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
  1158. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +1 -2
  1159. package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
  1160. package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +0 -1
  1161. package/packages/kmd_client/src/models/sign-program-multisig-request.js +7 -8
  1162. package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
  1163. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +1 -2
  1164. package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
  1165. package/packages/kmd_client/src/models/sign-program-multisig-response.js +2 -4
  1166. package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
  1167. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +1 -2
  1168. package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
  1169. package/packages/kmd_client/src/models/sign-program-request.d.ts +0 -1
  1170. package/packages/kmd_client/src/models/sign-program-request.js +4 -5
  1171. package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
  1172. package/packages/kmd_client/src/models/sign-program-request.mjs +1 -2
  1173. package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
  1174. package/packages/kmd_client/src/models/sign-program-response.js +2 -4
  1175. package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
  1176. package/packages/kmd_client/src/models/sign-program-response.mjs +1 -2
  1177. package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
  1178. package/packages/kmd_client/src/models/sign-transaction-response.js +2 -4
  1179. package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
  1180. package/packages/kmd_client/src/models/sign-transaction-response.mjs +1 -2
  1181. package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
  1182. package/packages/kmd_client/src/models/sign-txn-request.js +3 -4
  1183. package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
  1184. package/packages/kmd_client/src/models/sign-txn-request.mjs +1 -2
  1185. package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
  1186. package/packages/kmd_client/src/models/tx-type.js +2 -4
  1187. package/packages/kmd_client/src/models/tx-type.js.map +1 -1
  1188. package/packages/kmd_client/src/models/tx-type.mjs +1 -2
  1189. package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
  1190. package/packages/kmd_client/src/models/versions-response.js +2 -4
  1191. package/packages/kmd_client/src/models/versions-response.js.map +1 -1
  1192. package/packages/kmd_client/src/models/versions-response.mjs +1 -2
  1193. package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
  1194. package/packages/kmd_client/src/models/wallet-handle.d.ts +0 -1
  1195. package/packages/kmd_client/src/models/wallet-handle.js +4 -5
  1196. package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
  1197. package/packages/kmd_client/src/models/wallet-handle.mjs +1 -2
  1198. package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
  1199. package/packages/kmd_client/src/models/wallet-info-request.js +2 -4
  1200. package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
  1201. package/packages/kmd_client/src/models/wallet-info-request.mjs +1 -2
  1202. package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
  1203. package/packages/kmd_client/src/models/wallet-info-response.d.ts +0 -1
  1204. package/packages/kmd_client/src/models/wallet-info-response.js +3 -4
  1205. package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
  1206. package/packages/kmd_client/src/models/wallet-info-response.mjs +1 -2
  1207. package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
  1208. package/packages/kmd_client/src/models/wallet.d.ts +0 -1
  1209. package/packages/kmd_client/src/models/wallet.js +7 -8
  1210. package/packages/kmd_client/src/models/wallet.js.map +1 -1
  1211. package/packages/kmd_client/src/models/wallet.mjs +1 -2
  1212. package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
  1213. package/packages/testing/src/globalSetup.js +39 -0
  1214. package/packages/testing/src/globalSetup.js.map +1 -0
  1215. package/packages/testing/src/globalSetup.mjs +35 -0
  1216. package/packages/testing/src/globalSetup.mjs.map +1 -0
  1217. package/packages/testing/src/mockServer.js +94 -0
  1218. package/packages/testing/src/mockServer.js.map +1 -0
  1219. package/packages/testing/src/mockServer.mjs +83 -0
  1220. package/packages/testing/src/mockServer.mjs.map +1 -0
  1221. package/packages/transact/src/logicsig.d.ts +35 -34
  1222. package/packages/transact/src/logicsig.js +81 -84
  1223. package/packages/transact/src/logicsig.js.map +1 -1
  1224. package/packages/transact/src/logicsig.mjs +79 -81
  1225. package/packages/transact/src/logicsig.mjs.map +1 -1
  1226. package/packages/transact/src/multisig.d.ts +11 -116
  1227. package/packages/transact/src/multisig.js +104 -135
  1228. package/packages/transact/src/multisig.js.map +1 -1
  1229. package/packages/transact/src/multisig.mjs +103 -114
  1230. package/packages/transact/src/multisig.mjs.map +1 -1
  1231. package/packages/transact/src/signer.d.ts +11 -3
  1232. package/packages/transact/src/signer.js +29 -8
  1233. package/packages/transact/src/signer.js.map +1 -1
  1234. package/packages/transact/src/signer.mjs +26 -6
  1235. package/packages/transact/src/signer.mjs.map +1 -1
  1236. package/packages/transact/src/transactions/app-call.d.ts +11 -27
  1237. package/packages/transact/src/transactions/app-call.js +30 -31
  1238. package/packages/transact/src/transactions/app-call.js.map +1 -1
  1239. package/packages/transact/src/transactions/app-call.mjs +29 -30
  1240. package/packages/transact/src/transactions/app-call.mjs.map +1 -1
  1241. package/packages/transact/src/transactions/asset-config.d.ts +1 -7
  1242. package/packages/transact/src/transactions/asset-config.js +11 -12
  1243. package/packages/transact/src/transactions/asset-config.js.map +1 -1
  1244. package/packages/transact/src/transactions/asset-config.mjs +10 -11
  1245. package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
  1246. package/packages/transact/src/transactions/asset-freeze.d.ts +1 -7
  1247. package/packages/transact/src/transactions/asset-freeze.js +2 -3
  1248. package/packages/transact/src/transactions/asset-freeze.js.map +1 -1
  1249. package/packages/transact/src/transactions/asset-freeze.mjs +1 -2
  1250. package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -1
  1251. package/packages/transact/src/transactions/asset-transfer.d.ts +1 -7
  1252. package/packages/transact/src/transactions/asset-transfer.js +2 -3
  1253. package/packages/transact/src/transactions/asset-transfer.js.map +1 -1
  1254. package/packages/transact/src/transactions/asset-transfer.mjs +1 -2
  1255. package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -1
  1256. package/packages/transact/src/transactions/common.js +8 -9
  1257. package/packages/transact/src/transactions/common.js.map +1 -1
  1258. package/packages/transact/src/transactions/common.mjs +8 -8
  1259. package/packages/transact/src/transactions/common.mjs.map +1 -1
  1260. package/packages/transact/src/transactions/heartbeat.d.ts +8 -19
  1261. package/packages/transact/src/transactions/key-registration.d.ts +1 -8
  1262. package/packages/transact/src/transactions/key-registration.js +2 -3
  1263. package/packages/transact/src/transactions/key-registration.js.map +1 -1
  1264. package/packages/transact/src/transactions/key-registration.mjs +1 -2
  1265. package/packages/transact/src/transactions/key-registration.mjs.map +1 -1
  1266. package/packages/transact/src/transactions/payment.d.ts +0 -1
  1267. package/packages/transact/src/transactions/reference-types-meta.d.ts +0 -1
  1268. package/packages/transact/src/transactions/reference-types-meta.js +4 -5
  1269. package/packages/transact/src/transactions/reference-types-meta.js.map +1 -1
  1270. package/packages/transact/src/transactions/reference-types-meta.mjs +1 -2
  1271. package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -1
  1272. package/packages/transact/src/transactions/signed-transaction-meta.d.ts +0 -1
  1273. package/packages/transact/src/transactions/signed-transaction-meta.js +16 -18
  1274. package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
  1275. package/packages/transact/src/transactions/signed-transaction-meta.mjs +9 -10
  1276. package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
  1277. package/packages/transact/src/transactions/signed-transaction.d.ts +22 -7
  1278. package/packages/transact/src/transactions/signed-transaction.js +21 -6
  1279. package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
  1280. package/packages/transact/src/transactions/signed-transaction.mjs +17 -4
  1281. package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
  1282. package/packages/transact/src/transactions/state-proof.d.ts +2 -5
  1283. package/packages/transact/src/transactions/transaction-meta.d.ts +0 -1
  1284. package/packages/transact/src/transactions/transaction-meta.js +22 -17
  1285. package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
  1286. package/packages/transact/src/transactions/transaction-meta.mjs +8 -3
  1287. package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
  1288. package/packages/transact/src/transactions/transaction-type.d.ts +1 -1
  1289. package/packages/transact/src/transactions/transaction-type.js +12 -13
  1290. package/packages/transact/src/transactions/transaction-type.js.map +1 -1
  1291. package/packages/transact/src/transactions/transaction-type.mjs +12 -12
  1292. package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
  1293. package/packages/transact/src/transactions/transaction.d.ts +5 -2
  1294. package/packages/transact/src/transactions/transaction.js +30 -30
  1295. package/packages/transact/src/transactions/transaction.js.map +1 -1
  1296. package/packages/transact/src/transactions/transaction.mjs +14 -14
  1297. package/packages/transact/src/transactions/transaction.mjs.map +1 -1
  1298. package/testing/account.d.ts +2 -3
  1299. package/testing/account.js +5 -7
  1300. package/testing/account.js.map +1 -1
  1301. package/testing/account.mjs +3 -5
  1302. package/testing/account.mjs.map +1 -1
  1303. package/testing/fixtures/algokit-log-capture-fixture.d.ts +1 -2
  1304. package/testing/fixtures/algokit-log-capture-fixture.js +3 -4
  1305. package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
  1306. package/testing/fixtures/algokit-log-capture-fixture.mjs +1 -2
  1307. package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
  1308. package/testing/fixtures/algorand-fixture.d.ts +5 -6
  1309. package/testing/fixtures/algorand-fixture.js +8 -9
  1310. package/testing/fixtures/algorand-fixture.js.map +1 -1
  1311. package/testing/fixtures/algorand-fixture.mjs +3 -4
  1312. package/testing/fixtures/algorand-fixture.mjs.map +1 -1
  1313. package/testing/index.d.ts +2 -1
  1314. package/testing/index.js +26 -8
  1315. package/testing/index.mjs +3 -2
  1316. package/testing/indexer.js +1 -2
  1317. package/testing/indexer.js.map +1 -1
  1318. package/testing/indexer.mjs +1 -1
  1319. package/testing/indexer.mjs.map +1 -1
  1320. package/testing/test-logger.d.ts +1 -2
  1321. package/testing/test-logger.js +2 -3
  1322. package/testing/test-logger.js.map +1 -1
  1323. package/testing/test-logger.mjs +1 -2
  1324. package/testing/test-logger.mjs.map +1 -1
  1325. package/testing/transaction-logger.d.ts +0 -1
  1326. package/testing/transaction-logger.js +4 -5
  1327. package/testing/transaction-logger.js.map +1 -1
  1328. package/testing/transaction-logger.mjs +1 -2
  1329. package/testing/transaction-logger.mjs.map +1 -1
  1330. package/testing/types.d.ts +156 -0
  1331. package/transact/index.d.ts +12 -12
  1332. package/transact/index.js +16 -42
  1333. package/transact/index.mjs +7 -12
  1334. package/transaction/index.d.ts +4 -0
  1335. package/transaction/index.js +9 -0
  1336. package/transaction/index.mjs +3 -0
  1337. package/transaction/perform-transaction-composer-simulate.d.ts +1 -2
  1338. package/transaction/perform-transaction-composer-simulate.js +3 -5
  1339. package/transaction/perform-transaction-composer-simulate.js.map +1 -1
  1340. package/transaction/perform-transaction-composer-simulate.mjs +3 -4
  1341. package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
  1342. package/transaction/transaction.d.ts +2 -4
  1343. package/transaction/transaction.js +4 -7
  1344. package/transaction/transaction.js.map +1 -1
  1345. package/transaction/transaction.mjs +3 -6
  1346. package/transaction/transaction.mjs.map +1 -1
  1347. package/transaction/types.d.ts +133 -0
  1348. package/transactions/app-call.d.ts +18 -34
  1349. package/transactions/app-call.js +53 -54
  1350. package/transactions/app-call.js.map +1 -1
  1351. package/transactions/app-call.mjs +47 -48
  1352. package/transactions/app-call.mjs.map +1 -1
  1353. package/transactions/asset-config.d.ts +4 -10
  1354. package/transactions/asset-config.js +5 -6
  1355. package/transactions/asset-config.js.map +1 -1
  1356. package/transactions/asset-config.mjs +1 -2
  1357. package/transactions/asset-config.mjs.map +1 -1
  1358. package/transactions/asset-transfer.d.ts +4 -10
  1359. package/transactions/asset-transfer.js +5 -6
  1360. package/transactions/asset-transfer.js.map +1 -1
  1361. package/transactions/asset-transfer.mjs +1 -2
  1362. package/transactions/asset-transfer.mjs.map +1 -1
  1363. package/transactions/common.d.ts +8 -15
  1364. package/transactions/common.js +3 -4
  1365. package/transactions/common.js.map +1 -1
  1366. package/transactions/common.mjs +1 -2
  1367. package/transactions/common.mjs.map +1 -1
  1368. package/transactions/fee-coverage.js +7 -8
  1369. package/transactions/fee-coverage.js.map +1 -1
  1370. package/transactions/fee-coverage.mjs +7 -7
  1371. package/transactions/fee-coverage.mjs.map +1 -1
  1372. package/transactions/key-registration.d.ts +7 -15
  1373. package/transactions/key-registration.js +4 -5
  1374. package/transactions/key-registration.js.map +1 -1
  1375. package/transactions/key-registration.mjs +1 -2
  1376. package/transactions/key-registration.mjs.map +1 -1
  1377. package/transactions/method-call.d.ts +3 -5
  1378. package/transactions/method-call.js +84 -94
  1379. package/transactions/method-call.js.map +1 -1
  1380. package/transactions/method-call.mjs +76 -86
  1381. package/transactions/method-call.mjs.map +1 -1
  1382. package/transactions/payment.d.ts +2 -5
  1383. package/transactions/payment.js +5 -6
  1384. package/transactions/payment.js.map +1 -1
  1385. package/transactions/payment.mjs +1 -2
  1386. package/transactions/payment.mjs.map +1 -1
  1387. package/types/account-manager.d.ts +11 -444
  1388. package/types/account-manager.js +7 -608
  1389. package/types/account-manager.js.map +1 -1
  1390. package/types/account-manager.mjs +6 -606
  1391. package/types/account-manager.mjs.map +1 -1
  1392. package/types/account.d.ts +8 -150
  1393. package/types/account.js +4 -6
  1394. package/types/account.js.map +1 -1
  1395. package/types/account.mjs +4 -5
  1396. package/types/account.mjs.map +1 -1
  1397. package/types/algorand-client-transaction-creator.d.ts +5 -1084
  1398. package/types/algorand-client-transaction-creator.js +4 -723
  1399. package/types/algorand-client-transaction-creator.js.map +1 -1
  1400. package/types/algorand-client-transaction-creator.mjs +4 -722
  1401. package/types/algorand-client-transaction-creator.mjs.map +1 -1
  1402. package/types/algorand-client-transaction-sender.d.ts +5 -1298
  1403. package/types/algorand-client-transaction-sender.js +4 -922
  1404. package/types/algorand-client-transaction-sender.js.map +1 -1
  1405. package/types/algorand-client-transaction-sender.mjs +4 -920
  1406. package/types/algorand-client-transaction-sender.mjs.map +1 -1
  1407. package/types/algorand-client.d.ts +5 -241
  1408. package/types/algorand-client.js +4 -321
  1409. package/types/algorand-client.js.map +1 -1
  1410. package/types/algorand-client.mjs +4 -321
  1411. package/types/algorand-client.mjs.map +1 -1
  1412. package/types/amount.d.ts +6 -45
  1413. package/types/amount.js +4 -62
  1414. package/types/amount.js.map +1 -1
  1415. package/types/amount.mjs +4 -62
  1416. package/types/amount.mjs.map +1 -1
  1417. package/types/app-client.d.ts +75 -2120
  1418. package/types/app-client.js +4 -906
  1419. package/types/app-client.js.map +1 -1
  1420. package/types/app-client.mjs +4 -904
  1421. package/types/app-client.mjs.map +1 -1
  1422. package/types/app-deployer.d.ts +21 -161
  1423. package/types/app-deployer.js +4 -349
  1424. package/types/app-deployer.js.map +1 -1
  1425. package/types/app-deployer.mjs +4 -349
  1426. package/types/app-deployer.mjs.map +1 -1
  1427. package/types/app-factory.d.ts +21 -957
  1428. package/types/app-factory.js +4 -444
  1429. package/types/app-factory.js.map +1 -1
  1430. package/types/app-factory.mjs +4 -444
  1431. package/types/app-factory.mjs.map +1 -1
  1432. package/types/app-manager.d.ts +15 -316
  1433. package/types/app-manager.js +4 -463
  1434. package/types/app-manager.js.map +1 -1
  1435. package/types/app-manager.mjs +4 -463
  1436. package/types/app-manager.mjs.map +1 -1
  1437. package/types/app-spec.d.ts +39 -198
  1438. package/types/app-spec.js +4 -133
  1439. package/types/app-spec.js.map +1 -1
  1440. package/types/app-spec.mjs +4 -133
  1441. package/types/app-spec.mjs.map +1 -1
  1442. package/types/app.d.ts +63 -248
  1443. package/types/app.js +17 -39
  1444. package/types/app.js.map +1 -1
  1445. package/types/app.mjs +16 -38
  1446. package/types/app.mjs.map +1 -1
  1447. package/types/asset-manager.d.ts +9 -207
  1448. package/types/asset-manager.js +4 -162
  1449. package/types/asset-manager.js.map +1 -1
  1450. package/types/asset-manager.mjs +4 -162
  1451. package/types/asset-manager.mjs.map +1 -1
  1452. package/types/async-event-emitter.d.ts +7 -14
  1453. package/types/async-event-emitter.js +4 -34
  1454. package/types/async-event-emitter.js.map +1 -1
  1455. package/types/async-event-emitter.mjs +4 -33
  1456. package/types/async-event-emitter.mjs.map +1 -1
  1457. package/types/client-manager.d.ts +27 -470
  1458. package/types/client-manager.js +4 -612
  1459. package/types/client-manager.js.map +1 -1
  1460. package/types/client-manager.mjs +4 -612
  1461. package/types/client-manager.mjs.map +1 -1
  1462. package/types/composer.d.ts +79 -935
  1463. package/types/composer.js +4 -1568
  1464. package/types/composer.js.map +1 -1
  1465. package/types/composer.mjs +4 -1566
  1466. package/types/composer.mjs.map +1 -1
  1467. package/types/config.d.ts +7 -52
  1468. package/types/config.js +4 -76
  1469. package/types/config.js.map +1 -1
  1470. package/types/config.mjs +4 -76
  1471. package/types/config.mjs.map +1 -1
  1472. package/types/debugging.d.ts +12 -33
  1473. package/types/debugging.js +12 -11
  1474. package/types/debugging.js.map +1 -1
  1475. package/types/debugging.mjs +11 -10
  1476. package/types/debugging.mjs.map +1 -1
  1477. package/types/dispenser-client.d.ts +11 -85
  1478. package/types/dispenser-client.js +4 -123
  1479. package/types/dispenser-client.js.map +1 -1
  1480. package/types/dispenser-client.mjs +4 -123
  1481. package/types/dispenser-client.mjs.map +1 -1
  1482. package/types/expand.d.ts +4 -5
  1483. package/types/indexer.d.ts +16 -36
  1484. package/types/indexer.js +9 -32
  1485. package/types/indexer.js.map +1 -1
  1486. package/types/indexer.mjs +8 -31
  1487. package/types/indexer.mjs.map +1 -1
  1488. package/types/instance-of.d.ts +4 -4
  1489. package/types/kmd-account-manager.d.ts +5 -68
  1490. package/types/kmd-account-manager.js +4 -152
  1491. package/types/kmd-account-manager.js.map +1 -1
  1492. package/types/kmd-account-manager.mjs +4 -150
  1493. package/types/kmd-account-manager.mjs.map +1 -1
  1494. package/types/lifecycle-events.d.ts +7 -10
  1495. package/types/lifecycle-events.js +4 -7
  1496. package/types/lifecycle-events.js.map +1 -1
  1497. package/types/lifecycle-events.mjs +4 -6
  1498. package/types/lifecycle-events.mjs.map +1 -1
  1499. package/types/logging.d.ts +14 -9
  1500. package/types/logging.js +13 -39
  1501. package/types/logging.js.map +1 -1
  1502. package/types/logging.mjs +12 -38
  1503. package/types/logging.mjs.map +1 -1
  1504. package/types/logic-error.d.ts +8 -35
  1505. package/types/logic-error.js +4 -50
  1506. package/types/logic-error.js.map +1 -1
  1507. package/types/logic-error.mjs +4 -49
  1508. package/types/logic-error.mjs.map +1 -1
  1509. package/types/network-client.d.ts +10 -39
  1510. package/types/network-client.js +4 -10
  1511. package/types/network-client.js.map +1 -1
  1512. package/types/network-client.mjs +4 -9
  1513. package/types/network-client.mjs.map +1 -1
  1514. package/types/testing.d.ts +13 -151
  1515. package/types/transaction.d.ts +33 -128
  1516. package/updatable-config.d.ts +57 -0
  1517. package/updatable-config.js +79 -0
  1518. package/updatable-config.js.map +1 -0
  1519. package/updatable-config.mjs +79 -0
  1520. package/updatable-config.mjs.map +1 -0
  1521. package/util.js +2 -3
  1522. package/util.js.map +1 -1
  1523. package/util.mjs +2 -3
  1524. package/util.mjs.map +1 -1
  1525. package/_virtual/rolldown_runtime.mjs +0 -13
  1526. package/indexer-lookup.js.map +0 -1
  1527. package/indexer-lookup.mjs.map +0 -1
  1528. package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
  1529. package/packages/common/src/crypto.js +0 -13
  1530. package/packages/common/src/crypto.js.map +0 -1
  1531. package/packages/common/src/crypto.mjs +0 -11
  1532. package/packages/common/src/crypto.mjs.map +0 -1
  1533. package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
  1534. package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
  1535. package/packages/sdk/src/convert.d.ts +0 -17
  1536. package/packages/sdk/src/convert.js +0 -28
  1537. package/packages/sdk/src/convert.js.map +0 -1
  1538. package/packages/sdk/src/convert.mjs +0 -25
  1539. package/packages/sdk/src/convert.mjs.map +0 -1
  1540. package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
  1541. package/packages/sdk/src/encoding/binarydata.js +0 -65
  1542. package/packages/sdk/src/encoding/binarydata.js.map +0 -1
  1543. package/packages/sdk/src/encoding/binarydata.mjs +0 -60
  1544. package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
  1545. package/packages/sdk/src/encoding/encoding.d.ts +0 -237
  1546. package/packages/sdk/src/encoding/encoding.js +0 -302
  1547. package/packages/sdk/src/encoding/encoding.js.map +0 -1
  1548. package/packages/sdk/src/encoding/encoding.mjs +0 -287
  1549. package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
  1550. package/packages/sdk/src/encoding/schema/array.js +0 -35
  1551. package/packages/sdk/src/encoding/schema/array.js.map +0 -1
  1552. package/packages/sdk/src/encoding/schema/array.mjs +0 -35
  1553. package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
  1554. package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
  1555. package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
  1556. package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
  1557. package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
  1558. package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
  1559. package/packages/sdk/src/encoding/schema/map.js +0 -110
  1560. package/packages/sdk/src/encoding/schema/map.js.map +0 -1
  1561. package/packages/sdk/src/encoding/schema/map.mjs +0 -107
  1562. package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
  1563. package/packages/sdk/src/encoding/schema/optional.js +0 -46
  1564. package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
  1565. package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
  1566. package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
  1567. package/packages/sdk/src/encoding/schema/uint64.js +0 -30
  1568. package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
  1569. package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
  1570. package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
  1571. package/packages/sdk/src/encoding/uint64.d.ts +0 -34
  1572. package/packages/sdk/src/encoding/uint64.js +0 -34
  1573. package/packages/sdk/src/encoding/uint64.js.map +0 -1
  1574. package/packages/sdk/src/encoding/uint64.mjs +0 -33
  1575. package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
  1576. package/packages/sdk/src/index.d.ts +0 -44
  1577. package/packages/sdk/src/index.js +0 -62
  1578. package/packages/sdk/src/index.js.map +0 -1
  1579. package/packages/sdk/src/index.mjs +0 -58
  1580. package/packages/sdk/src/index.mjs.map +0 -1
  1581. package/packages/sdk/src/logic/sourcemap.js.map +0 -1
  1582. package/packages/sdk/src/logic/sourcemap.mjs.map +0 -1
  1583. package/packages/sdk/src/nacl/naclWrappers.js +0 -14
  1584. package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
  1585. package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
  1586. package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
  1587. package/packages/sdk/src/types/intDecoding.d.ts +0 -28
  1588. package/packages/sdk/src/types/intDecoding.js +0 -32
  1589. package/packages/sdk/src/types/intDecoding.js.map +0 -1
  1590. package/packages/sdk/src/types/intDecoding.mjs +0 -31
  1591. package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
  1592. package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
  1593. package/packages/sdk/src/types/transactions/encoded.js +0 -64
  1594. package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
  1595. package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
  1596. package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
  1597. package/packages/sdk/src/utils/utils.d.ts +0 -64
  1598. package/packages/sdk/src/utils/utils.js +0 -140
  1599. package/packages/sdk/src/utils/utils.js.map +0 -1
  1600. package/packages/sdk/src/utils/utils.mjs +0 -128
  1601. package/packages/sdk/src/utils/utils.mjs.map +0 -1
  1602. package/packages/transact/src/transactions/common.d.ts +0 -37
  1603. package/sdk/index.d.ts +0 -10
  1604. package/sdk/index.js +0 -59
  1605. package/sdk/index.mjs +0 -11
@@ -1,7 +1,9 @@
1
1
  import { Address, Addressable, ReadableAddress } from "../../common/src/address.js";
2
2
  import { Expand } from "../../common/src/expand.js";
3
3
  import { Transaction } from "./transactions/transaction.js";
4
- import { DelegatedLsigSigner, ProgramDataSigner } from "./logicsig.js";
4
+ import { MultisigAccount } from "./multisig.js";
5
+ import { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from "./logicsig.js";
6
+ import { RawEd25519Signer } from "../../crypto/src/ed25519.js";
5
7
 
6
8
  //#region packages/transact/src/signer.d.ts
7
9
  /** Function for signing a group of transactions */
@@ -35,13 +37,19 @@ type AddressWithSigners = Expand<Addressable & AddressWithTransactionSigner & Ad
35
37
  declare function generateAddressWithSigners(args: {
36
38
  ed25519Pubkey: Uint8Array;
37
39
  sendingAddress?: Address;
38
- rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>;
40
+ rawEd25519Signer: RawEd25519Signer;
39
41
  }): AddressWithSigners;
40
42
  /**
41
43
  * Create a makeEmptyTransactionSigner that does not specify any signer or
42
44
  * signing capabilities. This should only be used to simulate transactions.
43
45
  */
44
46
  declare function makeEmptyTransactionSigner(): TransactionSigner;
47
+ declare const bytesForSigning: {
48
+ transaction(txn: Transaction): Uint8Array;
49
+ mxBytes(bytes: Uint8Array): Uint8Array;
50
+ lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array;
51
+ programData(lsig: LogicSig, data: Uint8Array): Uint8Array;
52
+ };
45
53
  //#endregion
46
- export { AddressWithDelegatedLsigSigner, AddressWithMxBytesSigner, AddressWithProgramDataSigner, AddressWithSigners, AddressWithTransactionSigner, MxBytesSigner, SendingAddress, TransactionSigner, generateAddressWithSigners, makeEmptyTransactionSigner };
54
+ export { AddressWithDelegatedLsigSigner, AddressWithMxBytesSigner, AddressWithProgramDataSigner, AddressWithSigners, AddressWithTransactionSigner, MxBytesSigner, SendingAddress, TransactionSigner, bytesForSigning, generateAddressWithSigners, makeEmptyTransactionSigner };
47
55
  //# sourceMappingURL=signer.d.ts.map
@@ -1,8 +1,7 @@
1
- const require_array = require('../../common/src/array.js');
2
- const require_address = require('../../common/src/address.js');
3
- const require_transaction = require('./transactions/transaction.js');
4
- const require_signed_transaction = require('./transactions/signed-transaction.js');
5
-
1
+ const require_array = require("../../common/src/array.js");
2
+ const require_address = require("../../common/src/address.js");
3
+ const require_transaction = require("./transactions/transaction.js");
4
+ const require_signed_transaction = require("./transactions/signed-transaction.js");
6
5
  //#region packages/transact/src/signer.ts
7
6
  const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
8
7
  /**
@@ -28,10 +27,16 @@ function generateAddressWithSigners(args) {
28
27
  if (!txn.sender.equals(sendingAddress)) stxn.authAddress = authAddr;
29
28
  stxns.push(stxn);
30
29
  }
31
- return stxns.map(require_signed_transaction.encodeSignedTransaction);
30
+ return stxns.map((stxn) => {
31
+ require_signed_transaction.validateSignedTransaction(stxn);
32
+ return require_signed_transaction.encodeSignedTransaction(stxn);
33
+ });
32
34
  };
33
35
  const lsigSigner = async (lsig, msig) => {
34
- return await rawEd25519Signer(lsig.bytesToSignForDelegation(msig));
36
+ return {
37
+ sig: await rawEd25519Signer(lsig.bytesToSignForDelegation(msig)),
38
+ addr: sendingAddress
39
+ };
35
40
  };
36
41
  const programDataSigner = async (data, lsig) => {
37
42
  return await rawEd25519Signer(lsig.programDataToSign(data));
@@ -59,13 +64,29 @@ function makeEmptyTransactionSigner() {
59
64
  txn: txnGroup[index],
60
65
  sig: new Uint8Array(64).fill(0)
61
66
  };
67
+ require_signed_transaction.validateSignedTransaction(stxn);
62
68
  unsigned.push(require_signed_transaction.encodeSignedTransaction(stxn));
63
69
  }
64
70
  return Promise.resolve(unsigned);
65
71
  };
66
72
  }
67
-
73
+ const bytesForSigning = {
74
+ transaction(txn) {
75
+ return require_transaction.encodeTransaction(txn);
76
+ },
77
+ mxBytes(bytes) {
78
+ return require_array.concatArrays(SIGN_BYTES_PREFIX, bytes);
79
+ },
80
+ lsigForDelegation(lsig, msig) {
81
+ return lsig.bytesToSignForDelegation(msig);
82
+ },
83
+ programData(lsig, data) {
84
+ return lsig.programDataToSign(data);
85
+ }
86
+ };
68
87
  //#endregion
88
+ exports.bytesForSigning = bytesForSigning;
69
89
  exports.generateAddressWithSigners = generateAddressWithSigners;
70
90
  exports.makeEmptyTransactionSigner = makeEmptyTransactionSigner;
91
+
71
92
  //# sourceMappingURL=signer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","names":["Address","signer: TransactionSigner","stxns: SignedTransaction[]","stxn: SignedTransaction","encodeTransaction","encodeSignedTransaction","lsigSigner: DelegatedLsigSigner","programDataSigner: ProgramDataSigner","mxBytesSigner: MxBytesSigner","concatArrays","unsigned: Uint8Array[]"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport { DelegatedLsigSigner, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction } from './transactions/signed-transaction'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map(encodeSignedTransaction)\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n"],"mappings":";;;;;;AAmCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAIA,wBAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAMC,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAMC,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAMC,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJC,sCAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,IAAIC,mDAAwB;;CAG3C,MAAMC,aAAkC,OAAO,MAAM,SAAS;AAE5D,SAAO,MAAM,iBADO,KAAK,yBAAyB,KAAK,CACb;;CAG5C,MAAMC,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAMC,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADOC,2BAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAMC,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAMP,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,YAAS,KAAKE,mDAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS"}
1
+ {"version":3,"file":"signer.js","names":["Address","encodeTransaction","encodeSignedTransaction","concatArrays"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAIA,gBAAAA,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJC,oBAAAA,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,8BAAA,0BAA0B,KAAK;AAC/B,UAAOC,2BAAAA,wBAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADOC,cAAAA,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,8BAAA,0BAA0B,KAAK;AAC/B,YAAS,KAAKD,2BAAAA,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAOD,oBAAAA,kBAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAOE,cAAAA,aAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
@@ -1,8 +1,7 @@
1
1
  import { concatArrays } from "../../common/src/array.mjs";
2
2
  import { Address } from "../../common/src/address.mjs";
3
3
  import { encodeTransaction } from "./transactions/transaction.mjs";
4
- import { encodeSignedTransaction } from "./transactions/signed-transaction.mjs";
5
-
4
+ import { encodeSignedTransaction, validateSignedTransaction } from "./transactions/signed-transaction.mjs";
6
5
  //#region packages/transact/src/signer.ts
7
6
  const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
8
7
  /**
@@ -28,10 +27,16 @@ function generateAddressWithSigners(args) {
28
27
  if (!txn.sender.equals(sendingAddress)) stxn.authAddress = authAddr;
29
28
  stxns.push(stxn);
30
29
  }
31
- return stxns.map(encodeSignedTransaction);
30
+ return stxns.map((stxn) => {
31
+ validateSignedTransaction(stxn);
32
+ return encodeSignedTransaction(stxn);
33
+ });
32
34
  };
33
35
  const lsigSigner = async (lsig, msig) => {
34
- return await rawEd25519Signer(lsig.bytesToSignForDelegation(msig));
36
+ return {
37
+ sig: await rawEd25519Signer(lsig.bytesToSignForDelegation(msig)),
38
+ addr: sendingAddress
39
+ };
35
40
  };
36
41
  const programDataSigner = async (data, lsig) => {
37
42
  return await rawEd25519Signer(lsig.programDataToSign(data));
@@ -59,12 +64,27 @@ function makeEmptyTransactionSigner() {
59
64
  txn: txnGroup[index],
60
65
  sig: new Uint8Array(64).fill(0)
61
66
  };
67
+ validateSignedTransaction(stxn);
62
68
  unsigned.push(encodeSignedTransaction(stxn));
63
69
  }
64
70
  return Promise.resolve(unsigned);
65
71
  };
66
72
  }
67
-
73
+ const bytesForSigning = {
74
+ transaction(txn) {
75
+ return encodeTransaction(txn);
76
+ },
77
+ mxBytes(bytes) {
78
+ return concatArrays(SIGN_BYTES_PREFIX, bytes);
79
+ },
80
+ lsigForDelegation(lsig, msig) {
81
+ return lsig.bytesToSignForDelegation(msig);
82
+ },
83
+ programData(lsig, data) {
84
+ return lsig.programDataToSign(data);
85
+ }
86
+ };
68
87
  //#endregion
69
- export { generateAddressWithSigners, makeEmptyTransactionSigner };
88
+ export { bytesForSigning, generateAddressWithSigners, makeEmptyTransactionSigner };
89
+
70
90
  //# sourceMappingURL=signer.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"signer.mjs","names":["signer: TransactionSigner","stxns: SignedTransaction[]","stxn: SignedTransaction","lsigSigner: DelegatedLsigSigner","programDataSigner: ProgramDataSigner","mxBytesSigner: MxBytesSigner","unsigned: Uint8Array[]"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport { DelegatedLsigSigner, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction } from './transactions/signed-transaction'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map(encodeSignedTransaction)\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n"],"mappings":";;;;;;AAmCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAI,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAMA,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAMC,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAMC,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJ,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,IAAI,wBAAwB;;CAG3C,MAAMC,aAAkC,OAAO,MAAM,SAAS;AAE5D,SAAO,MAAM,iBADO,KAAK,yBAAyB,KAAK,CACb;;CAG5C,MAAMC,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAMC,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADO,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAMC,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAMJ,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,YAAS,KAAK,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS"}
1
+ {"version":3,"file":"signer.mjs","names":[],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { DelegatedLsigSigner, LogicSig, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction, validateSignedTransaction } from './transactions/signed-transaction'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport type { RawEd25519Signer } from '@algorandfoundation/algokit-crypto'\nimport { MultisigAccount } from './multisig'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: RawEd25519Signer\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map((stxn) => {\n validateSignedTransaction(stxn)\n return encodeSignedTransaction(stxn)\n })\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n const sig = await rawEd25519Signer(bytesToSign)\n return { sig, addr: sendingAddress }\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n validateSignedTransaction(stxn)\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n\nexport const bytesForSigning = {\n transaction(txn: Transaction): Uint8Array {\n return encodeTransaction(txn)\n },\n mxBytes(bytes: Uint8Array): Uint8Array {\n return concatArrays(SIGN_BYTES_PREFIX, bytes)\n },\n lsigForDelegation(lsig: LogicSig, msig?: MultisigAccount): Uint8Array {\n return lsig.bytesToSignForDelegation(msig)\n },\n programData(lsig: LogicSig, data: Uint8Array): Uint8Array {\n return lsig.programDataToSign(data)\n },\n}\n"],"mappings":";;;;;AAqCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAI,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAM,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAM,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAM,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJ,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,KAAK,SAAS;AACzB,6BAA0B,KAAK;AAC/B,UAAO,wBAAwB,KAAK;IACpC;;CAGJ,MAAM,aAAkC,OAAO,MAAM,SAAS;AAG5D,SAAO;GAAE,KADG,MAAM,iBADE,KAAK,yBAAyB,KAAK,CACR;GACjC,MAAM;GAAgB;;CAGtC,MAAM,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAM,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADO,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAM,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,6BAA0B,KAAK;AAC/B,YAAS,KAAK,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS;;;AAIpC,MAAa,kBAAkB;CAC7B,YAAY,KAA8B;AACxC,SAAO,kBAAkB,IAAI;;CAE/B,QAAQ,OAA+B;AACrC,SAAO,aAAa,mBAAmB,MAAM;;CAE/C,kBAAkB,MAAgB,MAAoC;AACpE,SAAO,KAAK,yBAAyB,KAAK;;CAE5C,YAAY,MAAgB,MAA8B;AACxD,SAAO,KAAK,kBAAkB,KAAK;;CAEtC"}
@@ -1,8 +1,6 @@
1
1
  import { Address } from "../../../common/src/address.js";
2
- import { TransactionValidationError } from "./common.js";
3
2
 
4
3
  //#region packages/transact/src/transactions/app-call.d.ts
5
-
6
4
  /**
7
5
  * Represents an app call transaction that interacts with Algorand Smart Contracts.
8
6
  *
@@ -90,8 +88,8 @@ type AppCallTransactionFields = {
90
88
  */
91
89
  accessReferences?: ResourceReference[];
92
90
  /**
93
- * The lowest application version for which this transaction should immediately fail. 0 indicates that no version check should be performed.
94
- */
91
+ * 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.
92
+ * */
95
93
  rejectVersion?: number;
96
94
  };
97
95
  /**
@@ -131,7 +129,7 @@ declare enum OnApplicationComplete {
131
129
  * delete the app parameters for the app from the creator's
132
130
  * balance record.
133
131
  */
134
- DeleteApplication = 5,
132
+ DeleteApplication = 5
135
133
  }
136
134
  /**
137
135
  * Schema for app state storage.
@@ -170,40 +168,26 @@ type BoxReference = {
170
168
  * Names a single resource reference. Only one of the fields should be set.
171
169
  */
172
170
  type ResourceReference = {
173
- /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */
174
- address?: Address;
175
- /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */
176
- appId?: bigint;
177
- /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */
178
- assetId?: bigint;
179
- /** Defines a holding by referring to an Address and Asset it belongs to. */
180
- holding?: HoldingReference;
181
- /** Defines a local state by referring to an Address and App it belongs to. */
182
- locals?: LocalsReference;
183
- /** Defines a box by its name and the application ID it belongs to. */
171
+ /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */address?: Address; /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */
172
+ appId?: bigint; /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */
173
+ assetId?: bigint; /** Defines a holding by referring to an Address and Asset it belongs to. */
174
+ holding?: HoldingReference; /** Defines a local state by referring to an Address and App it belongs to. */
175
+ locals?: LocalsReference; /** Defines a box by its name and the application ID it belongs to. */
184
176
  box?: BoxReference;
185
177
  };
186
178
  /**
187
179
  * A grouping of the asset index and address of the account
188
180
  */
189
181
  type HoldingReference = {
190
- /** The asset index of the holding */
191
- assetId: bigint;
192
- /** The address of the account holding the asset */
182
+ /** The asset index of the holding */assetId: bigint; /** The address of the account holding the asset */
193
183
  address: Address;
194
184
  };
195
185
  /** A grouping of the application index and address of the account
196
186
  */
197
187
  type LocalsReference = {
198
- /** The application index of the local state */
199
- appId: bigint;
200
- /** The address of the account holding the local state */
188
+ /** The application index of the local state */appId: bigint; /** The address of the account holding the local state */
201
189
  address: Address;
202
190
  };
203
- /**
204
- * Validate app call transaction fields
205
- */
206
- declare function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[];
207
191
  //#endregion
208
- export { AppCallTransactionFields, BoxReference, HoldingReference, LocalsReference, OnApplicationComplete, ResourceReference, StateSchema, validateAppCallTransaction };
192
+ export { AppCallTransactionFields, BoxReference, HoldingReference, LocalsReference, OnApplicationComplete, ResourceReference, StateSchema };
209
193
  //# sourceMappingURL=app-call.d.ts.map
@@ -1,46 +1,45 @@
1
- const require_constants = require('../../../common/src/constants.js');
2
- const require_common = require('./common.js');
3
-
1
+ const require_constants = require("../../../common/src/constants.js");
2
+ const require_common = require("./common.js");
4
3
  //#region packages/transact/src/transactions/app-call.ts
5
4
  /**
6
5
  * On-completion actions for application transactions.
7
6
  *
8
7
  * These values define what additional actions occur with the transaction.
9
8
  */
10
- let OnApplicationComplete = /* @__PURE__ */ function(OnApplicationComplete$1) {
9
+ let OnApplicationComplete = /* @__PURE__ */ function(OnApplicationComplete) {
11
10
  /**
12
11
  * NoOp indicates that an app transaction will simply call its
13
12
  * approval program without any additional action.
14
13
  */
15
- OnApplicationComplete$1[OnApplicationComplete$1["NoOp"] = 0] = "NoOp";
14
+ OnApplicationComplete[OnApplicationComplete["NoOp"] = 0] = "NoOp";
16
15
  /**
17
16
  * OptIn indicates that an app transaction will allocate some
18
17
  * local state for the app in the sender's account.
19
18
  */
20
- OnApplicationComplete$1[OnApplicationComplete$1["OptIn"] = 1] = "OptIn";
19
+ OnApplicationComplete[OnApplicationComplete["OptIn"] = 1] = "OptIn";
21
20
  /**
22
21
  * CloseOut indicates that an app transaction will deallocate
23
22
  * some local state for the app from the user's account.
24
23
  */
25
- OnApplicationComplete$1[OnApplicationComplete$1["CloseOut"] = 2] = "CloseOut";
24
+ OnApplicationComplete[OnApplicationComplete["CloseOut"] = 2] = "CloseOut";
26
25
  /**
27
26
  * ClearState is similar to CloseOut, but may never fail. This
28
27
  * allows users to reclaim their minimum balance from an app
29
28
  * they no longer wish to opt in to.
30
29
  */
31
- OnApplicationComplete$1[OnApplicationComplete$1["ClearState"] = 3] = "ClearState";
30
+ OnApplicationComplete[OnApplicationComplete["ClearState"] = 3] = "ClearState";
32
31
  /**
33
32
  * UpdateApplication indicates that an app transaction will
34
33
  * update the approval program and clear state program for the app.
35
34
  */
36
- OnApplicationComplete$1[OnApplicationComplete$1["UpdateApplication"] = 4] = "UpdateApplication";
35
+ OnApplicationComplete[OnApplicationComplete["UpdateApplication"] = 4] = "UpdateApplication";
37
36
  /**
38
37
  * DeleteApplication indicates that an app transaction will
39
38
  * delete the app parameters for the app from the creator's
40
39
  * balance record.
41
40
  */
42
- OnApplicationComplete$1[OnApplicationComplete$1["DeleteApplication"] = 5] = "DeleteApplication";
43
- return OnApplicationComplete$1;
41
+ OnApplicationComplete[OnApplicationComplete["DeleteApplication"] = 5] = "DeleteApplication";
42
+ return OnApplicationComplete;
44
43
  }({});
45
44
  const FIELD_ARGS = "Args";
46
45
  const FIELD_APPROVAL_PROGRAM = "Approval program";
@@ -72,12 +71,12 @@ function validateAppCreation(appCall) {
72
71
  data: FIELD_CLEAR_STATE_PROGRAM
73
72
  });
74
73
  const extraPages = appCall.extraProgramPages ?? 0;
75
- if (extraPages > require_constants.MAX_EXTRA_PROGRAM_PAGES) errors.push({
74
+ if (extraPages > 3) errors.push({
76
75
  type: require_common.TransactionValidationErrorType.FieldTooLong,
77
76
  data: {
78
77
  field: FIELD_EXTRA_PROGRAM_PAGES,
79
78
  actual: extraPages,
80
- max: require_constants.MAX_EXTRA_PROGRAM_PAGES,
79
+ max: 3,
81
80
  unit: "pages"
82
81
  }
83
82
  });
@@ -111,23 +110,23 @@ function validateAppCreation(appCall) {
111
110
  }
112
111
  });
113
112
  if (appCall.globalStateSchema) {
114
- if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > require_constants.MAX_GLOBAL_STATE_KEYS) errors.push({
113
+ if (appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices > 64) errors.push({
115
114
  type: require_common.TransactionValidationErrorType.FieldTooLong,
116
115
  data: {
117
116
  field: FIELD_GLOBAL_STATE_SCHEMA,
118
117
  actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,
119
- max: require_constants.MAX_GLOBAL_STATE_KEYS,
118
+ max: 64,
120
119
  unit: "keys"
121
120
  }
122
121
  });
123
122
  }
124
123
  if (appCall.localStateSchema) {
125
- if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > require_constants.MAX_LOCAL_STATE_KEYS) errors.push({
124
+ if (appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices > 16) errors.push({
126
125
  type: require_common.TransactionValidationErrorType.FieldTooLong,
127
126
  data: {
128
127
  field: FIELD_LOCAL_STATE_SCHEMA,
129
128
  actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,
130
- max: require_constants.MAX_LOCAL_STATE_KEYS,
129
+ max: 16,
131
130
  unit: "keys"
132
131
  }
133
132
  });
@@ -169,17 +168,17 @@ function validateAppOperation(appCall) {
169
168
  function validateAppCommonFields(appCall) {
170
169
  const errors = new Array();
171
170
  if (appCall.args) {
172
- if (appCall.args.length > require_constants.MAX_APP_ARGS) errors.push({
171
+ if (appCall.args.length > 16) errors.push({
173
172
  type: require_common.TransactionValidationErrorType.FieldTooLong,
174
173
  data: {
175
174
  field: FIELD_ARGS,
176
175
  actual: appCall.args.length,
177
- max: require_constants.MAX_APP_ARGS,
176
+ max: 16,
178
177
  unit: "arguments"
179
178
  }
180
179
  });
181
180
  const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0);
182
- if (totalArgsSize > require_constants.MAX_ARGS_SIZE) errors.push({
181
+ if (totalArgsSize > 2048) errors.push({
183
182
  type: require_common.TransactionValidationErrorType.FieldTooLong,
184
183
  data: {
185
184
  field: "Args total size",
@@ -189,40 +188,40 @@ function validateAppCommonFields(appCall) {
189
188
  }
190
189
  });
191
190
  }
192
- if (appCall.accountReferences && appCall.accountReferences.length > require_constants.MAX_ACCOUNT_REFERENCES) errors.push({
191
+ if (appCall.accountReferences && appCall.accountReferences.length > 8) errors.push({
193
192
  type: require_common.TransactionValidationErrorType.FieldTooLong,
194
193
  data: {
195
194
  field: "Account references",
196
195
  actual: appCall.accountReferences.length,
197
- max: require_constants.MAX_ACCOUNT_REFERENCES,
196
+ max: 8,
198
197
  unit: "refs"
199
198
  }
200
199
  });
201
- if (appCall.appReferences && appCall.appReferences.length > require_constants.MAX_APP_REFERENCES) errors.push({
200
+ if (appCall.appReferences && appCall.appReferences.length > 8) errors.push({
202
201
  type: require_common.TransactionValidationErrorType.FieldTooLong,
203
202
  data: {
204
203
  field: "App references",
205
204
  actual: appCall.appReferences.length,
206
- max: require_constants.MAX_APP_REFERENCES,
205
+ max: 8,
207
206
  unit: "refs"
208
207
  }
209
208
  });
210
- if (appCall.assetReferences && appCall.assetReferences.length > require_constants.MAX_ASSET_REFERENCES) errors.push({
209
+ if (appCall.assetReferences && appCall.assetReferences.length > 8) errors.push({
211
210
  type: require_common.TransactionValidationErrorType.FieldTooLong,
212
211
  data: {
213
212
  field: "Asset references",
214
213
  actual: appCall.assetReferences.length,
215
- max: require_constants.MAX_ASSET_REFERENCES,
214
+ max: 8,
216
215
  unit: "refs"
217
216
  }
218
217
  });
219
218
  if (appCall.boxReferences) {
220
- if (appCall.boxReferences.length > require_constants.MAX_BOX_REFERENCES) errors.push({
219
+ if (appCall.boxReferences.length > 8) errors.push({
221
220
  type: require_common.TransactionValidationErrorType.FieldTooLong,
222
221
  data: {
223
222
  field: "Box references",
224
223
  actual: appCall.boxReferences.length,
225
- max: require_constants.MAX_BOX_REFERENCES,
224
+ max: 8,
226
225
  unit: "refs"
227
226
  }
228
227
  });
@@ -233,19 +232,19 @@ function validateAppCommonFields(appCall) {
233
232
  });
234
233
  }
235
234
  const totalReferences = (appCall.accountReferences?.length || 0) + (appCall.appReferences?.length || 0) + (appCall.assetReferences?.length || 0) + (appCall.boxReferences?.length || 0);
236
- if (totalReferences > require_constants.MAX_OVERALL_REFERENCES) errors.push({
235
+ if (totalReferences > 8) errors.push({
237
236
  type: require_common.TransactionValidationErrorType.FieldTooLong,
238
237
  data: {
239
238
  field: "Total references",
240
239
  actual: totalReferences,
241
- max: require_constants.MAX_OVERALL_REFERENCES,
240
+ max: 8,
242
241
  unit: "refs"
243
242
  }
244
243
  });
245
244
  return errors;
246
245
  }
247
-
248
246
  //#endregion
249
247
  exports.OnApplicationComplete = OnApplicationComplete;
250
248
  exports.validateAppCallTransaction = validateAppCallTransaction;
249
+
251
250
  //# sourceMappingURL=app-call.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-call.js","names":["TransactionValidationErrorType","MAX_EXTRA_PROGRAM_PAGES","PROGRAM_PAGE_SIZE","MAX_GLOBAL_STATE_KEYS","MAX_LOCAL_STATE_KEYS","MAX_APP_ARGS","MAX_ARGS_SIZE","MAX_ACCOUNT_REFERENCES","MAX_APP_REFERENCES","MAX_ASSET_REFERENCES","MAX_BOX_REFERENCES","MAX_OVERALL_REFERENCES"],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\n * The lowest application version for which this transaction should immediately fail. 0 indicates that no version check should be performed.\n */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({\n type: TransactionValidationErrorType.RequiredField,\n data: FIELD_APPROVAL_PROGRAM,\n })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({\n type: TransactionValidationErrorType.RequiredField,\n data: FIELD_CLEAR_STATE_PROGRAM,\n })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_EXTRA_PROGRAM_PAGES,\n actual: extraPages,\n max: MAX_EXTRA_PROGRAM_PAGES,\n unit: 'pages',\n },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_APPROVAL_PROGRAM,\n actual: appCall.approvalProgram.length,\n max: maxProgramSize,\n unit: 'bytes',\n },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_CLEAR_STATE_PROGRAM,\n actual: appCall.clearStateProgram.length,\n max: maxProgramSize,\n unit: 'bytes',\n },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Combined approval and clear state programs',\n actual: totalProgramSize,\n max: maxProgramSize,\n unit: 'bytes',\n },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({\n type: TransactionValidationErrorType.RequiredField,\n data: FIELD_APPROVAL_PROGRAM,\n })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({\n type: TransactionValidationErrorType.RequiredField,\n data: FIELD_CLEAR_STATE_PROGRAM,\n })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({\n type: TransactionValidationErrorType.ImmutableField,\n data: FIELD_GLOBAL_STATE_SCHEMA,\n })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({\n type: TransactionValidationErrorType.ImmutableField,\n data: FIELD_LOCAL_STATE_SCHEMA,\n })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({\n type: TransactionValidationErrorType.ImmutableField,\n data: FIELD_EXTRA_PROGRAM_PAGES,\n })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_ARGS,\n actual: appCall.args.length,\n max: MAX_APP_ARGS,\n unit: 'arguments',\n },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Args total size',\n actual: totalArgsSize,\n max: MAX_ARGS_SIZE,\n unit: 'bytes',\n },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Account references',\n actual: appCall.accountReferences.length,\n max: MAX_ACCOUNT_REFERENCES,\n unit: 'refs',\n },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'App references',\n actual: appCall.appReferences.length,\n max: MAX_APP_REFERENCES,\n unit: 'refs',\n },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Asset references',\n actual: appCall.assetReferences.length,\n max: MAX_ASSET_REFERENCES,\n unit: 'refs',\n },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Box references',\n actual: appCall.boxReferences.length,\n max: MAX_BOX_REFERENCES,\n unit: 'refs',\n },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: 'Total references',\n actual: totalReferences,\n max: MAX_OVERALL_REFERENCES,\n unit: 'refs',\n },\n })\n }\n\n return errors\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"app-call.js","names":["TransactionValidationErrorType","PROGRAM_PAGE_SIZE","MAX_ARGS_SIZE"],"sources":["../../../../../packages/transact/src/transactions/app-call.ts"],"sourcesContent":["import {\n Address,\n MAX_ACCOUNT_REFERENCES,\n MAX_APP_ARGS,\n MAX_APP_REFERENCES,\n MAX_ARGS_SIZE,\n MAX_ASSET_REFERENCES,\n MAX_BOX_REFERENCES,\n MAX_EXTRA_PROGRAM_PAGES,\n MAX_GLOBAL_STATE_KEYS,\n MAX_LOCAL_STATE_KEYS,\n MAX_OVERALL_REFERENCES,\n PROGRAM_PAGE_SIZE,\n} from '@algorandfoundation/algokit-common'\nimport { TransactionValidationError, TransactionValidationErrorType } from './common'\n\n/**\n * Represents an app call transaction that interacts with Algorand Smart Contracts.\n *\n * App call transactions are used to create, update, delete, opt-in to,\n * close out of, or clear state from Algorand apps (smart contracts).\n */\nexport type AppCallTransactionFields = {\n /**\n * ID of the app being called.\n *\n * Set this to 0 to indicate an app creation call.\n */\n appId: bigint\n\n /**\n * Defines what additional actions occur with the transaction.\n */\n onComplete: OnApplicationComplete\n\n /**\n * Logic executed for every app call transaction, except when\n * on-completion is set to \"clear\".\n *\n * Approval programs may reject the transaction.\n * Only required for app creation and update transactions.\n */\n approvalProgram?: Uint8Array\n\n /**\n * Logic executed for app call transactions with on-completion set to \"clear\".\n *\n * Clear state programs cannot reject the transaction.\n * Only required for app creation and update transactions.\n */\n clearStateProgram?: Uint8Array\n\n /**\n * Holds the maximum number of global state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n globalStateSchema?: StateSchema\n\n /**\n * Holds the maximum number of local state values.\n *\n * Only required for app creation transactions.\n * This cannot be changed after creation.\n */\n localStateSchema?: StateSchema\n\n /**\n * Number of additional pages allocated to the app's approval\n * and clear state programs.\n *\n * Each extra program page is 2048 bytes. The sum of approval program\n * and clear state program may not exceed 2048*(1+extra_program_pages) bytes.\n * Currently, the maximum value is 3.\n * This cannot be changed after creation.\n */\n extraProgramPages?: number\n\n /**\n * Transaction specific arguments available in the app's\n * approval program and clear state program.\n */\n args?: Uint8Array[]\n\n /**\n * List of accounts in addition to the sender that may be accessed\n * from the app's approval program and clear state program.\n */\n accountReferences?: Address[]\n\n /**\n * List of apps in addition to the current app that may be called\n * from the app's approval program and clear state program.\n */\n appReferences?: bigint[]\n\n /**\n * Lists the assets whose parameters may be accessed by this app's\n * approval program and clear state program.\n *\n * The access is read-only.\n */\n assetReferences?: bigint[]\n\n /**\n * The boxes that should be made available for the runtime of the program.\n */\n boxReferences?: BoxReference[]\n\n /**\n * Resources accessed by the application\n */\n accessReferences?: ResourceReference[]\n\n /**\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 * */\n rejectVersion?: number\n}\n\n/**\n * On-completion actions for application transactions.\n *\n * These values define what additional actions occur with the transaction.\n */\nexport enum OnApplicationComplete {\n /**\n * NoOp indicates that an app transaction will simply call its\n * approval program without any additional action.\n */\n NoOp,\n /**\n * OptIn indicates that an app transaction will allocate some\n * local state for the app in the sender's account.\n */\n OptIn,\n /**\n * CloseOut indicates that an app transaction will deallocate\n * some local state for the app from the user's account.\n */\n CloseOut,\n /**\n * ClearState is similar to CloseOut, but may never fail. This\n * allows users to reclaim their minimum balance from an app\n * they no longer wish to opt in to.\n */\n ClearState,\n /**\n * UpdateApplication indicates that an app transaction will\n * update the approval program and clear state program for the app.\n */\n UpdateApplication,\n /**\n * DeleteApplication indicates that an app transaction will\n * delete the app parameters for the app from the creator's\n * balance record.\n */\n DeleteApplication,\n}\n\n/**\n * Schema for app state storage.\n *\n * Defines the maximum number of values that may be stored in app\n * key/value storage for both global and local state.\n */\nexport type StateSchema = {\n /**\n * Maximum number of integer values that may be stored.\n */\n numUints: number\n\n /**\n * Maximum number of byte slice values that may be stored.\n */\n numByteSlices: number\n}\n\n/**\n * Box reference for app call transactions.\n *\n * References a specific box that should be made available for the runtime\n * of the program.\n */\nexport type BoxReference = {\n /**\n * App ID that owns the box.\n * A value of 0 indicates the current app.\n */\n appId: bigint\n\n /**\n * Name of the box.\n */\n name: Uint8Array\n}\n\n/**\n * Names a single resource reference. Only one of the fields should be set.\n */\nexport type ResourceReference = {\n /** Any account addresses whose balance record is accessible by the executing ApprovalProgram or ClearStateProgram. */\n address?: Address\n /** Application ID whose GlobalState may be read by the executing ApprovalProgram or ClearStateProgram. */\n appId?: bigint\n /** Asset ID whose AssetParams may be read by the executing ApprovalProgram or ClearStateProgram. */\n assetId?: bigint\n /** Defines a holding by referring to an Address and Asset it belongs to. */\n holding?: HoldingReference\n /** Defines a local state by referring to an Address and App it belongs to. */\n locals?: LocalsReference\n /** Defines a box by its name and the application ID it belongs to. */\n box?: BoxReference\n}\n\n/**\n * A grouping of the asset index and address of the account\n */\nexport type HoldingReference = {\n /** The asset index of the holding */\n assetId: bigint\n\n /** The address of the account holding the asset */\n address: Address\n}\n\n/** A grouping of the application index and address of the account\n */\nexport type LocalsReference = {\n /** The application index of the local state */\n appId: bigint\n\n /** The address of the account holding the local state */\n address: Address\n}\n\nconst FIELD_ARGS = 'Args'\nconst FIELD_APPROVAL_PROGRAM = 'Approval program'\nconst FIELD_CLEAR_STATE_PROGRAM = 'Clear state program'\nconst FIELD_GLOBAL_STATE_SCHEMA = 'Global state schema'\nconst FIELD_LOCAL_STATE_SCHEMA = 'Local state schema'\nconst FIELD_EXTRA_PROGRAM_PAGES = 'Extra program pages'\n\n/**\n * Validate app call transaction fields\n */\nexport function validateAppCallTransaction(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.appId === 0n) {\n // App creation\n errors.push(...validateAppCreation(appCall))\n } else {\n // App call, update, or delete\n errors.push(...validateAppOperation(appCall))\n }\n\n // Common validations for all app operations\n errors.push(...validateAppCommonFields(appCall))\n\n return errors\n}\n\n/**\n * Validate app creation fields\n */\nfunction validateAppCreation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n\n const extraPages = appCall.extraProgramPages ?? 0\n if (extraPages > MAX_EXTRA_PROGRAM_PAGES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_EXTRA_PROGRAM_PAGES, actual: extraPages, max: MAX_EXTRA_PROGRAM_PAGES, unit: 'pages' },\n })\n }\n\n const maxProgramSize = PROGRAM_PAGE_SIZE + extraPages * PROGRAM_PAGE_SIZE\n\n if (appCall.approvalProgram && appCall.approvalProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_APPROVAL_PROGRAM, actual: appCall.approvalProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.clearStateProgram && appCall.clearStateProgram.length > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_CLEAR_STATE_PROGRAM, actual: appCall.clearStateProgram.length, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n const totalProgramSize = (appCall.approvalProgram?.length ?? 0) + (appCall.clearStateProgram?.length ?? 0)\n if (totalProgramSize > maxProgramSize) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Combined approval and clear state programs', actual: totalProgramSize, max: maxProgramSize, unit: 'bytes' },\n })\n }\n\n if (appCall.globalStateSchema) {\n const totalKeys = appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices\n if (totalKeys > MAX_GLOBAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_GLOBAL_STATE_SCHEMA,\n actual: appCall.globalStateSchema.numUints + appCall.globalStateSchema.numByteSlices,\n max: MAX_GLOBAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n if (appCall.localStateSchema) {\n const totalKeys = appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices\n if (totalKeys > MAX_LOCAL_STATE_KEYS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: {\n field: FIELD_LOCAL_STATE_SCHEMA,\n actual: appCall.localStateSchema.numUints + appCall.localStateSchema.numByteSlices,\n max: MAX_LOCAL_STATE_KEYS,\n unit: 'keys',\n },\n })\n }\n }\n\n return errors\n}\n\n/**\n * Validate app operation (update, delete, call) fields\n */\nfunction validateAppOperation(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.onComplete === OnApplicationComplete.UpdateApplication) {\n if (!appCall.approvalProgram || appCall.approvalProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_APPROVAL_PROGRAM })\n }\n if (!appCall.clearStateProgram || appCall.clearStateProgram.length === 0) {\n errors.push({ type: TransactionValidationErrorType.RequiredField, data: FIELD_CLEAR_STATE_PROGRAM })\n }\n }\n\n // These fields are immutable and cannot be set for existing apps\n if (appCall.globalStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_GLOBAL_STATE_SCHEMA })\n }\n if (appCall.localStateSchema !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_LOCAL_STATE_SCHEMA })\n }\n if (appCall.extraProgramPages !== undefined) {\n errors.push({ type: TransactionValidationErrorType.ImmutableField, data: FIELD_EXTRA_PROGRAM_PAGES })\n }\n\n return errors\n}\n\n/**\n * Validate common app call fields\n */\nfunction validateAppCommonFields(appCall: AppCallTransactionFields): TransactionValidationError[] {\n const errors = new Array<TransactionValidationError>()\n\n if (appCall.args) {\n if (appCall.args.length > MAX_APP_ARGS) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: FIELD_ARGS, actual: appCall.args.length, max: MAX_APP_ARGS, unit: 'arguments' },\n })\n }\n\n const totalArgsSize = appCall.args.reduce((sum, arg) => sum + arg.length, 0)\n if (totalArgsSize > MAX_ARGS_SIZE) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Args total size', actual: totalArgsSize, max: MAX_ARGS_SIZE, unit: 'bytes' },\n })\n }\n }\n\n if (appCall.accountReferences && appCall.accountReferences.length > MAX_ACCOUNT_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Account references', actual: appCall.accountReferences.length, max: MAX_ACCOUNT_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.appReferences && appCall.appReferences.length > MAX_APP_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'App references', actual: appCall.appReferences.length, max: MAX_APP_REFERENCES, unit: 'refs' },\n })\n }\n\n if (appCall.assetReferences && appCall.assetReferences.length > MAX_ASSET_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Asset references', actual: appCall.assetReferences.length, max: MAX_ASSET_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate box references\n if (appCall.boxReferences) {\n if (appCall.boxReferences.length > MAX_BOX_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Box references', actual: appCall.boxReferences.length, max: MAX_BOX_REFERENCES, unit: 'refs' },\n })\n }\n\n // Validate that box reference app IDs are in app references\n const appRefs = appCall.appReferences || []\n for (const boxRef of appCall.boxReferences) {\n if (boxRef.appId !== 0n && boxRef.appId !== appCall.appId && !appRefs.includes(boxRef.appId)) {\n errors.push({\n type: TransactionValidationErrorType.ArbitraryConstraint,\n data: `Box reference for app ID ${boxRef.appId} must be in app references`,\n })\n }\n }\n }\n\n // Validate overall reference count\n const totalReferences =\n (appCall.accountReferences?.length || 0) +\n (appCall.appReferences?.length || 0) +\n (appCall.assetReferences?.length || 0) +\n (appCall.boxReferences?.length || 0)\n\n if (totalReferences > MAX_OVERALL_REFERENCES) {\n errors.push({\n type: TransactionValidationErrorType.FieldTooLong,\n data: { field: 'Total references', actual: totalReferences, max: MAX_OVERALL_REFERENCES, unit: 'refs' },\n })\n }\n\n return errors\n}\n"],"mappings":"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"}