algosdk 2.8.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 (810) 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 +5 -3
  8. package/dist/cjs/abi/contract.js.map +1 -1
  9. package/dist/cjs/{types/transactions/asset.js → abi/event.js} +1 -1
  10. package/dist/cjs/abi/event.js.map +1 -0
  11. package/dist/cjs/abi/index.js +6 -6
  12. package/dist/cjs/abi/index.js.map +1 -1
  13. package/dist/cjs/abi/interface.js +3 -3
  14. package/dist/cjs/abi/interface.js.map +1 -1
  15. package/dist/cjs/abi/method.js +14 -10
  16. package/dist/cjs/abi/method.js.map +1 -1
  17. package/dist/cjs/abi/reference.js +1 -1
  18. package/dist/cjs/abi/reference.js.map +1 -1
  19. package/dist/cjs/abi/transaction.js +2 -2
  20. package/dist/cjs/abi/transaction.js.map +1 -1
  21. package/dist/cjs/account.js +4 -4
  22. package/dist/cjs/account.js.map +1 -1
  23. package/dist/cjs/boxStorage.js +17 -17
  24. package/dist/cjs/boxStorage.js.map +1 -1
  25. package/dist/cjs/client/client.js +77 -41
  26. package/dist/cjs/client/client.js.map +1 -1
  27. package/dist/cjs/client/index.js +29 -0
  28. package/dist/cjs/client/index.js.map +1 -0
  29. package/dist/cjs/client/kmd.js +69 -86
  30. package/dist/cjs/client/kmd.js.map +1 -1
  31. package/dist/cjs/client/urlTokenBaseHTTPClient.js +16 -11
  32. package/dist/cjs/client/urlTokenBaseHTTPClient.js.map +1 -1
  33. package/dist/cjs/client/v2/algod/accountApplicationInformation.js +11 -7
  34. package/dist/cjs/client/v2/algod/accountApplicationInformation.js.map +1 -1
  35. package/dist/cjs/client/v2/algod/accountAssetInformation.js +11 -7
  36. package/dist/cjs/client/v2/algod/accountAssetInformation.js.map +1 -1
  37. package/dist/cjs/client/v2/algod/accountInformation.js +11 -6
  38. package/dist/cjs/client/v2/algod/accountInformation.js.map +1 -1
  39. package/dist/cjs/client/v2/algod/algod.js +85 -83
  40. package/dist/cjs/client/v2/algod/algod.js.map +1 -1
  41. package/dist/cjs/client/v2/algod/block.js +6 -33
  42. package/dist/cjs/client/v2/algod/block.js.map +1 -1
  43. package/dist/cjs/client/v2/algod/compile.js +17 -11
  44. package/dist/cjs/client/v2/algod/compile.js.map +1 -1
  45. package/dist/cjs/client/v2/algod/disassemble.js +17 -11
  46. package/dist/cjs/client/v2/algod/disassemble.js.map +1 -1
  47. package/dist/cjs/client/v2/algod/dryrun.js +18 -37
  48. package/dist/cjs/client/v2/algod/dryrun.js.map +1 -1
  49. package/dist/cjs/client/v2/algod/genesis.js +6 -2
  50. package/dist/cjs/client/v2/algod/genesis.js.map +1 -1
  51. package/dist/cjs/client/v2/algod/getApplicationBoxByName.js +10 -10
  52. package/dist/cjs/client/v2/algod/getApplicationBoxByName.js.map +1 -1
  53. package/dist/cjs/client/v2/algod/getApplicationBoxes.js +8 -8
  54. package/dist/cjs/client/v2/algod/getApplicationBoxes.js.map +1 -1
  55. package/dist/cjs/client/v2/algod/getApplicationByID.js +10 -5
  56. package/dist/cjs/client/v2/algod/getApplicationByID.js.map +1 -1
  57. package/dist/cjs/client/v2/algod/getAssetByID.js +10 -5
  58. package/dist/cjs/client/v2/algod/getAssetByID.js.map +1 -1
  59. package/dist/cjs/client/v2/algod/getBlockHash.js +10 -6
  60. package/dist/cjs/client/v2/algod/getBlockHash.js.map +1 -1
  61. package/dist/cjs/client/v2/algod/getBlockOffsetTimestamp.js +6 -5
  62. package/dist/cjs/client/v2/algod/getBlockOffsetTimestamp.js.map +1 -1
  63. package/dist/cjs/client/v2/algod/getBlockTxids.js +10 -4
  64. package/dist/cjs/client/v2/algod/getBlockTxids.js.map +1 -1
  65. package/dist/cjs/client/v2/algod/getLedgerStateDelta.js +11 -6
  66. package/dist/cjs/client/v2/algod/getLedgerStateDelta.js.map +1 -1
  67. package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +11 -6
  68. package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -1
  69. package/dist/cjs/client/v2/algod/getSyncRound.js +6 -5
  70. package/dist/cjs/client/v2/algod/getSyncRound.js.map +1 -1
  71. package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +9 -9
  72. package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -1
  73. package/dist/cjs/client/v2/algod/getTransactionProof.js +10 -6
  74. package/dist/cjs/client/v2/algod/getTransactionProof.js.map +1 -1
  75. package/dist/cjs/client/v2/algod/healthCheck.js +4 -9
  76. package/dist/cjs/client/v2/algod/healthCheck.js.map +1 -1
  77. package/dist/cjs/{types → client/v2/algod}/index.js +5 -3
  78. package/dist/cjs/client/v2/algod/index.js.map +1 -0
  79. package/dist/cjs/client/v2/algod/lightBlockHeaderProof.js +10 -5
  80. package/dist/cjs/client/v2/algod/lightBlockHeaderProof.js.map +1 -1
  81. package/dist/cjs/client/v2/algod/models/types.js +3712 -1824
  82. package/dist/cjs/client/v2/algod/models/types.js.map +1 -1
  83. package/dist/cjs/client/v2/algod/pendingTransactionInformation.js +6 -32
  84. package/dist/cjs/client/v2/algod/pendingTransactionInformation.js.map +1 -1
  85. package/dist/cjs/client/v2/algod/pendingTransactions.js +6 -31
  86. package/dist/cjs/client/v2/algod/pendingTransactions.js.map +1 -1
  87. package/dist/cjs/client/v2/algod/pendingTransactionsByAddress.js +7 -33
  88. package/dist/cjs/client/v2/algod/pendingTransactionsByAddress.js.map +1 -1
  89. package/dist/cjs/client/v2/algod/ready.js +4 -2
  90. package/dist/cjs/client/v2/algod/ready.js.map +1 -1
  91. package/dist/cjs/client/v2/algod/sendRawTransaction.js +17 -8
  92. package/dist/cjs/client/v2/algod/sendRawTransaction.js.map +1 -1
  93. package/dist/cjs/client/v2/algod/setBlockOffsetTimestamp.js +13 -8
  94. package/dist/cjs/client/v2/algod/setBlockOffsetTimestamp.js.map +1 -1
  95. package/dist/cjs/client/v2/algod/setSyncRound.js +13 -8
  96. package/dist/cjs/client/v2/algod/setSyncRound.js.map +1 -1
  97. package/dist/cjs/client/v2/algod/simulateTransaction.js +15 -35
  98. package/dist/cjs/client/v2/algod/simulateTransaction.js.map +1 -1
  99. package/dist/cjs/client/v2/algod/stateproof.js +10 -5
  100. package/dist/cjs/client/v2/algod/stateproof.js.map +1 -1
  101. package/dist/cjs/client/v2/algod/status.js +8 -2
  102. package/dist/cjs/client/v2/algod/status.js.map +1 -1
  103. package/dist/cjs/client/v2/algod/statusAfterBlock.js +10 -5
  104. package/dist/cjs/client/v2/algod/statusAfterBlock.js.map +1 -1
  105. package/dist/cjs/client/v2/algod/suggestedParams.js +13 -9
  106. package/dist/cjs/client/v2/algod/suggestedParams.js.map +1 -1
  107. package/dist/cjs/client/v2/algod/supply.js +8 -2
  108. package/dist/cjs/client/v2/algod/supply.js.map +1 -1
  109. package/dist/cjs/client/v2/algod/unsetSyncRound.js +11 -5
  110. package/dist/cjs/client/v2/algod/unsetSyncRound.js.map +1 -1
  111. package/dist/cjs/client/v2/algod/versions.js +8 -2
  112. package/dist/cjs/client/v2/algod/versions.js.map +1 -1
  113. package/dist/cjs/client/v2/indexer/index.js +22 -0
  114. package/dist/cjs/client/v2/indexer/index.js.map +1 -0
  115. package/dist/cjs/client/v2/indexer/indexer.js +44 -43
  116. package/dist/cjs/client/v2/indexer/indexer.js.map +1 -1
  117. package/dist/cjs/client/v2/indexer/lookupAccountAppLocalStates.js +11 -6
  118. package/dist/cjs/client/v2/indexer/lookupAccountAppLocalStates.js.map +1 -1
  119. package/dist/cjs/client/v2/indexer/lookupAccountAssets.js +11 -6
  120. package/dist/cjs/client/v2/indexer/lookupAccountAssets.js.map +1 -1
  121. package/dist/cjs/client/v2/indexer/lookupAccountByID.js +11 -6
  122. package/dist/cjs/client/v2/indexer/lookupAccountByID.js.map +1 -1
  123. package/dist/cjs/client/v2/indexer/lookupAccountCreatedApplications.js +11 -6
  124. package/dist/cjs/client/v2/indexer/lookupAccountCreatedApplications.js.map +1 -1
  125. package/dist/cjs/client/v2/indexer/lookupAccountCreatedAssets.js +11 -6
  126. package/dist/cjs/client/v2/indexer/lookupAccountCreatedAssets.js.map +1 -1
  127. package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js +19 -12
  128. package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
  129. package/dist/cjs/client/v2/indexer/lookupApplicationBoxByIDandName.js +10 -10
  130. package/dist/cjs/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -1
  131. package/dist/cjs/client/v2/indexer/lookupApplicationLogs.js +10 -5
  132. package/dist/cjs/client/v2/indexer/lookupApplicationLogs.js.map +1 -1
  133. package/dist/cjs/client/v2/indexer/lookupApplications.js +10 -5
  134. package/dist/cjs/client/v2/indexer/lookupApplications.js.map +1 -1
  135. package/dist/cjs/client/v2/indexer/lookupAssetBalances.js +10 -5
  136. package/dist/cjs/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  137. package/dist/cjs/client/v2/indexer/lookupAssetByID.js +10 -5
  138. package/dist/cjs/client/v2/indexer/lookupAssetByID.js.map +1 -1
  139. package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js +19 -12
  140. package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
  141. package/dist/cjs/client/v2/indexer/lookupBlock.js +10 -5
  142. package/dist/cjs/client/v2/indexer/lookupBlock.js.map +1 -1
  143. package/dist/cjs/client/v2/indexer/lookupTransactionByID.js +10 -5
  144. package/dist/cjs/client/v2/indexer/lookupTransactionByID.js.map +1 -1
  145. package/dist/cjs/client/v2/indexer/makeHealthCheck.js +8 -2
  146. package/dist/cjs/client/v2/indexer/makeHealthCheck.js.map +1 -1
  147. package/dist/cjs/client/v2/indexer/models/types.js +3591 -1651
  148. package/dist/cjs/client/v2/indexer/models/types.js.map +1 -1
  149. package/dist/cjs/client/v2/indexer/searchAccounts.js +9 -3
  150. package/dist/cjs/client/v2/indexer/searchAccounts.js.map +1 -1
  151. package/dist/cjs/client/v2/indexer/searchForApplicationBoxes.js +8 -8
  152. package/dist/cjs/client/v2/indexer/searchForApplicationBoxes.js.map +1 -1
  153. package/dist/cjs/client/v2/indexer/searchForApplications.js +9 -3
  154. package/dist/cjs/client/v2/indexer/searchForApplications.js.map +1 -1
  155. package/dist/cjs/client/v2/indexer/searchForAssets.js +9 -3
  156. package/dist/cjs/client/v2/indexer/searchForAssets.js.map +1 -1
  157. package/dist/cjs/client/v2/indexer/searchForTransactions.js +17 -9
  158. package/dist/cjs/client/v2/indexer/searchForTransactions.js.map +1 -1
  159. package/dist/cjs/client/v2/jsonrequest.js +22 -54
  160. package/dist/cjs/client/v2/jsonrequest.js.map +1 -1
  161. package/dist/cjs/client/v2/serviceClient.js +5 -25
  162. package/dist/cjs/client/v2/serviceClient.js.map +1 -1
  163. package/dist/cjs/client/v2/untypedmodel.js +22 -0
  164. package/dist/cjs/client/v2/untypedmodel.js.map +1 -0
  165. package/dist/cjs/composer.js +64 -58
  166. package/dist/cjs/composer.js.map +1 -1
  167. package/dist/cjs/convert.js.map +1 -1
  168. package/dist/cjs/dryrun.js +107 -203
  169. package/dist/cjs/dryrun.js.map +1 -1
  170. package/dist/cjs/encoding/address.js +88 -104
  171. package/dist/cjs/encoding/address.js.map +1 -1
  172. package/dist/cjs/encoding/bigint.js +2 -3
  173. package/dist/cjs/encoding/bigint.js.map +1 -1
  174. package/dist/cjs/encoding/binarydata.js +82 -0
  175. package/dist/cjs/encoding/binarydata.js.map +1 -0
  176. package/dist/cjs/encoding/encoding.js +353 -38
  177. package/dist/cjs/encoding/encoding.js.map +1 -1
  178. package/dist/cjs/encoding/schema/address.js +41 -0
  179. package/dist/cjs/encoding/schema/address.js.map +1 -0
  180. package/dist/cjs/encoding/schema/array.js +43 -0
  181. package/dist/cjs/encoding/schema/array.js.map +1 -0
  182. package/dist/cjs/encoding/schema/binarystring.js +55 -0
  183. package/dist/cjs/encoding/schema/binarystring.js.map +1 -0
  184. package/dist/cjs/encoding/schema/blockhash.js +67 -0
  185. package/dist/cjs/encoding/schema/blockhash.js.map +1 -0
  186. package/dist/cjs/encoding/schema/boolean.js +42 -0
  187. package/dist/cjs/encoding/schema/boolean.js.map +1 -0
  188. package/dist/cjs/encoding/schema/bytearray.js +98 -0
  189. package/dist/cjs/encoding/schema/bytearray.js.map +1 -0
  190. package/dist/cjs/encoding/schema/index.js +34 -0
  191. package/dist/cjs/encoding/schema/index.js.map +1 -0
  192. package/dist/cjs/encoding/schema/map.js +528 -0
  193. package/dist/cjs/encoding/schema/map.js.map +1 -0
  194. package/dist/cjs/encoding/schema/optional.js +58 -0
  195. package/dist/cjs/encoding/schema/optional.js.map +1 -0
  196. package/dist/cjs/encoding/schema/string.js +43 -0
  197. package/dist/cjs/encoding/schema/string.js.map +1 -0
  198. package/dist/cjs/encoding/schema/uint64.js +36 -0
  199. package/dist/cjs/encoding/schema/uint64.js.map +1 -0
  200. package/dist/cjs/encoding/schema/untyped.js +33 -0
  201. package/dist/cjs/encoding/schema/untyped.js.map +1 -0
  202. package/dist/cjs/encoding/uint64.js +2 -2
  203. package/dist/cjs/encoding/uint64.js.map +1 -1
  204. package/dist/cjs/group.js +23 -60
  205. package/dist/cjs/group.js.map +1 -1
  206. package/dist/cjs/index.js +2 -2
  207. package/dist/cjs/index.js.map +1 -1
  208. package/dist/cjs/logic/sourcemap.js +56 -25
  209. package/dist/cjs/logic/sourcemap.js.map +1 -1
  210. package/dist/cjs/logicsig.js +113 -146
  211. package/dist/cjs/logicsig.js.map +1 -1
  212. package/dist/cjs/main.js +113 -122
  213. package/dist/cjs/main.js.map +1 -1
  214. package/dist/cjs/makeTxn.js +320 -554
  215. package/dist/cjs/makeTxn.js.map +1 -1
  216. package/dist/cjs/mnemonic/mnemonic.js +8 -8
  217. package/dist/cjs/mnemonic/mnemonic.js.map +1 -1
  218. package/dist/cjs/multisig.js +60 -312
  219. package/dist/cjs/multisig.js.map +1 -1
  220. package/dist/cjs/multisigSigning.js +285 -0
  221. package/dist/cjs/multisigSigning.js.map +1 -0
  222. package/dist/cjs/nacl/naclWrappers.js +2 -2
  223. package/dist/cjs/nacl/naclWrappers.js.map +1 -1
  224. package/dist/cjs/signedTransaction.js +106 -0
  225. package/dist/cjs/signedTransaction.js.map +1 -0
  226. package/dist/cjs/signer.js +7 -7
  227. package/dist/cjs/signer.js.map +1 -1
  228. package/dist/cjs/signing.js +105 -0
  229. package/dist/cjs/signing.js.map +1 -0
  230. package/dist/cjs/stateproof.js +421 -0
  231. package/dist/cjs/stateproof.js.map +1 -0
  232. package/dist/cjs/transaction.js +724 -1009
  233. package/dist/cjs/transaction.js.map +1 -1
  234. package/dist/cjs/types/block.js +813 -0
  235. package/dist/cjs/types/block.js.map +1 -0
  236. package/dist/cjs/types/intDecoding.js +1 -1
  237. package/dist/cjs/types/intDecoding.js.map +1 -1
  238. package/dist/cjs/types/statedelta.js +1155 -0
  239. package/dist/cjs/types/statedelta.js.map +1 -0
  240. package/dist/cjs/types/transactions/base.js +22 -5
  241. package/dist/cjs/types/transactions/base.js.map +1 -1
  242. package/dist/cjs/types/transactions/encoded.js +67 -0
  243. package/dist/cjs/types/transactions/encoded.js.map +1 -1
  244. package/dist/cjs/types/transactions/index.js +2 -5
  245. package/dist/cjs/types/transactions/index.js.map +1 -1
  246. package/dist/cjs/utils/utils.js +86 -22
  247. package/dist/cjs/utils/utils.js.map +1 -1
  248. package/dist/cjs/wait.js +4 -4
  249. package/dist/cjs/wait.js.map +1 -1
  250. package/dist/esm/abi/abi_type.js +22 -15
  251. package/dist/esm/abi/abi_type.js.map +1 -1
  252. package/dist/esm/abi/contract.js +3 -1
  253. package/dist/esm/abi/contract.js.map +1 -1
  254. package/dist/esm/abi/event.js +2 -0
  255. package/dist/esm/abi/event.js.map +1 -0
  256. package/dist/esm/abi/index.js +6 -6
  257. package/dist/esm/abi/index.js.map +1 -1
  258. package/dist/esm/abi/interface.js +1 -1
  259. package/dist/esm/abi/interface.js.map +1 -1
  260. package/dist/esm/abi/method.js +8 -4
  261. package/dist/esm/abi/method.js.map +1 -1
  262. package/dist/esm/abi/transaction.js +1 -1
  263. package/dist/esm/abi/transaction.js.map +1 -1
  264. package/dist/esm/account.js +4 -4
  265. package/dist/esm/account.js.map +1 -1
  266. package/dist/esm/boxStorage.js +15 -15
  267. package/dist/esm/boxStorage.js.map +1 -1
  268. package/dist/esm/client/client.js +74 -40
  269. package/dist/esm/client/client.js.map +1 -1
  270. package/dist/esm/client/index.js +7 -0
  271. package/dist/esm/client/index.js.map +1 -0
  272. package/dist/esm/client/kmd.js +67 -62
  273. package/dist/esm/client/kmd.js.map +1 -1
  274. package/dist/esm/client/urlTokenBaseHTTPClient.js +16 -11
  275. package/dist/esm/client/urlTokenBaseHTTPClient.js.map +1 -1
  276. package/dist/esm/client/v2/algod/accountApplicationInformation.js +10 -6
  277. package/dist/esm/client/v2/algod/accountApplicationInformation.js.map +1 -1
  278. package/dist/esm/client/v2/algod/accountAssetInformation.js +10 -6
  279. package/dist/esm/client/v2/algod/accountAssetInformation.js.map +1 -1
  280. package/dist/esm/client/v2/algod/accountInformation.js +10 -5
  281. package/dist/esm/client/v2/algod/accountInformation.js.map +1 -1
  282. package/dist/esm/client/v2/algod/algod.js +71 -70
  283. package/dist/esm/client/v2/algod/algod.js.map +1 -1
  284. package/dist/esm/client/v2/algod/block.js +5 -9
  285. package/dist/esm/client/v2/algod/block.js.map +1 -1
  286. package/dist/esm/client/v2/algod/compile.js +16 -10
  287. package/dist/esm/client/v2/algod/compile.js.map +1 -1
  288. package/dist/esm/client/v2/algod/disassemble.js +16 -10
  289. package/dist/esm/client/v2/algod/disassemble.js.map +1 -1
  290. package/dist/esm/client/v2/algod/dryrun.js +16 -12
  291. package/dist/esm/client/v2/algod/dryrun.js.map +1 -1
  292. package/dist/esm/client/v2/algod/genesis.js +5 -1
  293. package/dist/esm/client/v2/algod/genesis.js.map +1 -1
  294. package/dist/esm/client/v2/algod/getApplicationBoxByName.js +9 -9
  295. package/dist/esm/client/v2/algod/getApplicationBoxByName.js.map +1 -1
  296. package/dist/esm/client/v2/algod/getApplicationBoxes.js +7 -7
  297. package/dist/esm/client/v2/algod/getApplicationBoxes.js.map +1 -1
  298. package/dist/esm/client/v2/algod/getApplicationByID.js +9 -4
  299. package/dist/esm/client/v2/algod/getApplicationByID.js.map +1 -1
  300. package/dist/esm/client/v2/algod/getAssetByID.js +9 -4
  301. package/dist/esm/client/v2/algod/getAssetByID.js.map +1 -1
  302. package/dist/esm/client/v2/algod/getBlockHash.js +9 -5
  303. package/dist/esm/client/v2/algod/getBlockHash.js.map +1 -1
  304. package/dist/esm/client/v2/algod/getBlockOffsetTimestamp.js +5 -4
  305. package/dist/esm/client/v2/algod/getBlockOffsetTimestamp.js.map +1 -1
  306. package/dist/esm/client/v2/algod/getBlockTxids.js +9 -3
  307. package/dist/esm/client/v2/algod/getBlockTxids.js.map +1 -1
  308. package/dist/esm/client/v2/algod/getLedgerStateDelta.js +10 -5
  309. package/dist/esm/client/v2/algod/getLedgerStateDelta.js.map +1 -1
  310. package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +10 -5
  311. package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -1
  312. package/dist/esm/client/v2/algod/getSyncRound.js +5 -4
  313. package/dist/esm/client/v2/algod/getSyncRound.js.map +1 -1
  314. package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +8 -8
  315. package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -1
  316. package/dist/esm/client/v2/algod/getTransactionProof.js +9 -5
  317. package/dist/esm/client/v2/algod/getTransactionProof.js.map +1 -1
  318. package/dist/esm/client/v2/algod/healthCheck.js +3 -8
  319. package/dist/esm/client/v2/algod/healthCheck.js.map +1 -1
  320. package/dist/esm/client/v2/algod/index.js +4 -0
  321. package/dist/esm/client/v2/algod/index.js.map +1 -0
  322. package/dist/esm/client/v2/algod/lightBlockHeaderProof.js +9 -4
  323. package/dist/esm/client/v2/algod/lightBlockHeaderProof.js.map +1 -1
  324. package/dist/esm/client/v2/algod/models/types.js +3712 -1821
  325. package/dist/esm/client/v2/algod/models/types.js.map +1 -1
  326. package/dist/esm/client/v2/algod/pendingTransactionInformation.js +5 -8
  327. package/dist/esm/client/v2/algod/pendingTransactionInformation.js.map +1 -1
  328. package/dist/esm/client/v2/algod/pendingTransactions.js +5 -7
  329. package/dist/esm/client/v2/algod/pendingTransactions.js.map +1 -1
  330. package/dist/esm/client/v2/algod/pendingTransactionsByAddress.js +6 -9
  331. package/dist/esm/client/v2/algod/pendingTransactionsByAddress.js.map +1 -1
  332. package/dist/esm/client/v2/algod/ready.js +3 -1
  333. package/dist/esm/client/v2/algod/ready.js.map +1 -1
  334. package/dist/esm/client/v2/algod/sendRawTransaction.js +15 -6
  335. package/dist/esm/client/v2/algod/sendRawTransaction.js.map +1 -1
  336. package/dist/esm/client/v2/algod/setBlockOffsetTimestamp.js +12 -7
  337. package/dist/esm/client/v2/algod/setBlockOffsetTimestamp.js.map +1 -1
  338. package/dist/esm/client/v2/algod/setSyncRound.js +12 -7
  339. package/dist/esm/client/v2/algod/setSyncRound.js.map +1 -1
  340. package/dist/esm/client/v2/algod/simulateTransaction.js +14 -11
  341. package/dist/esm/client/v2/algod/simulateTransaction.js.map +1 -1
  342. package/dist/esm/client/v2/algod/stateproof.js +9 -4
  343. package/dist/esm/client/v2/algod/stateproof.js.map +1 -1
  344. package/dist/esm/client/v2/algod/status.js +7 -1
  345. package/dist/esm/client/v2/algod/status.js.map +1 -1
  346. package/dist/esm/client/v2/algod/statusAfterBlock.js +9 -4
  347. package/dist/esm/client/v2/algod/statusAfterBlock.js.map +1 -1
  348. package/dist/esm/client/v2/algod/suggestedParams.js +12 -8
  349. package/dist/esm/client/v2/algod/suggestedParams.js.map +1 -1
  350. package/dist/esm/client/v2/algod/supply.js +7 -1
  351. package/dist/esm/client/v2/algod/supply.js.map +1 -1
  352. package/dist/esm/client/v2/algod/unsetSyncRound.js +10 -4
  353. package/dist/esm/client/v2/algod/unsetSyncRound.js.map +1 -1
  354. package/dist/esm/client/v2/algod/versions.js +7 -1
  355. package/dist/esm/client/v2/algod/versions.js.map +1 -1
  356. package/dist/esm/client/v2/indexer/index.js +4 -0
  357. package/dist/esm/client/v2/indexer/index.js.map +1 -0
  358. package/dist/esm/client/v2/indexer/indexer.js +42 -42
  359. package/dist/esm/client/v2/indexer/indexer.js.map +1 -1
  360. package/dist/esm/client/v2/indexer/lookupAccountAppLocalStates.js +10 -5
  361. package/dist/esm/client/v2/indexer/lookupAccountAppLocalStates.js.map +1 -1
  362. package/dist/esm/client/v2/indexer/lookupAccountAssets.js +10 -5
  363. package/dist/esm/client/v2/indexer/lookupAccountAssets.js.map +1 -1
  364. package/dist/esm/client/v2/indexer/lookupAccountByID.js +10 -5
  365. package/dist/esm/client/v2/indexer/lookupAccountByID.js.map +1 -1
  366. package/dist/esm/client/v2/indexer/lookupAccountCreatedApplications.js +10 -5
  367. package/dist/esm/client/v2/indexer/lookupAccountCreatedApplications.js.map +1 -1
  368. package/dist/esm/client/v2/indexer/lookupAccountCreatedAssets.js +10 -5
  369. package/dist/esm/client/v2/indexer/lookupAccountCreatedAssets.js.map +1 -1
  370. package/dist/esm/client/v2/indexer/lookupAccountTransactions.js +18 -11
  371. package/dist/esm/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
  372. package/dist/esm/client/v2/indexer/lookupApplicationBoxByIDandName.js +9 -9
  373. package/dist/esm/client/v2/indexer/lookupApplicationBoxByIDandName.js.map +1 -1
  374. package/dist/esm/client/v2/indexer/lookupApplicationLogs.js +9 -4
  375. package/dist/esm/client/v2/indexer/lookupApplicationLogs.js.map +1 -1
  376. package/dist/esm/client/v2/indexer/lookupApplications.js +9 -4
  377. package/dist/esm/client/v2/indexer/lookupApplications.js.map +1 -1
  378. package/dist/esm/client/v2/indexer/lookupAssetBalances.js +9 -4
  379. package/dist/esm/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  380. package/dist/esm/client/v2/indexer/lookupAssetByID.js +9 -4
  381. package/dist/esm/client/v2/indexer/lookupAssetByID.js.map +1 -1
  382. package/dist/esm/client/v2/indexer/lookupAssetTransactions.js +17 -10
  383. package/dist/esm/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
  384. package/dist/esm/client/v2/indexer/lookupBlock.js +9 -4
  385. package/dist/esm/client/v2/indexer/lookupBlock.js.map +1 -1
  386. package/dist/esm/client/v2/indexer/lookupTransactionByID.js +9 -4
  387. package/dist/esm/client/v2/indexer/lookupTransactionByID.js.map +1 -1
  388. package/dist/esm/client/v2/indexer/makeHealthCheck.js +7 -1
  389. package/dist/esm/client/v2/indexer/makeHealthCheck.js.map +1 -1
  390. package/dist/esm/client/v2/indexer/models/types.js +3591 -1648
  391. package/dist/esm/client/v2/indexer/models/types.js.map +1 -1
  392. package/dist/esm/client/v2/indexer/searchAccounts.js +8 -2
  393. package/dist/esm/client/v2/indexer/searchAccounts.js.map +1 -1
  394. package/dist/esm/client/v2/indexer/searchForApplicationBoxes.js +7 -7
  395. package/dist/esm/client/v2/indexer/searchForApplicationBoxes.js.map +1 -1
  396. package/dist/esm/client/v2/indexer/searchForApplications.js +8 -2
  397. package/dist/esm/client/v2/indexer/searchForApplications.js.map +1 -1
  398. package/dist/esm/client/v2/indexer/searchForAssets.js +8 -2
  399. package/dist/esm/client/v2/indexer/searchForAssets.js.map +1 -1
  400. package/dist/esm/client/v2/indexer/searchForTransactions.js +15 -7
  401. package/dist/esm/client/v2/indexer/searchForTransactions.js.map +1 -1
  402. package/dist/esm/client/v2/jsonrequest.js +22 -51
  403. package/dist/esm/client/v2/jsonrequest.js.map +1 -1
  404. package/dist/esm/client/v2/serviceClient.js +3 -20
  405. package/dist/esm/client/v2/serviceClient.js.map +1 -1
  406. package/dist/esm/client/v2/untypedmodel.js +18 -0
  407. package/dist/esm/client/v2/untypedmodel.js.map +1 -0
  408. package/dist/esm/composer.js +43 -37
  409. package/dist/esm/composer.js.map +1 -1
  410. package/dist/esm/convert.js.map +1 -1
  411. package/dist/esm/dryrun.js +98 -195
  412. package/dist/esm/dryrun.js.map +1 -1
  413. package/dist/esm/encoding/address.js +85 -100
  414. package/dist/esm/encoding/address.js.map +1 -1
  415. package/dist/esm/encoding/bigint.js +2 -3
  416. package/dist/esm/encoding/bigint.js.map +1 -1
  417. package/dist/esm/encoding/binarydata.js +73 -0
  418. package/dist/esm/encoding/binarydata.js.map +1 -0
  419. package/dist/esm/encoding/encoding.js +337 -12
  420. package/dist/esm/encoding/encoding.js.map +1 -1
  421. package/dist/esm/encoding/schema/address.js +37 -0
  422. package/dist/esm/encoding/schema/address.js.map +1 -0
  423. package/dist/esm/encoding/schema/array.js +39 -0
  424. package/dist/esm/encoding/schema/array.js.map +1 -0
  425. package/dist/esm/encoding/schema/binarystring.js +51 -0
  426. package/dist/esm/encoding/schema/binarystring.js.map +1 -0
  427. package/dist/esm/encoding/schema/blockhash.js +60 -0
  428. package/dist/esm/encoding/schema/blockhash.js.map +1 -0
  429. package/dist/esm/encoding/schema/boolean.js +38 -0
  430. package/dist/esm/encoding/schema/boolean.js.map +1 -0
  431. package/dist/esm/encoding/schema/bytearray.js +93 -0
  432. package/dist/esm/encoding/schema/bytearray.js.map +1 -0
  433. package/dist/esm/encoding/schema/index.js +12 -0
  434. package/dist/esm/encoding/schema/index.js.map +1 -0
  435. package/dist/esm/encoding/schema/map.js +517 -0
  436. package/dist/esm/encoding/schema/map.js.map +1 -0
  437. package/dist/esm/encoding/schema/optional.js +54 -0
  438. package/dist/esm/encoding/schema/optional.js.map +1 -0
  439. package/dist/esm/encoding/schema/string.js +39 -0
  440. package/dist/esm/encoding/schema/string.js.map +1 -0
  441. package/dist/esm/encoding/schema/uint64.js +32 -0
  442. package/dist/esm/encoding/schema/uint64.js.map +1 -0
  443. package/dist/esm/encoding/schema/untyped.js +29 -0
  444. package/dist/esm/encoding/schema/untyped.js.map +1 -0
  445. package/dist/esm/encoding/uint64.js +1 -1
  446. package/dist/esm/encoding/uint64.js.map +1 -1
  447. package/dist/esm/group.js +22 -58
  448. package/dist/esm/group.js.map +1 -1
  449. package/dist/esm/index.js +2 -2
  450. package/dist/esm/index.js.map +1 -1
  451. package/dist/esm/logic/sourcemap.js +54 -23
  452. package/dist/esm/logic/sourcemap.js.map +1 -1
  453. package/dist/esm/logicsig.js +110 -141
  454. package/dist/esm/logicsig.js.map +1 -1
  455. package/dist/esm/main.js +47 -76
  456. package/dist/esm/main.js.map +1 -1
  457. package/dist/esm/makeTxn.js +314 -513
  458. package/dist/esm/makeTxn.js.map +1 -1
  459. package/dist/esm/mnemonic/mnemonic.js +5 -5
  460. package/dist/esm/mnemonic/mnemonic.js.map +1 -1
  461. package/dist/esm/multisig.js +56 -305
  462. package/dist/esm/multisig.js.map +1 -1
  463. package/dist/esm/multisigSigning.js +254 -0
  464. package/dist/esm/multisigSigning.js.map +1 -0
  465. package/dist/esm/nacl/naclWrappers.js +1 -1
  466. package/dist/esm/nacl/naclWrappers.js.map +1 -1
  467. package/dist/esm/package.json +1 -0
  468. package/dist/esm/signedTransaction.js +100 -0
  469. package/dist/esm/signedTransaction.js.map +1 -0
  470. package/dist/esm/signer.js +3 -3
  471. package/dist/esm/signer.js.map +1 -1
  472. package/dist/esm/signing.js +77 -0
  473. package/dist/esm/signing.js.map +1 -0
  474. package/dist/esm/stateproof.js +408 -0
  475. package/dist/esm/stateproof.js.map +1 -0
  476. package/dist/esm/transaction.js +723 -1005
  477. package/dist/esm/transaction.js.map +1 -1
  478. package/dist/esm/types/block.js +797 -0
  479. package/dist/esm/types/block.js.map +1 -0
  480. package/dist/esm/types/intDecoding.js +1 -1
  481. package/dist/esm/types/intDecoding.js.map +1 -1
  482. package/dist/esm/types/statedelta.js +1129 -0
  483. package/dist/esm/types/statedelta.js.map +1 -0
  484. package/dist/esm/types/transactions/base.js +18 -2
  485. package/dist/esm/types/transactions/base.js.map +1 -1
  486. package/dist/esm/types/transactions/encoded.js +62 -1
  487. package/dist/esm/types/transactions/encoded.js.map +1 -1
  488. package/dist/esm/types/transactions/index.js +2 -3
  489. package/dist/esm/types/transactions/index.js.map +1 -1
  490. package/dist/esm/utils/utils.js +80 -21
  491. package/dist/esm/utils/utils.js.map +1 -1
  492. package/dist/esm/wait.js +4 -4
  493. package/dist/esm/wait.js.map +1 -1
  494. package/dist/types/abi/abi_type.d.ts +1 -1
  495. package/dist/types/abi/contract.d.ts +5 -1
  496. package/dist/types/abi/event.d.ts +16 -0
  497. package/dist/types/abi/index.d.ts +6 -6
  498. package/dist/types/abi/interface.d.ts +1 -1
  499. package/dist/types/abi/method.d.ts +12 -5
  500. package/dist/types/abi/transaction.d.ts +1 -1
  501. package/dist/types/account.d.ts +1 -1
  502. package/dist/types/boxStorage.d.ts +4 -5
  503. package/dist/types/client/baseHTTPClient.d.ts +9 -6
  504. package/dist/types/client/client.d.ts +59 -18
  505. package/dist/types/client/index.d.ts +5 -0
  506. package/dist/types/client/kmd.d.ts +12 -10
  507. package/dist/types/client/urlTokenBaseHTTPClient.d.ts +8 -5
  508. package/dist/types/client/v2/algod/accountApplicationInformation.d.ts +8 -6
  509. package/dist/types/client/v2/algod/accountAssetInformation.d.ts +8 -6
  510. package/dist/types/client/v2/algod/accountInformation.d.ts +7 -5
  511. package/dist/types/client/v2/algod/algod.d.ts +53 -52
  512. package/dist/types/client/v2/algod/block.d.ts +5 -4
  513. package/dist/types/client/v2/algod/compile.d.ts +7 -9
  514. package/dist/types/client/v2/algod/disassemble.d.ts +7 -9
  515. package/dist/types/client/v2/algod/dryrun.d.ts +7 -9
  516. package/dist/types/client/v2/algod/genesis.d.ts +4 -2
  517. package/dist/types/client/v2/algod/getApplicationBoxByName.d.ts +6 -7
  518. package/dist/types/client/v2/algod/getApplicationBoxes.d.ts +6 -7
  519. package/dist/types/client/v2/algod/getApplicationByID.d.ts +6 -5
  520. package/dist/types/client/v2/algod/getAssetByID.d.ts +6 -5
  521. package/dist/types/client/v2/algod/getBlockHash.d.ts +7 -6
  522. package/dist/types/client/v2/algod/getBlockOffsetTimestamp.d.ts +5 -4
  523. package/dist/types/client/v2/algod/getBlockTxids.d.ts +6 -5
  524. package/dist/types/client/v2/algod/getLedgerStateDelta.d.ts +6 -5
  525. package/dist/types/client/v2/algod/getLedgerStateDeltaForTransactionGroup.d.ts +6 -5
  526. package/dist/types/client/v2/algod/getSyncRound.d.ts +5 -4
  527. package/dist/types/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.d.ts +6 -7
  528. package/dist/types/client/v2/algod/getTransactionProof.d.ts +6 -5
  529. package/dist/types/client/v2/algod/healthCheck.d.ts +4 -3
  530. package/dist/types/client/v2/algod/index.d.ts +2 -0
  531. package/dist/types/client/v2/algod/lightBlockHeaderProof.d.ts +6 -5
  532. package/dist/types/client/v2/algod/models/types.d.ts +629 -318
  533. package/dist/types/client/v2/algod/pendingTransactionInformation.d.ts +5 -4
  534. package/dist/types/client/v2/algod/pendingTransactions.d.ts +5 -4
  535. package/dist/types/client/v2/algod/pendingTransactionsByAddress.d.ts +7 -5
  536. package/dist/types/client/v2/algod/ready.d.ts +4 -2
  537. package/dist/types/client/v2/algod/sendRawTransaction.d.ts +7 -5
  538. package/dist/types/client/v2/algod/setBlockOffsetTimestamp.d.ts +6 -6
  539. package/dist/types/client/v2/algod/setSyncRound.d.ts +6 -6
  540. package/dist/types/client/v2/algod/simulateTransaction.d.ts +7 -7
  541. package/dist/types/client/v2/algod/stateproof.d.ts +6 -5
  542. package/dist/types/client/v2/algod/status.d.ts +5 -2
  543. package/dist/types/client/v2/algod/statusAfterBlock.d.ts +6 -5
  544. package/dist/types/client/v2/algod/suggestedParams.d.ts +25 -4
  545. package/dist/types/client/v2/algod/supply.d.ts +5 -2
  546. package/dist/types/client/v2/algod/unsetSyncRound.d.ts +5 -3
  547. package/dist/types/client/v2/algod/versions.d.ts +5 -2
  548. package/dist/types/client/v2/indexer/index.d.ts +2 -0
  549. package/dist/types/client/v2/indexer/indexer.d.ts +31 -30
  550. package/dist/types/client/v2/indexer/lookupAccountAppLocalStates.d.ts +7 -5
  551. package/dist/types/client/v2/indexer/lookupAccountAssets.d.ts +7 -5
  552. package/dist/types/client/v2/indexer/lookupAccountByID.d.ts +7 -5
  553. package/dist/types/client/v2/indexer/lookupAccountCreatedApplications.d.ts +7 -5
  554. package/dist/types/client/v2/indexer/lookupAccountCreatedAssets.d.ts +7 -5
  555. package/dist/types/client/v2/indexer/lookupAccountTransactions.d.ts +11 -9
  556. package/dist/types/client/v2/indexer/lookupApplicationBoxByIDandName.d.ts +6 -7
  557. package/dist/types/client/v2/indexer/lookupApplicationLogs.d.ts +6 -5
  558. package/dist/types/client/v2/indexer/lookupApplications.d.ts +6 -5
  559. package/dist/types/client/v2/indexer/lookupAssetBalances.d.ts +6 -5
  560. package/dist/types/client/v2/indexer/lookupAssetByID.d.ts +6 -5
  561. package/dist/types/client/v2/indexer/lookupAssetTransactions.d.ts +12 -10
  562. package/dist/types/client/v2/indexer/lookupBlock.d.ts +6 -5
  563. package/dist/types/client/v2/indexer/lookupTransactionByID.d.ts +6 -5
  564. package/dist/types/client/v2/indexer/makeHealthCheck.d.ts +5 -2
  565. package/dist/types/client/v2/indexer/models/types.d.ts +513 -267
  566. package/dist/types/client/v2/indexer/searchAccounts.d.ts +7 -3
  567. package/dist/types/client/v2/indexer/searchForApplicationBoxes.d.ts +6 -7
  568. package/dist/types/client/v2/indexer/searchForApplications.d.ts +7 -3
  569. package/dist/types/client/v2/indexer/searchForAssets.d.ts +7 -3
  570. package/dist/types/client/v2/indexer/searchForTransactions.d.ts +11 -7
  571. package/dist/types/client/v2/jsonrequest.d.ts +20 -33
  572. package/dist/types/client/v2/serviceClient.d.ts +4 -18
  573. package/dist/types/client/v2/untypedmodel.d.ts +10 -0
  574. package/dist/types/composer.d.ts +18 -17
  575. package/dist/types/dryrun.d.ts +8 -80
  576. package/dist/types/encoding/address.d.ts +40 -31
  577. package/dist/types/encoding/binarydata.d.ts +30 -0
  578. package/dist/types/encoding/encoding.d.ts +219 -7
  579. package/dist/types/encoding/schema/address.d.ts +10 -0
  580. package/dist/types/encoding/schema/array.d.ts +11 -0
  581. package/dist/types/encoding/schema/binarystring.d.ts +18 -0
  582. package/dist/types/encoding/schema/blockhash.d.ts +16 -0
  583. package/dist/types/encoding/schema/boolean.d.ts +10 -0
  584. package/dist/types/encoding/schema/bytearray.d.ts +19 -0
  585. package/dist/types/encoding/schema/index.d.ts +11 -0
  586. package/dist/types/encoding/schema/map.d.ts +125 -0
  587. package/dist/types/encoding/schema/optional.d.ts +24 -0
  588. package/dist/types/encoding/schema/string.d.ts +9 -0
  589. package/dist/types/encoding/schema/uint64.d.ts +9 -0
  590. package/dist/types/encoding/schema/untyped.d.ts +9 -0
  591. package/dist/types/encoding/uint64.d.ts +1 -0
  592. package/dist/types/group.d.ts +6 -25
  593. package/dist/types/index.d.ts +2 -2
  594. package/dist/types/logic/sourcemap.d.ts +39 -13
  595. package/dist/types/logicsig.d.ts +27 -57
  596. package/dist/types/main.d.ts +43 -54
  597. package/dist/types/makeTxn.d.ts +129 -388
  598. package/dist/types/mnemonic/mnemonic.d.ts +1 -1
  599. package/dist/types/multisig.d.ts +28 -99
  600. package/dist/types/multisigSigning.d.ts +72 -0
  601. package/dist/types/signedTransaction.d.ts +55 -0
  602. package/dist/types/signer.d.ts +5 -5
  603. package/dist/types/signing.d.ts +29 -0
  604. package/dist/types/stateproof.d.ts +194 -0
  605. package/dist/types/transaction.d.ts +103 -182
  606. package/dist/types/types/account.d.ts +2 -1
  607. package/dist/types/types/block.d.ts +407 -0
  608. package/dist/types/types/intDecoding.d.ts +1 -1
  609. package/dist/types/types/statedelta.d.ts +575 -0
  610. package/dist/types/types/transactions/base.d.ts +206 -118
  611. package/dist/types/types/transactions/encoded.d.ts +7 -301
  612. package/dist/types/types/transactions/index.d.ts +2 -15
  613. package/dist/types/types/utils.d.ts +7 -7
  614. package/dist/types/utils/utils.d.ts +21 -16
  615. package/dist/types/wait.d.ts +3 -2
  616. package/package.json +48 -20
  617. package/src/abi/abi_type.ts +28 -18
  618. package/src/abi/contract.ts +7 -1
  619. package/src/abi/event.ts +16 -0
  620. package/src/abi/index.ts +6 -6
  621. package/src/abi/interface.ts +1 -1
  622. package/src/abi/method.ts +22 -8
  623. package/src/abi/transaction.ts +2 -2
  624. package/src/account.ts +5 -5
  625. package/src/boxStorage.ts +25 -23
  626. package/src/client/baseHTTPClient.ts +12 -6
  627. package/src/client/client.ts +147 -75
  628. package/src/client/index.ts +6 -0
  629. package/src/client/kmd.ts +79 -72
  630. package/src/client/urlTokenBaseHTTPClient.ts +25 -14
  631. package/src/client/v2/algod/accountApplicationInformation.ts +16 -9
  632. package/src/client/v2/algod/accountAssetInformation.ts +16 -9
  633. package/src/client/v2/algod/accountInformation.ts +16 -11
  634. package/src/client/v2/algod/algod.ts +83 -105
  635. package/src/client/v2/algod/block.ts +7 -11
  636. package/src/client/v2/algod/compile.ts +27 -19
  637. package/src/client/v2/algod/disassemble.ts +27 -19
  638. package/src/client/v2/algod/dryrun.ts +23 -19
  639. package/src/client/v2/algod/genesis.ts +8 -2
  640. package/src/client/v2/algod/getApplicationBoxByName.ts +10 -15
  641. package/src/client/v2/algod/getApplicationBoxes.ts +12 -13
  642. package/src/client/v2/algod/getApplicationByID.ts +15 -7
  643. package/src/client/v2/algod/getAssetByID.ts +15 -7
  644. package/src/client/v2/algod/getBlockHash.ts +13 -9
  645. package/src/client/v2/algod/getBlockOffsetTimestamp.ts +7 -8
  646. package/src/client/v2/algod/getBlockTxids.ts +12 -6
  647. package/src/client/v2/algod/getLedgerStateDelta.ts +16 -8
  648. package/src/client/v2/algod/getLedgerStateDeltaForTransactionGroup.ts +16 -8
  649. package/src/client/v2/algod/getSyncRound.ts +7 -8
  650. package/src/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.ts +15 -15
  651. package/src/client/v2/algod/getTransactionProof.ts +11 -9
  652. package/src/client/v2/algod/healthCheck.ts +5 -9
  653. package/src/client/v2/algod/index.ts +3 -0
  654. package/src/client/v2/algod/lightBlockHeaderProof.ts +15 -8
  655. package/src/client/v2/algod/models/types.ts +4729 -2254
  656. package/src/client/v2/algod/pendingTransactionInformation.ts +11 -11
  657. package/src/client/v2/algod/pendingTransactions.ts +7 -9
  658. package/src/client/v2/algod/pendingTransactionsByAddress.ts +12 -11
  659. package/src/client/v2/algod/ready.ts +6 -2
  660. package/src/client/v2/algod/sendRawTransaction.ts +24 -13
  661. package/src/client/v2/algod/setBlockOffsetTimestamp.ts +21 -11
  662. package/src/client/v2/algod/setSyncRound.ts +21 -11
  663. package/src/client/v2/algod/simulateTransaction.ts +22 -23
  664. package/src/client/v2/algod/stateproof.ts +15 -8
  665. package/src/client/v2/algod/status.ts +10 -2
  666. package/src/client/v2/algod/statusAfterBlock.ts +15 -7
  667. package/src/client/v2/algod/suggestedParams.ts +40 -10
  668. package/src/client/v2/algod/supply.ts +10 -2
  669. package/src/client/v2/algod/unsetSyncRound.ts +16 -5
  670. package/src/client/v2/algod/versions.ts +10 -2
  671. package/src/client/v2/indexer/index.ts +3 -0
  672. package/src/client/v2/indexer/indexer.ts +51 -59
  673. package/src/client/v2/indexer/lookupAccountAppLocalStates.ts +16 -11
  674. package/src/client/v2/indexer/lookupAccountAssets.ts +16 -11
  675. package/src/client/v2/indexer/lookupAccountByID.ts +16 -11
  676. package/src/client/v2/indexer/lookupAccountCreatedApplications.ts +16 -11
  677. package/src/client/v2/indexer/lookupAccountCreatedAssets.ts +16 -11
  678. package/src/client/v2/indexer/lookupAccountTransactions.ts +26 -19
  679. package/src/client/v2/indexer/lookupApplicationBoxByIDandName.ts +10 -15
  680. package/src/client/v2/indexer/lookupApplicationLogs.ts +15 -7
  681. package/src/client/v2/indexer/lookupApplications.ts +15 -7
  682. package/src/client/v2/indexer/lookupAssetBalances.ts +15 -7
  683. package/src/client/v2/indexer/lookupAssetByID.ts +15 -7
  684. package/src/client/v2/indexer/lookupAssetTransactions.ts +27 -16
  685. package/src/client/v2/indexer/lookupBlock.ts +15 -7
  686. package/src/client/v2/indexer/lookupTransactionByID.ts +15 -7
  687. package/src/client/v2/indexer/makeHealthCheck.ts +10 -2
  688. package/src/client/v2/indexer/models/types.ts +4454 -1988
  689. package/src/client/v2/indexer/searchAccounts.ts +13 -4
  690. package/src/client/v2/indexer/searchForApplicationBoxes.ts +12 -13
  691. package/src/client/v2/indexer/searchForApplications.ts +13 -4
  692. package/src/client/v2/indexer/searchForAssets.ts +13 -4
  693. package/src/client/v2/indexer/searchForTransactions.ts +22 -11
  694. package/src/client/v2/jsonrequest.ts +39 -57
  695. package/src/client/v2/serviceClient.ts +9 -31
  696. package/src/client/v2/untypedmodel.ts +25 -0
  697. package/src/composer.ts +83 -60
  698. package/src/dryrun.ts +129 -306
  699. package/src/encoding/address.ts +134 -146
  700. package/src/encoding/bigint.ts +2 -4
  701. package/src/encoding/binarydata.ts +80 -0
  702. package/src/encoding/encoding.ts +558 -13
  703. package/src/encoding/schema/address.ts +53 -0
  704. package/src/encoding/schema/array.ts +66 -0
  705. package/src/encoding/schema/binarystring.ts +73 -0
  706. package/src/encoding/schema/blockhash.ts +84 -0
  707. package/src/encoding/schema/boolean.ts +54 -0
  708. package/src/encoding/schema/bytearray.ts +127 -0
  709. package/src/encoding/schema/index.ts +26 -0
  710. package/src/encoding/schema/map.ts +713 -0
  711. package/src/encoding/schema/optional.ts +72 -0
  712. package/src/encoding/schema/string.ts +55 -0
  713. package/src/encoding/schema/uint64.ts +46 -0
  714. package/src/encoding/schema/untyped.ts +47 -0
  715. package/src/encoding/uint64.ts +2 -1
  716. package/src/group.ts +27 -75
  717. package/src/index.ts +2 -2
  718. package/src/logic/sourcemap.ts +94 -29
  719. package/src/logicsig.ts +154 -202
  720. package/src/main.ts +91 -94
  721. package/src/makeTxn.ts +670 -1320
  722. package/src/mnemonic/mnemonic.ts +14 -14
  723. package/src/multisig.ts +89 -403
  724. package/src/multisigSigning.ts +359 -0
  725. package/src/nacl/naclWrappers.ts +1 -1
  726. package/src/signedTransaction.ts +163 -0
  727. package/src/signer.ts +10 -5
  728. package/src/signing.ts +95 -0
  729. package/src/stateproof.ts +595 -0
  730. package/src/transaction.ts +986 -1242
  731. package/src/types/account.ts +3 -1
  732. package/src/types/block.ts +1278 -0
  733. package/src/types/intDecoding.ts +1 -1
  734. package/src/types/statedelta.ts +1717 -0
  735. package/src/types/transactions/base.ts +230 -122
  736. package/src/types/transactions/encoded.ts +81 -371
  737. package/src/types/transactions/index.ts +2 -72
  738. package/src/types/utils.ts +3 -3
  739. package/src/utils/utils.ts +96 -25
  740. package/src/wait.ts +8 -7
  741. package/dist/cjs/bid.js +0 -83
  742. package/dist/cjs/bid.js.map +0 -1
  743. package/dist/cjs/client/v2/basemodel.js +0 -67
  744. package/dist/cjs/client/v2/basemodel.js.map +0 -1
  745. package/dist/cjs/types/address.js +0 -3
  746. package/dist/cjs/types/address.js.map +0 -1
  747. package/dist/cjs/types/blockHeader.js +0 -3
  748. package/dist/cjs/types/blockHeader.js.map +0 -1
  749. package/dist/cjs/types/index.js.map +0 -1
  750. package/dist/cjs/types/multisig.js +0 -3
  751. package/dist/cjs/types/multisig.js.map +0 -1
  752. package/dist/cjs/types/transactions/application.js +0 -3
  753. package/dist/cjs/types/transactions/application.js.map +0 -1
  754. package/dist/cjs/types/transactions/asset.js.map +0 -1
  755. package/dist/cjs/types/transactions/builder.js +0 -3
  756. package/dist/cjs/types/transactions/builder.js.map +0 -1
  757. package/dist/cjs/types/transactions/keyreg.js +0 -3
  758. package/dist/cjs/types/transactions/keyreg.js.map +0 -1
  759. package/dist/cjs/types/transactions/payment.js +0 -3
  760. package/dist/cjs/types/transactions/payment.js.map +0 -1
  761. package/dist/cjs/types/transactions/stateproof.js +0 -3
  762. package/dist/cjs/types/transactions/stateproof.js.map +0 -1
  763. package/dist/esm/bid.js +0 -57
  764. package/dist/esm/bid.js.map +0 -1
  765. package/dist/esm/client/v2/basemodel.js +0 -64
  766. package/dist/esm/client/v2/basemodel.js.map +0 -1
  767. package/dist/esm/types/address.js +0 -2
  768. package/dist/esm/types/address.js.map +0 -1
  769. package/dist/esm/types/blockHeader.js +0 -2
  770. package/dist/esm/types/blockHeader.js.map +0 -1
  771. package/dist/esm/types/index.js +0 -4
  772. package/dist/esm/types/index.js.map +0 -1
  773. package/dist/esm/types/multisig.js +0 -2
  774. package/dist/esm/types/multisig.js.map +0 -1
  775. package/dist/esm/types/transactions/application.js +0 -2
  776. package/dist/esm/types/transactions/application.js.map +0 -1
  777. package/dist/esm/types/transactions/asset.js +0 -2
  778. package/dist/esm/types/transactions/asset.js.map +0 -1
  779. package/dist/esm/types/transactions/builder.js +0 -2
  780. package/dist/esm/types/transactions/builder.js.map +0 -1
  781. package/dist/esm/types/transactions/keyreg.js +0 -2
  782. package/dist/esm/types/transactions/keyreg.js.map +0 -1
  783. package/dist/esm/types/transactions/payment.js +0 -2
  784. package/dist/esm/types/transactions/payment.js.map +0 -1
  785. package/dist/esm/types/transactions/stateproof.js +0 -2
  786. package/dist/esm/types/transactions/stateproof.js.map +0 -1
  787. package/dist/types/bid.d.ts +0 -38
  788. package/dist/types/client/v2/basemodel.d.ts +0 -11
  789. package/dist/types/types/address.d.ts +0 -7
  790. package/dist/types/types/blockHeader.d.ts +0 -67
  791. package/dist/types/types/index.d.ts +0 -3
  792. package/dist/types/types/multisig.d.ts +0 -20
  793. package/dist/types/types/transactions/application.d.ts +0 -22
  794. package/dist/types/types/transactions/asset.d.ts +0 -28
  795. package/dist/types/types/transactions/builder.d.ts +0 -36
  796. package/dist/types/types/transactions/keyreg.d.ts +0 -8
  797. package/dist/types/types/transactions/payment.d.ts +0 -8
  798. package/dist/types/types/transactions/stateproof.d.ts +0 -8
  799. package/src/bid.ts +0 -96
  800. package/src/client/v2/basemodel.ts +0 -81
  801. package/src/types/address.ts +0 -7
  802. package/src/types/blockHeader.ts +0 -81
  803. package/src/types/index.ts +0 -3
  804. package/src/types/multisig.ts +0 -22
  805. package/src/types/transactions/application.ts +0 -111
  806. package/src/types/transactions/asset.ts +0 -108
  807. package/src/types/transactions/builder.ts +0 -69
  808. package/src/types/transactions/keyreg.ts +0 -23
  809. package/src/types/transactions/payment.ts +0 -14
  810. package/src/types/transactions/stateproof.ts +0 -17
@@ -0,0 +1,1155 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LedgerStateDelta = exports.AccountTotals = exports.AlgoCount = exports.ModifiedCreatable = exports.IncludedTransactions = exports.KvValueDelta = exports.AccountDeltas = exports.BalanceRecord = exports.AccountData = exports.AccountBaseData = exports.VotingData = exports.AssetResourceRecord = exports.AssetParamsDelta = exports.AssetParams = exports.AssetHoldingDelta = exports.AssetHolding = exports.AppResourceRecord = exports.AppParamsDelta = exports.AppLocalStateDelta = exports.AppLocalState = exports.AppParams = exports.StateSchema = exports.TealValue = void 0;
4
+ const index_js_1 = require("../encoding/schema/index.js");
5
+ const block_js_1 = require("./block.js");
6
+ const untypedmodel_js_1 = require("../client/v2/untypedmodel.js");
7
+ // TealValue contains type information and a value, representing a value in a TEAL program
8
+ class TealValue {
9
+ constructor(params) {
10
+ this.type = params.type;
11
+ this.bytes = params.bytes;
12
+ this.uint = params.uint;
13
+ }
14
+ // eslint-disable-next-line class-methods-use-this
15
+ getEncodingSchema() {
16
+ return TealValue.encodingSchema;
17
+ }
18
+ toEncodingData() {
19
+ return new Map([
20
+ ['tt', this.type],
21
+ ['tb', this.bytes],
22
+ ['ui', this.uint],
23
+ ]);
24
+ }
25
+ static fromEncodingData(data) {
26
+ if (!(data instanceof Map)) {
27
+ throw new Error(`Invalid decoded TealValue: ${data}`);
28
+ }
29
+ return new TealValue({
30
+ type: Number(data.get('tt')),
31
+ bytes: data.get('tb'),
32
+ uint: data.get('ui'),
33
+ });
34
+ }
35
+ }
36
+ exports.TealValue = TealValue;
37
+ TealValue.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
38
+ { key: 'tt', valueSchema: new index_js_1.Uint64Schema() }, // type
39
+ {
40
+ key: 'tb', // bytes
41
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.SpecialCaseBinaryStringSchema()),
42
+ },
43
+ { key: 'ui', valueSchema: new index_js_1.OptionalSchema(new index_js_1.Uint64Schema()) }, // uint
44
+ ]));
45
+ /**
46
+ * StateSchema sets maximums on the number of each type that may be stored
47
+ */
48
+ class StateSchema {
49
+ constructor(params) {
50
+ this.numUints = params.numUints;
51
+ this.numByteSlices = params.numByteSlices;
52
+ }
53
+ // eslint-disable-next-line class-methods-use-this
54
+ getEncodingSchema() {
55
+ return StateSchema.encodingSchema;
56
+ }
57
+ toEncodingData() {
58
+ return new Map([
59
+ ['nui', this.numUints],
60
+ ['nbs', this.numByteSlices],
61
+ ]);
62
+ }
63
+ static fromEncodingData(data) {
64
+ if (!(data instanceof Map)) {
65
+ throw new Error(`Invalid decoded StateSchema: ${data}`);
66
+ }
67
+ return new StateSchema({
68
+ numUints: Number(data.get('nui')),
69
+ numByteSlices: Number(data.get('nbs')),
70
+ });
71
+ }
72
+ }
73
+ exports.StateSchema = StateSchema;
74
+ StateSchema.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
75
+ {
76
+ key: 'nui', // numUints
77
+ valueSchema: new index_js_1.Uint64Schema(),
78
+ },
79
+ {
80
+ key: 'nbs', // numByteSlices
81
+ valueSchema: new index_js_1.Uint64Schema(),
82
+ },
83
+ ]));
84
+ /**
85
+ * AppParams stores the global information associated with an application
86
+ */
87
+ class AppParams {
88
+ constructor(params) {
89
+ this.approvalProgram = params.approvalProgram;
90
+ this.clearStateProgram = params.clearStateProgram;
91
+ this.globalState = params.globalState;
92
+ this.localStateSchema = params.localStateSchema;
93
+ this.globalStateSchema = params.globalStateSchema;
94
+ this.extraProgramPages = params.extraProgramPages;
95
+ }
96
+ // eslint-disable-next-line class-methods-use-this
97
+ getEncodingSchema() {
98
+ return AppParams.encodingSchema;
99
+ }
100
+ toEncodingData() {
101
+ return new Map([
102
+ ['approv', this.approvalProgram],
103
+ ['clearp', this.clearStateProgram],
104
+ ['gs', (0, index_js_1.convertMap)(this.globalState, (k, v) => [k, v.toEncodingData()])],
105
+ ['lsch', this.localStateSchema.toEncodingData()],
106
+ ['gsch', this.globalStateSchema.toEncodingData()],
107
+ ['epp', this.extraProgramPages],
108
+ ]);
109
+ }
110
+ static fromEncodingData(data) {
111
+ if (!(data instanceof Map)) {
112
+ throw new Error(`Invalid decoded AppParams: ${data}`);
113
+ }
114
+ return new AppParams({
115
+ approvalProgram: data.get('approv'),
116
+ clearStateProgram: data.get('clearp'),
117
+ globalState: (0, index_js_1.convertMap)(data.get('gs'), (k, v) => [k, TealValue.fromEncodingData(v)]),
118
+ localStateSchema: StateSchema.fromEncodingData(data.get('lsch')),
119
+ globalStateSchema: StateSchema.fromEncodingData(data.get('gsch')),
120
+ extraProgramPages: Number(data.get('epp')),
121
+ });
122
+ }
123
+ }
124
+ exports.AppParams = AppParams;
125
+ AppParams.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
126
+ { key: 'approv', valueSchema: new index_js_1.ByteArraySchema() }, // approvalProgram
127
+ { key: 'clearp', valueSchema: new index_js_1.ByteArraySchema() }, // alearStateProgram
128
+ {
129
+ key: 'gs',
130
+ valueSchema: new index_js_1.SpecialCaseBinaryStringMapSchema(TealValue.encodingSchema),
131
+ }, // globalState
132
+ { key: 'lsch', valueSchema: StateSchema.encodingSchema }, // localStateSchema
133
+ { key: 'gsch', valueSchema: StateSchema.encodingSchema }, // globalStateSchema
134
+ { key: 'epp', valueSchema: new index_js_1.Uint64Schema() }, // extraProgramPages
135
+ ]));
136
+ /**
137
+ * AppLocalState stores the LocalState associated with an application.
138
+ */
139
+ class AppLocalState {
140
+ constructor(params) {
141
+ this.schema = params.schema;
142
+ this.keyValue = params.keyValue;
143
+ }
144
+ // eslint-disable-next-line class-methods-use-this
145
+ getEncodingSchema() {
146
+ return AppLocalState.encodingSchema;
147
+ }
148
+ toEncodingData() {
149
+ return new Map([
150
+ ['hsch', this.schema.toEncodingData()],
151
+ ['tkv', (0, index_js_1.convertMap)(this.keyValue, (k, v) => [k, v.toEncodingData()])],
152
+ ]);
153
+ }
154
+ static fromEncodingData(data) {
155
+ if (!(data instanceof Map)) {
156
+ throw new Error(`Invalid decoded AppLocalState: ${data}`);
157
+ }
158
+ return new AppLocalState({
159
+ schema: StateSchema.fromEncodingData(data.get('hsch')),
160
+ keyValue: (0, index_js_1.convertMap)(data.get('tkv'), (k, v) => [k, TealValue.fromEncodingData(v)]),
161
+ });
162
+ }
163
+ }
164
+ exports.AppLocalState = AppLocalState;
165
+ AppLocalState.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
166
+ { key: 'hsch', valueSchema: StateSchema.encodingSchema }, // schema
167
+ {
168
+ key: 'tkv', // keyValue
169
+ valueSchema: new index_js_1.SpecialCaseBinaryStringMapSchema(TealValue.encodingSchema),
170
+ },
171
+ ]));
172
+ /**
173
+ * AppLocalStateDelta tracks a changed AppLocalState, and whether it was deleted
174
+ */
175
+ class AppLocalStateDelta {
176
+ constructor(params) {
177
+ this.localState = params.localState;
178
+ this.deleted = params.deleted;
179
+ }
180
+ // eslint-disable-next-line class-methods-use-this
181
+ getEncodingSchema() {
182
+ return AppLocalStateDelta.encodingSchema;
183
+ }
184
+ toEncodingData() {
185
+ return new Map([
186
+ [
187
+ 'LocalState',
188
+ this.localState ? this.localState.toEncodingData() : undefined,
189
+ ],
190
+ ['Deleted', this.deleted],
191
+ ]);
192
+ }
193
+ static fromEncodingData(data) {
194
+ if (!(data instanceof Map)) {
195
+ throw new Error(`Invalid decoded AppLocalStateDelta: ${data}`);
196
+ }
197
+ return new AppLocalStateDelta({
198
+ localState: data.get('LocalState')
199
+ ? AppLocalState.fromEncodingData(data.get('LocalState'))
200
+ : undefined,
201
+ deleted: data.get('Deleted'),
202
+ });
203
+ }
204
+ }
205
+ exports.AppLocalStateDelta = AppLocalStateDelta;
206
+ AppLocalStateDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
207
+ {
208
+ key: 'LocalState', // localState
209
+ valueSchema: new index_js_1.OptionalSchema(AppLocalState.encodingSchema),
210
+ },
211
+ { key: 'Deleted', valueSchema: new index_js_1.BooleanSchema() }, // deleted
212
+ ]));
213
+ /**
214
+ * AppParamsDelta tracks a changed AppParams, and whether it was deleted
215
+ */
216
+ class AppParamsDelta {
217
+ constructor(params) {
218
+ this.params = params.params;
219
+ this.deleted = params.deleted;
220
+ }
221
+ // eslint-disable-next-line class-methods-use-this
222
+ getEncodingSchema() {
223
+ return AppParamsDelta.encodingSchema;
224
+ }
225
+ toEncodingData() {
226
+ return new Map([
227
+ ['Params', this.params ? this.params.toEncodingData() : undefined],
228
+ ['Deleted', this.deleted],
229
+ ]);
230
+ }
231
+ static fromEncodingData(data) {
232
+ if (!(data instanceof Map)) {
233
+ throw new Error(`Invalid decoded AppParamsDelta: ${data}`);
234
+ }
235
+ return new AppParamsDelta({
236
+ params: data.get('Params')
237
+ ? AppParams.fromEncodingData(data.get('Params'))
238
+ : undefined,
239
+ deleted: data.get('Deleted'),
240
+ });
241
+ }
242
+ }
243
+ exports.AppParamsDelta = AppParamsDelta;
244
+ AppParamsDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
245
+ {
246
+ key: 'Params', // params
247
+ valueSchema: new index_js_1.OptionalSchema(AppParams.encodingSchema),
248
+ },
249
+ { key: 'Deleted', valueSchema: new index_js_1.BooleanSchema() }, // deleted
250
+ ]));
251
+ /**
252
+ * AppResourceRecord represents AppParams and AppLocalState in deltas
253
+ */
254
+ class AppResourceRecord {
255
+ constructor(params) {
256
+ this.id = params.id;
257
+ this.address = params.address;
258
+ this.params = params.params;
259
+ this.state = params.state;
260
+ }
261
+ // eslint-disable-next-line class-methods-use-this
262
+ getEncodingSchema() {
263
+ return AppResourceRecord.encodingSchema;
264
+ }
265
+ toEncodingData() {
266
+ return new Map([
267
+ ['Aidx', this.id],
268
+ ['Addr', this.address],
269
+ ['Params', this.params.toEncodingData()],
270
+ ['State', this.state.toEncodingData()],
271
+ ]);
272
+ }
273
+ static fromEncodingData(data) {
274
+ if (!(data instanceof Map)) {
275
+ throw new Error(`Invalid decoded AppResourceRecord: ${data}`);
276
+ }
277
+ return new AppResourceRecord({
278
+ id: data.get('Aidx'),
279
+ address: data.get('Addr'),
280
+ params: AppParamsDelta.fromEncodingData(data.get('Params')),
281
+ state: AppLocalStateDelta.fromEncodingData(data.get('State')),
282
+ });
283
+ }
284
+ }
285
+ exports.AppResourceRecord = AppResourceRecord;
286
+ AppResourceRecord.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
287
+ { key: 'Aidx', valueSchema: new index_js_1.Uint64Schema() }, // id
288
+ { key: 'Addr', valueSchema: new index_js_1.AddressSchema() }, // address
289
+ {
290
+ key: 'Params', // params
291
+ valueSchema: AppParamsDelta.encodingSchema,
292
+ },
293
+ {
294
+ key: 'State', // state
295
+ valueSchema: AppLocalStateDelta.encodingSchema,
296
+ },
297
+ ]));
298
+ /**
299
+ * AssetHolding describes an asset held by an account.
300
+ */
301
+ class AssetHolding {
302
+ constructor(params) {
303
+ this.amount = params.amount;
304
+ this.frozen = params.frozen;
305
+ }
306
+ // eslint-disable-next-line class-methods-use-this
307
+ getEncodingSchema() {
308
+ return AssetHolding.encodingSchema;
309
+ }
310
+ toEncodingData() {
311
+ return new Map([
312
+ ['a', this.amount],
313
+ ['f', this.frozen],
314
+ ]);
315
+ }
316
+ static fromEncodingData(data) {
317
+ if (!(data instanceof Map)) {
318
+ throw new Error(`Invalid decoded AssetHolding: ${data}`);
319
+ }
320
+ return new AssetHolding({
321
+ amount: data.get('a'),
322
+ frozen: data.get('f'),
323
+ });
324
+ }
325
+ }
326
+ exports.AssetHolding = AssetHolding;
327
+ AssetHolding.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
328
+ { key: 'a', valueSchema: new index_js_1.Uint64Schema() }, // amount
329
+ { key: 'f', valueSchema: new index_js_1.BooleanSchema() }, // frozen
330
+ ]));
331
+ /**
332
+ * AssetHoldingDelta records a changed AssetHolding, and whether it was deleted
333
+ */
334
+ class AssetHoldingDelta {
335
+ constructor(params) {
336
+ this.holding = params.holding;
337
+ this.deleted = params.deleted;
338
+ }
339
+ // eslint-disable-next-line class-methods-use-this
340
+ getEncodingSchema() {
341
+ return AssetHoldingDelta.encodingSchema;
342
+ }
343
+ toEncodingData() {
344
+ return new Map([
345
+ ['Holding', this.holding ? this.holding.toEncodingData() : undefined],
346
+ ['Deleted', this.deleted],
347
+ ]);
348
+ }
349
+ static fromEncodingData(data) {
350
+ if (!(data instanceof Map)) {
351
+ throw new Error(`Invalid decoded AssetHoldingDelta: ${data}`);
352
+ }
353
+ return new AssetHoldingDelta({
354
+ holding: data.get('Holding')
355
+ ? AssetHolding.fromEncodingData(data.get('Holding'))
356
+ : undefined,
357
+ deleted: data.get('Deleted'),
358
+ });
359
+ }
360
+ }
361
+ exports.AssetHoldingDelta = AssetHoldingDelta;
362
+ AssetHoldingDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
363
+ {
364
+ key: 'Holding', // holding
365
+ valueSchema: new index_js_1.OptionalSchema(AssetHolding.encodingSchema),
366
+ },
367
+ { key: 'Deleted', valueSchema: new index_js_1.BooleanSchema() }, // deleted
368
+ ]));
369
+ /**
370
+ * AssetParams describes the parameters of an asset.
371
+ */
372
+ class AssetParams {
373
+ constructor(params) {
374
+ this.total = params.total;
375
+ this.decimals = params.decimals;
376
+ this.defaultFrozen = params.defaultFrozen;
377
+ this.unitName = params.unitName;
378
+ this.assetName = params.assetName;
379
+ this.url = params.url;
380
+ this.metadataHash = params.metadataHash;
381
+ this.manager = params.manager;
382
+ this.reserve = params.reserve;
383
+ this.freeze = params.freeze;
384
+ this.clawback = params.clawback;
385
+ }
386
+ // eslint-disable-next-line class-methods-use-this
387
+ getEncodingSchema() {
388
+ return AssetParams.encodingSchema;
389
+ }
390
+ toEncodingData() {
391
+ return new Map([
392
+ ['t', this.total],
393
+ ['dc', this.decimals],
394
+ ['df', this.defaultFrozen],
395
+ ['un', this.unitName],
396
+ ['an', this.assetName],
397
+ ['au', this.url],
398
+ ['am', this.metadataHash],
399
+ ['m', this.manager],
400
+ ['r', this.reserve],
401
+ ['f', this.freeze],
402
+ ['c', this.clawback],
403
+ ]);
404
+ }
405
+ static fromEncodingData(data) {
406
+ if (!(data instanceof Map)) {
407
+ throw new Error(`Invalid decoded AssetParams: ${data}`);
408
+ }
409
+ return new AssetParams({
410
+ total: data.get('t'),
411
+ decimals: data.get('dc'),
412
+ defaultFrozen: data.get('df'),
413
+ unitName: data.get('un'),
414
+ assetName: data.get('an'),
415
+ url: data.get('au'),
416
+ metadataHash: data.get('am'),
417
+ manager: data.get('m'),
418
+ reserve: data.get('r'),
419
+ freeze: data.get('f'),
420
+ clawback: data.get('c'),
421
+ });
422
+ }
423
+ }
424
+ exports.AssetParams = AssetParams;
425
+ AssetParams.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
426
+ { key: 't', valueSchema: new index_js_1.Uint64Schema() }, // total
427
+ { key: 'dc', valueSchema: new index_js_1.Uint64Schema() }, // decimals
428
+ { key: 'df', valueSchema: new index_js_1.BooleanSchema() }, // defaultFrozen
429
+ {
430
+ key: 'un', // unitName
431
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.SpecialCaseBinaryStringSchema()),
432
+ },
433
+ {
434
+ key: 'an', // assetName
435
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.SpecialCaseBinaryStringSchema()),
436
+ },
437
+ {
438
+ key: 'au', // url
439
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.SpecialCaseBinaryStringSchema()),
440
+ },
441
+ { key: 'am', valueSchema: new index_js_1.FixedLengthByteArraySchema(32) }, // metadataHash
442
+ { key: 'm', valueSchema: new index_js_1.OptionalSchema(new index_js_1.AddressSchema()) }, // manager
443
+ { key: 'r', valueSchema: new index_js_1.OptionalSchema(new index_js_1.AddressSchema()) }, // reserve
444
+ { key: 'f', valueSchema: new index_js_1.OptionalSchema(new index_js_1.AddressSchema()) }, // freeze
445
+ { key: 'c', valueSchema: new index_js_1.OptionalSchema(new index_js_1.AddressSchema()) }, // clawback
446
+ ]));
447
+ /**
448
+ * AssetParamsDelta tracks a changed AssetParams, and whether it was deleted
449
+ */
450
+ class AssetParamsDelta {
451
+ constructor(params) {
452
+ this.params = params.params;
453
+ this.deleted = params.deleted;
454
+ }
455
+ // eslint-disable-next-line class-methods-use-this
456
+ getEncodingSchema() {
457
+ return AssetParamsDelta.encodingSchema;
458
+ }
459
+ toEncodingData() {
460
+ return new Map([
461
+ ['Params', this.params ? this.params.toEncodingData() : undefined],
462
+ ['Deleted', this.deleted],
463
+ ]);
464
+ }
465
+ static fromEncodingData(data) {
466
+ if (!(data instanceof Map)) {
467
+ throw new Error(`Invalid decoded AssetParamsDelta: ${data}`);
468
+ }
469
+ return new AssetParamsDelta({
470
+ params: data.get('Params')
471
+ ? AssetParams.fromEncodingData(data.get('Params'))
472
+ : undefined,
473
+ deleted: data.get('Deleted'),
474
+ });
475
+ }
476
+ }
477
+ exports.AssetParamsDelta = AssetParamsDelta;
478
+ AssetParamsDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
479
+ {
480
+ key: 'Params', // params
481
+ valueSchema: new index_js_1.OptionalSchema(AssetParams.encodingSchema),
482
+ },
483
+ { key: 'Deleted', valueSchema: new index_js_1.BooleanSchema() }, // deleted
484
+ ]));
485
+ /**
486
+ * AssetResourceRecord represents AssetParams and AssetHolding in deltas
487
+ */
488
+ class AssetResourceRecord {
489
+ constructor(params) {
490
+ this.id = params.id;
491
+ this.address = params.address;
492
+ this.params = params.params;
493
+ this.holding = params.holding;
494
+ }
495
+ // eslint-disable-next-line class-methods-use-this
496
+ getEncodingSchema() {
497
+ return AssetResourceRecord.encodingSchema;
498
+ }
499
+ toEncodingData() {
500
+ return new Map([
501
+ ['Aidx', this.id],
502
+ ['Addr', this.address],
503
+ ['Params', this.params.toEncodingData()],
504
+ ['Holding', this.holding.toEncodingData()],
505
+ ]);
506
+ }
507
+ static fromEncodingData(data) {
508
+ if (!(data instanceof Map)) {
509
+ throw new Error(`Invalid decoded AssetResourceRecord: ${data}`);
510
+ }
511
+ return new AssetResourceRecord({
512
+ id: data.get('Aidx'),
513
+ address: data.get('Addr'),
514
+ params: AssetParamsDelta.fromEncodingData(data.get('Params')),
515
+ holding: AssetHoldingDelta.fromEncodingData(data.get('Holding')),
516
+ });
517
+ }
518
+ }
519
+ exports.AssetResourceRecord = AssetResourceRecord;
520
+ AssetResourceRecord.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
521
+ { key: 'Aidx', valueSchema: new index_js_1.Uint64Schema() }, // id
522
+ { key: 'Addr', valueSchema: new index_js_1.AddressSchema() }, // address
523
+ {
524
+ key: 'Params', // params
525
+ valueSchema: AssetParamsDelta.encodingSchema,
526
+ },
527
+ {
528
+ key: 'Holding', // holding
529
+ valueSchema: AssetHoldingDelta.encodingSchema,
530
+ },
531
+ ]));
532
+ /**
533
+ * VotingData holds participation information
534
+ */
535
+ class VotingData {
536
+ constructor(params) {
537
+ this.voteID = params.voteID;
538
+ this.selectionID = params.selectionID;
539
+ this.stateProofID = params.stateProofID;
540
+ this.voteFirstValid = params.voteFirstValid;
541
+ this.voteLastValid = params.voteLastValid;
542
+ this.voteKeyDilution = params.voteKeyDilution;
543
+ }
544
+ // eslint-disable-next-line class-methods-use-this
545
+ getEncodingSchema() {
546
+ return VotingData.encodingSchema;
547
+ }
548
+ toEncodingData() {
549
+ return new Map([
550
+ ['VoteID', this.voteID],
551
+ ['SelectionID', this.selectionID],
552
+ ['StateProofID', this.stateProofID],
553
+ ['VoteFirstValid', this.voteFirstValid],
554
+ ['VoteLastValid', this.voteLastValid],
555
+ ['VoteKeyDilution', this.voteKeyDilution],
556
+ ]);
557
+ }
558
+ static fromEncodingData(data) {
559
+ if (!(data instanceof Map)) {
560
+ throw new Error(`Invalid decoded VotingData: ${data}`);
561
+ }
562
+ return new VotingData({
563
+ voteID: data.get('VoteID'),
564
+ selectionID: data.get('SelectionID'),
565
+ stateProofID: data.get('StateProofID'),
566
+ voteFirstValid: data.get('VoteFirstValid'),
567
+ voteLastValid: data.get('VoteLastValid'),
568
+ voteKeyDilution: data.get('VoteKeyDilution'),
569
+ });
570
+ }
571
+ }
572
+ exports.VotingData = VotingData;
573
+ VotingData.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
574
+ {
575
+ key: 'VoteID', // voteID
576
+ valueSchema: new index_js_1.FixedLengthByteArraySchema(32),
577
+ },
578
+ {
579
+ key: 'SelectionID', // selectionID
580
+ valueSchema: new index_js_1.FixedLengthByteArraySchema(32),
581
+ },
582
+ {
583
+ key: 'StateProofID', // stateProofID
584
+ valueSchema: new index_js_1.FixedLengthByteArraySchema(64),
585
+ },
586
+ {
587
+ key: 'VoteFirstValid', // voteFirstValid
588
+ valueSchema: new index_js_1.Uint64Schema(),
589
+ },
590
+ {
591
+ key: 'VoteLastValid', // voteLastValid
592
+ valueSchema: new index_js_1.Uint64Schema(),
593
+ },
594
+ {
595
+ key: 'VoteKeyDilution', // voteKeyDilution
596
+ valueSchema: new index_js_1.Uint64Schema(),
597
+ },
598
+ ]));
599
+ /**
600
+ * AccountBaseData contains base account info like balance, status and total number of resources
601
+ */
602
+ class AccountBaseData {
603
+ constructor(params) {
604
+ this.status = params.status;
605
+ this.microAlgos = params.microAlgos;
606
+ this.rewardsBase = params.rewardsBase;
607
+ this.rewardedMicroAlgos = params.rewardedMicroAlgos;
608
+ this.authAddr = params.authAddr;
609
+ this.incentiveEligible = params.incentiveEligible;
610
+ this.totalAppSchema = params.totalAppSchema;
611
+ this.totalExtraAppPages = params.totalExtraAppPages;
612
+ this.totalAppParams = params.totalAppParams;
613
+ this.totalAppLocalStates = params.totalAppLocalStates;
614
+ this.totalAssetParams = params.totalAssetParams;
615
+ this.totalAssets = params.totalAssets;
616
+ this.totalBoxes = params.totalBoxes;
617
+ this.totalBoxBytes = params.totalBoxBytes;
618
+ this.lastProposed = params.lastProposed;
619
+ this.lastHeartbeat = params.lastHeartbeat;
620
+ }
621
+ // eslint-disable-next-line class-methods-use-this
622
+ getEncodingSchema() {
623
+ return AccountBaseData.encodingSchema;
624
+ }
625
+ toEncodingData() {
626
+ return new Map([
627
+ ['Status', this.status],
628
+ ['MicroAlgos', this.microAlgos],
629
+ ['RewardsBase', this.rewardsBase],
630
+ ['RewardedMicroAlgos', this.rewardedMicroAlgos],
631
+ ['AuthAddr', this.authAddr],
632
+ ['IncentiveEligible', this.incentiveEligible],
633
+ ['TotalAppSchema', this.totalAppSchema.toEncodingData()],
634
+ ['TotalExtraAppPages', this.totalExtraAppPages],
635
+ ['TotalAppParams', this.totalAppParams],
636
+ ['TotalAppLocalStates', this.totalAppLocalStates],
637
+ ['TotalAssetParams', this.totalAssetParams],
638
+ ['TotalAssets', this.totalAssets],
639
+ ['TotalBoxes', this.totalBoxes],
640
+ ['TotalBoxBytes', this.totalBoxBytes],
641
+ ['LastProposed', this.lastProposed],
642
+ ['LastHeartbeat', this.lastHeartbeat],
643
+ ]);
644
+ }
645
+ static fromEncodingData(data) {
646
+ if (!(data instanceof Map)) {
647
+ throw new Error(`Invalid decoded AccountBaseData: ${data}`);
648
+ }
649
+ return new AccountBaseData({
650
+ status: Number(data.get('Status')),
651
+ microAlgos: data.get('MicroAlgos'),
652
+ rewardsBase: data.get('RewardsBase'),
653
+ rewardedMicroAlgos: data.get('RewardedMicroAlgos'),
654
+ authAddr: data.get('AuthAddr'),
655
+ incentiveEligible: data.get('IncentiveEligible'),
656
+ totalAppSchema: StateSchema.fromEncodingData(data.get('TotalAppSchema')),
657
+ totalExtraAppPages: Number(data.get('TotalExtraAppPages')),
658
+ totalAppParams: data.get('TotalAppParams'),
659
+ totalAppLocalStates: data.get('TotalAppLocalStates'),
660
+ totalAssetParams: data.get('TotalAssetParams'),
661
+ totalAssets: data.get('TotalAssets'),
662
+ totalBoxes: data.get('TotalBoxes'),
663
+ totalBoxBytes: data.get('TotalBoxBytes'),
664
+ lastProposed: data.get('LastProposed'),
665
+ lastHeartbeat: data.get('LastHeartbeat'),
666
+ });
667
+ }
668
+ }
669
+ exports.AccountBaseData = AccountBaseData;
670
+ AccountBaseData.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
671
+ { key: 'Status', valueSchema: new index_js_1.Uint64Schema() }, // status
672
+ { key: 'MicroAlgos', valueSchema: new index_js_1.Uint64Schema() }, // microAlgos
673
+ { key: 'RewardsBase', valueSchema: new index_js_1.Uint64Schema() }, // rewardsBase
674
+ {
675
+ key: 'RewardedMicroAlgos', // rewardedMicroAlgos
676
+ valueSchema: new index_js_1.Uint64Schema(),
677
+ },
678
+ { key: 'AuthAddr', valueSchema: new index_js_1.AddressSchema() }, // authAddr
679
+ {
680
+ key: 'IncentiveEligible', // incentiveEligible
681
+ valueSchema: new index_js_1.BooleanSchema(),
682
+ },
683
+ {
684
+ key: 'TotalAppSchema', // totalAppSchema
685
+ valueSchema: StateSchema.encodingSchema,
686
+ },
687
+ {
688
+ key: 'TotalExtraAppPages', // totalExtraAppPages
689
+ valueSchema: new index_js_1.Uint64Schema(),
690
+ },
691
+ {
692
+ key: 'TotalAppParams', // totalAppParams
693
+ valueSchema: new index_js_1.Uint64Schema(),
694
+ },
695
+ {
696
+ key: 'TotalAppLocalStates', // totalAppLocalStates
697
+ valueSchema: new index_js_1.Uint64Schema(),
698
+ },
699
+ {
700
+ key: 'TotalAssetParams', // totalAssetParams
701
+ valueSchema: new index_js_1.Uint64Schema(),
702
+ },
703
+ { key: 'TotalAssets', valueSchema: new index_js_1.Uint64Schema() }, // totalAssets
704
+ { key: 'TotalBoxes', valueSchema: new index_js_1.Uint64Schema() }, // totalBoxes
705
+ {
706
+ key: 'TotalBoxBytes', // totalBoxBytes
707
+ valueSchema: new index_js_1.Uint64Schema(),
708
+ },
709
+ { key: 'LastProposed', valueSchema: new index_js_1.Uint64Schema() }, // lastProposed
710
+ {
711
+ key: 'LastHeartbeat', // lastHeartbeat
712
+ valueSchema: new index_js_1.Uint64Schema(),
713
+ },
714
+ ]));
715
+ /**
716
+ * AccountData provides per-account data
717
+ */
718
+ class AccountData {
719
+ constructor(params) {
720
+ this.accountBaseData = params.accountBaseData;
721
+ this.votingData = params.votingData;
722
+ }
723
+ // eslint-disable-next-line class-methods-use-this
724
+ getEncodingSchema() {
725
+ return AccountData.encodingSchema;
726
+ }
727
+ toEncodingData() {
728
+ return (0, index_js_1.combineMaps)(this.accountBaseData.toEncodingData(), this.votingData.toEncodingData());
729
+ }
730
+ static fromEncodingData(data) {
731
+ if (!(data instanceof Map)) {
732
+ throw new Error(`Invalid decoded AccountData: ${data}`);
733
+ }
734
+ return new AccountData({
735
+ accountBaseData: AccountBaseData.fromEncodingData(data),
736
+ votingData: VotingData.fromEncodingData(data),
737
+ });
738
+ }
739
+ }
740
+ exports.AccountData = AccountData;
741
+ AccountData.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
742
+ {
743
+ key: '',
744
+ valueSchema: AccountBaseData.encodingSchema,
745
+ embedded: true,
746
+ },
747
+ {
748
+ key: '',
749
+ valueSchema: VotingData.encodingSchema,
750
+ embedded: true,
751
+ },
752
+ ]));
753
+ class BalanceRecord {
754
+ constructor(params) {
755
+ this.addr = params.addr;
756
+ this.accountData = params.accountData;
757
+ }
758
+ // eslint-disable-next-line class-methods-use-this
759
+ getEncodingSchema() {
760
+ return BalanceRecord.encodingSchema;
761
+ }
762
+ toEncodingData() {
763
+ return (0, index_js_1.combineMaps)(new Map([['Addr', this.addr]]), this.accountData.toEncodingData());
764
+ }
765
+ static fromEncodingData(data) {
766
+ if (!(data instanceof Map)) {
767
+ throw new Error(`Invalid decoded BalanceRecord: ${data}`);
768
+ }
769
+ return new BalanceRecord({
770
+ addr: data.get('Addr'),
771
+ accountData: AccountData.fromEncodingData(data),
772
+ });
773
+ }
774
+ }
775
+ exports.BalanceRecord = BalanceRecord;
776
+ BalanceRecord.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
777
+ {
778
+ key: 'Addr',
779
+ valueSchema: new index_js_1.AddressSchema(),
780
+ },
781
+ {
782
+ key: '',
783
+ valueSchema: AccountData.encodingSchema,
784
+ embedded: true,
785
+ },
786
+ ]));
787
+ class AccountDeltas {
788
+ constructor(params) {
789
+ this.accounts = params.accounts;
790
+ this.appResources = params.appResources;
791
+ this.assetResources = params.assetResources;
792
+ }
793
+ // eslint-disable-next-line class-methods-use-this
794
+ getEncodingSchema() {
795
+ return AccountDeltas.encodingSchema;
796
+ }
797
+ toEncodingData() {
798
+ return new Map([
799
+ ['Accts', this.accounts.map((account) => account.toEncodingData())],
800
+ [
801
+ 'AppResources',
802
+ this.appResources.length === 0
803
+ ? undefined
804
+ : this.appResources.map((appResource) => appResource.toEncodingData()),
805
+ ],
806
+ [
807
+ 'AssetResources',
808
+ this.assetResources.length === 0
809
+ ? undefined
810
+ : this.assetResources.map((assetResource) => assetResource.toEncodingData()),
811
+ ],
812
+ ]);
813
+ }
814
+ static fromEncodingData(data) {
815
+ if (!(data instanceof Map)) {
816
+ throw new Error(`Invalid decoded AccountDeltas: ${data}`);
817
+ }
818
+ return new AccountDeltas({
819
+ accounts: (data.get('Accts') ?? []).map(BalanceRecord.fromEncodingData),
820
+ appResources: (data.get('AppResources') ?? []).map(AppResourceRecord.fromEncodingData),
821
+ assetResources: (data.get('AssetResources') ?? []).map(AssetResourceRecord.fromEncodingData),
822
+ });
823
+ }
824
+ }
825
+ exports.AccountDeltas = AccountDeltas;
826
+ AccountDeltas.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
827
+ {
828
+ key: 'Accts', // accounts
829
+ valueSchema: new index_js_1.ArraySchema(BalanceRecord.encodingSchema),
830
+ },
831
+ {
832
+ key: 'AppResources', // appResources
833
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.ArraySchema(AppResourceRecord.encodingSchema)),
834
+ },
835
+ {
836
+ key: 'AssetResources', // assetResources
837
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.ArraySchema(AssetResourceRecord.encodingSchema)),
838
+ },
839
+ ]));
840
+ /**
841
+ * A KvValueDelta shows how the Data associated with a key in the kvstore has changed.
842
+ */
843
+ class KvValueDelta {
844
+ constructor(params) {
845
+ this.data = params.data;
846
+ this.oldData = params.oldData;
847
+ }
848
+ // eslint-disable-next-line class-methods-use-this
849
+ getEncodingSchema() {
850
+ return KvValueDelta.encodingSchema;
851
+ }
852
+ toEncodingData() {
853
+ return new Map([
854
+ ['Data', this.data],
855
+ ['OldData', this.oldData],
856
+ ]);
857
+ }
858
+ static fromEncodingData(data) {
859
+ if (!(data instanceof Map)) {
860
+ throw new Error(`Invalid decoded KvValueDelta: ${data}`);
861
+ }
862
+ return new KvValueDelta({
863
+ data: data.get('Data'),
864
+ oldData: data.get('OldData'),
865
+ });
866
+ }
867
+ }
868
+ exports.KvValueDelta = KvValueDelta;
869
+ KvValueDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
870
+ {
871
+ key: 'Data',
872
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.ByteArraySchema()),
873
+ },
874
+ {
875
+ key: 'OldData',
876
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.ByteArraySchema()),
877
+ },
878
+ ]));
879
+ /**
880
+ * IncludedTransactions defines the transactions included in a block, their index and last valid round.
881
+ */
882
+ class IncludedTransactions {
883
+ constructor(params) {
884
+ this.lastValid = params.lastValid;
885
+ this.intra = params.intra;
886
+ }
887
+ // eslint-disable-next-line class-methods-use-this
888
+ getEncodingSchema() {
889
+ return IncludedTransactions.encodingSchema;
890
+ }
891
+ toEncodingData() {
892
+ return new Map([
893
+ ['LastValid', this.lastValid],
894
+ ['Intra', this.intra],
895
+ ]);
896
+ }
897
+ static fromEncodingData(data) {
898
+ if (!(data instanceof Map)) {
899
+ throw new Error(`Invalid decoded IncludedTransactions: ${data}`);
900
+ }
901
+ return new IncludedTransactions({
902
+ lastValid: data.get('LastValid'),
903
+ intra: Number(data.get('Intra')),
904
+ });
905
+ }
906
+ }
907
+ exports.IncludedTransactions = IncludedTransactions;
908
+ IncludedTransactions.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
909
+ {
910
+ key: 'LastValid',
911
+ valueSchema: new index_js_1.Uint64Schema(),
912
+ },
913
+ {
914
+ key: 'Intra',
915
+ valueSchema: new index_js_1.Uint64Schema(),
916
+ },
917
+ ]));
918
+ /**
919
+ * ModifiedCreatable represents a change to a single creatable state
920
+ */
921
+ class ModifiedCreatable {
922
+ constructor(params) {
923
+ this.creatableType = params.creatableType;
924
+ this.created = params.created;
925
+ this.creator = params.creator;
926
+ this.ndeltas = params.ndeltas;
927
+ }
928
+ // eslint-disable-next-line class-methods-use-this
929
+ getEncodingSchema() {
930
+ return ModifiedCreatable.encodingSchema;
931
+ }
932
+ toEncodingData() {
933
+ return new Map([
934
+ ['Ctype', this.creatableType],
935
+ ['Created', this.created],
936
+ ['Creator', this.creator],
937
+ ['Ndeltas', this.ndeltas],
938
+ ]);
939
+ }
940
+ static fromEncodingData(data) {
941
+ if (!(data instanceof Map)) {
942
+ throw new Error(`Invalid decoded ModifiedCreatable: ${data}`);
943
+ }
944
+ return new ModifiedCreatable({
945
+ creatableType: Number(data.get('Ctype')),
946
+ created: data.get('Created'),
947
+ creator: data.get('Creator'),
948
+ ndeltas: Number(data.get('Ndeltas')),
949
+ });
950
+ }
951
+ }
952
+ exports.ModifiedCreatable = ModifiedCreatable;
953
+ ModifiedCreatable.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
954
+ {
955
+ key: 'Ctype', // creatableType
956
+ valueSchema: new index_js_1.Uint64Schema(),
957
+ },
958
+ {
959
+ key: 'Created', // created
960
+ valueSchema: new index_js_1.BooleanSchema(),
961
+ },
962
+ {
963
+ key: 'Creator', // creator
964
+ valueSchema: new index_js_1.AddressSchema(),
965
+ },
966
+ {
967
+ key: 'Ndeltas', // ndeltas
968
+ valueSchema: new index_js_1.Uint64Schema(),
969
+ },
970
+ ]));
971
+ /**
972
+ * AlgoCount represents a total of algos of a certain class of accounts (split up by their Status value).
973
+ */
974
+ class AlgoCount {
975
+ constructor(params) {
976
+ this.money = params.money;
977
+ this.rewardUnits = params.rewardUnits;
978
+ }
979
+ // eslint-disable-next-line class-methods-use-this
980
+ getEncodingSchema() {
981
+ return AlgoCount.encodingSchema;
982
+ }
983
+ toEncodingData() {
984
+ return new Map([
985
+ ['mon', this.money],
986
+ ['rwd', this.rewardUnits],
987
+ ]);
988
+ }
989
+ static fromEncodingData(data) {
990
+ if (!(data instanceof Map)) {
991
+ throw new Error(`Invalid decoded AlgoCount: ${data}`);
992
+ }
993
+ return new AlgoCount({
994
+ money: data.get('mon'),
995
+ rewardUnits: data.get('rwd'),
996
+ });
997
+ }
998
+ }
999
+ exports.AlgoCount = AlgoCount;
1000
+ AlgoCount.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
1001
+ { key: 'mon', valueSchema: new index_js_1.Uint64Schema() }, // money
1002
+ { key: 'rwd', valueSchema: new index_js_1.Uint64Schema() }, // rewardUnits
1003
+ ]));
1004
+ /**
1005
+ * AccountTotals represents the totals of algos in the system grouped by different account status values.
1006
+ */
1007
+ class AccountTotals {
1008
+ constructor(params) {
1009
+ this.online = params.online;
1010
+ this.offline = params.offline;
1011
+ this.notParticipating = params.notParticipating;
1012
+ this.rewardsLevel = params.rewardsLevel;
1013
+ }
1014
+ // eslint-disable-next-line class-methods-use-this
1015
+ getEncodingSchema() {
1016
+ return AccountTotals.encodingSchema;
1017
+ }
1018
+ toEncodingData() {
1019
+ return new Map([
1020
+ ['online', this.online.toEncodingData()],
1021
+ ['offline', this.offline.toEncodingData()],
1022
+ ['notpart', this.notParticipating.toEncodingData()],
1023
+ ['rwdlvl', this.rewardsLevel],
1024
+ ]);
1025
+ }
1026
+ static fromEncodingData(data) {
1027
+ if (!(data instanceof Map)) {
1028
+ throw new Error(`Invalid decoded AccountTotals: ${data}`);
1029
+ }
1030
+ return new AccountTotals({
1031
+ online: AlgoCount.fromEncodingData(data.get('online')),
1032
+ offline: AlgoCount.fromEncodingData(data.get('offline')),
1033
+ notParticipating: AlgoCount.fromEncodingData(data.get('notpart')),
1034
+ rewardsLevel: data.get('rwdlvl'),
1035
+ });
1036
+ }
1037
+ }
1038
+ exports.AccountTotals = AccountTotals;
1039
+ AccountTotals.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
1040
+ { key: 'online', valueSchema: AlgoCount.encodingSchema }, // online
1041
+ { key: 'offline', valueSchema: AlgoCount.encodingSchema }, // offline
1042
+ { key: 'notpart', valueSchema: AlgoCount.encodingSchema }, // notParticipating
1043
+ { key: 'rwdlvl', valueSchema: new index_js_1.Uint64Schema() }, // rewardsLevel
1044
+ ]));
1045
+ /**
1046
+ * LedgerStateDelta describes the delta between a given round to the previous round
1047
+ */
1048
+ class LedgerStateDelta {
1049
+ constructor(params) {
1050
+ this.accounts = params.accounts;
1051
+ this.kvMods = params.kvMods;
1052
+ this.txids = params.txids;
1053
+ this.txleases = params.txleases;
1054
+ this.creatables = params.creatables;
1055
+ this.blockHeader = params.blockHeader;
1056
+ this.stateProofNext = params.stateProofNext;
1057
+ this.prevTimestamp = params.prevTimestamp;
1058
+ this.totals = params.totals;
1059
+ }
1060
+ // eslint-disable-next-line class-methods-use-this
1061
+ getEncodingSchema() {
1062
+ return LedgerStateDelta.encodingSchema;
1063
+ }
1064
+ toEncodingData() {
1065
+ return new Map([
1066
+ ['Accts', this.accounts.toEncodingData()],
1067
+ [
1068
+ 'KvMods',
1069
+ this.kvMods.size === 0
1070
+ ? undefined
1071
+ : (0, index_js_1.convertMap)(this.kvMods, (key, value) => [
1072
+ key,
1073
+ value.toEncodingData(),
1074
+ ]),
1075
+ ],
1076
+ [
1077
+ 'Txids',
1078
+ (0, index_js_1.convertMap)(this.txids, (key, value) => [key, value.toEncodingData()]),
1079
+ ],
1080
+ ['Txleases', this.txleases.toEncodingData()],
1081
+ [
1082
+ 'Creatables',
1083
+ this.creatables.size === 0
1084
+ ? undefined
1085
+ : (0, index_js_1.convertMap)(this.creatables, (key, value) => [
1086
+ key,
1087
+ value.toEncodingData(),
1088
+ ]),
1089
+ ],
1090
+ ['Hdr', this.blockHeader.toEncodingData()],
1091
+ ['StateProofNext', this.stateProofNext],
1092
+ ['PrevTimestamp', this.prevTimestamp],
1093
+ ['Totals', this.totals.toEncodingData()],
1094
+ ]);
1095
+ }
1096
+ static fromEncodingData(data) {
1097
+ if (!(data instanceof Map)) {
1098
+ throw new Error(`Invalid decoded LedgerStateDelta: ${data}`);
1099
+ }
1100
+ return new LedgerStateDelta({
1101
+ accounts: AccountDeltas.fromEncodingData(data.get('Accts')),
1102
+ kvMods: (0, index_js_1.convertMap)((data.get('KvMods') ?? new Map()), (key, value) => [key, KvValueDelta.fromEncodingData(value)]),
1103
+ txids: (0, index_js_1.convertMap)(data.get('Txids'), (key, value) => [key, IncludedTransactions.fromEncodingData(value)]),
1104
+ txleases: untypedmodel_js_1.UntypedValue.fromEncodingData(data.get('Txleases')),
1105
+ creatables: (0, index_js_1.convertMap)((data.get('Creatables') ?? new Map()), (key, value) => [key, ModifiedCreatable.fromEncodingData(value)]),
1106
+ blockHeader: block_js_1.BlockHeader.fromEncodingData(data.get('Hdr')),
1107
+ stateProofNext: data.get('StateProofNext'),
1108
+ prevTimestamp: data.get('PrevTimestamp'),
1109
+ totals: AccountTotals.fromEncodingData(data.get('Totals')),
1110
+ });
1111
+ }
1112
+ }
1113
+ exports.LedgerStateDelta = LedgerStateDelta;
1114
+ LedgerStateDelta.encodingSchema = new index_js_1.NamedMapSchema((0, index_js_1.allOmitEmpty)([
1115
+ {
1116
+ key: 'Accts', // accounts
1117
+ valueSchema: AccountDeltas.encodingSchema,
1118
+ },
1119
+ {
1120
+ key: 'KvMods', // kvMods
1121
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.SpecialCaseBinaryStringMapSchema(KvValueDelta.encodingSchema)),
1122
+ },
1123
+ {
1124
+ key: 'Txids', // txids
1125
+ valueSchema: new index_js_1.ByteArrayMapSchema(IncludedTransactions.encodingSchema),
1126
+ },
1127
+ {
1128
+ key: 'Txleases', // txleases
1129
+ // Note: because txleases is currently just an UntypedSchema and we are expected to decode
1130
+ // null values for this field, we use OptionalSchema to coerce null values to undefined so
1131
+ // that the values can be properly omitted during encoding.
1132
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.UntypedSchema()),
1133
+ },
1134
+ {
1135
+ key: 'Creatables', // creatables
1136
+ valueSchema: new index_js_1.OptionalSchema(new index_js_1.Uint64MapSchema(ModifiedCreatable.encodingSchema)),
1137
+ },
1138
+ {
1139
+ key: 'Hdr', // blockHeader
1140
+ valueSchema: block_js_1.BlockHeader.encodingSchema,
1141
+ },
1142
+ {
1143
+ key: 'StateProofNext', // stateProofNext
1144
+ valueSchema: new index_js_1.Uint64Schema(),
1145
+ },
1146
+ {
1147
+ key: 'PrevTimestamp', // prevTimestamp
1148
+ valueSchema: new index_js_1.Uint64Schema(),
1149
+ },
1150
+ {
1151
+ key: 'Totals', // totals
1152
+ valueSchema: AccountTotals.encodingSchema,
1153
+ },
1154
+ ]));
1155
+ //# sourceMappingURL=statedelta.js.map