algosdk 2.9.0 → 3.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 (805) hide show
  1. package/README.md +8 -4
  2. package/dist/browser/algosdk.min.js +1 -1
  3. package/dist/browser/algosdk.min.js.LICENSE.txt +0 -9
  4. package/dist/browser/algosdk.min.js.map +1 -1
  5. package/dist/cjs/abi/abi_type.js +34 -27
  6. package/dist/cjs/abi/abi_type.js.map +1 -1
  7. package/dist/cjs/abi/contract.js +3 -3
  8. package/dist/cjs/abi/contract.js.map +1 -1
  9. package/dist/cjs/abi/index.js +6 -6
  10. package/dist/cjs/abi/index.js.map +1 -1
  11. package/dist/cjs/abi/interface.js +3 -3
  12. package/dist/cjs/abi/interface.js.map +1 -1
  13. package/dist/cjs/abi/method.js +10 -10
  14. package/dist/cjs/abi/method.js.map +1 -1
  15. package/dist/cjs/abi/reference.js +1 -1
  16. package/dist/cjs/abi/reference.js.map +1 -1
  17. package/dist/cjs/abi/transaction.js +2 -2
  18. package/dist/cjs/abi/transaction.js.map +1 -1
  19. package/dist/cjs/account.js +4 -4
  20. package/dist/cjs/account.js.map +1 -1
  21. package/dist/cjs/boxStorage.js +17 -17
  22. package/dist/cjs/boxStorage.js.map +1 -1
  23. package/dist/cjs/client/client.js +77 -41
  24. package/dist/cjs/client/client.js.map +1 -1
  25. package/dist/cjs/client/index.js +29 -0
  26. package/dist/cjs/client/index.js.map +1 -0
  27. package/dist/cjs/client/kmd.js +69 -86
  28. package/dist/cjs/client/kmd.js.map +1 -1
  29. package/dist/cjs/client/urlTokenBaseHTTPClient.js +16 -11
  30. package/dist/cjs/client/urlTokenBaseHTTPClient.js.map +1 -1
  31. package/dist/cjs/client/v2/algod/accountApplicationInformation.js +11 -7
  32. package/dist/cjs/client/v2/algod/accountApplicationInformation.js.map +1 -1
  33. package/dist/cjs/client/v2/algod/accountAssetInformation.js +11 -7
  34. package/dist/cjs/client/v2/algod/accountAssetInformation.js.map +1 -1
  35. package/dist/cjs/client/v2/algod/accountInformation.js +11 -6
  36. package/dist/cjs/client/v2/algod/accountInformation.js.map +1 -1
  37. package/dist/cjs/client/v2/algod/algod.js +85 -83
  38. package/dist/cjs/client/v2/algod/algod.js.map +1 -1
  39. package/dist/cjs/client/v2/algod/block.js +6 -33
  40. package/dist/cjs/client/v2/algod/block.js.map +1 -1
  41. package/dist/cjs/client/v2/algod/compile.js +17 -11
  42. package/dist/cjs/client/v2/algod/compile.js.map +1 -1
  43. package/dist/cjs/client/v2/algod/disassemble.js +17 -11
  44. package/dist/cjs/client/v2/algod/disassemble.js.map +1 -1
  45. package/dist/cjs/client/v2/algod/dryrun.js +18 -37
  46. package/dist/cjs/client/v2/algod/dryrun.js.map +1 -1
  47. package/dist/cjs/client/v2/algod/genesis.js +6 -2
  48. package/dist/cjs/client/v2/algod/genesis.js.map +1 -1
  49. package/dist/cjs/client/v2/algod/getApplicationBoxByName.js +10 -10
  50. package/dist/cjs/client/v2/algod/getApplicationBoxByName.js.map +1 -1
  51. package/dist/cjs/client/v2/algod/getApplicationBoxes.js +8 -8
  52. package/dist/cjs/client/v2/algod/getApplicationBoxes.js.map +1 -1
  53. package/dist/cjs/client/v2/algod/getApplicationByID.js +10 -5
  54. package/dist/cjs/client/v2/algod/getApplicationByID.js.map +1 -1
  55. package/dist/cjs/client/v2/algod/getAssetByID.js +10 -5
  56. package/dist/cjs/client/v2/algod/getAssetByID.js.map +1 -1
  57. package/dist/cjs/client/v2/algod/getBlockHash.js +10 -6
  58. package/dist/cjs/client/v2/algod/getBlockHash.js.map +1 -1
  59. package/dist/cjs/client/v2/algod/getBlockOffsetTimestamp.js +6 -5
  60. package/dist/cjs/client/v2/algod/getBlockOffsetTimestamp.js.map +1 -1
  61. package/dist/cjs/client/v2/algod/getBlockTxids.js +10 -4
  62. package/dist/cjs/client/v2/algod/getBlockTxids.js.map +1 -1
  63. package/dist/cjs/client/v2/algod/getLedgerStateDelta.js +11 -6
  64. package/dist/cjs/client/v2/algod/getLedgerStateDelta.js.map +1 -1
  65. package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +11 -6
  66. package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -1
  67. package/dist/cjs/client/v2/algod/getSyncRound.js +6 -5
  68. package/dist/cjs/client/v2/algod/getSyncRound.js.map +1 -1
  69. package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +9 -9
  70. package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -1
  71. package/dist/cjs/client/v2/algod/getTransactionProof.js +10 -6
  72. package/dist/cjs/client/v2/algod/getTransactionProof.js.map +1 -1
  73. package/dist/cjs/client/v2/algod/healthCheck.js +4 -9
  74. package/dist/cjs/client/v2/algod/healthCheck.js.map +1 -1
  75. package/dist/cjs/{types → client/v2/algod}/index.js +5 -3
  76. package/dist/cjs/client/v2/algod/index.js.map +1 -0
  77. package/dist/cjs/client/v2/algod/lightBlockHeaderProof.js +10 -5
  78. package/dist/cjs/client/v2/algod/lightBlockHeaderProof.js.map +1 -1
  79. package/dist/cjs/client/v2/algod/models/types.js +3701 -1828
  80. package/dist/cjs/client/v2/algod/models/types.js.map +1 -1
  81. package/dist/cjs/client/v2/algod/pendingTransactionInformation.js +6 -32
  82. package/dist/cjs/client/v2/algod/pendingTransactionInformation.js.map +1 -1
  83. package/dist/cjs/client/v2/algod/pendingTransactions.js +6 -31
  84. package/dist/cjs/client/v2/algod/pendingTransactions.js.map +1 -1
  85. package/dist/cjs/client/v2/algod/pendingTransactionsByAddress.js +7 -33
  86. package/dist/cjs/client/v2/algod/pendingTransactionsByAddress.js.map +1 -1
  87. package/dist/cjs/client/v2/algod/ready.js +4 -2
  88. package/dist/cjs/client/v2/algod/ready.js.map +1 -1
  89. package/dist/cjs/client/v2/algod/sendRawTransaction.js +17 -8
  90. package/dist/cjs/client/v2/algod/sendRawTransaction.js.map +1 -1
  91. package/dist/cjs/client/v2/algod/setBlockOffsetTimestamp.js +13 -8
  92. package/dist/cjs/client/v2/algod/setBlockOffsetTimestamp.js.map +1 -1
  93. package/dist/cjs/client/v2/algod/setSyncRound.js +13 -8
  94. package/dist/cjs/client/v2/algod/setSyncRound.js.map +1 -1
  95. package/dist/cjs/client/v2/algod/simulateTransaction.js +15 -35
  96. package/dist/cjs/client/v2/algod/simulateTransaction.js.map +1 -1
  97. package/dist/cjs/client/v2/algod/stateproof.js +10 -5
  98. package/dist/cjs/client/v2/algod/stateproof.js.map +1 -1
  99. package/dist/cjs/client/v2/algod/status.js +8 -2
  100. package/dist/cjs/client/v2/algod/status.js.map +1 -1
  101. package/dist/cjs/client/v2/algod/statusAfterBlock.js +10 -5
  102. package/dist/cjs/client/v2/algod/statusAfterBlock.js.map +1 -1
  103. package/dist/cjs/client/v2/algod/suggestedParams.js +13 -9
  104. package/dist/cjs/client/v2/algod/suggestedParams.js.map +1 -1
  105. package/dist/cjs/client/v2/algod/supply.js +8 -2
  106. package/dist/cjs/client/v2/algod/supply.js.map +1 -1
  107. package/dist/cjs/client/v2/algod/unsetSyncRound.js +11 -5
  108. package/dist/cjs/client/v2/algod/unsetSyncRound.js.map +1 -1
  109. package/dist/cjs/client/v2/algod/versions.js +8 -2
  110. package/dist/cjs/client/v2/algod/versions.js.map +1 -1
  111. package/dist/cjs/client/v2/indexer/index.js +22 -0
  112. package/dist/cjs/client/v2/indexer/index.js.map +1 -0
  113. package/dist/cjs/client/v2/indexer/indexer.js +44 -43
  114. package/dist/cjs/client/v2/indexer/indexer.js.map +1 -1
  115. package/dist/cjs/client/v2/indexer/lookupAccountAppLocalStates.js +11 -6
  116. package/dist/cjs/client/v2/indexer/lookupAccountAppLocalStates.js.map +1 -1
  117. package/dist/cjs/client/v2/indexer/lookupAccountAssets.js +11 -6
  118. package/dist/cjs/client/v2/indexer/lookupAccountAssets.js.map +1 -1
  119. package/dist/cjs/client/v2/indexer/lookupAccountByID.js +11 -6
  120. package/dist/cjs/client/v2/indexer/lookupAccountByID.js.map +1 -1
  121. package/dist/cjs/client/v2/indexer/lookupAccountCreatedApplications.js +11 -6
  122. package/dist/cjs/client/v2/indexer/lookupAccountCreatedApplications.js.map +1 -1
  123. package/dist/cjs/client/v2/indexer/lookupAccountCreatedAssets.js +11 -6
  124. package/dist/cjs/client/v2/indexer/lookupAccountCreatedAssets.js.map +1 -1
  125. package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js +19 -12
  126. package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
  127. package/dist/cjs/client/v2/indexer/lookupApplicationBoxByIDandName.js +10 -10
  128. package/dist/cjs/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -1
  129. package/dist/cjs/client/v2/indexer/lookupApplicationLogs.js +10 -5
  130. package/dist/cjs/client/v2/indexer/lookupApplicationLogs.js.map +1 -1
  131. package/dist/cjs/client/v2/indexer/lookupApplications.js +10 -5
  132. package/dist/cjs/client/v2/indexer/lookupApplications.js.map +1 -1
  133. package/dist/cjs/client/v2/indexer/lookupAssetBalances.js +10 -5
  134. package/dist/cjs/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  135. package/dist/cjs/client/v2/indexer/lookupAssetByID.js +10 -5
  136. package/dist/cjs/client/v2/indexer/lookupAssetByID.js.map +1 -1
  137. package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js +19 -12
  138. package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
  139. package/dist/cjs/client/v2/indexer/lookupBlock.js +10 -5
  140. package/dist/cjs/client/v2/indexer/lookupBlock.js.map +1 -1
  141. package/dist/cjs/client/v2/indexer/lookupTransactionByID.js +10 -5
  142. package/dist/cjs/client/v2/indexer/lookupTransactionByID.js.map +1 -1
  143. package/dist/cjs/client/v2/indexer/makeHealthCheck.js +8 -2
  144. package/dist/cjs/client/v2/indexer/makeHealthCheck.js.map +1 -1
  145. package/dist/cjs/client/v2/indexer/models/types.js +3591 -1651
  146. package/dist/cjs/client/v2/indexer/models/types.js.map +1 -1
  147. package/dist/cjs/client/v2/indexer/searchAccounts.js +9 -3
  148. package/dist/cjs/client/v2/indexer/searchAccounts.js.map +1 -1
  149. package/dist/cjs/client/v2/indexer/searchForApplicationBoxes.js +8 -8
  150. package/dist/cjs/client/v2/indexer/searchForApplicationBoxes.js.map +1 -1
  151. package/dist/cjs/client/v2/indexer/searchForApplications.js +9 -3
  152. package/dist/cjs/client/v2/indexer/searchForApplications.js.map +1 -1
  153. package/dist/cjs/client/v2/indexer/searchForAssets.js +9 -3
  154. package/dist/cjs/client/v2/indexer/searchForAssets.js.map +1 -1
  155. package/dist/cjs/client/v2/indexer/searchForTransactions.js +17 -9
  156. package/dist/cjs/client/v2/indexer/searchForTransactions.js.map +1 -1
  157. package/dist/cjs/client/v2/jsonrequest.js +22 -54
  158. package/dist/cjs/client/v2/jsonrequest.js.map +1 -1
  159. package/dist/cjs/client/v2/serviceClient.js +5 -25
  160. package/dist/cjs/client/v2/serviceClient.js.map +1 -1
  161. package/dist/cjs/client/v2/untypedmodel.js +22 -0
  162. package/dist/cjs/client/v2/untypedmodel.js.map +1 -0
  163. package/dist/cjs/composer.js +64 -58
  164. package/dist/cjs/composer.js.map +1 -1
  165. package/dist/cjs/convert.js.map +1 -1
  166. package/dist/cjs/dryrun.js +107 -203
  167. package/dist/cjs/dryrun.js.map +1 -1
  168. package/dist/cjs/encoding/address.js +88 -104
  169. package/dist/cjs/encoding/address.js.map +1 -1
  170. package/dist/cjs/encoding/bigint.js +2 -3
  171. package/dist/cjs/encoding/bigint.js.map +1 -1
  172. package/dist/cjs/encoding/binarydata.js +82 -0
  173. package/dist/cjs/encoding/binarydata.js.map +1 -0
  174. package/dist/cjs/encoding/encoding.js +353 -38
  175. package/dist/cjs/encoding/encoding.js.map +1 -1
  176. package/dist/cjs/encoding/schema/address.js +41 -0
  177. package/dist/cjs/encoding/schema/address.js.map +1 -0
  178. package/dist/cjs/encoding/schema/array.js +43 -0
  179. package/dist/cjs/encoding/schema/array.js.map +1 -0
  180. package/dist/cjs/encoding/schema/binarystring.js +55 -0
  181. package/dist/cjs/encoding/schema/binarystring.js.map +1 -0
  182. package/dist/cjs/encoding/schema/blockhash.js +67 -0
  183. package/dist/cjs/encoding/schema/blockhash.js.map +1 -0
  184. package/dist/cjs/encoding/schema/boolean.js +42 -0
  185. package/dist/cjs/encoding/schema/boolean.js.map +1 -0
  186. package/dist/cjs/encoding/schema/bytearray.js +98 -0
  187. package/dist/cjs/encoding/schema/bytearray.js.map +1 -0
  188. package/dist/cjs/encoding/schema/index.js +34 -0
  189. package/dist/cjs/encoding/schema/index.js.map +1 -0
  190. package/dist/cjs/encoding/schema/map.js +528 -0
  191. package/dist/cjs/encoding/schema/map.js.map +1 -0
  192. package/dist/cjs/encoding/schema/optional.js +58 -0
  193. package/dist/cjs/encoding/schema/optional.js.map +1 -0
  194. package/dist/cjs/encoding/schema/string.js +43 -0
  195. package/dist/cjs/encoding/schema/string.js.map +1 -0
  196. package/dist/cjs/encoding/schema/uint64.js +36 -0
  197. package/dist/cjs/encoding/schema/uint64.js.map +1 -0
  198. package/dist/cjs/encoding/schema/untyped.js +33 -0
  199. package/dist/cjs/encoding/schema/untyped.js.map +1 -0
  200. package/dist/cjs/encoding/uint64.js +2 -2
  201. package/dist/cjs/encoding/uint64.js.map +1 -1
  202. package/dist/cjs/group.js +23 -60
  203. package/dist/cjs/group.js.map +1 -1
  204. package/dist/cjs/index.js +2 -2
  205. package/dist/cjs/index.js.map +1 -1
  206. package/dist/cjs/logic/sourcemap.js +56 -25
  207. package/dist/cjs/logic/sourcemap.js.map +1 -1
  208. package/dist/cjs/logicsig.js +113 -146
  209. package/dist/cjs/logicsig.js.map +1 -1
  210. package/dist/cjs/main.js +113 -122
  211. package/dist/cjs/main.js.map +1 -1
  212. package/dist/cjs/makeTxn.js +310 -570
  213. package/dist/cjs/makeTxn.js.map +1 -1
  214. package/dist/cjs/mnemonic/mnemonic.js +8 -8
  215. package/dist/cjs/mnemonic/mnemonic.js.map +1 -1
  216. package/dist/cjs/multisig.js +60 -312
  217. package/dist/cjs/multisig.js.map +1 -1
  218. package/dist/cjs/multisigSigning.js +285 -0
  219. package/dist/cjs/multisigSigning.js.map +1 -0
  220. package/dist/cjs/nacl/naclWrappers.js +2 -2
  221. package/dist/cjs/nacl/naclWrappers.js.map +1 -1
  222. package/dist/cjs/signedTransaction.js +106 -0
  223. package/dist/cjs/signedTransaction.js.map +1 -0
  224. package/dist/cjs/signer.js +7 -7
  225. package/dist/cjs/signer.js.map +1 -1
  226. package/dist/cjs/signing.js +105 -0
  227. package/dist/cjs/signing.js.map +1 -0
  228. package/dist/cjs/stateproof.js +421 -0
  229. package/dist/cjs/stateproof.js.map +1 -0
  230. package/dist/cjs/transaction.js +724 -1009
  231. package/dist/cjs/transaction.js.map +1 -1
  232. package/dist/cjs/types/block.js +813 -0
  233. package/dist/cjs/types/block.js.map +1 -0
  234. package/dist/cjs/types/intDecoding.js +1 -1
  235. package/dist/cjs/types/intDecoding.js.map +1 -1
  236. package/dist/cjs/types/statedelta.js +1155 -0
  237. package/dist/cjs/types/statedelta.js.map +1 -0
  238. package/dist/cjs/types/transactions/base.js +22 -5
  239. package/dist/cjs/types/transactions/base.js.map +1 -1
  240. package/dist/cjs/types/transactions/encoded.js +67 -0
  241. package/dist/cjs/types/transactions/encoded.js.map +1 -1
  242. package/dist/cjs/types/transactions/index.js +2 -5
  243. package/dist/cjs/types/transactions/index.js.map +1 -1
  244. package/dist/cjs/utils/utils.js +86 -22
  245. package/dist/cjs/utils/utils.js.map +1 -1
  246. package/dist/cjs/wait.js +4 -4
  247. package/dist/cjs/wait.js.map +1 -1
  248. package/dist/esm/abi/abi_type.js +22 -15
  249. package/dist/esm/abi/abi_type.js.map +1 -1
  250. package/dist/esm/abi/contract.js +1 -1
  251. package/dist/esm/abi/contract.js.map +1 -1
  252. package/dist/esm/abi/index.js +6 -6
  253. package/dist/esm/abi/index.js.map +1 -1
  254. package/dist/esm/abi/interface.js +1 -1
  255. package/dist/esm/abi/interface.js.map +1 -1
  256. package/dist/esm/abi/method.js +4 -4
  257. package/dist/esm/abi/method.js.map +1 -1
  258. package/dist/esm/abi/transaction.js +1 -1
  259. package/dist/esm/abi/transaction.js.map +1 -1
  260. package/dist/esm/account.js +4 -4
  261. package/dist/esm/account.js.map +1 -1
  262. package/dist/esm/boxStorage.js +15 -15
  263. package/dist/esm/boxStorage.js.map +1 -1
  264. package/dist/esm/client/client.js +74 -40
  265. package/dist/esm/client/client.js.map +1 -1
  266. package/dist/esm/client/index.js +7 -0
  267. package/dist/esm/client/index.js.map +1 -0
  268. package/dist/esm/client/kmd.js +67 -62
  269. package/dist/esm/client/kmd.js.map +1 -1
  270. package/dist/esm/client/urlTokenBaseHTTPClient.js +16 -11
  271. package/dist/esm/client/urlTokenBaseHTTPClient.js.map +1 -1
  272. package/dist/esm/client/v2/algod/accountApplicationInformation.js +10 -6
  273. package/dist/esm/client/v2/algod/accountApplicationInformation.js.map +1 -1
  274. package/dist/esm/client/v2/algod/accountAssetInformation.js +10 -6
  275. package/dist/esm/client/v2/algod/accountAssetInformation.js.map +1 -1
  276. package/dist/esm/client/v2/algod/accountInformation.js +10 -5
  277. package/dist/esm/client/v2/algod/accountInformation.js.map +1 -1
  278. package/dist/esm/client/v2/algod/algod.js +71 -70
  279. package/dist/esm/client/v2/algod/algod.js.map +1 -1
  280. package/dist/esm/client/v2/algod/block.js +5 -9
  281. package/dist/esm/client/v2/algod/block.js.map +1 -1
  282. package/dist/esm/client/v2/algod/compile.js +16 -10
  283. package/dist/esm/client/v2/algod/compile.js.map +1 -1
  284. package/dist/esm/client/v2/algod/disassemble.js +16 -10
  285. package/dist/esm/client/v2/algod/disassemble.js.map +1 -1
  286. package/dist/esm/client/v2/algod/dryrun.js +16 -12
  287. package/dist/esm/client/v2/algod/dryrun.js.map +1 -1
  288. package/dist/esm/client/v2/algod/genesis.js +5 -1
  289. package/dist/esm/client/v2/algod/genesis.js.map +1 -1
  290. package/dist/esm/client/v2/algod/getApplicationBoxByName.js +9 -9
  291. package/dist/esm/client/v2/algod/getApplicationBoxByName.js.map +1 -1
  292. package/dist/esm/client/v2/algod/getApplicationBoxes.js +7 -7
  293. package/dist/esm/client/v2/algod/getApplicationBoxes.js.map +1 -1
  294. package/dist/esm/client/v2/algod/getApplicationByID.js +9 -4
  295. package/dist/esm/client/v2/algod/getApplicationByID.js.map +1 -1
  296. package/dist/esm/client/v2/algod/getAssetByID.js +9 -4
  297. package/dist/esm/client/v2/algod/getAssetByID.js.map +1 -1
  298. package/dist/esm/client/v2/algod/getBlockHash.js +9 -5
  299. package/dist/esm/client/v2/algod/getBlockHash.js.map +1 -1
  300. package/dist/esm/client/v2/algod/getBlockOffsetTimestamp.js +5 -4
  301. package/dist/esm/client/v2/algod/getBlockOffsetTimestamp.js.map +1 -1
  302. package/dist/esm/client/v2/algod/getBlockTxids.js +9 -3
  303. package/dist/esm/client/v2/algod/getBlockTxids.js.map +1 -1
  304. package/dist/esm/client/v2/algod/getLedgerStateDelta.js +10 -5
  305. package/dist/esm/client/v2/algod/getLedgerStateDelta.js.map +1 -1
  306. package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +10 -5
  307. package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -1
  308. package/dist/esm/client/v2/algod/getSyncRound.js +5 -4
  309. package/dist/esm/client/v2/algod/getSyncRound.js.map +1 -1
  310. package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +8 -8
  311. package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -1
  312. package/dist/esm/client/v2/algod/getTransactionProof.js +9 -5
  313. package/dist/esm/client/v2/algod/getTransactionProof.js.map +1 -1
  314. package/dist/esm/client/v2/algod/healthCheck.js +3 -8
  315. package/dist/esm/client/v2/algod/healthCheck.js.map +1 -1
  316. package/dist/esm/client/v2/algod/index.js +4 -0
  317. package/dist/esm/client/v2/algod/index.js.map +1 -0
  318. package/dist/esm/client/v2/algod/lightBlockHeaderProof.js +9 -4
  319. package/dist/esm/client/v2/algod/lightBlockHeaderProof.js.map +1 -1
  320. package/dist/esm/client/v2/algod/models/types.js +3701 -1825
  321. package/dist/esm/client/v2/algod/models/types.js.map +1 -1
  322. package/dist/esm/client/v2/algod/pendingTransactionInformation.js +5 -8
  323. package/dist/esm/client/v2/algod/pendingTransactionInformation.js.map +1 -1
  324. package/dist/esm/client/v2/algod/pendingTransactions.js +5 -7
  325. package/dist/esm/client/v2/algod/pendingTransactions.js.map +1 -1
  326. package/dist/esm/client/v2/algod/pendingTransactionsByAddress.js +6 -9
  327. package/dist/esm/client/v2/algod/pendingTransactionsByAddress.js.map +1 -1
  328. package/dist/esm/client/v2/algod/ready.js +3 -1
  329. package/dist/esm/client/v2/algod/ready.js.map +1 -1
  330. package/dist/esm/client/v2/algod/sendRawTransaction.js +15 -6
  331. package/dist/esm/client/v2/algod/sendRawTransaction.js.map +1 -1
  332. package/dist/esm/client/v2/algod/setBlockOffsetTimestamp.js +12 -7
  333. package/dist/esm/client/v2/algod/setBlockOffsetTimestamp.js.map +1 -1
  334. package/dist/esm/client/v2/algod/setSyncRound.js +12 -7
  335. package/dist/esm/client/v2/algod/setSyncRound.js.map +1 -1
  336. package/dist/esm/client/v2/algod/simulateTransaction.js +14 -11
  337. package/dist/esm/client/v2/algod/simulateTransaction.js.map +1 -1
  338. package/dist/esm/client/v2/algod/stateproof.js +9 -4
  339. package/dist/esm/client/v2/algod/stateproof.js.map +1 -1
  340. package/dist/esm/client/v2/algod/status.js +7 -1
  341. package/dist/esm/client/v2/algod/status.js.map +1 -1
  342. package/dist/esm/client/v2/algod/statusAfterBlock.js +9 -4
  343. package/dist/esm/client/v2/algod/statusAfterBlock.js.map +1 -1
  344. package/dist/esm/client/v2/algod/suggestedParams.js +12 -8
  345. package/dist/esm/client/v2/algod/suggestedParams.js.map +1 -1
  346. package/dist/esm/client/v2/algod/supply.js +7 -1
  347. package/dist/esm/client/v2/algod/supply.js.map +1 -1
  348. package/dist/esm/client/v2/algod/unsetSyncRound.js +10 -4
  349. package/dist/esm/client/v2/algod/unsetSyncRound.js.map +1 -1
  350. package/dist/esm/client/v2/algod/versions.js +7 -1
  351. package/dist/esm/client/v2/algod/versions.js.map +1 -1
  352. package/dist/esm/client/v2/indexer/index.js +4 -0
  353. package/dist/esm/client/v2/indexer/index.js.map +1 -0
  354. package/dist/esm/client/v2/indexer/indexer.js +42 -42
  355. package/dist/esm/client/v2/indexer/indexer.js.map +1 -1
  356. package/dist/esm/client/v2/indexer/lookupAccountAppLocalStates.js +10 -5
  357. package/dist/esm/client/v2/indexer/lookupAccountAppLocalStates.js.map +1 -1
  358. package/dist/esm/client/v2/indexer/lookupAccountAssets.js +10 -5
  359. package/dist/esm/client/v2/indexer/lookupAccountAssets.js.map +1 -1
  360. package/dist/esm/client/v2/indexer/lookupAccountByID.js +10 -5
  361. package/dist/esm/client/v2/indexer/lookupAccountByID.js.map +1 -1
  362. package/dist/esm/client/v2/indexer/lookupAccountCreatedApplications.js +10 -5
  363. package/dist/esm/client/v2/indexer/lookupAccountCreatedApplications.js.map +1 -1
  364. package/dist/esm/client/v2/indexer/lookupAccountCreatedAssets.js +10 -5
  365. package/dist/esm/client/v2/indexer/lookupAccountCreatedAssets.js.map +1 -1
  366. package/dist/esm/client/v2/indexer/lookupAccountTransactions.js +18 -11
  367. package/dist/esm/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
  368. package/dist/esm/client/v2/indexer/lookupApplicationBoxByIDandName.js +9 -9
  369. package/dist/esm/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -1
  370. package/dist/esm/client/v2/indexer/lookupApplicationLogs.js +9 -4
  371. package/dist/esm/client/v2/indexer/lookupApplicationLogs.js.map +1 -1
  372. package/dist/esm/client/v2/indexer/lookupApplications.js +9 -4
  373. package/dist/esm/client/v2/indexer/lookupApplications.js.map +1 -1
  374. package/dist/esm/client/v2/indexer/lookupAssetBalances.js +9 -4
  375. package/dist/esm/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  376. package/dist/esm/client/v2/indexer/lookupAssetByID.js +9 -4
  377. package/dist/esm/client/v2/indexer/lookupAssetByID.js.map +1 -1
  378. package/dist/esm/client/v2/indexer/lookupAssetTransactions.js +17 -10
  379. package/dist/esm/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
  380. package/dist/esm/client/v2/indexer/lookupBlock.js +9 -4
  381. package/dist/esm/client/v2/indexer/lookupBlock.js.map +1 -1
  382. package/dist/esm/client/v2/indexer/lookupTransactionByID.js +9 -4
  383. package/dist/esm/client/v2/indexer/lookupTransactionByID.js.map +1 -1
  384. package/dist/esm/client/v2/indexer/makeHealthCheck.js +7 -1
  385. package/dist/esm/client/v2/indexer/makeHealthCheck.js.map +1 -1
  386. package/dist/esm/client/v2/indexer/models/types.js +3591 -1648
  387. package/dist/esm/client/v2/indexer/models/types.js.map +1 -1
  388. package/dist/esm/client/v2/indexer/searchAccounts.js +8 -2
  389. package/dist/esm/client/v2/indexer/searchAccounts.js.map +1 -1
  390. package/dist/esm/client/v2/indexer/searchForApplicationBoxes.js +7 -7
  391. package/dist/esm/client/v2/indexer/searchForApplicationBoxes.js.map +1 -1
  392. package/dist/esm/client/v2/indexer/searchForApplications.js +8 -2
  393. package/dist/esm/client/v2/indexer/searchForApplications.js.map +1 -1
  394. package/dist/esm/client/v2/indexer/searchForAssets.js +8 -2
  395. package/dist/esm/client/v2/indexer/searchForAssets.js.map +1 -1
  396. package/dist/esm/client/v2/indexer/searchForTransactions.js +15 -7
  397. package/dist/esm/client/v2/indexer/searchForTransactions.js.map +1 -1
  398. package/dist/esm/client/v2/jsonrequest.js +22 -51
  399. package/dist/esm/client/v2/jsonrequest.js.map +1 -1
  400. package/dist/esm/client/v2/serviceClient.js +3 -20
  401. package/dist/esm/client/v2/serviceClient.js.map +1 -1
  402. package/dist/esm/client/v2/untypedmodel.js +18 -0
  403. package/dist/esm/client/v2/untypedmodel.js.map +1 -0
  404. package/dist/esm/composer.js +43 -37
  405. package/dist/esm/composer.js.map +1 -1
  406. package/dist/esm/convert.js.map +1 -1
  407. package/dist/esm/dryrun.js +98 -195
  408. package/dist/esm/dryrun.js.map +1 -1
  409. package/dist/esm/encoding/address.js +85 -100
  410. package/dist/esm/encoding/address.js.map +1 -1
  411. package/dist/esm/encoding/bigint.js +2 -3
  412. package/dist/esm/encoding/bigint.js.map +1 -1
  413. package/dist/esm/encoding/binarydata.js +73 -0
  414. package/dist/esm/encoding/binarydata.js.map +1 -0
  415. package/dist/esm/encoding/encoding.js +337 -12
  416. package/dist/esm/encoding/encoding.js.map +1 -1
  417. package/dist/esm/encoding/schema/address.js +37 -0
  418. package/dist/esm/encoding/schema/address.js.map +1 -0
  419. package/dist/esm/encoding/schema/array.js +39 -0
  420. package/dist/esm/encoding/schema/array.js.map +1 -0
  421. package/dist/esm/encoding/schema/binarystring.js +51 -0
  422. package/dist/esm/encoding/schema/binarystring.js.map +1 -0
  423. package/dist/esm/encoding/schema/blockhash.js +60 -0
  424. package/dist/esm/encoding/schema/blockhash.js.map +1 -0
  425. package/dist/esm/encoding/schema/boolean.js +38 -0
  426. package/dist/esm/encoding/schema/boolean.js.map +1 -0
  427. package/dist/esm/encoding/schema/bytearray.js +93 -0
  428. package/dist/esm/encoding/schema/bytearray.js.map +1 -0
  429. package/dist/esm/encoding/schema/index.js +12 -0
  430. package/dist/esm/encoding/schema/index.js.map +1 -0
  431. package/dist/esm/encoding/schema/map.js +517 -0
  432. package/dist/esm/encoding/schema/map.js.map +1 -0
  433. package/dist/esm/encoding/schema/optional.js +54 -0
  434. package/dist/esm/encoding/schema/optional.js.map +1 -0
  435. package/dist/esm/encoding/schema/string.js +39 -0
  436. package/dist/esm/encoding/schema/string.js.map +1 -0
  437. package/dist/esm/encoding/schema/uint64.js +32 -0
  438. package/dist/esm/encoding/schema/uint64.js.map +1 -0
  439. package/dist/esm/encoding/schema/untyped.js +29 -0
  440. package/dist/esm/encoding/schema/untyped.js.map +1 -0
  441. package/dist/esm/encoding/uint64.js +1 -1
  442. package/dist/esm/encoding/uint64.js.map +1 -1
  443. package/dist/esm/group.js +22 -58
  444. package/dist/esm/group.js.map +1 -1
  445. package/dist/esm/index.js +2 -2
  446. package/dist/esm/index.js.map +1 -1
  447. package/dist/esm/logic/sourcemap.js +54 -23
  448. package/dist/esm/logic/sourcemap.js.map +1 -1
  449. package/dist/esm/logicsig.js +110 -141
  450. package/dist/esm/logicsig.js.map +1 -1
  451. package/dist/esm/main.js +47 -76
  452. package/dist/esm/main.js.map +1 -1
  453. package/dist/esm/makeTxn.js +304 -529
  454. package/dist/esm/makeTxn.js.map +1 -1
  455. package/dist/esm/mnemonic/mnemonic.js +5 -5
  456. package/dist/esm/mnemonic/mnemonic.js.map +1 -1
  457. package/dist/esm/multisig.js +56 -305
  458. package/dist/esm/multisig.js.map +1 -1
  459. package/dist/esm/multisigSigning.js +254 -0
  460. package/dist/esm/multisigSigning.js.map +1 -0
  461. package/dist/esm/nacl/naclWrappers.js +1 -1
  462. package/dist/esm/nacl/naclWrappers.js.map +1 -1
  463. package/dist/esm/package.json +1 -0
  464. package/dist/esm/signedTransaction.js +100 -0
  465. package/dist/esm/signedTransaction.js.map +1 -0
  466. package/dist/esm/signer.js +3 -3
  467. package/dist/esm/signer.js.map +1 -1
  468. package/dist/esm/signing.js +77 -0
  469. package/dist/esm/signing.js.map +1 -0
  470. package/dist/esm/stateproof.js +408 -0
  471. package/dist/esm/stateproof.js.map +1 -0
  472. package/dist/esm/transaction.js +723 -1005
  473. package/dist/esm/transaction.js.map +1 -1
  474. package/dist/esm/types/block.js +797 -0
  475. package/dist/esm/types/block.js.map +1 -0
  476. package/dist/esm/types/intDecoding.js +1 -1
  477. package/dist/esm/types/intDecoding.js.map +1 -1
  478. package/dist/esm/types/statedelta.js +1129 -0
  479. package/dist/esm/types/statedelta.js.map +1 -0
  480. package/dist/esm/types/transactions/base.js +18 -2
  481. package/dist/esm/types/transactions/base.js.map +1 -1
  482. package/dist/esm/types/transactions/encoded.js +62 -1
  483. package/dist/esm/types/transactions/encoded.js.map +1 -1
  484. package/dist/esm/types/transactions/index.js +2 -3
  485. package/dist/esm/types/transactions/index.js.map +1 -1
  486. package/dist/esm/utils/utils.js +80 -21
  487. package/dist/esm/utils/utils.js.map +1 -1
  488. package/dist/esm/wait.js +4 -4
  489. package/dist/esm/wait.js.map +1 -1
  490. package/dist/types/abi/abi_type.d.ts +1 -1
  491. package/dist/types/abi/contract.d.ts +2 -2
  492. package/dist/types/abi/index.d.ts +6 -6
  493. package/dist/types/abi/interface.d.ts +1 -1
  494. package/dist/types/abi/method.d.ts +6 -6
  495. package/dist/types/abi/transaction.d.ts +1 -1
  496. package/dist/types/account.d.ts +1 -1
  497. package/dist/types/boxStorage.d.ts +4 -5
  498. package/dist/types/client/baseHTTPClient.d.ts +9 -6
  499. package/dist/types/client/client.d.ts +59 -18
  500. package/dist/types/client/index.d.ts +5 -0
  501. package/dist/types/client/kmd.d.ts +12 -10
  502. package/dist/types/client/urlTokenBaseHTTPClient.d.ts +8 -5
  503. package/dist/types/client/v2/algod/accountApplicationInformation.d.ts +8 -6
  504. package/dist/types/client/v2/algod/accountAssetInformation.d.ts +8 -6
  505. package/dist/types/client/v2/algod/accountInformation.d.ts +7 -5
  506. package/dist/types/client/v2/algod/algod.d.ts +53 -52
  507. package/dist/types/client/v2/algod/block.d.ts +5 -4
  508. package/dist/types/client/v2/algod/compile.d.ts +7 -9
  509. package/dist/types/client/v2/algod/disassemble.d.ts +7 -9
  510. package/dist/types/client/v2/algod/dryrun.d.ts +7 -9
  511. package/dist/types/client/v2/algod/genesis.d.ts +4 -2
  512. package/dist/types/client/v2/algod/getApplicationBoxByName.d.ts +6 -7
  513. package/dist/types/client/v2/algod/getApplicationBoxes.d.ts +6 -7
  514. package/dist/types/client/v2/algod/getApplicationByID.d.ts +6 -5
  515. package/dist/types/client/v2/algod/getAssetByID.d.ts +6 -5
  516. package/dist/types/client/v2/algod/getBlockHash.d.ts +7 -6
  517. package/dist/types/client/v2/algod/getBlockOffsetTimestamp.d.ts +5 -4
  518. package/dist/types/client/v2/algod/getBlockTxids.d.ts +6 -5
  519. package/dist/types/client/v2/algod/getLedgerStateDelta.d.ts +6 -5
  520. package/dist/types/client/v2/algod/getLedgerStateDeltaForTransactionGroup.d.ts +6 -5
  521. package/dist/types/client/v2/algod/getSyncRound.d.ts +5 -4
  522. package/dist/types/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.d.ts +6 -7
  523. package/dist/types/client/v2/algod/getTransactionProof.d.ts +6 -5
  524. package/dist/types/client/v2/algod/healthCheck.d.ts +4 -3
  525. package/dist/types/client/v2/algod/index.d.ts +2 -0
  526. package/dist/types/client/v2/algod/lightBlockHeaderProof.d.ts +6 -5
  527. package/dist/types/client/v2/algod/models/types.d.ts +604 -317
  528. package/dist/types/client/v2/algod/pendingTransactionInformation.d.ts +5 -4
  529. package/dist/types/client/v2/algod/pendingTransactions.d.ts +5 -4
  530. package/dist/types/client/v2/algod/pendingTransactionsByAddress.d.ts +7 -5
  531. package/dist/types/client/v2/algod/ready.d.ts +4 -2
  532. package/dist/types/client/v2/algod/sendRawTransaction.d.ts +7 -5
  533. package/dist/types/client/v2/algod/setBlockOffsetTimestamp.d.ts +6 -6
  534. package/dist/types/client/v2/algod/setSyncRound.d.ts +6 -6
  535. package/dist/types/client/v2/algod/simulateTransaction.d.ts +7 -7
  536. package/dist/types/client/v2/algod/stateproof.d.ts +6 -5
  537. package/dist/types/client/v2/algod/status.d.ts +5 -2
  538. package/dist/types/client/v2/algod/statusAfterBlock.d.ts +6 -5
  539. package/dist/types/client/v2/algod/suggestedParams.d.ts +25 -4
  540. package/dist/types/client/v2/algod/supply.d.ts +5 -2
  541. package/dist/types/client/v2/algod/unsetSyncRound.d.ts +5 -3
  542. package/dist/types/client/v2/algod/versions.d.ts +5 -2
  543. package/dist/types/client/v2/indexer/index.d.ts +2 -0
  544. package/dist/types/client/v2/indexer/indexer.d.ts +31 -30
  545. package/dist/types/client/v2/indexer/lookupAccountAppLocalStates.d.ts +7 -5
  546. package/dist/types/client/v2/indexer/lookupAccountAssets.d.ts +7 -5
  547. package/dist/types/client/v2/indexer/lookupAccountByID.d.ts +7 -5
  548. package/dist/types/client/v2/indexer/lookupAccountCreatedApplications.d.ts +7 -5
  549. package/dist/types/client/v2/indexer/lookupAccountCreatedAssets.d.ts +7 -5
  550. package/dist/types/client/v2/indexer/lookupAccountTransactions.d.ts +11 -9
  551. package/dist/types/client/v2/indexer/lookupApplicationBoxByIDandName.d.ts +6 -7
  552. package/dist/types/client/v2/indexer/lookupApplicationLogs.d.ts +6 -5
  553. package/dist/types/client/v2/indexer/lookupApplications.d.ts +6 -5
  554. package/dist/types/client/v2/indexer/lookupAssetBalances.d.ts +6 -5
  555. package/dist/types/client/v2/indexer/lookupAssetByID.d.ts +6 -5
  556. package/dist/types/client/v2/indexer/lookupAssetTransactions.d.ts +12 -10
  557. package/dist/types/client/v2/indexer/lookupBlock.d.ts +6 -5
  558. package/dist/types/client/v2/indexer/lookupTransactionByID.d.ts +6 -5
  559. package/dist/types/client/v2/indexer/makeHealthCheck.d.ts +5 -2
  560. package/dist/types/client/v2/indexer/models/types.d.ts +513 -267
  561. package/dist/types/client/v2/indexer/searchAccounts.d.ts +7 -3
  562. package/dist/types/client/v2/indexer/searchForApplicationBoxes.d.ts +6 -7
  563. package/dist/types/client/v2/indexer/searchForApplications.d.ts +7 -3
  564. package/dist/types/client/v2/indexer/searchForAssets.d.ts +7 -3
  565. package/dist/types/client/v2/indexer/searchForTransactions.d.ts +11 -7
  566. package/dist/types/client/v2/jsonrequest.d.ts +20 -33
  567. package/dist/types/client/v2/serviceClient.d.ts +4 -18
  568. package/dist/types/client/v2/untypedmodel.d.ts +10 -0
  569. package/dist/types/composer.d.ts +18 -17
  570. package/dist/types/dryrun.d.ts +8 -80
  571. package/dist/types/encoding/address.d.ts +40 -31
  572. package/dist/types/encoding/binarydata.d.ts +30 -0
  573. package/dist/types/encoding/encoding.d.ts +219 -7
  574. package/dist/types/encoding/schema/address.d.ts +10 -0
  575. package/dist/types/encoding/schema/array.d.ts +11 -0
  576. package/dist/types/encoding/schema/binarystring.d.ts +18 -0
  577. package/dist/types/encoding/schema/blockhash.d.ts +16 -0
  578. package/dist/types/encoding/schema/boolean.d.ts +10 -0
  579. package/dist/types/encoding/schema/bytearray.d.ts +19 -0
  580. package/dist/types/encoding/schema/index.d.ts +11 -0
  581. package/dist/types/encoding/schema/map.d.ts +125 -0
  582. package/dist/types/encoding/schema/optional.d.ts +24 -0
  583. package/dist/types/encoding/schema/string.d.ts +9 -0
  584. package/dist/types/encoding/schema/uint64.d.ts +9 -0
  585. package/dist/types/encoding/schema/untyped.d.ts +9 -0
  586. package/dist/types/encoding/uint64.d.ts +1 -0
  587. package/dist/types/group.d.ts +6 -25
  588. package/dist/types/index.d.ts +2 -2
  589. package/dist/types/logic/sourcemap.d.ts +39 -13
  590. package/dist/types/logicsig.d.ts +27 -57
  591. package/dist/types/main.d.ts +43 -54
  592. package/dist/types/makeTxn.d.ts +117 -404
  593. package/dist/types/mnemonic/mnemonic.d.ts +1 -1
  594. package/dist/types/multisig.d.ts +28 -99
  595. package/dist/types/multisigSigning.d.ts +72 -0
  596. package/dist/types/signedTransaction.d.ts +55 -0
  597. package/dist/types/signer.d.ts +5 -5
  598. package/dist/types/signing.d.ts +29 -0
  599. package/dist/types/stateproof.d.ts +194 -0
  600. package/dist/types/transaction.d.ts +103 -182
  601. package/dist/types/types/account.d.ts +2 -1
  602. package/dist/types/types/block.d.ts +407 -0
  603. package/dist/types/types/intDecoding.d.ts +1 -1
  604. package/dist/types/types/statedelta.d.ts +575 -0
  605. package/dist/types/types/transactions/base.d.ts +206 -118
  606. package/dist/types/types/transactions/encoded.d.ts +7 -301
  607. package/dist/types/types/transactions/index.d.ts +2 -15
  608. package/dist/types/types/utils.d.ts +7 -7
  609. package/dist/types/utils/utils.d.ts +21 -16
  610. package/dist/types/wait.d.ts +3 -2
  611. package/package.json +48 -20
  612. package/src/abi/abi_type.ts +28 -18
  613. package/src/abi/contract.ts +2 -2
  614. package/src/abi/index.ts +6 -6
  615. package/src/abi/interface.ts +1 -1
  616. package/src/abi/method.ts +11 -9
  617. package/src/abi/transaction.ts +2 -2
  618. package/src/account.ts +5 -5
  619. package/src/boxStorage.ts +25 -23
  620. package/src/client/baseHTTPClient.ts +12 -6
  621. package/src/client/client.ts +147 -75
  622. package/src/client/index.ts +6 -0
  623. package/src/client/kmd.ts +79 -72
  624. package/src/client/urlTokenBaseHTTPClient.ts +25 -14
  625. package/src/client/v2/algod/accountApplicationInformation.ts +16 -9
  626. package/src/client/v2/algod/accountAssetInformation.ts +16 -9
  627. package/src/client/v2/algod/accountInformation.ts +16 -11
  628. package/src/client/v2/algod/algod.ts +83 -105
  629. package/src/client/v2/algod/block.ts +7 -11
  630. package/src/client/v2/algod/compile.ts +27 -19
  631. package/src/client/v2/algod/disassemble.ts +27 -19
  632. package/src/client/v2/algod/dryrun.ts +23 -19
  633. package/src/client/v2/algod/genesis.ts +8 -2
  634. package/src/client/v2/algod/getApplicationBoxByName.ts +10 -15
  635. package/src/client/v2/algod/getApplicationBoxes.ts +12 -13
  636. package/src/client/v2/algod/getApplicationByID.ts +15 -7
  637. package/src/client/v2/algod/getAssetByID.ts +15 -7
  638. package/src/client/v2/algod/getBlockHash.ts +13 -9
  639. package/src/client/v2/algod/getBlockOffsetTimestamp.ts +7 -8
  640. package/src/client/v2/algod/getBlockTxids.ts +12 -6
  641. package/src/client/v2/algod/getLedgerStateDelta.ts +16 -8
  642. package/src/client/v2/algod/getLedgerStateDeltaForTransactionGroup.ts +16 -8
  643. package/src/client/v2/algod/getSyncRound.ts +7 -8
  644. package/src/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.ts +15 -15
  645. package/src/client/v2/algod/getTransactionProof.ts +11 -9
  646. package/src/client/v2/algod/healthCheck.ts +5 -9
  647. package/src/client/v2/algod/index.ts +3 -0
  648. package/src/client/v2/algod/lightBlockHeaderProof.ts +15 -8
  649. package/src/client/v2/algod/models/types.ts +4699 -2263
  650. package/src/client/v2/algod/pendingTransactionInformation.ts +11 -11
  651. package/src/client/v2/algod/pendingTransactions.ts +7 -9
  652. package/src/client/v2/algod/pendingTransactionsByAddress.ts +12 -11
  653. package/src/client/v2/algod/ready.ts +6 -2
  654. package/src/client/v2/algod/sendRawTransaction.ts +24 -13
  655. package/src/client/v2/algod/setBlockOffsetTimestamp.ts +21 -11
  656. package/src/client/v2/algod/setSyncRound.ts +21 -11
  657. package/src/client/v2/algod/simulateTransaction.ts +22 -23
  658. package/src/client/v2/algod/stateproof.ts +15 -8
  659. package/src/client/v2/algod/status.ts +10 -2
  660. package/src/client/v2/algod/statusAfterBlock.ts +15 -7
  661. package/src/client/v2/algod/suggestedParams.ts +40 -10
  662. package/src/client/v2/algod/supply.ts +10 -2
  663. package/src/client/v2/algod/unsetSyncRound.ts +16 -5
  664. package/src/client/v2/algod/versions.ts +10 -2
  665. package/src/client/v2/indexer/index.ts +3 -0
  666. package/src/client/v2/indexer/indexer.ts +51 -59
  667. package/src/client/v2/indexer/lookupAccountAppLocalStates.ts +16 -11
  668. package/src/client/v2/indexer/lookupAccountAssets.ts +16 -11
  669. package/src/client/v2/indexer/lookupAccountByID.ts +16 -11
  670. package/src/client/v2/indexer/lookupAccountCreatedApplications.ts +16 -11
  671. package/src/client/v2/indexer/lookupAccountCreatedAssets.ts +16 -11
  672. package/src/client/v2/indexer/lookupAccountTransactions.ts +26 -19
  673. package/src/client/v2/indexer/lookupApplicationBoxByIDandName.ts +10 -15
  674. package/src/client/v2/indexer/lookupApplicationLogs.ts +15 -7
  675. package/src/client/v2/indexer/lookupApplications.ts +15 -7
  676. package/src/client/v2/indexer/lookupAssetBalances.ts +15 -7
  677. package/src/client/v2/indexer/lookupAssetByID.ts +15 -7
  678. package/src/client/v2/indexer/lookupAssetTransactions.ts +27 -16
  679. package/src/client/v2/indexer/lookupBlock.ts +15 -7
  680. package/src/client/v2/indexer/lookupTransactionByID.ts +15 -7
  681. package/src/client/v2/indexer/makeHealthCheck.ts +10 -2
  682. package/src/client/v2/indexer/models/types.ts +4454 -1988
  683. package/src/client/v2/indexer/searchAccounts.ts +13 -4
  684. package/src/client/v2/indexer/searchForApplicationBoxes.ts +12 -13
  685. package/src/client/v2/indexer/searchForApplications.ts +13 -4
  686. package/src/client/v2/indexer/searchForAssets.ts +13 -4
  687. package/src/client/v2/indexer/searchForTransactions.ts +22 -11
  688. package/src/client/v2/jsonrequest.ts +39 -57
  689. package/src/client/v2/serviceClient.ts +9 -31
  690. package/src/client/v2/untypedmodel.ts +25 -0
  691. package/src/composer.ts +83 -60
  692. package/src/dryrun.ts +129 -306
  693. package/src/encoding/address.ts +134 -146
  694. package/src/encoding/bigint.ts +2 -4
  695. package/src/encoding/binarydata.ts +80 -0
  696. package/src/encoding/encoding.ts +558 -13
  697. package/src/encoding/schema/address.ts +53 -0
  698. package/src/encoding/schema/array.ts +66 -0
  699. package/src/encoding/schema/binarystring.ts +73 -0
  700. package/src/encoding/schema/blockhash.ts +84 -0
  701. package/src/encoding/schema/boolean.ts +54 -0
  702. package/src/encoding/schema/bytearray.ts +127 -0
  703. package/src/encoding/schema/index.ts +26 -0
  704. package/src/encoding/schema/map.ts +713 -0
  705. package/src/encoding/schema/optional.ts +72 -0
  706. package/src/encoding/schema/string.ts +55 -0
  707. package/src/encoding/schema/uint64.ts +46 -0
  708. package/src/encoding/schema/untyped.ts +47 -0
  709. package/src/encoding/uint64.ts +2 -1
  710. package/src/group.ts +27 -75
  711. package/src/index.ts +2 -2
  712. package/src/logic/sourcemap.ts +94 -29
  713. package/src/logicsig.ts +154 -202
  714. package/src/main.ts +91 -94
  715. package/src/makeTxn.ts +660 -1338
  716. package/src/mnemonic/mnemonic.ts +14 -14
  717. package/src/multisig.ts +89 -403
  718. package/src/multisigSigning.ts +359 -0
  719. package/src/nacl/naclWrappers.ts +1 -1
  720. package/src/signedTransaction.ts +163 -0
  721. package/src/signer.ts +10 -5
  722. package/src/signing.ts +95 -0
  723. package/src/stateproof.ts +595 -0
  724. package/src/transaction.ts +986 -1242
  725. package/src/types/account.ts +3 -1
  726. package/src/types/block.ts +1278 -0
  727. package/src/types/intDecoding.ts +1 -1
  728. package/src/types/statedelta.ts +1717 -0
  729. package/src/types/transactions/base.ts +230 -122
  730. package/src/types/transactions/encoded.ts +81 -371
  731. package/src/types/transactions/index.ts +2 -72
  732. package/src/types/utils.ts +3 -3
  733. package/src/utils/utils.ts +96 -25
  734. package/src/wait.ts +8 -7
  735. package/dist/cjs/bid.js +0 -83
  736. package/dist/cjs/bid.js.map +0 -1
  737. package/dist/cjs/client/v2/basemodel.js +0 -67
  738. package/dist/cjs/client/v2/basemodel.js.map +0 -1
  739. package/dist/cjs/types/address.js +0 -3
  740. package/dist/cjs/types/address.js.map +0 -1
  741. package/dist/cjs/types/blockHeader.js +0 -3
  742. package/dist/cjs/types/blockHeader.js.map +0 -1
  743. package/dist/cjs/types/index.js.map +0 -1
  744. package/dist/cjs/types/multisig.js +0 -3
  745. package/dist/cjs/types/multisig.js.map +0 -1
  746. package/dist/cjs/types/transactions/application.js +0 -3
  747. package/dist/cjs/types/transactions/application.js.map +0 -1
  748. package/dist/cjs/types/transactions/asset.js +0 -3
  749. package/dist/cjs/types/transactions/asset.js.map +0 -1
  750. package/dist/cjs/types/transactions/builder.js +0 -3
  751. package/dist/cjs/types/transactions/builder.js.map +0 -1
  752. package/dist/cjs/types/transactions/keyreg.js +0 -3
  753. package/dist/cjs/types/transactions/keyreg.js.map +0 -1
  754. package/dist/cjs/types/transactions/payment.js +0 -3
  755. package/dist/cjs/types/transactions/payment.js.map +0 -1
  756. package/dist/cjs/types/transactions/stateproof.js +0 -3
  757. package/dist/cjs/types/transactions/stateproof.js.map +0 -1
  758. package/dist/esm/bid.js +0 -57
  759. package/dist/esm/bid.js.map +0 -1
  760. package/dist/esm/client/v2/basemodel.js +0 -64
  761. package/dist/esm/client/v2/basemodel.js.map +0 -1
  762. package/dist/esm/types/address.js +0 -2
  763. package/dist/esm/types/address.js.map +0 -1
  764. package/dist/esm/types/blockHeader.js +0 -2
  765. package/dist/esm/types/blockHeader.js.map +0 -1
  766. package/dist/esm/types/index.js +0 -4
  767. package/dist/esm/types/index.js.map +0 -1
  768. package/dist/esm/types/multisig.js +0 -2
  769. package/dist/esm/types/multisig.js.map +0 -1
  770. package/dist/esm/types/transactions/application.js +0 -2
  771. package/dist/esm/types/transactions/application.js.map +0 -1
  772. package/dist/esm/types/transactions/asset.js +0 -2
  773. package/dist/esm/types/transactions/asset.js.map +0 -1
  774. package/dist/esm/types/transactions/builder.js +0 -2
  775. package/dist/esm/types/transactions/builder.js.map +0 -1
  776. package/dist/esm/types/transactions/keyreg.js +0 -2
  777. package/dist/esm/types/transactions/keyreg.js.map +0 -1
  778. package/dist/esm/types/transactions/payment.js +0 -2
  779. package/dist/esm/types/transactions/payment.js.map +0 -1
  780. package/dist/esm/types/transactions/stateproof.js +0 -2
  781. package/dist/esm/types/transactions/stateproof.js.map +0 -1
  782. package/dist/types/bid.d.ts +0 -38
  783. package/dist/types/client/v2/basemodel.d.ts +0 -11
  784. package/dist/types/types/address.d.ts +0 -7
  785. package/dist/types/types/blockHeader.d.ts +0 -67
  786. package/dist/types/types/index.d.ts +0 -3
  787. package/dist/types/types/multisig.d.ts +0 -20
  788. package/dist/types/types/transactions/application.d.ts +0 -22
  789. package/dist/types/types/transactions/asset.d.ts +0 -28
  790. package/dist/types/types/transactions/builder.d.ts +0 -36
  791. package/dist/types/types/transactions/keyreg.d.ts +0 -8
  792. package/dist/types/types/transactions/payment.d.ts +0 -8
  793. package/dist/types/types/transactions/stateproof.d.ts +0 -8
  794. package/src/bid.ts +0 -96
  795. package/src/client/v2/basemodel.ts +0 -81
  796. package/src/types/address.ts +0 -7
  797. package/src/types/blockHeader.ts +0 -81
  798. package/src/types/index.ts +0 -3
  799. package/src/types/multisig.ts +0 -22
  800. package/src/types/transactions/application.ts +0 -111
  801. package/src/types/transactions/asset.ts +0 -108
  802. package/src/types/transactions/builder.ts +0 -69
  803. package/src/types/transactions/keyreg.ts +0 -23
  804. package/src/types/transactions/payment.ts +0 -14
  805. package/src/types/transactions/stateproof.ts +0 -17
@@ -0,0 +1,797 @@
1
+ import { NamedMapSchema, Uint64MapSchema, SpecialCaseBinaryStringMapSchema, SpecialCaseBinaryStringSchema, ArraySchema, StringSchema, BooleanSchema, Uint64Schema, AddressSchema, ByteArraySchema, FixedLengthByteArraySchema, OptionalSchema, allOmitEmpty, combineMaps, convertMap, BlockHashSchema, } from '../encoding/schema/index.js';
2
+ import { SignedTransaction } from '../signedTransaction.js';
3
+ /**
4
+ * StateProofTrackingData tracks the status of state proofs.
5
+ */
6
+ export class StateProofTrackingData {
7
+ constructor(params) {
8
+ this.stateProofVotersCommitment = params.stateProofVotersCommitment;
9
+ this.stateProofOnlineTotalWeight = params.stateProofOnlineTotalWeight;
10
+ this.stateProofNextRound = params.stateProofNextRound;
11
+ }
12
+ // eslint-disable-next-line class-methods-use-this
13
+ getEncodingSchema() {
14
+ return StateProofTrackingData.encodingSchema;
15
+ }
16
+ toEncodingData() {
17
+ return new Map([
18
+ ['v', this.stateProofVotersCommitment],
19
+ ['t', this.stateProofOnlineTotalWeight],
20
+ ['n', this.stateProofNextRound],
21
+ ]);
22
+ }
23
+ static fromEncodingData(data) {
24
+ if (!(data instanceof Map)) {
25
+ throw new Error(`Invalid decoded StateProofTrackingData: ${data}`);
26
+ }
27
+ return new StateProofTrackingData({
28
+ stateProofVotersCommitment: data.get('v'),
29
+ stateProofOnlineTotalWeight: data.get('t'),
30
+ stateProofNextRound: data.get('n'),
31
+ });
32
+ }
33
+ }
34
+ StateProofTrackingData.encodingSchema = new NamedMapSchema(allOmitEmpty([
35
+ {
36
+ key: 'v', // stateProofVotersCommitment
37
+ valueSchema: new ByteArraySchema(),
38
+ },
39
+ {
40
+ key: 't', // stateProofOnlineTotalWeight
41
+ valueSchema: new Uint64Schema(),
42
+ },
43
+ {
44
+ key: 'n', // stateProofNextRound
45
+ valueSchema: new Uint64Schema(),
46
+ },
47
+ ]));
48
+ /**
49
+ * TxnCommitments represents the commitments computed from the transactions in the block.
50
+ * It contains multiple commitments based on different algorithms and hash functions, to support
51
+ * different use cases.
52
+ */
53
+ export class TxnCommitments {
54
+ constructor(params) {
55
+ this.nativeSha512_256Commitment = params.nativeSha512_256Commitment;
56
+ this.sha256Commitment = params.sha256Commitment;
57
+ }
58
+ // eslint-disable-next-line class-methods-use-this
59
+ getEncodingSchema() {
60
+ return TxnCommitments.encodingSchema;
61
+ }
62
+ toEncodingData() {
63
+ return new Map([
64
+ ['txn', this.nativeSha512_256Commitment],
65
+ ['txn256', this.sha256Commitment],
66
+ ]);
67
+ }
68
+ static fromEncodingData(data) {
69
+ if (!(data instanceof Map)) {
70
+ throw new Error(`Invalid decoded TxnCommitments: ${data}`);
71
+ }
72
+ return new TxnCommitments({
73
+ nativeSha512_256Commitment: data.get('txn'),
74
+ sha256Commitment: data.get('txn256'),
75
+ });
76
+ }
77
+ }
78
+ TxnCommitments.encodingSchema = new NamedMapSchema(allOmitEmpty([
79
+ {
80
+ key: 'txn', // nativeSha512_256Commitment
81
+ valueSchema: new FixedLengthByteArraySchema(32),
82
+ },
83
+ {
84
+ key: 'txn256', // sha256Commitment
85
+ valueSchema: new FixedLengthByteArraySchema(32),
86
+ },
87
+ ]));
88
+ /**
89
+ * RewardsState represents the global parameters controlling the rate at which accounts accrue rewards.
90
+ */
91
+ export class RewardState {
92
+ constructor(params) {
93
+ this.feeSink = params.feeSink;
94
+ this.rewardsPool = params.rewardsPool;
95
+ this.rewardsLevel = params.rewardsLevel;
96
+ this.rewardsRate = params.rewardsRate;
97
+ this.rewardsResidue = params.rewardsResidue;
98
+ this.rewardsRecalculationRound = params.rewardsRecalculationRound;
99
+ }
100
+ // eslint-disable-next-line class-methods-use-this
101
+ getEncodingSchema() {
102
+ return RewardState.encodingSchema;
103
+ }
104
+ toEncodingData() {
105
+ return new Map([
106
+ ['fees', this.feeSink],
107
+ ['rwd', this.rewardsPool],
108
+ ['earn', this.rewardsLevel],
109
+ ['rate', this.rewardsRate],
110
+ ['frac', this.rewardsResidue],
111
+ ['rwcalr', this.rewardsRecalculationRound],
112
+ ]);
113
+ }
114
+ static fromEncodingData(data) {
115
+ if (!(data instanceof Map)) {
116
+ throw new Error(`Invalid decoded RewardState: ${data}`);
117
+ }
118
+ return new RewardState({
119
+ feeSink: data.get('fees'),
120
+ rewardsPool: data.get('rwd'),
121
+ rewardsLevel: data.get('earn'),
122
+ rewardsRate: data.get('rate'),
123
+ rewardsResidue: data.get('frac'),
124
+ rewardsRecalculationRound: data.get('rwcalr'),
125
+ });
126
+ }
127
+ }
128
+ RewardState.encodingSchema = new NamedMapSchema(allOmitEmpty([
129
+ {
130
+ key: 'fees', // feeSink
131
+ valueSchema: new AddressSchema(),
132
+ },
133
+ {
134
+ key: 'rwd', // rewardsPool
135
+ valueSchema: new AddressSchema(),
136
+ },
137
+ {
138
+ key: 'earn', // rewardsLevel
139
+ valueSchema: new Uint64Schema(),
140
+ },
141
+ {
142
+ key: 'rate', // rewardsRate
143
+ valueSchema: new Uint64Schema(),
144
+ },
145
+ {
146
+ key: 'frac', // rewardsResidue
147
+ valueSchema: new Uint64Schema(),
148
+ },
149
+ {
150
+ key: 'rwcalr', // rewardsRecalculationRound
151
+ valueSchema: new Uint64Schema(),
152
+ },
153
+ ]));
154
+ /**
155
+ * UpgradeState tracks the protocol upgrade state machine. It is, strictly speaking, computable from
156
+ * the history of all UpgradeVotes but we keep it in the block for explicitness and convenience
157
+ * (instead of materializing it separately, like balances).
158
+ */
159
+ export class UpgradeState {
160
+ constructor(params) {
161
+ this.currentProtocol = params.currentProtocol;
162
+ this.nextProtocol = params.nextProtocol;
163
+ this.nextProtocolApprovals = params.nextProtocolApprovals;
164
+ this.nextProtocolVoteBefore = params.nextProtocolVoteBefore;
165
+ this.nextProtocolSwitchOn = params.nextProtocolSwitchOn;
166
+ }
167
+ // eslint-disable-next-line class-methods-use-this
168
+ getEncodingSchema() {
169
+ return UpgradeState.encodingSchema;
170
+ }
171
+ toEncodingData() {
172
+ return new Map([
173
+ ['proto', this.currentProtocol],
174
+ ['nextproto', this.nextProtocol],
175
+ ['nextyes', this.nextProtocolApprovals],
176
+ ['nextbefore', this.nextProtocolVoteBefore],
177
+ ['nextswitch', this.nextProtocolSwitchOn],
178
+ ]);
179
+ }
180
+ static fromEncodingData(data) {
181
+ if (!(data instanceof Map)) {
182
+ throw new Error(`Invalid decoded UpgradeState: ${data}`);
183
+ }
184
+ return new UpgradeState({
185
+ currentProtocol: data.get('proto'),
186
+ nextProtocol: data.get('nextproto'),
187
+ nextProtocolApprovals: data.get('nextyes'),
188
+ nextProtocolVoteBefore: data.get('nextbefore'),
189
+ nextProtocolSwitchOn: data.get('nextswitch'),
190
+ });
191
+ }
192
+ }
193
+ UpgradeState.encodingSchema = new NamedMapSchema(allOmitEmpty([
194
+ {
195
+ key: 'proto', // currentProtocol
196
+ valueSchema: new StringSchema(),
197
+ },
198
+ {
199
+ key: 'nextproto', // nextProtocol
200
+ valueSchema: new StringSchema(),
201
+ },
202
+ {
203
+ key: 'nextyes', // nextProtocolApprovals
204
+ valueSchema: new Uint64Schema(),
205
+ },
206
+ {
207
+ key: 'nextbefore', // nextProtocolVoteBefore
208
+ valueSchema: new Uint64Schema(),
209
+ },
210
+ {
211
+ key: 'nextswitch', // nextProtocolSwitchOn
212
+ valueSchema: new Uint64Schema(),
213
+ },
214
+ ]));
215
+ /**
216
+ * UpgradeVote represents the vote of the block proposer with respect to protocol upgrades.
217
+ */
218
+ export class UpgradeVote {
219
+ constructor(params) {
220
+ this.upgradePropose = params.upgradePropose;
221
+ this.upgradeDelay = params.upgradeDelay;
222
+ this.upgradeApprove = params.upgradeApprove;
223
+ }
224
+ // eslint-disable-next-line class-methods-use-this
225
+ getEncodingSchema() {
226
+ return UpgradeVote.encodingSchema;
227
+ }
228
+ toEncodingData() {
229
+ return new Map([
230
+ ['upgradeprop', this.upgradePropose],
231
+ ['upgradedelay', this.upgradeDelay],
232
+ ['upgradeyes', this.upgradeApprove],
233
+ ]);
234
+ }
235
+ static fromEncodingData(data) {
236
+ if (!(data instanceof Map)) {
237
+ throw new Error(`Invalid decoded UpgradeVote: ${data}`);
238
+ }
239
+ return new UpgradeVote({
240
+ upgradePropose: data.get('upgradeprop'),
241
+ upgradeDelay: data.get('upgradedelay'),
242
+ upgradeApprove: data.get('upgradeyes'),
243
+ });
244
+ }
245
+ }
246
+ UpgradeVote.encodingSchema = new NamedMapSchema(allOmitEmpty([
247
+ {
248
+ key: 'upgradeprop', // upgradePropose
249
+ valueSchema: new StringSchema(),
250
+ },
251
+ {
252
+ key: 'upgradedelay', // upgradeDelay
253
+ valueSchema: new Uint64Schema(),
254
+ },
255
+ {
256
+ key: 'upgradeyes', // upgradeApprove
257
+ valueSchema: new BooleanSchema(),
258
+ },
259
+ ]));
260
+ /**
261
+ * ParticipationUpdates represents participation account data that needs to be checked/acted on by
262
+ * the network
263
+ */
264
+ export class ParticipationUpdates {
265
+ constructor(params) {
266
+ this.expiredParticipationAccounts = params.expiredParticipationAccounts;
267
+ this.absentParticipationAccounts = params.absentParticipationAccounts;
268
+ }
269
+ // eslint-disable-next-line class-methods-use-this
270
+ getEncodingSchema() {
271
+ return ParticipationUpdates.encodingSchema;
272
+ }
273
+ toEncodingData() {
274
+ return new Map([
275
+ ['partupdrmv', this.expiredParticipationAccounts],
276
+ ['partupdabs', this.absentParticipationAccounts],
277
+ ]);
278
+ }
279
+ static fromEncodingData(data) {
280
+ if (!(data instanceof Map)) {
281
+ throw new Error(`Invalid decoded ParticipationUpdates: ${data}`);
282
+ }
283
+ return new ParticipationUpdates({
284
+ expiredParticipationAccounts: data.get('partupdrmv'),
285
+ absentParticipationAccounts: data.get('partupdabs'),
286
+ });
287
+ }
288
+ }
289
+ ParticipationUpdates.encodingSchema = new NamedMapSchema(allOmitEmpty([
290
+ {
291
+ key: 'partupdrmv', // expiredParticipationAccounts
292
+ valueSchema: new ArraySchema(new AddressSchema()),
293
+ },
294
+ {
295
+ key: 'partupdabs', // absentParticipationAccounts
296
+ valueSchema: new ArraySchema(new AddressSchema()),
297
+ },
298
+ ]));
299
+ /**
300
+ * Represents the metadata and state of a block.
301
+ *
302
+ * For more information, refer to: https://github.com/algorand/go-algorand/blob/master/data/bookkeeping/block.go
303
+ */
304
+ export class BlockHeader {
305
+ constructor(params) {
306
+ this.round = params.round;
307
+ this.branch = params.branch;
308
+ this.seed = params.seed;
309
+ this.txnCommitments = params.txnCommitments;
310
+ this.timestamp = params.timestamp;
311
+ this.genesisID = params.genesisID;
312
+ this.genesisHash = params.genesisHash;
313
+ this.proposer = params.proposer;
314
+ this.feesCollected = params.feesCollected;
315
+ this.bonus = params.bonus;
316
+ this.proposerPayout = params.proposerPayout;
317
+ this.rewardState = params.rewardState;
318
+ this.upgradeState = params.upgradeState;
319
+ this.upgradeVote = params.upgradeVote;
320
+ this.txnCounter = params.txnCounter;
321
+ this.stateproofTracking = params.stateproofTracking;
322
+ this.participationUpdates = params.participationUpdates;
323
+ }
324
+ // eslint-disable-next-line class-methods-use-this
325
+ getEncodingSchema() {
326
+ return BlockHeader.encodingSchema;
327
+ }
328
+ toEncodingData() {
329
+ const data = new Map([
330
+ ['rnd', this.round],
331
+ ['prev', this.branch],
332
+ ['seed', this.seed],
333
+ ['ts', this.timestamp],
334
+ ['gen', this.genesisID],
335
+ ['gh', this.genesisHash],
336
+ ['prp', this.proposer],
337
+ ['fc', this.feesCollected],
338
+ ['bi', this.bonus],
339
+ ['pp', this.proposerPayout],
340
+ ['tc', this.txnCounter],
341
+ [
342
+ 'spt',
343
+ convertMap(this.stateproofTracking, (key, value) => [
344
+ key,
345
+ value.toEncodingData(),
346
+ ]),
347
+ ],
348
+ ]);
349
+ return combineMaps(data, this.txnCommitments.toEncodingData(), this.rewardState.toEncodingData(), this.upgradeState.toEncodingData(), this.upgradeVote.toEncodingData(), this.participationUpdates.toEncodingData());
350
+ }
351
+ static fromEncodingData(data) {
352
+ if (!(data instanceof Map)) {
353
+ throw new Error(`Invalid decoded BlockHeader: ${data}`);
354
+ }
355
+ return new BlockHeader({
356
+ round: data.get('rnd'),
357
+ branch: data.get('prev'),
358
+ seed: data.get('seed'),
359
+ txnCommitments: TxnCommitments.fromEncodingData(data),
360
+ timestamp: data.get('ts'),
361
+ genesisID: data.get('gen'),
362
+ genesisHash: data.get('gh'),
363
+ proposer: data.get('prp'),
364
+ feesCollected: data.get('fc'),
365
+ bonus: data.get('bi'),
366
+ proposerPayout: data.get('pp'),
367
+ rewardState: RewardState.fromEncodingData(data),
368
+ upgradeState: UpgradeState.fromEncodingData(data),
369
+ upgradeVote: UpgradeVote.fromEncodingData(data),
370
+ txnCounter: data.get('tc'),
371
+ stateproofTracking: convertMap(data.get('spt'), (key, value) => [
372
+ Number(key),
373
+ StateProofTrackingData.fromEncodingData(value),
374
+ ]),
375
+ participationUpdates: ParticipationUpdates.fromEncodingData(data),
376
+ });
377
+ }
378
+ }
379
+ BlockHeader.encodingSchema = new NamedMapSchema(allOmitEmpty([
380
+ {
381
+ key: 'rnd', // round
382
+ valueSchema: new Uint64Schema(),
383
+ },
384
+ {
385
+ key: 'prev', // branch
386
+ valueSchema: new BlockHashSchema(),
387
+ },
388
+ {
389
+ key: 'seed', // seed
390
+ valueSchema: new ByteArraySchema(),
391
+ },
392
+ {
393
+ key: '',
394
+ valueSchema: TxnCommitments.encodingSchema,
395
+ embedded: true,
396
+ },
397
+ {
398
+ key: 'ts', // timestamp
399
+ valueSchema: new Uint64Schema(),
400
+ },
401
+ {
402
+ key: 'gen', // genesisID
403
+ valueSchema: new StringSchema(),
404
+ },
405
+ {
406
+ key: 'gh', // genesisHash
407
+ valueSchema: new FixedLengthByteArraySchema(32),
408
+ },
409
+ {
410
+ key: 'prp', // proposer
411
+ valueSchema: new AddressSchema(),
412
+ },
413
+ {
414
+ key: 'fc', // feesCollected
415
+ valueSchema: new Uint64Schema(),
416
+ },
417
+ {
418
+ key: 'bi', // bonus
419
+ valueSchema: new Uint64Schema(),
420
+ },
421
+ {
422
+ key: 'pp', // proposerPayout
423
+ valueSchema: new Uint64Schema(),
424
+ },
425
+ {
426
+ key: '',
427
+ valueSchema: RewardState.encodingSchema,
428
+ embedded: true,
429
+ },
430
+ {
431
+ key: '',
432
+ valueSchema: UpgradeState.encodingSchema,
433
+ embedded: true,
434
+ },
435
+ {
436
+ key: '',
437
+ valueSchema: UpgradeVote.encodingSchema,
438
+ embedded: true,
439
+ },
440
+ {
441
+ key: 'tc', // txnCounter
442
+ valueSchema: new Uint64Schema(),
443
+ },
444
+ {
445
+ key: 'spt', // stateproofTracking
446
+ valueSchema: new Uint64MapSchema(StateProofTrackingData.encodingSchema),
447
+ },
448
+ {
449
+ key: '',
450
+ valueSchema: ParticipationUpdates.encodingSchema,
451
+ embedded: true,
452
+ },
453
+ ]));
454
+ export class ValueDelta {
455
+ constructor(params) {
456
+ this.action = params.action;
457
+ this.bytes = params.bytes;
458
+ this.uint = params.uint;
459
+ }
460
+ // eslint-disable-next-line class-methods-use-this
461
+ getEncodingSchema() {
462
+ return ValueDelta.encodingSchema;
463
+ }
464
+ toEncodingData() {
465
+ return new Map([
466
+ ['at', this.action],
467
+ ['bs', this.bytes],
468
+ ['ui', this.uint],
469
+ ]);
470
+ }
471
+ static fromEncodingData(data) {
472
+ if (!(data instanceof Map)) {
473
+ throw new Error(`Invalid decoded ValueDelta: ${data}`);
474
+ }
475
+ return new ValueDelta({
476
+ action: Number(data.get('at')),
477
+ bytes: data.get('bs'),
478
+ uint: data.get('ui'),
479
+ });
480
+ }
481
+ }
482
+ ValueDelta.encodingSchema = new NamedMapSchema(allOmitEmpty([
483
+ {
484
+ key: 'at', // action
485
+ valueSchema: new Uint64Schema(),
486
+ },
487
+ {
488
+ key: 'bs', // bytes
489
+ valueSchema: new SpecialCaseBinaryStringSchema(),
490
+ },
491
+ {
492
+ key: 'ui', // uint
493
+ valueSchema: new Uint64Schema(),
494
+ },
495
+ ]));
496
+ export class EvalDelta {
497
+ static get encodingSchema() {
498
+ // This is declared like this in order to break the circular dependency of
499
+ // SignedTxnWithAD -> ApplyData -> EvalDelta -> SignedTxnWithAD
500
+ if (!this.encodingSchemaValue) {
501
+ this.encodingSchemaValue = new NamedMapSchema([]);
502
+ this.encodingSchemaValue.pushEntries(...allOmitEmpty([
503
+ {
504
+ key: 'gd', // globalDelta
505
+ valueSchema: new OptionalSchema(new SpecialCaseBinaryStringMapSchema(ValueDelta.encodingSchema)),
506
+ },
507
+ {
508
+ key: 'ld', // localDeltas
509
+ valueSchema: new OptionalSchema(new Uint64MapSchema(new SpecialCaseBinaryStringMapSchema(ValueDelta.encodingSchema))),
510
+ },
511
+ {
512
+ key: 'sa', // sharedAccts
513
+ valueSchema: new OptionalSchema(new ArraySchema(new AddressSchema())),
514
+ },
515
+ {
516
+ key: 'lg', // logs
517
+ valueSchema: new OptionalSchema(new ArraySchema(new SpecialCaseBinaryStringSchema())),
518
+ },
519
+ {
520
+ key: 'itx', // innerTxns
521
+ valueSchema: new OptionalSchema(
522
+ // eslint-disable-next-line no-use-before-define
523
+ new ArraySchema(SignedTxnWithAD.encodingSchema)),
524
+ },
525
+ ]));
526
+ }
527
+ return this.encodingSchemaValue;
528
+ }
529
+ constructor(params) {
530
+ this.globalDelta = params.globalDelta ?? new Map();
531
+ this.localDeltas =
532
+ params.localDeltas ?? new Map();
533
+ this.sharedAccts = params.sharedAccts ?? [];
534
+ this.logs = params.logs ?? [];
535
+ this.innerTxns = params.innerTxns ?? [];
536
+ }
537
+ // eslint-disable-next-line class-methods-use-this
538
+ getEncodingSchema() {
539
+ return EvalDelta.encodingSchema;
540
+ }
541
+ toEncodingData() {
542
+ return new Map([
543
+ [
544
+ 'gd',
545
+ convertMap(this.globalDelta, (key, value) => [
546
+ key,
547
+ value.toEncodingData(),
548
+ ]),
549
+ ],
550
+ [
551
+ 'ld',
552
+ convertMap(this.localDeltas, (key, value) => [
553
+ key,
554
+ convertMap(value, (k, v) => [k, v.toEncodingData()]),
555
+ ]),
556
+ ],
557
+ ['sa', this.sharedAccts],
558
+ ['lg', this.logs],
559
+ ['itx', this.innerTxns.map((t) => t.toEncodingData())],
560
+ ]);
561
+ }
562
+ static fromEncodingData(data) {
563
+ if (!(data instanceof Map)) {
564
+ throw new Error(`Invalid decoded EvalDelta: ${data}`);
565
+ }
566
+ return new EvalDelta({
567
+ globalDelta: data.get('gd')
568
+ ? convertMap(data.get('gd'), (key, value) => [key, ValueDelta.fromEncodingData(value)])
569
+ : undefined,
570
+ localDeltas: data.get('ld')
571
+ ? convertMap(data.get('ld'), (key, value) => [
572
+ Number(key),
573
+ convertMap(value, (k, v) => [k, ValueDelta.fromEncodingData(v)]),
574
+ ])
575
+ : undefined,
576
+ sharedAccts: data.get('sa'),
577
+ logs: data.get('lg'),
578
+ // eslint-disable-next-line no-use-before-define
579
+ innerTxns: (data.get('itx') ?? []).map(SignedTxnWithAD.fromEncodingData),
580
+ });
581
+ }
582
+ }
583
+ export class ApplyData {
584
+ static get encodingSchema() {
585
+ // This is declared like this in order to break the circular dependency of
586
+ // SignedTxnWithAD -> ApplyData -> EvalDelta -> SignedTxnWithAD
587
+ if (!this.encodingSchemaValue) {
588
+ this.encodingSchemaValue = new NamedMapSchema([]);
589
+ this.encodingSchemaValue.pushEntries(...allOmitEmpty([
590
+ {
591
+ key: 'ca', // closingAmount
592
+ valueSchema: new OptionalSchema(new Uint64Schema()),
593
+ },
594
+ {
595
+ key: 'aca', // assetClosingAmount
596
+ valueSchema: new OptionalSchema(new Uint64Schema()),
597
+ },
598
+ {
599
+ key: 'rs', // senderRewards
600
+ valueSchema: new OptionalSchema(new Uint64Schema()),
601
+ },
602
+ {
603
+ key: 'rr', // receiverRewards
604
+ valueSchema: new OptionalSchema(new Uint64Schema()),
605
+ },
606
+ {
607
+ key: 'rc', // closeRewards
608
+ valueSchema: new OptionalSchema(new Uint64Schema()),
609
+ },
610
+ {
611
+ key: 'dt', // evalDelta
612
+ valueSchema: new OptionalSchema(EvalDelta.encodingSchema),
613
+ },
614
+ {
615
+ key: 'caid', // configAsset
616
+ valueSchema: new OptionalSchema(new Uint64Schema()),
617
+ },
618
+ {
619
+ key: 'apid', // applicationID
620
+ valueSchema: new OptionalSchema(new Uint64Schema()),
621
+ },
622
+ ]));
623
+ }
624
+ return this.encodingSchemaValue;
625
+ }
626
+ constructor(params) {
627
+ this.closingAmount = params.closingAmount;
628
+ this.assetClosingAmount = params.assetClosingAmount;
629
+ this.senderRewards = params.senderRewards;
630
+ this.receiverRewards = params.receiverRewards;
631
+ this.closeRewards = params.closeRewards;
632
+ this.evalDelta = params.evalDelta;
633
+ this.configAsset = params.configAsset;
634
+ this.applicationID = params.applicationID;
635
+ }
636
+ // eslint-disable-next-line class-methods-use-this
637
+ getEncodingSchema() {
638
+ return ApplyData.encodingSchema;
639
+ }
640
+ toEncodingData() {
641
+ return new Map([
642
+ ['ca', this.closingAmount],
643
+ ['aca', this.assetClosingAmount],
644
+ ['rs', this.senderRewards],
645
+ ['rr', this.receiverRewards],
646
+ ['rc', this.closeRewards],
647
+ ['dt', this.evalDelta ? this.evalDelta.toEncodingData() : undefined],
648
+ ['caid', this.configAsset],
649
+ ['apid', this.applicationID],
650
+ ]);
651
+ }
652
+ static fromEncodingData(data) {
653
+ if (!(data instanceof Map)) {
654
+ throw new Error(`Invalid decoded ApplyData: ${data}`);
655
+ }
656
+ return new ApplyData({
657
+ closingAmount: data.get('ca'),
658
+ assetClosingAmount: data.get('aca'),
659
+ senderRewards: data.get('rs'),
660
+ receiverRewards: data.get('rr'),
661
+ closeRewards: data.get('rc'),
662
+ evalDelta: data.get('dt')
663
+ ? EvalDelta.fromEncodingData(data.get('dt'))
664
+ : undefined,
665
+ configAsset: data.get('caid'),
666
+ applicationID: data.get('apid'),
667
+ });
668
+ }
669
+ }
670
+ export class SignedTxnWithAD {
671
+ static get encodingSchema() {
672
+ // This is declared like this in order to break the circular dependency of
673
+ // SignedTxnWithAD -> ApplyData -> EvalDelta -> SignedTxnWithAD
674
+ if (!this.encodingSchemaValue) {
675
+ this.encodingSchemaValue = new NamedMapSchema([]);
676
+ this.encodingSchemaValue.pushEntries(...allOmitEmpty([
677
+ {
678
+ key: '',
679
+ valueSchema: SignedTransaction.encodingSchema,
680
+ embedded: true,
681
+ },
682
+ {
683
+ key: '',
684
+ valueSchema: ApplyData.encodingSchema,
685
+ embedded: true,
686
+ },
687
+ ]));
688
+ }
689
+ return this.encodingSchemaValue;
690
+ }
691
+ constructor(params) {
692
+ this.signedTxn = params.signedTxn;
693
+ this.applyData = params.applyData;
694
+ }
695
+ // eslint-disable-next-line class-methods-use-this
696
+ getEncodingSchema() {
697
+ return SignedTxnWithAD.encodingSchema;
698
+ }
699
+ toEncodingData() {
700
+ return combineMaps(this.signedTxn.toEncodingData(), this.applyData.toEncodingData());
701
+ }
702
+ static fromEncodingData(data) {
703
+ if (!(data instanceof Map)) {
704
+ throw new Error(`Invalid decoded SignedTxnWithAD: ${data}`);
705
+ }
706
+ return new SignedTxnWithAD({
707
+ signedTxn: SignedTransaction.fromEncodingData(data),
708
+ applyData: ApplyData.fromEncodingData(data),
709
+ });
710
+ }
711
+ }
712
+ /**
713
+ * SignedTxnInBlock is how a signed transaction is encoded in a block.
714
+ */
715
+ export class SignedTxnInBlock {
716
+ constructor(params) {
717
+ this.signedTxn = params.signedTxn;
718
+ this.hasGenesisID = params.hasGenesisID;
719
+ this.hasGenesisHash = params.hasGenesisHash;
720
+ }
721
+ // eslint-disable-next-line class-methods-use-this
722
+ getEncodingSchema() {
723
+ return SignedTxnInBlock.encodingSchema;
724
+ }
725
+ toEncodingData() {
726
+ const data = new Map([
727
+ ['hgi', this.hasGenesisID],
728
+ ['hgh', this.hasGenesisHash],
729
+ ]);
730
+ return combineMaps(data, this.signedTxn.toEncodingData());
731
+ }
732
+ static fromEncodingData(data) {
733
+ if (!(data instanceof Map)) {
734
+ throw new Error(`Invalid decoded SignedTxnInBlock: ${data}`);
735
+ }
736
+ return new SignedTxnInBlock({
737
+ signedTxn: SignedTxnWithAD.fromEncodingData(data),
738
+ hasGenesisID: data.get('hgi'),
739
+ hasGenesisHash: data.get('hgh'),
740
+ });
741
+ }
742
+ }
743
+ SignedTxnInBlock.encodingSchema = new NamedMapSchema(allOmitEmpty([
744
+ {
745
+ key: '',
746
+ valueSchema: SignedTxnWithAD.encodingSchema,
747
+ embedded: true,
748
+ },
749
+ {
750
+ key: 'hgi', // hasGenesisID
751
+ valueSchema: new BooleanSchema(),
752
+ },
753
+ {
754
+ key: 'hgh', // hasGenesisHash
755
+ valueSchema: new BooleanSchema(),
756
+ },
757
+ ]));
758
+ /**
759
+ * A Block contains the Payset and metadata corresponding to a given Round.
760
+ */
761
+ export class Block {
762
+ constructor(params) {
763
+ this.header = params.header;
764
+ this.payset = params.payset;
765
+ }
766
+ // eslint-disable-next-line class-methods-use-this
767
+ getEncodingSchema() {
768
+ return Block.encodingSchema;
769
+ }
770
+ toEncodingData() {
771
+ const data = new Map([
772
+ ['txns', this.payset.map((p) => p.toEncodingData())],
773
+ ]);
774
+ return combineMaps(data, this.header.toEncodingData());
775
+ }
776
+ static fromEncodingData(data) {
777
+ if (!(data instanceof Map)) {
778
+ throw new Error(`Invalid decoded BlockHeader: ${data}`);
779
+ }
780
+ return new Block({
781
+ header: BlockHeader.fromEncodingData(data),
782
+ payset: data.get('txns').map(SignedTxnInBlock.fromEncodingData),
783
+ });
784
+ }
785
+ }
786
+ Block.encodingSchema = new NamedMapSchema(allOmitEmpty([
787
+ {
788
+ key: '',
789
+ valueSchema: BlockHeader.encodingSchema,
790
+ embedded: true,
791
+ },
792
+ {
793
+ key: 'txns', // payset
794
+ valueSchema: new ArraySchema(SignedTxnInBlock.encodingSchema),
795
+ },
796
+ ]));
797
+ //# sourceMappingURL=block.js.map