@moveindustries/ts-sdk 5.1.4

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 (729) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +66 -0
  3. package/dist/common/accountAddress-DoqkxUqw.d.ts +7769 -0
  4. package/dist/common/chunk-56DGDNEY.js +4 -0
  5. package/dist/common/chunk-56DGDNEY.js.map +1 -0
  6. package/dist/common/cli/index.d.ts +316 -0
  7. package/dist/common/cli/index.js +2 -0
  8. package/dist/common/cli/index.js.map +1 -0
  9. package/dist/common/index.d.ts +10643 -0
  10. package/dist/common/index.js +482 -0
  11. package/dist/common/index.js.map +1 -0
  12. package/dist/esm/Ed25519Account-DsqenvLJ.d.mts +628 -0
  13. package/dist/esm/account/AbstractKeylessAccount.d.mts +336 -0
  14. package/dist/esm/account/AbstractKeylessAccount.mjs +2 -0
  15. package/dist/esm/account/AbstractKeylessAccount.mjs.map +1 -0
  16. package/dist/esm/account/AbstractedAccount.d.mts +64 -0
  17. package/dist/esm/account/AbstractedAccount.mjs +2 -0
  18. package/dist/esm/account/AbstractedAccount.mjs.map +1 -0
  19. package/dist/esm/account/Account.d.mts +8 -0
  20. package/dist/esm/account/Account.mjs +2 -0
  21. package/dist/esm/account/Account.mjs.map +1 -0
  22. package/dist/esm/account/AccountUtils.d.mts +38 -0
  23. package/dist/esm/account/AccountUtils.mjs +2 -0
  24. package/dist/esm/account/AccountUtils.mjs.map +1 -0
  25. package/dist/esm/account/DerivableAbstractedAccount.d.mts +59 -0
  26. package/dist/esm/account/DerivableAbstractedAccount.mjs +2 -0
  27. package/dist/esm/account/DerivableAbstractedAccount.mjs.map +1 -0
  28. package/dist/esm/account/Ed25519Account.d.mts +8 -0
  29. package/dist/esm/account/Ed25519Account.mjs +2 -0
  30. package/dist/esm/account/Ed25519Account.mjs.map +1 -0
  31. package/dist/esm/account/EphemeralKeyPair.d.mts +141 -0
  32. package/dist/esm/account/EphemeralKeyPair.mjs +2 -0
  33. package/dist/esm/account/EphemeralKeyPair.mjs.map +1 -0
  34. package/dist/esm/account/FederatedKeylessAccount.d.mts +118 -0
  35. package/dist/esm/account/FederatedKeylessAccount.mjs +2 -0
  36. package/dist/esm/account/FederatedKeylessAccount.mjs.map +1 -0
  37. package/dist/esm/account/KeylessAccount.d.mts +124 -0
  38. package/dist/esm/account/KeylessAccount.mjs +2 -0
  39. package/dist/esm/account/KeylessAccount.mjs.map +1 -0
  40. package/dist/esm/account/MultiEd25519Account.d.mts +102 -0
  41. package/dist/esm/account/MultiEd25519Account.mjs +2 -0
  42. package/dist/esm/account/MultiEd25519Account.mjs.map +1 -0
  43. package/dist/esm/account/MultiKeyAccount.d.mts +206 -0
  44. package/dist/esm/account/MultiKeyAccount.mjs +2 -0
  45. package/dist/esm/account/MultiKeyAccount.mjs.map +1 -0
  46. package/dist/esm/account/SingleKeyAccount.d.mts +8 -0
  47. package/dist/esm/account/SingleKeyAccount.mjs +2 -0
  48. package/dist/esm/account/SingleKeyAccount.mjs.map +1 -0
  49. package/dist/esm/account/index.d.mts +24 -0
  50. package/dist/esm/account/index.mjs +2 -0
  51. package/dist/esm/account/index.mjs.map +1 -0
  52. package/dist/esm/account/utils.d.mts +14 -0
  53. package/dist/esm/account/utils.mjs +2 -0
  54. package/dist/esm/account/utils.mjs.map +1 -0
  55. package/dist/esm/accountAddress-CNXtapt1.d.mts +6979 -0
  56. package/dist/esm/api/account/abstraction.d.mts +181 -0
  57. package/dist/esm/api/account/abstraction.mjs +2 -0
  58. package/dist/esm/api/account/abstraction.mjs.map +1 -0
  59. package/dist/esm/api/account.d.mts +852 -0
  60. package/dist/esm/api/account.mjs +2 -0
  61. package/dist/esm/api/account.mjs.map +1 -0
  62. package/dist/esm/api/ans.d.mts +504 -0
  63. package/dist/esm/api/ans.mjs +2 -0
  64. package/dist/esm/api/ans.mjs.map +1 -0
  65. package/dist/esm/api/coin.d.mts +81 -0
  66. package/dist/esm/api/coin.mjs +2 -0
  67. package/dist/esm/api/coin.mjs.map +1 -0
  68. package/dist/esm/api/digitalAsset.d.mts +1030 -0
  69. package/dist/esm/api/digitalAsset.mjs +2 -0
  70. package/dist/esm/api/digitalAsset.mjs.map +1 -0
  71. package/dist/esm/api/faucet.d.mts +80 -0
  72. package/dist/esm/api/faucet.mjs +2 -0
  73. package/dist/esm/api/faucet.mjs.map +1 -0
  74. package/dist/esm/api/fungibleAsset.d.mts +288 -0
  75. package/dist/esm/api/fungibleAsset.mjs +2 -0
  76. package/dist/esm/api/fungibleAsset.mjs.map +1 -0
  77. package/dist/esm/api/general.d.mts +303 -0
  78. package/dist/esm/api/general.mjs +2 -0
  79. package/dist/esm/api/general.mjs.map +1 -0
  80. package/dist/esm/api/index.d.mts +46 -0
  81. package/dist/esm/api/index.mjs +2 -0
  82. package/dist/esm/api/index.mjs.map +1 -0
  83. package/dist/esm/api/keyless.d.mts +170 -0
  84. package/dist/esm/api/keyless.mjs +2 -0
  85. package/dist/esm/api/keyless.mjs.map +1 -0
  86. package/dist/esm/api/movement.d.mts +113 -0
  87. package/dist/esm/api/movement.mjs +2 -0
  88. package/dist/esm/api/movement.mjs.map +1 -0
  89. package/dist/esm/api/movementConfig.d.mts +7 -0
  90. package/dist/esm/api/movementConfig.mjs +2 -0
  91. package/dist/esm/api/movementConfig.mjs.map +1 -0
  92. package/dist/esm/api/object.d.mts +80 -0
  93. package/dist/esm/api/object.mjs +2 -0
  94. package/dist/esm/api/object.mjs.map +1 -0
  95. package/dist/esm/api/staking.d.mts +134 -0
  96. package/dist/esm/api/staking.mjs +2 -0
  97. package/dist/esm/api/staking.mjs.map +1 -0
  98. package/dist/esm/api/table.d.mts +169 -0
  99. package/dist/esm/api/table.mjs +2 -0
  100. package/dist/esm/api/table.mjs.map +1 -0
  101. package/dist/esm/api/transaction.d.mts +679 -0
  102. package/dist/esm/api/transaction.mjs +2 -0
  103. package/dist/esm/api/transaction.mjs.map +1 -0
  104. package/dist/esm/api/transactionSubmission/build.d.mts +141 -0
  105. package/dist/esm/api/transactionSubmission/build.mjs +2 -0
  106. package/dist/esm/api/transactionSubmission/build.mjs.map +1 -0
  107. package/dist/esm/api/transactionSubmission/helpers.d.mts +98 -0
  108. package/dist/esm/api/transactionSubmission/helpers.mjs +2 -0
  109. package/dist/esm/api/transactionSubmission/helpers.mjs.map +1 -0
  110. package/dist/esm/api/transactionSubmission/management.d.mts +168 -0
  111. package/dist/esm/api/transactionSubmission/management.mjs +2 -0
  112. package/dist/esm/api/transactionSubmission/management.mjs.map +1 -0
  113. package/dist/esm/api/transactionSubmission/sign.d.mts +124 -0
  114. package/dist/esm/api/transactionSubmission/sign.mjs +2 -0
  115. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -0
  116. package/dist/esm/api/transactionSubmission/simulate.d.mts +181 -0
  117. package/dist/esm/api/transactionSubmission/simulate.mjs +2 -0
  118. package/dist/esm/api/transactionSubmission/simulate.mjs.map +1 -0
  119. package/dist/esm/api/transactionSubmission/submit.d.mts +142 -0
  120. package/dist/esm/api/transactionSubmission/submit.mjs +2 -0
  121. package/dist/esm/api/transactionSubmission/submit.mjs.map +1 -0
  122. package/dist/esm/api/utils.d.mts +45 -0
  123. package/dist/esm/api/utils.mjs +2 -0
  124. package/dist/esm/api/utils.mjs.map +1 -0
  125. package/dist/esm/bcs/consts.d.mts +28 -0
  126. package/dist/esm/bcs/consts.mjs +2 -0
  127. package/dist/esm/bcs/consts.mjs.map +1 -0
  128. package/dist/esm/bcs/deserializer.d.mts +7 -0
  129. package/dist/esm/bcs/deserializer.mjs +2 -0
  130. package/dist/esm/bcs/deserializer.mjs.map +1 -0
  131. package/dist/esm/bcs/index.d.mts +8 -0
  132. package/dist/esm/bcs/index.mjs +2 -0
  133. package/dist/esm/bcs/index.mjs.map +1 -0
  134. package/dist/esm/bcs/serializable/entryFunctionBytes.d.mts +65 -0
  135. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +2 -0
  136. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs.map +1 -0
  137. package/dist/esm/bcs/serializable/fixedBytes.d.mts +7 -0
  138. package/dist/esm/bcs/serializable/fixedBytes.mjs +2 -0
  139. package/dist/esm/bcs/serializable/fixedBytes.mjs.map +1 -0
  140. package/dist/esm/bcs/serializable/movePrimitives.d.mts +7 -0
  141. package/dist/esm/bcs/serializable/movePrimitives.mjs +2 -0
  142. package/dist/esm/bcs/serializable/movePrimitives.mjs.map +1 -0
  143. package/dist/esm/bcs/serializable/moveStructs.d.mts +7 -0
  144. package/dist/esm/bcs/serializable/moveStructs.mjs +2 -0
  145. package/dist/esm/bcs/serializable/moveStructs.mjs.map +1 -0
  146. package/dist/esm/bcs/serializer.d.mts +7 -0
  147. package/dist/esm/bcs/serializer.mjs +2 -0
  148. package/dist/esm/bcs/serializer.mjs.map +1 -0
  149. package/dist/esm/chunk-2KDUIZKB.mjs +2 -0
  150. package/dist/esm/chunk-2KDUIZKB.mjs.map +1 -0
  151. package/dist/esm/chunk-2QTV4AOE.mjs +2 -0
  152. package/dist/esm/chunk-2QTV4AOE.mjs.map +1 -0
  153. package/dist/esm/chunk-47V7UGV5.mjs +4 -0
  154. package/dist/esm/chunk-47V7UGV5.mjs.map +1 -0
  155. package/dist/esm/chunk-4QMXOWHP.mjs +1 -0
  156. package/dist/esm/chunk-4QMXOWHP.mjs.map +1 -0
  157. package/dist/esm/chunk-4WPQQPUF.mjs +1 -0
  158. package/dist/esm/chunk-4WPQQPUF.mjs.map +1 -0
  159. package/dist/esm/chunk-5HXLZHDW.mjs +1 -0
  160. package/dist/esm/chunk-5HXLZHDW.mjs.map +1 -0
  161. package/dist/esm/chunk-5IMQPJ6J.mjs +2 -0
  162. package/dist/esm/chunk-5IMQPJ6J.mjs.map +1 -0
  163. package/dist/esm/chunk-5ZKA765G.mjs +2 -0
  164. package/dist/esm/chunk-5ZKA765G.mjs.map +1 -0
  165. package/dist/esm/chunk-6NO4QKAO.mjs +2 -0
  166. package/dist/esm/chunk-6NO4QKAO.mjs.map +1 -0
  167. package/dist/esm/chunk-7ECCT6PK.mjs +1 -0
  168. package/dist/esm/chunk-7ECCT6PK.mjs.map +1 -0
  169. package/dist/esm/chunk-7TTTMBAK.mjs +2 -0
  170. package/dist/esm/chunk-7TTTMBAK.mjs.map +1 -0
  171. package/dist/esm/chunk-A5L76YP7.mjs +2 -0
  172. package/dist/esm/chunk-A5L76YP7.mjs.map +1 -0
  173. package/dist/esm/chunk-ANTEUWH6.mjs +2 -0
  174. package/dist/esm/chunk-ANTEUWH6.mjs.map +1 -0
  175. package/dist/esm/chunk-CHWDP6AR.mjs +2 -0
  176. package/dist/esm/chunk-CHWDP6AR.mjs.map +1 -0
  177. package/dist/esm/chunk-CRCE7R4D.mjs +2 -0
  178. package/dist/esm/chunk-CRCE7R4D.mjs.map +1 -0
  179. package/dist/esm/chunk-D6HPXGEP.mjs +2 -0
  180. package/dist/esm/chunk-D6HPXGEP.mjs.map +1 -0
  181. package/dist/esm/chunk-DS6QB6HG.mjs +4 -0
  182. package/dist/esm/chunk-DS6QB6HG.mjs.map +1 -0
  183. package/dist/esm/chunk-FD6FGKYY.mjs +1 -0
  184. package/dist/esm/chunk-FD6FGKYY.mjs.map +1 -0
  185. package/dist/esm/chunk-FJRPU2NH.mjs +2 -0
  186. package/dist/esm/chunk-FJRPU2NH.mjs.map +1 -0
  187. package/dist/esm/chunk-FS5ZJKO7.mjs +2 -0
  188. package/dist/esm/chunk-FS5ZJKO7.mjs.map +1 -0
  189. package/dist/esm/chunk-FZY4PMEE.mjs +1 -0
  190. package/dist/esm/chunk-FZY4PMEE.mjs.map +1 -0
  191. package/dist/esm/chunk-G3MHXDYA.mjs +1 -0
  192. package/dist/esm/chunk-G3MHXDYA.mjs.map +1 -0
  193. package/dist/esm/chunk-GOXRBEIJ.mjs +2 -0
  194. package/dist/esm/chunk-GOXRBEIJ.mjs.map +1 -0
  195. package/dist/esm/chunk-HGLO5LDS.mjs +1 -0
  196. package/dist/esm/chunk-HGLO5LDS.mjs.map +1 -0
  197. package/dist/esm/chunk-HL2JMZ7N.mjs +2 -0
  198. package/dist/esm/chunk-HL2JMZ7N.mjs.map +1 -0
  199. package/dist/esm/chunk-I6YGBK5S.mjs +2 -0
  200. package/dist/esm/chunk-I6YGBK5S.mjs.map +1 -0
  201. package/dist/esm/chunk-K4NT6TTN.mjs +2 -0
  202. package/dist/esm/chunk-K4NT6TTN.mjs.map +1 -0
  203. package/dist/esm/chunk-KDMSOCZY.mjs +2 -0
  204. package/dist/esm/chunk-KDMSOCZY.mjs.map +1 -0
  205. package/dist/esm/chunk-KPJGWDSQ.mjs +7 -0
  206. package/dist/esm/chunk-KPJGWDSQ.mjs.map +1 -0
  207. package/dist/esm/chunk-MEWW7VTQ.mjs +2 -0
  208. package/dist/esm/chunk-MEWW7VTQ.mjs.map +1 -0
  209. package/dist/esm/chunk-NECL5FCQ.mjs +1 -0
  210. package/dist/esm/chunk-NECL5FCQ.mjs.map +1 -0
  211. package/dist/esm/chunk-NMFJJOGW.mjs +2 -0
  212. package/dist/esm/chunk-NMFJJOGW.mjs.map +1 -0
  213. package/dist/esm/chunk-NQUZ4UHR.mjs +2 -0
  214. package/dist/esm/chunk-NQUZ4UHR.mjs.map +1 -0
  215. package/dist/esm/chunk-NUB6KE73.mjs +2 -0
  216. package/dist/esm/chunk-NUB6KE73.mjs.map +1 -0
  217. package/dist/esm/chunk-OOOAVIMQ.mjs +2 -0
  218. package/dist/esm/chunk-OOOAVIMQ.mjs.map +1 -0
  219. package/dist/esm/chunk-PCESRJYO.mjs +2 -0
  220. package/dist/esm/chunk-PCESRJYO.mjs.map +1 -0
  221. package/dist/esm/chunk-PHRRBT44.mjs +2 -0
  222. package/dist/esm/chunk-PHRRBT44.mjs.map +1 -0
  223. package/dist/esm/chunk-PZ233FIY.mjs +2 -0
  224. package/dist/esm/chunk-PZ233FIY.mjs.map +1 -0
  225. package/dist/esm/chunk-R2G23RIY.mjs +2 -0
  226. package/dist/esm/chunk-R2G23RIY.mjs.map +1 -0
  227. package/dist/esm/chunk-RL4YPMN4.mjs +2 -0
  228. package/dist/esm/chunk-RL4YPMN4.mjs.map +1 -0
  229. package/dist/esm/chunk-RUIFVDWM.mjs +2 -0
  230. package/dist/esm/chunk-RUIFVDWM.mjs.map +1 -0
  231. package/dist/esm/chunk-RXHPS4IU.mjs +2 -0
  232. package/dist/esm/chunk-RXHPS4IU.mjs.map +1 -0
  233. package/dist/esm/chunk-S4D2KBYN.mjs +2 -0
  234. package/dist/esm/chunk-S4D2KBYN.mjs.map +1 -0
  235. package/dist/esm/chunk-SRXFRTHK.mjs +2 -0
  236. package/dist/esm/chunk-SRXFRTHK.mjs.map +1 -0
  237. package/dist/esm/chunk-SYXDZA4K.mjs +2 -0
  238. package/dist/esm/chunk-SYXDZA4K.mjs.map +1 -0
  239. package/dist/esm/chunk-UI4OF6CP.mjs +2 -0
  240. package/dist/esm/chunk-UI4OF6CP.mjs.map +1 -0
  241. package/dist/esm/chunk-UL777LTI.mjs +494 -0
  242. package/dist/esm/chunk-UL777LTI.mjs.map +1 -0
  243. package/dist/esm/chunk-UVP74ONT.mjs +2 -0
  244. package/dist/esm/chunk-UVP74ONT.mjs.map +1 -0
  245. package/dist/esm/chunk-UYVPNUH3.mjs +1 -0
  246. package/dist/esm/chunk-UYVPNUH3.mjs.map +1 -0
  247. package/dist/esm/chunk-V3MBJJTL.mjs +1 -0
  248. package/dist/esm/chunk-V3MBJJTL.mjs.map +1 -0
  249. package/dist/esm/chunk-V3O2SBO4.mjs +2 -0
  250. package/dist/esm/chunk-V3O2SBO4.mjs.map +1 -0
  251. package/dist/esm/chunk-VEZCMPUG.mjs +2 -0
  252. package/dist/esm/chunk-VEZCMPUG.mjs.map +1 -0
  253. package/dist/esm/chunk-VW3WBAAD.mjs +2 -0
  254. package/dist/esm/chunk-VW3WBAAD.mjs.map +1 -0
  255. package/dist/esm/chunk-WFAH73WN.mjs +2 -0
  256. package/dist/esm/chunk-WFAH73WN.mjs.map +1 -0
  257. package/dist/esm/chunk-WVDICMU4.mjs +2 -0
  258. package/dist/esm/chunk-WVDICMU4.mjs.map +1 -0
  259. package/dist/esm/chunk-XCURF77K.mjs +2 -0
  260. package/dist/esm/chunk-XCURF77K.mjs.map +1 -0
  261. package/dist/esm/chunk-Y6YW4BAZ.mjs +2 -0
  262. package/dist/esm/chunk-Y6YW4BAZ.mjs.map +1 -0
  263. package/dist/esm/chunk-YFFYA5U3.mjs +2 -0
  264. package/dist/esm/chunk-YFFYA5U3.mjs.map +1 -0
  265. package/dist/esm/chunk-YOHEYPDP.mjs +2 -0
  266. package/dist/esm/chunk-YOHEYPDP.mjs.map +1 -0
  267. package/dist/esm/chunk-ZP4DWSQA.mjs +2 -0
  268. package/dist/esm/chunk-ZP4DWSQA.mjs.map +1 -0
  269. package/dist/esm/cli/index.d.mts +10 -0
  270. package/dist/esm/cli/index.mjs +2 -0
  271. package/dist/esm/cli/index.mjs.map +1 -0
  272. package/dist/esm/cli/localNode.d.mts +67 -0
  273. package/dist/esm/cli/localNode.mjs +2 -0
  274. package/dist/esm/cli/localNode.mjs.map +1 -0
  275. package/dist/esm/cli/move.d.mts +257 -0
  276. package/dist/esm/cli/move.mjs +2 -0
  277. package/dist/esm/cli/move.mjs.map +1 -0
  278. package/dist/esm/client/core.d.mts +42 -0
  279. package/dist/esm/client/core.mjs +2 -0
  280. package/dist/esm/client/core.mjs.map +1 -0
  281. package/dist/esm/client/get.d.mts +125 -0
  282. package/dist/esm/client/get.mjs +2 -0
  283. package/dist/esm/client/get.mjs.map +1 -0
  284. package/dist/esm/client/index.d.mts +10 -0
  285. package/dist/esm/client/index.mjs +2 -0
  286. package/dist/esm/client/index.mjs.map +1 -0
  287. package/dist/esm/client/post.d.mts +158 -0
  288. package/dist/esm/client/post.mjs +2 -0
  289. package/dist/esm/client/post.mjs.map +1 -0
  290. package/dist/esm/core/account/index.d.mts +8 -0
  291. package/dist/esm/core/account/index.mjs +2 -0
  292. package/dist/esm/core/account/index.mjs.map +1 -0
  293. package/dist/esm/core/account/utils/address.d.mts +55 -0
  294. package/dist/esm/core/account/utils/address.mjs +2 -0
  295. package/dist/esm/core/account/utils/address.mjs.map +1 -0
  296. package/dist/esm/core/account/utils/index.d.mts +8 -0
  297. package/dist/esm/core/account/utils/index.mjs +2 -0
  298. package/dist/esm/core/account/utils/index.mjs.map +1 -0
  299. package/dist/esm/core/accountAddress.d.mts +7 -0
  300. package/dist/esm/core/accountAddress.mjs +2 -0
  301. package/dist/esm/core/accountAddress.mjs.map +1 -0
  302. package/dist/esm/core/authenticationKey.d.mts +7 -0
  303. package/dist/esm/core/authenticationKey.mjs +2 -0
  304. package/dist/esm/core/authenticationKey.mjs.map +1 -0
  305. package/dist/esm/core/common.d.mts +52 -0
  306. package/dist/esm/core/common.mjs +2 -0
  307. package/dist/esm/core/common.mjs.map +1 -0
  308. package/dist/esm/core/crypto/abstraction.d.mts +24 -0
  309. package/dist/esm/core/crypto/abstraction.mjs +2 -0
  310. package/dist/esm/core/crypto/abstraction.mjs.map +1 -0
  311. package/dist/esm/core/crypto/deserializationUtils.d.mts +28 -0
  312. package/dist/esm/core/crypto/deserializationUtils.mjs +2 -0
  313. package/dist/esm/core/crypto/deserializationUtils.mjs.map +1 -0
  314. package/dist/esm/core/crypto/ed25519.d.mts +7 -0
  315. package/dist/esm/core/crypto/ed25519.mjs +2 -0
  316. package/dist/esm/core/crypto/ed25519.mjs.map +1 -0
  317. package/dist/esm/core/crypto/ephemeral.d.mts +116 -0
  318. package/dist/esm/core/crypto/ephemeral.mjs +2 -0
  319. package/dist/esm/core/crypto/ephemeral.mjs.map +1 -0
  320. package/dist/esm/core/crypto/federatedKeyless.d.mts +13 -0
  321. package/dist/esm/core/crypto/federatedKeyless.mjs +2 -0
  322. package/dist/esm/core/crypto/federatedKeyless.mjs.map +1 -0
  323. package/dist/esm/core/crypto/hdKey.d.mts +95 -0
  324. package/dist/esm/core/crypto/hdKey.mjs +2 -0
  325. package/dist/esm/core/crypto/hdKey.mjs.map +1 -0
  326. package/dist/esm/core/crypto/index.d.mts +19 -0
  327. package/dist/esm/core/crypto/index.mjs +2 -0
  328. package/dist/esm/core/crypto/index.mjs.map +1 -0
  329. package/dist/esm/core/crypto/keyless.d.mts +13 -0
  330. package/dist/esm/core/crypto/keyless.mjs +2 -0
  331. package/dist/esm/core/crypto/keyless.mjs.map +1 -0
  332. package/dist/esm/core/crypto/multiEd25519.d.mts +7 -0
  333. package/dist/esm/core/crypto/multiEd25519.mjs +2 -0
  334. package/dist/esm/core/crypto/multiEd25519.mjs.map +1 -0
  335. package/dist/esm/core/crypto/multiKey.d.mts +7 -0
  336. package/dist/esm/core/crypto/multiKey.mjs +2 -0
  337. package/dist/esm/core/crypto/multiKey.mjs.map +1 -0
  338. package/dist/esm/core/crypto/poseidon.d.mts +59 -0
  339. package/dist/esm/core/crypto/poseidon.mjs +2 -0
  340. package/dist/esm/core/crypto/poseidon.mjs.map +1 -0
  341. package/dist/esm/core/crypto/privateKey.d.mts +7 -0
  342. package/dist/esm/core/crypto/privateKey.mjs +2 -0
  343. package/dist/esm/core/crypto/privateKey.mjs.map +1 -0
  344. package/dist/esm/core/crypto/proof.d.mts +18 -0
  345. package/dist/esm/core/crypto/proof.mjs +2 -0
  346. package/dist/esm/core/crypto/proof.mjs.map +1 -0
  347. package/dist/esm/core/crypto/publicKey.d.mts +7 -0
  348. package/dist/esm/core/crypto/publicKey.mjs +2 -0
  349. package/dist/esm/core/crypto/publicKey.mjs.map +1 -0
  350. package/dist/esm/core/crypto/secp256k1.d.mts +7 -0
  351. package/dist/esm/core/crypto/secp256k1.mjs +2 -0
  352. package/dist/esm/core/crypto/secp256k1.mjs.map +1 -0
  353. package/dist/esm/core/crypto/secp256r1.d.mts +306 -0
  354. package/dist/esm/core/crypto/secp256r1.mjs +2 -0
  355. package/dist/esm/core/crypto/secp256r1.mjs.map +1 -0
  356. package/dist/esm/core/crypto/signature.d.mts +7 -0
  357. package/dist/esm/core/crypto/signature.mjs +2 -0
  358. package/dist/esm/core/crypto/signature.mjs.map +1 -0
  359. package/dist/esm/core/crypto/singleKey.d.mts +7 -0
  360. package/dist/esm/core/crypto/singleKey.mjs +2 -0
  361. package/dist/esm/core/crypto/singleKey.mjs.map +1 -0
  362. package/dist/esm/core/crypto/types.d.mts +11 -0
  363. package/dist/esm/core/crypto/types.mjs +2 -0
  364. package/dist/esm/core/crypto/types.mjs.map +1 -0
  365. package/dist/esm/core/crypto/utils.d.mts +23 -0
  366. package/dist/esm/core/crypto/utils.mjs +2 -0
  367. package/dist/esm/core/crypto/utils.mjs.map +1 -0
  368. package/dist/esm/core/hex.d.mts +7 -0
  369. package/dist/esm/core/hex.mjs +2 -0
  370. package/dist/esm/core/hex.mjs.map +1 -0
  371. package/dist/esm/core/index.d.mts +20 -0
  372. package/dist/esm/core/index.mjs +2 -0
  373. package/dist/esm/core/index.mjs.map +1 -0
  374. package/dist/esm/errors/index.d.mts +131 -0
  375. package/dist/esm/errors/index.mjs +2 -0
  376. package/dist/esm/errors/index.mjs.map +1 -0
  377. package/dist/esm/federatedKeyless-D-d9d5aC.d.mts +869 -0
  378. package/dist/esm/index.d.mts +71 -0
  379. package/dist/esm/index.mjs +2 -0
  380. package/dist/esm/index.mjs.map +1 -0
  381. package/dist/esm/internal/abstraction.d.mts +27 -0
  382. package/dist/esm/internal/abstraction.mjs +2 -0
  383. package/dist/esm/internal/abstraction.mjs.map +1 -0
  384. package/dist/esm/internal/account.d.mts +453 -0
  385. package/dist/esm/internal/account.mjs +2 -0
  386. package/dist/esm/internal/account.mjs.map +1 -0
  387. package/dist/esm/internal/ans.d.mts +365 -0
  388. package/dist/esm/internal/ans.mjs +2 -0
  389. package/dist/esm/internal/ans.mjs.map +1 -0
  390. package/dist/esm/internal/coin.d.mts +31 -0
  391. package/dist/esm/internal/coin.mjs +2 -0
  392. package/dist/esm/internal/coin.mjs.map +1 -0
  393. package/dist/esm/internal/digitalAsset.d.mts +580 -0
  394. package/dist/esm/internal/digitalAsset.mjs +2 -0
  395. package/dist/esm/internal/digitalAsset.mjs.map +1 -0
  396. package/dist/esm/internal/faucet.d.mts +39 -0
  397. package/dist/esm/internal/faucet.mjs +2 -0
  398. package/dist/esm/internal/faucet.mjs.map +1 -0
  399. package/dist/esm/internal/fungibleAsset.d.mts +112 -0
  400. package/dist/esm/internal/fungibleAsset.mjs +2 -0
  401. package/dist/esm/internal/fungibleAsset.mjs.map +1 -0
  402. package/dist/esm/internal/general.d.mts +92 -0
  403. package/dist/esm/internal/general.mjs +2 -0
  404. package/dist/esm/internal/general.mjs.map +1 -0
  405. package/dist/esm/internal/keyless.d.mts +111 -0
  406. package/dist/esm/internal/keyless.mjs +2 -0
  407. package/dist/esm/internal/keyless.mjs.map +1 -0
  408. package/dist/esm/internal/object.d.mts +42 -0
  409. package/dist/esm/internal/object.mjs +2 -0
  410. package/dist/esm/internal/object.mjs.map +1 -0
  411. package/dist/esm/internal/staking.d.mts +60 -0
  412. package/dist/esm/internal/staking.mjs +2 -0
  413. package/dist/esm/internal/staking.mjs.map +1 -0
  414. package/dist/esm/internal/table.d.mts +66 -0
  415. package/dist/esm/internal/table.mjs +2 -0
  416. package/dist/esm/internal/table.mjs.map +1 -0
  417. package/dist/esm/internal/transaction.d.mts +199 -0
  418. package/dist/esm/internal/transaction.mjs +2 -0
  419. package/dist/esm/internal/transaction.mjs.map +1 -0
  420. package/dist/esm/internal/transactionSubmission.d.mts +165 -0
  421. package/dist/esm/internal/transactionSubmission.mjs +2 -0
  422. package/dist/esm/internal/transactionSubmission.mjs.map +1 -0
  423. package/dist/esm/internal/utils/index.d.mts +8 -0
  424. package/dist/esm/internal/utils/index.mjs +2 -0
  425. package/dist/esm/internal/utils/index.mjs.map +1 -0
  426. package/dist/esm/internal/utils/utils.d.mts +41 -0
  427. package/dist/esm/internal/utils/utils.mjs +2 -0
  428. package/dist/esm/internal/utils/utils.mjs.map +1 -0
  429. package/dist/esm/internal/view.d.mts +20 -0
  430. package/dist/esm/internal/view.mjs +2 -0
  431. package/dist/esm/internal/view.mjs.map +1 -0
  432. package/dist/esm/transactions/authenticator/account.d.mts +7 -0
  433. package/dist/esm/transactions/authenticator/account.mjs +2 -0
  434. package/dist/esm/transactions/authenticator/account.mjs.map +1 -0
  435. package/dist/esm/transactions/authenticator/index.d.mts +8 -0
  436. package/dist/esm/transactions/authenticator/index.mjs +2 -0
  437. package/dist/esm/transactions/authenticator/index.mjs.map +1 -0
  438. package/dist/esm/transactions/authenticator/transaction.d.mts +152 -0
  439. package/dist/esm/transactions/authenticator/transaction.mjs +2 -0
  440. package/dist/esm/transactions/authenticator/transaction.mjs.map +1 -0
  441. package/dist/esm/transactions/index.d.mts +15 -0
  442. package/dist/esm/transactions/index.mjs +2 -0
  443. package/dist/esm/transactions/index.mjs.map +1 -0
  444. package/dist/esm/transactions/instances/chainId.d.mts +7 -0
  445. package/dist/esm/transactions/instances/chainId.mjs +2 -0
  446. package/dist/esm/transactions/instances/chainId.mjs.map +1 -0
  447. package/dist/esm/transactions/instances/identifier.d.mts +7 -0
  448. package/dist/esm/transactions/instances/identifier.mjs +2 -0
  449. package/dist/esm/transactions/instances/identifier.mjs.map +1 -0
  450. package/dist/esm/transactions/instances/index.d.mts +10 -0
  451. package/dist/esm/transactions/instances/index.mjs +2 -0
  452. package/dist/esm/transactions/instances/index.mjs.map +1 -0
  453. package/dist/esm/transactions/instances/moduleId.d.mts +7 -0
  454. package/dist/esm/transactions/instances/moduleId.mjs +2 -0
  455. package/dist/esm/transactions/instances/moduleId.mjs.map +1 -0
  456. package/dist/esm/transactions/instances/multiAgentTransaction.d.mts +7 -0
  457. package/dist/esm/transactions/instances/multiAgentTransaction.mjs +2 -0
  458. package/dist/esm/transactions/instances/multiAgentTransaction.mjs.map +1 -0
  459. package/dist/esm/transactions/instances/rawTransaction.d.mts +7 -0
  460. package/dist/esm/transactions/instances/rawTransaction.mjs +2 -0
  461. package/dist/esm/transactions/instances/rawTransaction.mjs.map +1 -0
  462. package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +58 -0
  463. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +2 -0
  464. package/dist/esm/transactions/instances/rotationProofChallenge.mjs.map +1 -0
  465. package/dist/esm/transactions/instances/signedTransaction.d.mts +59 -0
  466. package/dist/esm/transactions/instances/signedTransaction.mjs +2 -0
  467. package/dist/esm/transactions/instances/signedTransaction.mjs.map +1 -0
  468. package/dist/esm/transactions/instances/simpleTransaction.d.mts +7 -0
  469. package/dist/esm/transactions/instances/simpleTransaction.mjs +2 -0
  470. package/dist/esm/transactions/instances/simpleTransaction.mjs.map +1 -0
  471. package/dist/esm/transactions/instances/transactionArgument.d.mts +7 -0
  472. package/dist/esm/transactions/instances/transactionArgument.mjs +2 -0
  473. package/dist/esm/transactions/instances/transactionArgument.mjs.map +1 -0
  474. package/dist/esm/transactions/instances/transactionPayload.d.mts +7 -0
  475. package/dist/esm/transactions/instances/transactionPayload.mjs +2 -0
  476. package/dist/esm/transactions/instances/transactionPayload.mjs.map +1 -0
  477. package/dist/esm/transactions/management/accountSequenceNumber.d.mts +123 -0
  478. package/dist/esm/transactions/management/accountSequenceNumber.mjs +2 -0
  479. package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +1 -0
  480. package/dist/esm/transactions/management/asyncQueue.d.mts +77 -0
  481. package/dist/esm/transactions/management/asyncQueue.mjs +2 -0
  482. package/dist/esm/transactions/management/asyncQueue.mjs.map +1 -0
  483. package/dist/esm/transactions/management/index.d.mts +12 -0
  484. package/dist/esm/transactions/management/index.mjs +2 -0
  485. package/dist/esm/transactions/management/index.mjs.map +1 -0
  486. package/dist/esm/transactions/management/transactionWorker.d.mts +210 -0
  487. package/dist/esm/transactions/management/transactionWorker.mjs +2 -0
  488. package/dist/esm/transactions/management/transactionWorker.mjs.map +1 -0
  489. package/dist/esm/transactions/transactionBuilder/helpers.d.mts +159 -0
  490. package/dist/esm/transactions/transactionBuilder/helpers.mjs +2 -0
  491. package/dist/esm/transactions/transactionBuilder/helpers.mjs.map +1 -0
  492. package/dist/esm/transactions/transactionBuilder/index.d.mts +11 -0
  493. package/dist/esm/transactions/transactionBuilder/index.mjs +2 -0
  494. package/dist/esm/transactions/transactionBuilder/index.mjs.map +1 -0
  495. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +104 -0
  496. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +2 -0
  497. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs.map +1 -0
  498. package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +62 -0
  499. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +2 -0
  500. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs.map +1 -0
  501. package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +192 -0
  502. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +2 -0
  503. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs.map +1 -0
  504. package/dist/esm/transactions/typeTag/index.d.mts +7 -0
  505. package/dist/esm/transactions/typeTag/index.mjs +2 -0
  506. package/dist/esm/transactions/typeTag/index.mjs.map +1 -0
  507. package/dist/esm/transactions/typeTag/parser.d.mts +81 -0
  508. package/dist/esm/transactions/typeTag/parser.mjs +2 -0
  509. package/dist/esm/transactions/typeTag/parser.mjs.map +1 -0
  510. package/dist/esm/transactions/types.d.mts +7 -0
  511. package/dist/esm/transactions/types.mjs +2 -0
  512. package/dist/esm/transactions/types.mjs.map +1 -0
  513. package/dist/esm/types/abstraction.d.mts +15 -0
  514. package/dist/esm/types/abstraction.mjs +2 -0
  515. package/dist/esm/types/abstraction.mjs.map +1 -0
  516. package/dist/esm/types/generated/operations.d.mts +709 -0
  517. package/dist/esm/types/generated/operations.mjs +1 -0
  518. package/dist/esm/types/generated/operations.mjs.map +1 -0
  519. package/dist/esm/types/generated/queries.d.mts +66 -0
  520. package/dist/esm/types/generated/queries.mjs +2 -0
  521. package/dist/esm/types/generated/queries.mjs.map +1 -0
  522. package/dist/esm/types/generated/types.d.mts +9495 -0
  523. package/dist/esm/types/generated/types.mjs +2 -0
  524. package/dist/esm/types/generated/types.mjs.map +1 -0
  525. package/dist/esm/types/index.d.mts +7 -0
  526. package/dist/esm/types/index.mjs +2 -0
  527. package/dist/esm/types/index.mjs.map +1 -0
  528. package/dist/esm/types/indexer.d.mts +186 -0
  529. package/dist/esm/types/indexer.mjs +2 -0
  530. package/dist/esm/types/indexer.mjs.map +1 -0
  531. package/dist/esm/types/keyless.d.mts +102 -0
  532. package/dist/esm/types/keyless.mjs +1 -0
  533. package/dist/esm/types/keyless.mjs.map +1 -0
  534. package/dist/esm/types/types.d.mts +7 -0
  535. package/dist/esm/types/types.mjs +2 -0
  536. package/dist/esm/types/types.mjs.map +1 -0
  537. package/dist/esm/utils/apiEndpoints.d.mts +51 -0
  538. package/dist/esm/utils/apiEndpoints.mjs +2 -0
  539. package/dist/esm/utils/apiEndpoints.mjs.map +1 -0
  540. package/dist/esm/utils/const.d.mts +90 -0
  541. package/dist/esm/utils/const.mjs +2 -0
  542. package/dist/esm/utils/const.mjs.map +1 -0
  543. package/dist/esm/utils/helpers.d.mts +174 -0
  544. package/dist/esm/utils/helpers.mjs +2 -0
  545. package/dist/esm/utils/helpers.mjs.map +1 -0
  546. package/dist/esm/utils/index.d.mts +9 -0
  547. package/dist/esm/utils/index.mjs +2 -0
  548. package/dist/esm/utils/index.mjs.map +1 -0
  549. package/dist/esm/utils/memoize.d.mts +26 -0
  550. package/dist/esm/utils/memoize.mjs +2 -0
  551. package/dist/esm/utils/memoize.mjs.map +1 -0
  552. package/dist/esm/utils/normalizeBundle.d.mts +35 -0
  553. package/dist/esm/utils/normalizeBundle.mjs +2 -0
  554. package/dist/esm/utils/normalizeBundle.mjs.map +1 -0
  555. package/dist/esm/version.d.mts +8 -0
  556. package/dist/esm/version.mjs +2 -0
  557. package/dist/esm/version.mjs.map +1 -0
  558. package/package.json +98 -0
  559. package/src/account/AbstractKeylessAccount.ts +579 -0
  560. package/src/account/AbstractedAccount.ts +124 -0
  561. package/src/account/Account.ts +354 -0
  562. package/src/account/AccountUtils.ts +216 -0
  563. package/src/account/DerivableAbstractedAccount.ts +103 -0
  564. package/src/account/Ed25519Account.ts +210 -0
  565. package/src/account/EphemeralKeyPair.ts +222 -0
  566. package/src/account/FederatedKeylessAccount.ts +178 -0
  567. package/src/account/KeylessAccount.ts +179 -0
  568. package/src/account/MultiEd25519Account.ts +181 -0
  569. package/src/account/MultiKeyAccount.ts +296 -0
  570. package/src/account/SingleKeyAccount.ts +277 -0
  571. package/src/account/index.ts +12 -0
  572. package/src/account/utils.ts +16 -0
  573. package/src/api/account/abstraction.ts +239 -0
  574. package/src/api/account.ts +1128 -0
  575. package/src/api/ans.ts +550 -0
  576. package/src/api/coin.ts +83 -0
  577. package/src/api/digitalAsset.ts +1203 -0
  578. package/src/api/faucet.ts +94 -0
  579. package/src/api/fungibleAsset.ts +371 -0
  580. package/src/api/general.ts +351 -0
  581. package/src/api/index.ts +6 -0
  582. package/src/api/keyless.ts +227 -0
  583. package/src/api/movement.ts +171 -0
  584. package/src/api/movementConfig.ts +334 -0
  585. package/src/api/object.ts +90 -0
  586. package/src/api/staking.ts +161 -0
  587. package/src/api/table.ts +193 -0
  588. package/src/api/transaction.ts +784 -0
  589. package/src/api/transactionSubmission/build.ts +153 -0
  590. package/src/api/transactionSubmission/helpers.ts +112 -0
  591. package/src/api/transactionSubmission/management.ts +211 -0
  592. package/src/api/transactionSubmission/sign.ts +142 -0
  593. package/src/api/transactionSubmission/simulate.ts +192 -0
  594. package/src/api/transactionSubmission/submit.ts +156 -0
  595. package/src/api/utils.ts +48 -0
  596. package/src/bcs/consts.ts +28 -0
  597. package/src/bcs/deserializer.ts +550 -0
  598. package/src/bcs/index.ts +10 -0
  599. package/src/bcs/serializable/entryFunctionBytes.ts +92 -0
  600. package/src/bcs/serializable/fixedBytes.ts +107 -0
  601. package/src/bcs/serializable/movePrimitives.ts +564 -0
  602. package/src/bcs/serializable/moveStructs.ts +619 -0
  603. package/src/bcs/serializer.ts +641 -0
  604. package/src/cli/index.ts +2 -0
  605. package/src/cli/localNode.ts +169 -0
  606. package/src/cli/move.ts +474 -0
  607. package/src/client/core.ts +120 -0
  608. package/src/client/get.ts +262 -0
  609. package/src/client/index.ts +7 -0
  610. package/src/client/post.ts +245 -0
  611. package/src/core/account/index.ts +1 -0
  612. package/src/core/account/utils/address.ts +85 -0
  613. package/src/core/account/utils/index.ts +1 -0
  614. package/src/core/accountAddress.ts +524 -0
  615. package/src/core/authenticationKey.ts +157 -0
  616. package/src/core/common.ts +60 -0
  617. package/src/core/crypto/abstraction.ts +52 -0
  618. package/src/core/crypto/deserializationUtils.ts +106 -0
  619. package/src/core/crypto/ed25519.ts +493 -0
  620. package/src/core/crypto/ephemeral.ts +185 -0
  621. package/src/core/crypto/federatedKeyless.ts +169 -0
  622. package/src/core/crypto/hdKey.ts +136 -0
  623. package/src/core/crypto/index.ts +21 -0
  624. package/src/core/crypto/keyless.ts +1700 -0
  625. package/src/core/crypto/multiEd25519.ts +434 -0
  626. package/src/core/crypto/multiKey.ts +498 -0
  627. package/src/core/crypto/poseidon.ts +231 -0
  628. package/src/core/crypto/privateKey.ts +115 -0
  629. package/src/core/crypto/proof.ts +9 -0
  630. package/src/core/crypto/publicKey.ts +106 -0
  631. package/src/core/crypto/secp256k1.ts +451 -0
  632. package/src/core/crypto/secp256r1.ts +495 -0
  633. package/src/core/crypto/signature.ts +57 -0
  634. package/src/core/crypto/singleKey.ts +351 -0
  635. package/src/core/crypto/types.ts +9 -0
  636. package/src/core/crypto/utils.ts +63 -0
  637. package/src/core/hex.ts +241 -0
  638. package/src/core/index.ts +10 -0
  639. package/src/errors/index.ts +457 -0
  640. package/src/index.ts +14 -0
  641. package/src/internal/abstraction.ts +79 -0
  642. package/src/internal/account.ts +1484 -0
  643. package/src/internal/ans.ts +853 -0
  644. package/src/internal/coin.ts +49 -0
  645. package/src/internal/digitalAsset.ts +1291 -0
  646. package/src/internal/faucet.ts +71 -0
  647. package/src/internal/fungibleAsset.ts +233 -0
  648. package/src/internal/general.ts +161 -0
  649. package/src/internal/keyless.ts +297 -0
  650. package/src/internal/object.ts +68 -0
  651. package/src/internal/queries/TokenActivitiesFieldsFragment.graphql +17 -0
  652. package/src/internal/queries/ansTokenFragment.graphql +11 -0
  653. package/src/internal/queries/currentTokenOwnershipFieldsFragment.graphql +46 -0
  654. package/src/internal/queries/getAccountAddressesForAuthKey.graphql +8 -0
  655. package/src/internal/queries/getAccountCoinCount.graphql +7 -0
  656. package/src/internal/queries/getAccountCoinsData.graphql +32 -0
  657. package/src/internal/queries/getAccountCollectionsWithOwnedTokens.graphql +33 -0
  658. package/src/internal/queries/getAccountOwnedTokens.graphql +11 -0
  659. package/src/internal/queries/getAccountOwnedTokensByTokenData.graphql +11 -0
  660. package/src/internal/queries/getAccountOwnedTokensFromCollectionAddress.graphql +11 -0
  661. package/src/internal/queries/getAccountTokensCount.graphql +7 -0
  662. package/src/internal/queries/getAccountTransactionsCount.graphql +7 -0
  663. package/src/internal/queries/getAuthKeysForPublicKey.graphql +11 -0
  664. package/src/internal/queries/getChainTopUserTransactions.graphql +5 -0
  665. package/src/internal/queries/getCollectionData.graphql +29 -0
  666. package/src/internal/queries/getCurrentFungibleAssetBalances.graphql +17 -0
  667. package/src/internal/queries/getDelegatedStakingActivities.graphql +12 -0
  668. package/src/internal/queries/getEvents.graphql +13 -0
  669. package/src/internal/queries/getFungibleAssetActivities.graphql +20 -0
  670. package/src/internal/queries/getFungibleAssetMetadata.graphql +18 -0
  671. package/src/internal/queries/getNames.graphql +11 -0
  672. package/src/internal/queries/getNumberOfDelegatorsQuery.graphql +9 -0
  673. package/src/internal/queries/getObjectData.graphql +16 -0
  674. package/src/internal/queries/getProcessorStatus.graphql +7 -0
  675. package/src/internal/queries/getTableItemsData.graphql +15 -0
  676. package/src/internal/queries/getTableItemsMetadata.graphql +12 -0
  677. package/src/internal/queries/getTokenActivity.graphql +11 -0
  678. package/src/internal/queries/getTokenCurrentOwner.graphql +11 -0
  679. package/src/internal/queries/getTokenData.graphql +39 -0
  680. package/src/internal/staking.ts +96 -0
  681. package/src/internal/table.ts +117 -0
  682. package/src/internal/transaction.ts +503 -0
  683. package/src/internal/transactionSubmission.ts +454 -0
  684. package/src/internal/utils/index.ts +4 -0
  685. package/src/internal/utils/utils.ts +86 -0
  686. package/src/internal/view.ts +61 -0
  687. package/src/transactions/authenticator/account.ts +405 -0
  688. package/src/transactions/authenticator/index.ts +6 -0
  689. package/src/transactions/authenticator/transaction.ts +288 -0
  690. package/src/transactions/index.ts +10 -0
  691. package/src/transactions/instances/chainId.ts +53 -0
  692. package/src/transactions/instances/identifier.ts +54 -0
  693. package/src/transactions/instances/index.ts +14 -0
  694. package/src/transactions/instances/moduleId.ts +77 -0
  695. package/src/transactions/instances/multiAgentTransaction.ts +92 -0
  696. package/src/transactions/instances/rawTransaction.ts +256 -0
  697. package/src/transactions/instances/rotationProofChallenge.ts +86 -0
  698. package/src/transactions/instances/signedTransaction.ts +73 -0
  699. package/src/transactions/instances/simpleTransaction.ts +83 -0
  700. package/src/transactions/instances/transactionArgument.ts +79 -0
  701. package/src/transactions/instances/transactionPayload.ts +676 -0
  702. package/src/transactions/management/accountSequenceNumber.ts +226 -0
  703. package/src/transactions/management/asyncQueue.ts +126 -0
  704. package/src/transactions/management/index.ts +2 -0
  705. package/src/transactions/management/transactionWorker.ts +396 -0
  706. package/src/transactions/transactionBuilder/helpers.ts +319 -0
  707. package/src/transactions/transactionBuilder/index.ts +8 -0
  708. package/src/transactions/transactionBuilder/remoteAbi.ts +655 -0
  709. package/src/transactions/transactionBuilder/signingMessage.ts +111 -0
  710. package/src/transactions/transactionBuilder/transactionBuilder.ts +863 -0
  711. package/src/transactions/typeTag/index.ts +926 -0
  712. package/src/transactions/typeTag/parser.ts +434 -0
  713. package/src/transactions/types.ts +518 -0
  714. package/src/types/abstraction.ts +14 -0
  715. package/src/types/codegen.yaml +33 -0
  716. package/src/types/generated/operations.ts +738 -0
  717. package/src/types/generated/queries.ts +926 -0
  718. package/src/types/generated/types.ts +10421 -0
  719. package/src/types/index.ts +2 -0
  720. package/src/types/indexer.ts +240 -0
  721. package/src/types/keyless.ts +94 -0
  722. package/src/types/types.ts +1713 -0
  723. package/src/utils/apiEndpoints.ts +107 -0
  724. package/src/utils/const.ts +100 -0
  725. package/src/utils/helpers.ts +287 -0
  726. package/src/utils/index.ts +4 -0
  727. package/src/utils/memoize.ts +76 -0
  728. package/src/utils/normalizeBundle.ts +34 -0
  729. package/src/version.ts +9 -0
@@ -0,0 +1,641 @@
1
+ // Copyright © Move Industries
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ /* eslint-disable no-bitwise */
5
+ import { Hex } from "../core/hex";
6
+ import { AnyNumber, Uint16, Uint32, Uint8 } from "../types";
7
+ import {
8
+ MAX_I128_BIG_INT,
9
+ MAX_I16_NUMBER,
10
+ MAX_I256_BIG_INT,
11
+ MAX_I32_NUMBER,
12
+ MAX_I64_BIG_INT,
13
+ MAX_I8_NUMBER,
14
+ MAX_U128_BIG_INT,
15
+ MAX_U16_NUMBER,
16
+ MAX_U256_BIG_INT,
17
+ MAX_U32_NUMBER,
18
+ MAX_U64_BIG_INT,
19
+ MAX_U8_NUMBER,
20
+ MIN_I128_BIG_INT,
21
+ MIN_I16_NUMBER,
22
+ MIN_I256_BIG_INT,
23
+ MIN_I32_NUMBER,
24
+ MIN_I64_BIG_INT,
25
+ MIN_I8_NUMBER,
26
+ } from "./consts";
27
+
28
+ /**
29
+ * This class serves as a base class for all serializable types. It facilitates
30
+ * composable serialization of complex types and enables the serialization of
31
+ * instances to their BCS (Binary Canonical Serialization) representation.
32
+ * @group Implementation
33
+ * @category BCS
34
+ */
35
+ export abstract class Serializable {
36
+ abstract serialize(serializer: Serializer): void;
37
+
38
+ /**
39
+ * Serializes a `Serializable` value to its BCS representation.
40
+ * This function is the TypeScript SDK equivalent of `bcs::to_bytes` in Move.
41
+ * @returns the BCS representation of the Serializable instance as a byte buffer.
42
+ * @group Implementation
43
+ * @category BCS
44
+ */
45
+ bcsToBytes(): Uint8Array {
46
+ const serializer = new Serializer();
47
+ this.serialize(serializer);
48
+ return serializer.toUint8Array();
49
+ }
50
+
51
+ /**
52
+ * Converts the BCS-serialized bytes of a value into a Hex instance.
53
+ * This function provides a Hex representation of the BCS-serialized data for easier handling and manipulation.
54
+ * @returns A Hex instance with the BCS-serialized bytes loaded into its underlying Uint8Array.
55
+ * @group Implementation
56
+ * @category BCS
57
+ */
58
+ bcsToHex(): Hex {
59
+ const bcsBytes = this.bcsToBytes();
60
+ return Hex.fromHexInput(bcsBytes);
61
+ }
62
+
63
+ /**
64
+ * Returns the hex string representation of the `Serializable` value without the 0x prefix.
65
+ * @returns the hex format as a string without `0x` prefix.
66
+ */
67
+ toStringWithoutPrefix(): string {
68
+ return this.bcsToHex().toStringWithoutPrefix();
69
+ }
70
+
71
+ /**
72
+ * Returns the hex string representation of the `Serializable` value with the 0x prefix.
73
+ * @returns the hex formatas a string prefixed by `0x`.
74
+ */
75
+ toString(): string {
76
+ return `0x${this.toStringWithoutPrefix()}`;
77
+ }
78
+ }
79
+
80
+ /**
81
+ * A class for serializing various data types into a binary format.
82
+ * It provides methods to serialize strings, bytes, numbers, and other serializable objects
83
+ * using the Binary Coded Serialization (BCS) layout. The serialized data can be retrieved as a
84
+ * Uint8Array.
85
+ * @group Implementation
86
+ * @category BCS
87
+ */
88
+ export class Serializer {
89
+ private buffer: ArrayBuffer;
90
+
91
+ private offset: number;
92
+
93
+ /**
94
+ * Constructs a serializer with a buffer of size `length` bytes, 64 bytes by default.
95
+ * The `length` must be greater than 0.
96
+ *
97
+ * @param length - The size of the buffer in bytes.
98
+ * @group Implementation
99
+ * @category BCS
100
+ */
101
+ constructor(length: number = 64) {
102
+ if (length <= 0) {
103
+ throw new Error("Length needs to be greater than 0");
104
+ }
105
+ this.buffer = new ArrayBuffer(length);
106
+ this.offset = 0;
107
+ }
108
+
109
+ /**
110
+ * Ensures that the internal buffer can accommodate the specified number of bytes.
111
+ * This function dynamically resizes the buffer if the current size is insufficient.
112
+ *
113
+ * @param bytes - The number of bytes to ensure the buffer can handle.
114
+ * @group Implementation
115
+ * @category BCS
116
+ */
117
+ private ensureBufferWillHandleSize(bytes: number) {
118
+ while (this.buffer.byteLength < this.offset + bytes) {
119
+ const newBuffer = new ArrayBuffer(this.buffer.byteLength * 2);
120
+ new Uint8Array(newBuffer).set(new Uint8Array(this.buffer));
121
+ this.buffer = newBuffer;
122
+ }
123
+ }
124
+
125
+ /**
126
+ * Appends the specified values to the buffer, ensuring that the buffer can accommodate the new data.
127
+ *
128
+ * @param {Uint8Array} values - The values to be appended to the buffer.
129
+ * @group Implementation
130
+ * @category BCS
131
+ */
132
+ protected appendToBuffer(values: Uint8Array) {
133
+ this.ensureBufferWillHandleSize(values.length);
134
+ new Uint8Array(this.buffer, this.offset).set(values);
135
+ this.offset += values.length;
136
+ }
137
+
138
+ /**
139
+ * Serializes a value into the buffer using the provided function, ensuring the buffer can accommodate the size.
140
+ *
141
+ * @param fn - The function to serialize the value, which takes a byte offset, the value to serialize, and an optional little-endian flag.
142
+ * @param fn.byteOffset - The byte offset at which to write the value.
143
+ * @param fn.value - The numeric value to serialize into the buffer.
144
+ * @param fn.littleEndian - Optional flag indicating whether to use little-endian byte order (defaults to true).
145
+ * @group Implementation
146
+ * @category BCS
147
+ */
148
+ // TODO: JSDoc bytesLength and value
149
+ private serializeWithFunction(
150
+ fn: (byteOffset: number, value: number, littleEndian?: boolean) => void,
151
+ bytesLength: number,
152
+ value: number,
153
+ ) {
154
+ this.ensureBufferWillHandleSize(bytesLength);
155
+ const dv = new DataView(this.buffer, this.offset);
156
+ fn.apply(dv, [0, value, true]);
157
+ this.offset += bytesLength;
158
+ }
159
+
160
+ /**
161
+ * Serializes a string. UTF8 string is supported.
162
+ * The number of bytes in the string content is serialized first, as a uleb128-encoded u32 integer.
163
+ * Then the string content is serialized as UTF8 encoded bytes.
164
+ *
165
+ * BCS layout for "string": string_length | string_content
166
+ * where string_length is a u32 integer encoded as a uleb128 integer, equal to the number of bytes in string_content.
167
+ *
168
+ * @param value - The string to serialize.
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * const serializer = new Serializer();
173
+ * serializer.serializeStr("1234abcd");
174
+ * assert(serializer.toUint8Array() === new Uint8Array([8, 49, 50, 51, 52, 97, 98, 99, 100]));
175
+ * ```
176
+ * @group Implementation
177
+ * @category BCS
178
+ */
179
+ serializeStr(value: string) {
180
+ const textEncoder = new TextEncoder();
181
+ this.serializeBytes(textEncoder.encode(value));
182
+ }
183
+
184
+ /**
185
+ * Serializes an array of bytes.
186
+ *
187
+ * This function encodes the length of the byte array as a u32 integer in uleb128 format, followed by the byte array itself.
188
+ * BCS layout for "bytes": bytes_length | bytes
189
+ * where bytes_length is a u32 integer encoded as a uleb128 integer, equal to the length of the bytes array.
190
+ * @param value - The byte array to serialize.
191
+ * @group Implementation
192
+ * @category BCS
193
+ */
194
+ serializeBytes(value: Uint8Array) {
195
+ this.serializeU32AsUleb128(value.length);
196
+ this.appendToBuffer(value);
197
+ }
198
+
199
+ /**
200
+ * Serializes an array of bytes with a known length, allowing for efficient deserialization without needing to serialize the
201
+ * length itself.
202
+ * When deserializing, the number of bytes to deserialize needs to be passed in.
203
+
204
+ * @param value - The Uint8Array to be serialized.
205
+ * @group Implementation
206
+ * @category BCS
207
+ */
208
+ serializeFixedBytes(value: Uint8Array) {
209
+ this.appendToBuffer(value);
210
+ }
211
+
212
+ /**
213
+ * Serializes a boolean value into a byte representation.
214
+ *
215
+ * The BCS layout for a boolean uses one byte, where "0x01" represents true and "0x00" represents false.
216
+ *
217
+ * @param value - The boolean value to serialize.
218
+ * @group Implementation
219
+ * @category BCS
220
+ */
221
+ serializeBool(value: boolean) {
222
+ /**
223
+ * Ensures that the provided value is a boolean.
224
+ * This function throws an error if the value is not a boolean, helping to enforce type safety in your code.
225
+ *
226
+ * @param value - The value to be checked for boolean type.
227
+ * @throws {Error} Throws an error if the value is not a boolean.
228
+ * @group Implementation
229
+ * @category BCS
230
+ */
231
+ ensureBoolean(value);
232
+ const byteValue = value ? 1 : 0;
233
+ this.appendToBuffer(new Uint8Array([byteValue]));
234
+ }
235
+
236
+ /**
237
+ * Serializes a Uint8 value and appends it to the buffer.
238
+ * BCS layout for "uint8": One byte. Binary format in little-endian representation.
239
+ *
240
+ * @param value - The Uint8 value to serialize.
241
+ * @group Implementation
242
+ * @category BCS
243
+ */
244
+ @checkNumberRange(0, MAX_U8_NUMBER)
245
+ serializeU8(value: Uint8) {
246
+ this.appendToBuffer(new Uint8Array([value]));
247
+ }
248
+
249
+ /**
250
+ * Serializes a uint16 number.
251
+ *
252
+ * @group Implementation
253
+ * @category BCS
254
+
255
+ */
256
+
257
+ /**
258
+ * Serializes a 16-bit unsigned integer value into a binary format.
259
+ * BCS layout for "uint16": Two bytes. Binary format in little-endian representation.
260
+ *
261
+ * @param value - The 16-bit unsigned integer value to serialize.
262
+ * @example
263
+ * ```typescript
264
+ * const serializer = new Serializer();
265
+ * serializer.serializeU16(4660);
266
+ * assert(serializer.toUint8Array() === new Uint8Array([0x34, 0x12]));
267
+ * ```
268
+ * @group Implementation
269
+ * @category BCS
270
+ */
271
+ @checkNumberRange(0, MAX_U16_NUMBER)
272
+ serializeU16(value: Uint16) {
273
+ this.serializeWithFunction(DataView.prototype.setUint16, 2, value);
274
+ }
275
+
276
+ /**
277
+ * Serializes a 32-bit unsigned integer value into a binary format.
278
+ * This function is useful for encoding data that needs to be stored or transmitted in a compact form.
279
+ * @example
280
+ * ```typescript
281
+ * const serializer = new Serializer();
282
+ * serializer.serializeU32(305419896);
283
+ * assert(serializer.toUint8Array() === new Uint8Array([0x78, 0x56, 0x34, 0x12]));
284
+ * ```
285
+ * @param value - The 32-bit unsigned integer value to serialize.
286
+ * @group Implementation
287
+ * @category BCS
288
+ */
289
+ @checkNumberRange(0, MAX_U32_NUMBER)
290
+ serializeU32(value: Uint32) {
291
+ this.serializeWithFunction(DataView.prototype.setUint32, 4, value);
292
+ }
293
+
294
+ /**
295
+ * Serializes a 64-bit unsigned integer into a format suitable for storage or transmission.
296
+ * This function breaks down the value into two 32-bit components and writes them in little-endian order.
297
+ *
298
+ * @param value - The 64-bit unsigned integer to serialize, represented as a number.
299
+ * @example
300
+ * ```ts
301
+ * const serializer = new Serializer();
302
+ * serializer.serializeU64(1311768467750121216);
303
+ * assert(serializer.toUint8Array() === new Uint8Array([0x00, 0xEF, 0xCD, 0xAB, 0x78, 0x56, 0x34, 0x12]));
304
+ * ```
305
+ * @group Implementation
306
+ * @category BCS
307
+ */
308
+ @checkNumberRange(BigInt(0), MAX_U64_BIG_INT)
309
+ serializeU64(value: AnyNumber) {
310
+ const low = BigInt(value) & BigInt(MAX_U32_NUMBER);
311
+ const high = BigInt(value) >> BigInt(32);
312
+
313
+ // write little endian number
314
+ this.serializeU32(Number(low));
315
+ this.serializeU32(Number(high));
316
+ }
317
+
318
+ /**
319
+ * Serializes a U128 value into a format suitable for storage or transmission.
320
+ *
321
+ * @param value - The U128 value to serialize, represented as a number.
322
+ * @group Implementation
323
+ * @category BCS
324
+ */
325
+ @checkNumberRange(BigInt(0), MAX_U128_BIG_INT)
326
+ serializeU128(value: AnyNumber) {
327
+ const low = BigInt(value) & MAX_U64_BIG_INT;
328
+ const high = BigInt(value) >> BigInt(64);
329
+
330
+ // write little endian number
331
+ this.serializeU64(low);
332
+ this.serializeU64(high);
333
+ }
334
+
335
+ /**
336
+ * Serializes a U256 value into a byte representation.
337
+ * This function is essential for encoding large numbers in a compact format suitable for transmission or storage.
338
+ *
339
+ * @param value - The U256 value to serialize, represented as an AnyNumber.
340
+ * @group Implementation
341
+ * @category BCS
342
+ */
343
+ @checkNumberRange(BigInt(0), MAX_U256_BIG_INT)
344
+ serializeU256(value: AnyNumber) {
345
+ const low = BigInt(value) & MAX_U128_BIG_INT;
346
+ const high = BigInt(value) >> BigInt(128);
347
+
348
+ // write little endian number
349
+ this.serializeU128(low);
350
+ this.serializeU128(high);
351
+ }
352
+
353
+ /**
354
+ * Serializes an 8-bit signed integer value.
355
+ * BCS layout for "int8": One byte. Binary format in little-endian representation.
356
+ *
357
+ * @param value - The 8-bit signed integer value to serialize.
358
+ * @group Implementation
359
+ * @category BCS
360
+ */
361
+ @checkNumberRange(MIN_I8_NUMBER, MAX_I8_NUMBER)
362
+ serializeI8(value: number) {
363
+ this.serializeWithFunction(DataView.prototype.setInt8, 1, value);
364
+ }
365
+
366
+ /**
367
+ * Serializes a 16-bit signed integer value into a binary format.
368
+ * BCS layout for "int16": Two bytes. Binary format in little-endian representation.
369
+ *
370
+ * @param value - The 16-bit signed integer value to serialize.
371
+ * @group Implementation
372
+ * @category BCS
373
+ */
374
+ @checkNumberRange(MIN_I16_NUMBER, MAX_I16_NUMBER)
375
+ serializeI16(value: number) {
376
+ this.serializeWithFunction(DataView.prototype.setInt16, 2, value);
377
+ }
378
+
379
+ /**
380
+ * Serializes a 32-bit signed integer value into a binary format.
381
+ *
382
+ * @param value - The 32-bit signed integer value to serialize.
383
+ * @group Implementation
384
+ * @category BCS
385
+ */
386
+ @checkNumberRange(MIN_I32_NUMBER, MAX_I32_NUMBER)
387
+ serializeI32(value: number) {
388
+ this.serializeWithFunction(DataView.prototype.setInt32, 4, value);
389
+ }
390
+
391
+ /**
392
+ * Serializes a 64-bit signed integer into a format suitable for storage or transmission.
393
+ * This function uses two's complement representation for negative values.
394
+ *
395
+ * @param value - The 64-bit signed integer to serialize.
396
+ * @group Implementation
397
+ * @category BCS
398
+ */
399
+ @checkNumberRange(MIN_I64_BIG_INT, MAX_I64_BIG_INT)
400
+ serializeI64(value: AnyNumber) {
401
+ const val = BigInt(value);
402
+ // Convert to unsigned representation using two's complement
403
+ const unsigned = val < 0 ? (BigInt(1) << BigInt(64)) + val : val;
404
+ const low = unsigned & BigInt(MAX_U32_NUMBER);
405
+ const high = unsigned >> BigInt(32);
406
+
407
+ // write little endian number
408
+ this.serializeU32(Number(low));
409
+ this.serializeU32(Number(high));
410
+ }
411
+
412
+ /**
413
+ * Serializes a 128-bit signed integer value.
414
+ *
415
+ * @param value - The 128-bit signed integer value to serialize.
416
+ * @group Implementation
417
+ * @category BCS
418
+ */
419
+ @checkNumberRange(MIN_I128_BIG_INT, MAX_I128_BIG_INT)
420
+ serializeI128(value: AnyNumber) {
421
+ const val = BigInt(value);
422
+ // Convert to unsigned representation using two's complement
423
+ const unsigned = val < 0 ? (BigInt(1) << BigInt(128)) + val : val;
424
+ const low = unsigned & MAX_U64_BIG_INT;
425
+ const high = unsigned >> BigInt(64);
426
+
427
+ // write little endian number
428
+ this.serializeU64(low);
429
+ this.serializeU64(high);
430
+ }
431
+
432
+ /**
433
+ * Serializes a 256-bit signed integer value.
434
+ *
435
+ * @param value - The 256-bit signed integer value to serialize.
436
+ * @group Implementation
437
+ * @category BCS
438
+ */
439
+ @checkNumberRange(MIN_I256_BIG_INT, MAX_I256_BIG_INT)
440
+ serializeI256(value: AnyNumber) {
441
+ const val = BigInt(value);
442
+ // Convert to unsigned representation using two's complement
443
+ const unsigned = val < 0 ? (BigInt(1) << BigInt(256)) + val : val;
444
+ const low = unsigned & MAX_U128_BIG_INT;
445
+ const high = unsigned >> BigInt(128);
446
+
447
+ // write little endian number
448
+ this.serializeU128(low);
449
+ this.serializeU128(high);
450
+ }
451
+
452
+ /**
453
+ * Serializes a 32-bit unsigned integer as a variable-length ULEB128 encoded byte array.
454
+ * BCS uses uleb128 encoding in two cases: (1) lengths of variable-length sequences and (2) tags of enum values
455
+ *
456
+ * @param val - The 32-bit unsigned integer value to be serialized.
457
+ * @group Implementation
458
+ * @category BCS
459
+ */
460
+ @checkNumberRange(0, MAX_U32_NUMBER)
461
+ serializeU32AsUleb128(val: Uint32) {
462
+ let value = val;
463
+ const valueArray = [];
464
+ while (value >>> 7 !== 0) {
465
+ valueArray.push((value & 0x7f) | 0x80);
466
+ value >>>= 7;
467
+ }
468
+ valueArray.push(value);
469
+ this.appendToBuffer(new Uint8Array(valueArray));
470
+ }
471
+
472
+ /**
473
+ * Returns the buffered bytes as a Uint8Array.
474
+ *
475
+ * This function allows you to retrieve the byte representation of the buffer up to the current offset.
476
+ *
477
+ * @returns Uint8Array - The byte array representation of the buffer.
478
+ * @group Implementation
479
+ * @category BCS
480
+ */
481
+ toUint8Array(): Uint8Array {
482
+ return new Uint8Array(this.buffer).slice(0, this.offset);
483
+ }
484
+
485
+ /**
486
+ * Serializes a `Serializable` value, facilitating composable serialization.
487
+ *
488
+ * @param value The Serializable value to serialize.
489
+ *
490
+ * @returns the serializer instance
491
+ * @group Implementation
492
+ * @category BCS
493
+ */
494
+ serialize<T extends Serializable>(value: T): void {
495
+ // NOTE: The `serialize` method called by `value` is defined in `value`'s
496
+ // Serializable interface, not the one defined in this class.
497
+ value.serialize(this);
498
+ }
499
+
500
+ /**
501
+ * Serializes an array of BCS Serializable values to a serializer instance.
502
+ * The bytes are added to the serializer instance's byte buffer.
503
+ *
504
+ * @param values The array of BCS Serializable values
505
+ * @example
506
+ * const addresses = new Array<AccountAddress>(
507
+ * AccountAddress.from("0x1"),
508
+ * AccountAddress.from("0x2"),
509
+ * AccountAddress.from("0xa"),
510
+ * AccountAddress.from("0xb"),
511
+ * );
512
+ * const serializer = new Serializer();
513
+ * serializer.serializeVector(addresses);
514
+ * const serializedBytes = serializer.toUint8Array();
515
+ * // serializedBytes is now the BCS-serialized bytes
516
+ * // The equivalent value in Move would be:
517
+ * // `bcs::to_bytes(&vector<address> [@0x1, @0x2, @0xa, @0xb])`;
518
+ * @group Implementation
519
+ * @category BCS
520
+ */
521
+ serializeVector<T extends Serializable>(values: Array<T>): void {
522
+ this.serializeU32AsUleb128(values.length);
523
+ values.forEach((item) => {
524
+ item.serialize(this);
525
+ });
526
+ }
527
+
528
+ /**
529
+ * Serializes an optional value which can be a Serializable, string, or Uint8Array.
530
+ * For strings and Uint8Arrays, it uses the appropriate serialization method.
531
+ *
532
+ * @param value The value to serialize (Serializable, string, Uint8Array, or undefined)
533
+ * @param len Optional fixed length for Uint8Array serialization. If provided, uses serializeFixedBytes instead of serializeBytes
534
+ *
535
+ * @example
536
+ * ```typescript
537
+ * const serializer = new Serializer();
538
+ * serializer.serializeOption("hello"); // Serializes optional string
539
+ * serializer.serializeOption(new Uint8Array([1, 2, 3])); // Serializes optional bytes
540
+ * serializer.serializeOption(new Uint8Array([1, 2, 3]), 3); // Serializes optional fixed-length bytes
541
+ * serializer.serializeOption(new AccountAddress(...)); // Serializes optional Serializable
542
+ * serializer.serializeOption(undefined); // Serializes none case
543
+ * ```
544
+ * @group Implementation
545
+ * @category BCS
546
+ */
547
+ serializeOption<T extends Serializable | string | Uint8Array>(value?: T, len?: number): void {
548
+ const hasValue = value !== undefined;
549
+ this.serializeBool(hasValue);
550
+ if (hasValue) {
551
+ if (typeof value === "string") {
552
+ this.serializeStr(value);
553
+ } else if (value instanceof Uint8Array) {
554
+ if (len !== undefined) {
555
+ this.serializeFixedBytes(value);
556
+ } else {
557
+ this.serializeBytes(value);
558
+ }
559
+ } else {
560
+ value.serialize(this);
561
+ }
562
+ }
563
+ }
564
+
565
+ /**
566
+ * @deprecated use `serializeOption` instead.
567
+ * Serializes an optional string, supporting UTF8 encoding.
568
+ * The function encodes the existence of the string first, followed by the length and content if it exists.
569
+ *
570
+ * BCS layout for optional "string": 1 | string_length | string_content
571
+ * where string_length is a u32 integer encoded as a uleb128 integer, equal to the number of bytes in string_content.
572
+ * BCS layout for undefined: 0
573
+ *
574
+ * @param value - The optional string to serialize. If undefined, it will serialize as 0.
575
+ * @group Implementation
576
+ * @category BCS
577
+ */
578
+ serializeOptionStr(value?: string): void {
579
+ if (value === undefined) {
580
+ this.serializeU32AsUleb128(0);
581
+ } else {
582
+ this.serializeU32AsUleb128(1);
583
+ this.serializeStr(value);
584
+ }
585
+ }
586
+ }
587
+
588
+ /**
589
+ * @group Implementation
590
+ * @category BCS
591
+ */
592
+ export function ensureBoolean(value: unknown): asserts value is boolean {
593
+ if (typeof value !== "boolean") {
594
+ throw new Error(`${value} is not a boolean value`);
595
+ }
596
+ }
597
+ /**
598
+ * @group Implementation
599
+ * @category BCS
600
+ */
601
+ export const outOfRangeErrorMessage = (value: AnyNumber, min: AnyNumber, max: AnyNumber) =>
602
+ `${value} is out of range: [${min}, ${max}]`;
603
+
604
+ /**
605
+ * Validates that a given number is within a specified range.
606
+ * This function throws an error if the value is outside the defined minimum and maximum bounds.
607
+ *
608
+ * @param value - The number to validate.
609
+ * @param minValue - The minimum allowable value (inclusive).
610
+ * @param maxValue - The maximum allowable value (inclusive).
611
+ * @group Implementation
612
+ * @category BCS
613
+ */
614
+ export function validateNumberInRange<T extends AnyNumber>(value: T, minValue: T, maxValue: T) {
615
+ const valueBigInt = BigInt(value);
616
+ if (valueBigInt > BigInt(maxValue) || valueBigInt < BigInt(minValue)) {
617
+ throw new Error(outOfRangeErrorMessage(value, minValue, maxValue));
618
+ }
619
+ }
620
+
621
+ /**
622
+ * A decorator that validates that the input argument for a function is within a specified range.
623
+ * This ensures that the function is only called with valid input values, preventing potential errors.
624
+ *
625
+ * @param minValue - The input argument must be greater than or equal to this value.
626
+ * @param maxValue - The input argument must be less than or equal to this value.
627
+ * @group Implementation
628
+ * @category BCS
629
+ */
630
+ function checkNumberRange<T extends AnyNumber>(minValue: T, maxValue: T) {
631
+ return (target: unknown, propertyKey: string, descriptor: PropertyDescriptor) => {
632
+ const childFunction = descriptor.value;
633
+ // eslint-disable-next-line no-param-reassign
634
+ descriptor.value = function deco(value: AnyNumber) {
635
+ validateNumberInRange(value, minValue, maxValue);
636
+ return childFunction.apply(this, [value]);
637
+ };
638
+
639
+ return descriptor;
640
+ };
641
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./localNode";
2
+ export * from "./move";