@aptos-labs/ts-sdk 0.0.6 → 0.0.8

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 (439) hide show
  1. package/README.md +26 -5
  2. package/dist/browser/index.d.ts +1097 -519
  3. package/dist/browser/index.global.js +49 -28
  4. package/dist/browser/index.global.js.map +1 -1
  5. package/dist/common/index.d.ts +1097 -519
  6. package/dist/common/index.js +48 -27
  7. package/dist/common/index.js.map +1 -1
  8. package/dist/esm/api/account.d.mts +72 -47
  9. package/dist/esm/api/account.mjs +1 -1
  10. package/dist/esm/api/ans.d.mts +214 -18
  11. package/dist/esm/api/ans.mjs +1 -1
  12. package/dist/esm/api/aptos.d.mts +9 -0
  13. package/dist/esm/api/aptos.mjs +1 -1
  14. package/dist/esm/api/aptosConfig.d.mts +2 -2
  15. package/dist/esm/api/aptosConfig.mjs +1 -1
  16. package/dist/esm/api/coin.d.mts +6 -5
  17. package/dist/esm/api/coin.mjs +1 -1
  18. package/dist/esm/api/digitalAsset.d.mts +24 -21
  19. package/dist/esm/api/digitalAsset.mjs +1 -1
  20. package/dist/esm/api/event.d.mts +12 -14
  21. package/dist/esm/api/event.mjs +1 -1
  22. package/dist/esm/api/faucet.d.mts +4 -4
  23. package/dist/esm/api/faucet.mjs +1 -1
  24. package/dist/esm/api/fungibleAsset.d.mts +71 -30
  25. package/dist/esm/api/fungibleAsset.mjs +1 -1
  26. package/dist/esm/api/general.d.mts +12 -5
  27. package/dist/esm/api/general.mjs +1 -1
  28. package/dist/esm/api/index.d.mts +5 -0
  29. package/dist/esm/api/index.mjs +1 -1
  30. package/dist/esm/api/staking.d.mts +13 -9
  31. package/dist/esm/api/staking.mjs +1 -1
  32. package/dist/esm/api/transaction.d.mts +36 -2
  33. package/dist/esm/api/transaction.mjs +1 -1
  34. package/dist/esm/api/transactionSubmission/build.d.mts +54 -0
  35. package/dist/esm/api/transactionSubmission/build.mjs +2 -0
  36. package/dist/esm/api/transactionSubmission/sign.d.mts +51 -0
  37. package/dist/esm/api/transactionSubmission/sign.mjs +2 -0
  38. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -0
  39. package/dist/esm/api/transactionSubmission/simulate.d.mts +54 -0
  40. package/dist/esm/api/transactionSubmission/simulate.mjs +2 -0
  41. package/dist/esm/api/transactionSubmission/simulate.mjs.map +1 -0
  42. package/dist/esm/api/transactionSubmission/submit.d.mts +52 -0
  43. package/dist/esm/api/transactionSubmission/submit.mjs +2 -0
  44. package/dist/esm/api/transactionSubmission/submit.mjs.map +1 -0
  45. package/dist/esm/api/transactionSubmission.d.mts +25 -54
  46. package/dist/esm/api/transactionSubmission.mjs +1 -1
  47. package/dist/esm/api/utils.d.mts +21 -0
  48. package/dist/esm/api/utils.mjs +2 -0
  49. package/dist/esm/api/utils.mjs.map +1 -0
  50. package/dist/esm/bcs/deserializer.d.mts +4 -4
  51. package/dist/esm/bcs/deserializer.mjs +1 -1
  52. package/dist/esm/bcs/index.mjs +1 -1
  53. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
  54. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
  55. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
  56. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
  57. package/dist/esm/bcs/serializer.d.mts +4 -4
  58. package/dist/esm/bcs/serializer.mjs +1 -1
  59. package/dist/esm/{chunk-UAAI3NCA.mjs → chunk-2SAKPC5Q.mjs} +2 -2
  60. package/dist/esm/chunk-2YQXX64E.mjs +2 -0
  61. package/dist/esm/chunk-2YQXX64E.mjs.map +1 -0
  62. package/dist/esm/chunk-3F5WV6US.mjs +2 -0
  63. package/dist/esm/chunk-3F5WV6US.mjs.map +1 -0
  64. package/dist/esm/{chunk-ARVSIDVB.mjs → chunk-3RMXGSHK.mjs} +2 -2
  65. package/dist/esm/chunk-3RMXGSHK.mjs.map +1 -0
  66. package/dist/esm/{chunk-4ADA5BE7.mjs → chunk-53DS6NBQ.mjs} +2 -2
  67. package/dist/esm/chunk-5CUNY7X2.mjs +2 -0
  68. package/dist/esm/chunk-5CUNY7X2.mjs.map +1 -0
  69. package/dist/esm/{chunk-QWVR4RCV.mjs → chunk-5OPOJ43H.mjs} +2 -2
  70. package/dist/esm/{chunk-V45RFKH7.mjs → chunk-5UY5OKXR.mjs} +2 -2
  71. package/dist/esm/chunk-5UY5OKXR.mjs.map +1 -0
  72. package/dist/esm/chunk-5ZVCSKFX.mjs +2 -0
  73. package/dist/esm/chunk-5ZVCSKFX.mjs.map +1 -0
  74. package/dist/esm/{chunk-HVADSXTB.mjs → chunk-73VWOS4Z.mjs} +2 -2
  75. package/dist/esm/chunk-ALFESCPU.mjs +2 -0
  76. package/dist/esm/chunk-ALFESCPU.mjs.map +1 -0
  77. package/dist/esm/chunk-APSQ4M23.mjs +2 -0
  78. package/dist/esm/chunk-APSQ4M23.mjs.map +1 -0
  79. package/dist/esm/{chunk-U25N2VWA.mjs → chunk-AZUWHKN5.mjs} +2 -2
  80. package/dist/esm/{chunk-WX43AJTD.mjs → chunk-BQSE5HHW.mjs} +45 -24
  81. package/dist/esm/chunk-BQSE5HHW.mjs.map +1 -0
  82. package/dist/esm/chunk-CCXMVVXD.mjs +2 -0
  83. package/dist/esm/chunk-CCXMVVXD.mjs.map +1 -0
  84. package/dist/esm/{chunk-JZNLZMUC.mjs → chunk-CJPCOS4R.mjs} +2 -2
  85. package/dist/esm/{chunk-S36IYY6K.mjs → chunk-CL5B2QNS.mjs} +2 -2
  86. package/dist/esm/chunk-CLJLQXFQ.mjs +2 -0
  87. package/dist/esm/chunk-CLJLQXFQ.mjs.map +1 -0
  88. package/dist/esm/{chunk-EWTHPMEE.mjs → chunk-CU2DINU4.mjs} +2 -2
  89. package/dist/esm/chunk-EFRFDFS4.mjs +2 -0
  90. package/dist/esm/chunk-EFRFDFS4.mjs.map +1 -0
  91. package/dist/esm/chunk-EOC4UI5B.mjs +2 -0
  92. package/dist/esm/{chunk-KC64ESLO.mjs.map → chunk-EOC4UI5B.mjs.map} +1 -1
  93. package/dist/esm/{chunk-HA6JD5R6.mjs → chunk-F6K26WV5.mjs} +2 -2
  94. package/dist/esm/{chunk-HA6JD5R6.mjs.map → chunk-F6K26WV5.mjs.map} +1 -1
  95. package/dist/esm/chunk-F7EWDYTE.mjs +2 -0
  96. package/dist/esm/chunk-F7EWDYTE.mjs.map +1 -0
  97. package/dist/esm/{chunk-44MGBJ73.mjs → chunk-FZ56IS3E.mjs} +2 -2
  98. package/dist/esm/chunk-G36AY4R7.mjs +2 -0
  99. package/dist/esm/chunk-G36AY4R7.mjs.map +1 -0
  100. package/dist/esm/chunk-GEZSEAL5.mjs +2 -0
  101. package/dist/esm/chunk-GEZSEAL5.mjs.map +1 -0
  102. package/dist/esm/chunk-GIZLK7M7.mjs +2 -0
  103. package/dist/esm/chunk-GIZLK7M7.mjs.map +1 -0
  104. package/dist/esm/chunk-GMG4VR3K.mjs +2 -0
  105. package/dist/esm/chunk-GMG4VR3K.mjs.map +1 -0
  106. package/dist/esm/{chunk-U6SZNNVL.mjs → chunk-GXPGRCSW.mjs} +2 -2
  107. package/dist/esm/{chunk-U6SZNNVL.mjs.map → chunk-GXPGRCSW.mjs.map} +1 -1
  108. package/dist/esm/{chunk-GEFQFRL3.mjs → chunk-HC5VMNXA.mjs} +2 -2
  109. package/dist/esm/chunk-HTI5LEST.mjs +2 -0
  110. package/dist/esm/chunk-HTI5LEST.mjs.map +1 -0
  111. package/dist/esm/chunk-IELTCGLP.mjs +2 -0
  112. package/dist/esm/chunk-IELTCGLP.mjs.map +1 -0
  113. package/dist/esm/chunk-IHYTP2EW.mjs +1 -0
  114. package/dist/esm/chunk-IHYTP2EW.mjs.map +1 -0
  115. package/dist/esm/chunk-JI2BBZ2W.mjs +2 -0
  116. package/dist/esm/{chunk-3JVGSFHP.mjs.map → chunk-JI2BBZ2W.mjs.map} +1 -1
  117. package/dist/esm/chunk-KKER5KL4.mjs +2 -0
  118. package/dist/esm/chunk-KKER5KL4.mjs.map +1 -0
  119. package/dist/esm/chunk-KNMWDGP4.mjs +2 -0
  120. package/dist/esm/chunk-KNMWDGP4.mjs.map +1 -0
  121. package/dist/esm/{chunk-YYRDFZE6.mjs → chunk-KZSJ5MFF.mjs} +2 -2
  122. package/dist/esm/{chunk-YYRDFZE6.mjs.map → chunk-KZSJ5MFF.mjs.map} +1 -1
  123. package/dist/esm/chunk-MWAMLQ25.mjs +2 -0
  124. package/dist/esm/chunk-MWAMLQ25.mjs.map +1 -0
  125. package/dist/esm/chunk-NL72WE3E.mjs +2 -0
  126. package/dist/esm/{chunk-TIH6ARYP.mjs.map → chunk-NL72WE3E.mjs.map} +1 -1
  127. package/dist/esm/chunk-NZSGGL25.mjs +2 -0
  128. package/dist/esm/chunk-NZSGGL25.mjs.map +1 -0
  129. package/dist/esm/chunk-OBOOY2QD.mjs +2 -0
  130. package/dist/esm/chunk-OBOOY2QD.mjs.map +1 -0
  131. package/dist/esm/chunk-OT2UDMUU.mjs +2 -0
  132. package/dist/esm/chunk-OT2UDMUU.mjs.map +1 -0
  133. package/dist/esm/chunk-OZZDXS26.mjs +2 -0
  134. package/dist/esm/chunk-OZZDXS26.mjs.map +1 -0
  135. package/dist/esm/chunk-P5747ZYC.mjs +2 -0
  136. package/dist/esm/chunk-P5747ZYC.mjs.map +1 -0
  137. package/dist/esm/{chunk-BPYLPPEQ.mjs → chunk-PL2VA73L.mjs} +2 -2
  138. package/dist/esm/chunk-PXTMLJKO.mjs +2 -0
  139. package/dist/esm/{chunk-JDS7K2WI.mjs → chunk-QCBIJCU4.mjs} +2 -2
  140. package/dist/esm/chunk-QEXAMHPU.mjs +2 -0
  141. package/dist/esm/chunk-QEXAMHPU.mjs.map +1 -0
  142. package/dist/esm/{chunk-KQXRH5FK.mjs → chunk-QNTV5NMH.mjs} +2 -2
  143. package/dist/esm/{chunk-EQ5BEDJ7.mjs → chunk-RCM3K5JL.mjs} +2 -2
  144. package/dist/esm/chunk-RLG3WOTH.mjs +2 -0
  145. package/dist/esm/chunk-RLG3WOTH.mjs.map +1 -0
  146. package/dist/esm/chunk-SDPICQ5B.mjs +2 -0
  147. package/dist/esm/{chunk-FYIFBLHU.mjs.map → chunk-SDPICQ5B.mjs.map} +1 -1
  148. package/dist/esm/chunk-SGTFMSOG.mjs +2 -0
  149. package/dist/esm/chunk-SGTFMSOG.mjs.map +1 -0
  150. package/dist/esm/chunk-SO6EE5DX.mjs +2 -0
  151. package/dist/esm/chunk-SO6EE5DX.mjs.map +1 -0
  152. package/dist/esm/chunk-SRGPSANH.mjs +2 -0
  153. package/dist/esm/chunk-SRGPSANH.mjs.map +1 -0
  154. package/dist/esm/{chunk-UPLWWSB4.mjs → chunk-SSJQOXEP.mjs} +2 -2
  155. package/dist/esm/chunk-TZ623H2V.mjs +2 -0
  156. package/dist/esm/chunk-TZ623H2V.mjs.map +1 -0
  157. package/dist/esm/chunk-U6Z4FNB7.mjs +2 -0
  158. package/dist/esm/chunk-U6Z4FNB7.mjs.map +1 -0
  159. package/dist/esm/{chunk-GTC7WHMV.mjs → chunk-UDMADMVO.mjs} +1 -1
  160. package/dist/esm/{chunk-GTC7WHMV.mjs.map → chunk-UDMADMVO.mjs.map} +1 -1
  161. package/dist/esm/chunk-UIVJXLRM.mjs +1 -0
  162. package/dist/esm/chunk-UIVJXLRM.mjs.map +1 -0
  163. package/dist/esm/chunk-UKSA4H2O.mjs +2 -0
  164. package/dist/esm/chunk-UKSA4H2O.mjs.map +1 -0
  165. package/dist/esm/chunk-UW6HQ643.mjs +2 -0
  166. package/dist/esm/chunk-UW6HQ643.mjs.map +1 -0
  167. package/dist/esm/chunk-UWXDXOFK.mjs +2 -0
  168. package/dist/esm/chunk-UWXDXOFK.mjs.map +1 -0
  169. package/dist/esm/chunk-VQ7LYNMD.mjs +2 -0
  170. package/dist/esm/chunk-VQ7LYNMD.mjs.map +1 -0
  171. package/dist/esm/{chunk-U3LO2FSJ.mjs → chunk-WTGGCH34.mjs} +2 -2
  172. package/dist/esm/{chunk-X32O46IB.mjs → chunk-XITLXPBK.mjs} +2 -2
  173. package/dist/esm/chunk-XMUUI6HG.mjs +2 -0
  174. package/dist/esm/{chunk-R3KWVOFG.mjs.map → chunk-XMUUI6HG.mjs.map} +1 -1
  175. package/dist/esm/chunk-XX2Z26FH.mjs +2 -0
  176. package/dist/esm/chunk-XX2Z26FH.mjs.map +1 -0
  177. package/dist/esm/chunk-Y6PVFMBS.mjs +2 -0
  178. package/dist/esm/chunk-Y6PVFMBS.mjs.map +1 -0
  179. package/dist/esm/{chunk-VWVEDCBM.mjs → chunk-YN6UIVFB.mjs} +2 -2
  180. package/dist/esm/chunk-ZFK7QD3B.mjs +2 -0
  181. package/dist/esm/chunk-ZFK7QD3B.mjs.map +1 -0
  182. package/dist/esm/chunk-ZJUDDSWN.mjs +2 -0
  183. package/dist/esm/chunk-ZJUDDSWN.mjs.map +1 -0
  184. package/dist/esm/client/core.mjs +1 -1
  185. package/dist/esm/client/get.d.mts +1 -1
  186. package/dist/esm/client/get.mjs +1 -1
  187. package/dist/esm/client/index.mjs +1 -1
  188. package/dist/esm/client/post.mjs +1 -1
  189. package/dist/esm/core/account.mjs +1 -1
  190. package/dist/esm/core/accountAddress.d.mts +9 -9
  191. package/dist/esm/core/accountAddress.mjs +1 -1
  192. package/dist/esm/core/authenticationKey.mjs +1 -1
  193. package/dist/esm/core/crypto/anyPublicKey.d.mts +5 -0
  194. package/dist/esm/core/crypto/anyPublicKey.mjs +1 -1
  195. package/dist/esm/core/crypto/anySignature.mjs +1 -1
  196. package/dist/esm/core/crypto/asymmetricCrypto.mjs +1 -1
  197. package/dist/esm/core/crypto/ed25519.d.mts +3 -0
  198. package/dist/esm/core/crypto/ed25519.mjs +1 -1
  199. package/dist/esm/core/crypto/index.d.mts +2 -2
  200. package/dist/esm/core/crypto/index.mjs +1 -1
  201. package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
  202. package/dist/esm/core/crypto/multiKey.d.mts +2 -0
  203. package/dist/esm/core/crypto/multiKey.mjs +1 -1
  204. package/dist/esm/core/crypto/secp256k1.d.mts +3 -0
  205. package/dist/esm/core/crypto/secp256k1.mjs +1 -1
  206. package/dist/esm/core/hex.mjs +1 -1
  207. package/dist/esm/core/index.d.mts +2 -2
  208. package/dist/esm/core/index.mjs +1 -1
  209. package/dist/esm/index.d.mts +17 -10
  210. package/dist/esm/index.mjs +1 -1
  211. package/dist/esm/internal/account.d.mts +20 -33
  212. package/dist/esm/internal/account.mjs +1 -1
  213. package/dist/esm/internal/ans.d.mts +78 -14
  214. package/dist/esm/internal/ans.mjs +1 -1
  215. package/dist/esm/internal/coin.d.mts +6 -5
  216. package/dist/esm/internal/coin.mjs +1 -1
  217. package/dist/esm/internal/digitalAsset.d.mts +12 -21
  218. package/dist/esm/internal/digitalAsset.mjs +1 -1
  219. package/dist/esm/internal/event.d.mts +5 -12
  220. package/dist/esm/internal/event.mjs +1 -1
  221. package/dist/esm/internal/faucet.d.mts +2 -2
  222. package/dist/esm/internal/faucet.mjs +1 -1
  223. package/dist/esm/internal/fungibleAsset.d.mts +40 -22
  224. package/dist/esm/internal/fungibleAsset.mjs +1 -1
  225. package/dist/esm/internal/general.d.mts +9 -5
  226. package/dist/esm/internal/general.mjs +1 -1
  227. package/dist/esm/internal/staking.d.mts +4 -6
  228. package/dist/esm/internal/staking.mjs +1 -1
  229. package/dist/esm/internal/transaction.d.mts +12 -4
  230. package/dist/esm/internal/transaction.mjs +1 -1
  231. package/dist/esm/internal/transactionSubmission.d.mts +29 -41
  232. package/dist/esm/internal/transactionSubmission.mjs +1 -1
  233. package/dist/esm/transactions/authenticator/account.d.mts +5 -0
  234. package/dist/esm/transactions/authenticator/account.mjs +1 -1
  235. package/dist/esm/transactions/authenticator/index.d.mts +1 -0
  236. package/dist/esm/transactions/authenticator/index.mjs +1 -1
  237. package/dist/esm/transactions/authenticator/transaction.d.mts +1 -0
  238. package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
  239. package/dist/esm/transactions/index.d.mts +5 -4
  240. package/dist/esm/transactions/index.mjs +1 -1
  241. package/dist/esm/transactions/instances/chainId.mjs +1 -1
  242. package/dist/esm/transactions/instances/identifier.mjs +1 -1
  243. package/dist/esm/transactions/instances/index.d.mts +1 -0
  244. package/dist/esm/transactions/instances/index.mjs +1 -1
  245. package/dist/esm/transactions/instances/moduleId.mjs +1 -1
  246. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
  247. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
  248. package/dist/esm/transactions/instances/signedTransaction.d.mts +1 -0
  249. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
  250. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
  251. package/dist/esm/transactions/management/accountSequenceNumber.d.mts +89 -0
  252. package/dist/esm/transactions/management/accountSequenceNumber.mjs +2 -0
  253. package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +1 -0
  254. package/dist/esm/transactions/management/asyncQueue.d.mts +58 -0
  255. package/dist/esm/transactions/management/asyncQueue.mjs +2 -0
  256. package/dist/esm/transactions/management/asyncQueue.mjs.map +1 -0
  257. package/dist/esm/transactions/management/index.d.mts +36 -0
  258. package/dist/esm/transactions/management/index.mjs +2 -0
  259. package/dist/esm/transactions/management/index.mjs.map +1 -0
  260. package/dist/esm/transactions/management/transactionWorker.d.mts +135 -0
  261. package/dist/esm/transactions/management/transactionWorker.mjs +2 -0
  262. package/dist/esm/transactions/management/transactionWorker.mjs.map +1 -0
  263. package/dist/esm/transactions/transactionBuilder/helpers.d.mts +3 -1
  264. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
  265. package/dist/esm/transactions/transactionBuilder/index.d.mts +4 -3
  266. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
  267. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +3 -1
  268. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
  269. package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +6 -8
  270. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
  271. package/dist/esm/transactions/typeTag/index.mjs +1 -1
  272. package/dist/esm/transactions/typeTag/parser.mjs +1 -1
  273. package/dist/esm/transactions/types.d.mts +18 -43
  274. package/dist/esm/types/generated/operations.d.mts +30 -4
  275. package/dist/esm/types/generated/queries.d.mts +8 -5
  276. package/dist/esm/types/generated/queries.mjs +1 -1
  277. package/dist/esm/types/index.d.mts +27 -9
  278. package/dist/esm/types/index.mjs +1 -1
  279. package/dist/esm/types/indexer.d.mts +3 -2
  280. package/dist/esm/utils/const.d.mts +18 -1
  281. package/dist/esm/utils/const.mjs +1 -1
  282. package/dist/esm/utils/index.d.mts +1 -1
  283. package/dist/esm/utils/index.mjs +1 -1
  284. package/dist/esm/version.d.mts +1 -1
  285. package/dist/esm/version.mjs +1 -1
  286. package/package.json +1 -1
  287. package/src/api/account.ts +150 -53
  288. package/src/api/ans.ts +252 -16
  289. package/src/api/aptos.ts +20 -0
  290. package/src/api/aptosConfig.ts +2 -2
  291. package/src/api/coin.ts +4 -8
  292. package/src/api/digitalAsset.ts +75 -25
  293. package/src/api/event.ts +28 -17
  294. package/src/api/faucet.ts +12 -9
  295. package/src/api/fungibleAsset.ts +76 -35
  296. package/src/api/general.ts +19 -3
  297. package/src/api/staking.ts +30 -11
  298. package/src/api/transaction.ts +16 -1
  299. package/src/api/transactionSubmission/build.ts +42 -0
  300. package/src/api/transactionSubmission/sign.ts +44 -0
  301. package/src/api/transactionSubmission/simulate.ts +56 -0
  302. package/src/api/transactionSubmission/submit.ts +53 -0
  303. package/src/api/transactionSubmission.ts +31 -128
  304. package/src/api/utils.ts +37 -0
  305. package/src/bcs/deserializer.ts +4 -4
  306. package/src/bcs/serializer.ts +4 -4
  307. package/src/client/core.ts +6 -4
  308. package/src/client/get.ts +7 -6
  309. package/src/core/accountAddress.ts +20 -22
  310. package/src/core/crypto/anyPublicKey.ts +12 -0
  311. package/src/core/crypto/ed25519.ts +13 -0
  312. package/src/core/crypto/index.ts +2 -0
  313. package/src/core/crypto/secp256k1.ts +12 -0
  314. package/src/core/hex.ts +5 -7
  315. package/src/index.ts +1 -0
  316. package/src/internal/account.ts +56 -50
  317. package/src/internal/ans.ts +423 -24
  318. package/src/internal/coin.ts +6 -8
  319. package/src/internal/digitalAsset.ts +15 -25
  320. package/src/internal/event.ts +7 -14
  321. package/src/internal/faucet.ts +10 -6
  322. package/src/internal/fungibleAsset.ts +36 -18
  323. package/src/internal/general.ts +30 -3
  324. package/src/internal/queries/ansTokenFragment.graphql +9 -0
  325. package/src/internal/queries/getNames.graphql +11 -0
  326. package/src/internal/queries/getNumberOfDelegatorsQuery.graphql +5 -5
  327. package/src/internal/queries/getProcessorStatus.graphql +2 -2
  328. package/src/internal/staking.ts +12 -14
  329. package/src/internal/transaction.ts +23 -26
  330. package/src/internal/transactionSubmission.ts +63 -25
  331. package/src/transactions/authenticator/account.ts +16 -0
  332. package/src/transactions/instances/moduleId.ts +1 -1
  333. package/src/transactions/management/accountSequenceNumber.ts +186 -0
  334. package/src/transactions/management/asyncQueue.ts +107 -0
  335. package/src/transactions/management/index.ts +2 -0
  336. package/src/transactions/management/transactionWorker.ts +275 -0
  337. package/src/transactions/transactionBuilder/helpers.ts +28 -1
  338. package/src/transactions/transactionBuilder/remoteAbi.ts +35 -28
  339. package/src/transactions/transactionBuilder/transactionBuilder.ts +46 -67
  340. package/src/transactions/typeTag/parser.ts +1 -1
  341. package/src/transactions/types.ts +16 -47
  342. package/src/types/generated/operations.ts +33 -2
  343. package/src/types/generated/queries.ts +38 -4
  344. package/src/types/index.ts +67 -11
  345. package/src/types/indexer.ts +3 -0
  346. package/src/utils/const.ts +18 -0
  347. package/src/version.ts +1 -1
  348. package/dist/esm/chunk-2W744GUN.mjs +0 -2
  349. package/dist/esm/chunk-2W744GUN.mjs.map +0 -1
  350. package/dist/esm/chunk-3JVGSFHP.mjs +0 -2
  351. package/dist/esm/chunk-4RVIA63I.mjs +0 -2
  352. package/dist/esm/chunk-4RVIA63I.mjs.map +0 -1
  353. package/dist/esm/chunk-62SCW5NH.mjs +0 -2
  354. package/dist/esm/chunk-62SCW5NH.mjs.map +0 -1
  355. package/dist/esm/chunk-7MNEEVXY.mjs +0 -2
  356. package/dist/esm/chunk-7MNEEVXY.mjs.map +0 -1
  357. package/dist/esm/chunk-AAIBCWZY.mjs +0 -2
  358. package/dist/esm/chunk-AAIBCWZY.mjs.map +0 -1
  359. package/dist/esm/chunk-ARVSIDVB.mjs.map +0 -1
  360. package/dist/esm/chunk-BFSEVKNA.mjs +0 -2
  361. package/dist/esm/chunk-BFSEVKNA.mjs.map +0 -1
  362. package/dist/esm/chunk-BP5ZO7NK.mjs +0 -2
  363. package/dist/esm/chunk-BP5ZO7NK.mjs.map +0 -1
  364. package/dist/esm/chunk-BV4OOU5Y.mjs +0 -2
  365. package/dist/esm/chunk-BV4OOU5Y.mjs.map +0 -1
  366. package/dist/esm/chunk-BWMNPUTK.mjs +0 -2
  367. package/dist/esm/chunk-BWMNPUTK.mjs.map +0 -1
  368. package/dist/esm/chunk-EFIYW4WK.mjs +0 -2
  369. package/dist/esm/chunk-EGOYLZBU.mjs +0 -2
  370. package/dist/esm/chunk-EGOYLZBU.mjs.map +0 -1
  371. package/dist/esm/chunk-EYXHVA6W.mjs +0 -2
  372. package/dist/esm/chunk-EYXHVA6W.mjs.map +0 -1
  373. package/dist/esm/chunk-FYIFBLHU.mjs +0 -2
  374. package/dist/esm/chunk-IG5CHHSI.mjs +0 -2
  375. package/dist/esm/chunk-IG5CHHSI.mjs.map +0 -1
  376. package/dist/esm/chunk-IXMB2GOK.mjs +0 -2
  377. package/dist/esm/chunk-IXMB2GOK.mjs.map +0 -1
  378. package/dist/esm/chunk-J5ZFOJN2.mjs +0 -2
  379. package/dist/esm/chunk-J5ZFOJN2.mjs.map +0 -1
  380. package/dist/esm/chunk-KC64ESLO.mjs +0 -2
  381. package/dist/esm/chunk-NGCFPQ22.mjs +0 -2
  382. package/dist/esm/chunk-NGCFPQ22.mjs.map +0 -1
  383. package/dist/esm/chunk-NTD3H2S4.mjs +0 -2
  384. package/dist/esm/chunk-NTD3H2S4.mjs.map +0 -1
  385. package/dist/esm/chunk-NYFVEKF6.mjs +0 -2
  386. package/dist/esm/chunk-NYFVEKF6.mjs.map +0 -1
  387. package/dist/esm/chunk-NZIJV4O2.mjs +0 -2
  388. package/dist/esm/chunk-NZIJV4O2.mjs.map +0 -1
  389. package/dist/esm/chunk-P32MY5YF.mjs +0 -2
  390. package/dist/esm/chunk-P32MY5YF.mjs.map +0 -1
  391. package/dist/esm/chunk-Q6N6QACD.mjs +0 -2
  392. package/dist/esm/chunk-Q6N6QACD.mjs.map +0 -1
  393. package/dist/esm/chunk-R26XML3D.mjs +0 -2
  394. package/dist/esm/chunk-R26XML3D.mjs.map +0 -1
  395. package/dist/esm/chunk-R3KWVOFG.mjs +0 -2
  396. package/dist/esm/chunk-RYETO74W.mjs +0 -2
  397. package/dist/esm/chunk-RYETO74W.mjs.map +0 -1
  398. package/dist/esm/chunk-TCTZCPQ6.mjs +0 -1
  399. package/dist/esm/chunk-TIH6ARYP.mjs +0 -2
  400. package/dist/esm/chunk-TQD4IGUM.mjs +0 -2
  401. package/dist/esm/chunk-TQD4IGUM.mjs.map +0 -1
  402. package/dist/esm/chunk-UNQNACJT.mjs +0 -2
  403. package/dist/esm/chunk-UNQNACJT.mjs.map +0 -1
  404. package/dist/esm/chunk-V45RFKH7.mjs.map +0 -1
  405. package/dist/esm/chunk-VMQWW5UT.mjs +0 -2
  406. package/dist/esm/chunk-VMQWW5UT.mjs.map +0 -1
  407. package/dist/esm/chunk-VOYW2TZW.mjs +0 -2
  408. package/dist/esm/chunk-VOYW2TZW.mjs.map +0 -1
  409. package/dist/esm/chunk-VYAVLUPJ.mjs +0 -2
  410. package/dist/esm/chunk-VYAVLUPJ.mjs.map +0 -1
  411. package/dist/esm/chunk-WKY5ENCK.mjs +0 -2
  412. package/dist/esm/chunk-WKY5ENCK.mjs.map +0 -1
  413. package/dist/esm/chunk-WX43AJTD.mjs.map +0 -1
  414. package/dist/esm/chunk-Y5DJPHJT.mjs +0 -2
  415. package/dist/esm/chunk-Y5DJPHJT.mjs.map +0 -1
  416. package/dist/esm/chunk-Y7VR7X5W.mjs +0 -2
  417. package/dist/esm/chunk-Y7VR7X5W.mjs.map +0 -1
  418. package/dist/esm/chunk-Z2UDRTHA.mjs +0 -2
  419. package/dist/esm/chunk-Z2UDRTHA.mjs.map +0 -1
  420. /package/dist/esm/{chunk-TCTZCPQ6.mjs.map → api/transactionSubmission/build.mjs.map} +0 -0
  421. /package/dist/esm/{chunk-UAAI3NCA.mjs.map → chunk-2SAKPC5Q.mjs.map} +0 -0
  422. /package/dist/esm/{chunk-4ADA5BE7.mjs.map → chunk-53DS6NBQ.mjs.map} +0 -0
  423. /package/dist/esm/{chunk-QWVR4RCV.mjs.map → chunk-5OPOJ43H.mjs.map} +0 -0
  424. /package/dist/esm/{chunk-HVADSXTB.mjs.map → chunk-73VWOS4Z.mjs.map} +0 -0
  425. /package/dist/esm/{chunk-U25N2VWA.mjs.map → chunk-AZUWHKN5.mjs.map} +0 -0
  426. /package/dist/esm/{chunk-JZNLZMUC.mjs.map → chunk-CJPCOS4R.mjs.map} +0 -0
  427. /package/dist/esm/{chunk-S36IYY6K.mjs.map → chunk-CL5B2QNS.mjs.map} +0 -0
  428. /package/dist/esm/{chunk-EWTHPMEE.mjs.map → chunk-CU2DINU4.mjs.map} +0 -0
  429. /package/dist/esm/{chunk-44MGBJ73.mjs.map → chunk-FZ56IS3E.mjs.map} +0 -0
  430. /package/dist/esm/{chunk-GEFQFRL3.mjs.map → chunk-HC5VMNXA.mjs.map} +0 -0
  431. /package/dist/esm/{chunk-BPYLPPEQ.mjs.map → chunk-PL2VA73L.mjs.map} +0 -0
  432. /package/dist/esm/{chunk-EFIYW4WK.mjs.map → chunk-PXTMLJKO.mjs.map} +0 -0
  433. /package/dist/esm/{chunk-JDS7K2WI.mjs.map → chunk-QCBIJCU4.mjs.map} +0 -0
  434. /package/dist/esm/{chunk-KQXRH5FK.mjs.map → chunk-QNTV5NMH.mjs.map} +0 -0
  435. /package/dist/esm/{chunk-EQ5BEDJ7.mjs.map → chunk-RCM3K5JL.mjs.map} +0 -0
  436. /package/dist/esm/{chunk-UPLWWSB4.mjs.map → chunk-SSJQOXEP.mjs.map} +0 -0
  437. /package/dist/esm/{chunk-U3LO2FSJ.mjs.map → chunk-WTGGCH34.mjs.map} +0 -0
  438. /package/dist/esm/{chunk-X32O46IB.mjs.map → chunk-XITLXPBK.mjs.map} +0 -0
  439. /package/dist/esm/{chunk-VWVEDCBM.mjs.map → chunk-YN6UIVFB.mjs.map} +0 -0
@@ -1,26 +1,28 @@
1
1
  // Copyright © Aptos Foundation
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { AptosConfig } from "./aptosConfig";
5
4
  import { AccountAddress, PrivateKey, Account as AccountModule, AccountAddressInput } from "../core";
6
5
  import {
7
6
  AccountData,
7
+ AnyNumber,
8
8
  GetAccountCoinsDataResponse,
9
9
  GetAccountCollectionsWithOwnedTokenResponse,
10
10
  GetAccountOwnedObjectsResponse,
11
11
  GetAccountOwnedTokensFromCollectionResponse,
12
12
  GetAccountOwnedTokensQueryResponse,
13
- LedgerVersion,
13
+ LedgerVersionArg,
14
14
  MoveModuleBytecode,
15
15
  MoveResource,
16
16
  MoveStructId,
17
- OrderBy,
17
+ OrderByArg,
18
18
  PaginationArgs,
19
- TokenStandard,
19
+ TokenStandardArg,
20
20
  TransactionResponse,
21
+ WhereArg,
21
22
  } from "../types";
22
23
  import {
23
24
  deriveAccountFromPrivateKey,
25
+ getAccountCoinAmount,
24
26
  getAccountCoinsCount,
25
27
  getAccountCoinsData,
26
28
  getAccountCollectionsWithOwnedTokens,
@@ -37,16 +39,16 @@ import {
37
39
  getTransactions,
38
40
  lookupOriginalAccountAddress,
39
41
  } from "../internal/account";
42
+ import { APTOS_COIN, ProcessorType } from "../utils/const";
43
+ import { AptosConfig } from "./aptosConfig";
44
+ import { waitForIndexerOnVersion } from "./utils";
45
+ import { CurrentFungibleAssetBalancesBoolExp } from "../types/generated/types";
40
46
 
41
47
  /**
42
48
  * A class to query all `Account` related queries on Aptos.
43
49
  */
44
50
  export class Account {
45
- readonly config: AptosConfig;
46
-
47
- constructor(config: AptosConfig) {
48
- this.config = config;
49
- }
51
+ constructor(readonly config: AptosConfig) {}
50
52
 
51
53
  /**
52
54
  * Queries the current state for an Aptos account given its account address
@@ -83,7 +85,7 @@ export class Account {
83
85
 
84
86
  async getAccountModules(args: {
85
87
  accountAddress: AccountAddressInput;
86
- options?: PaginationArgs & LedgerVersion;
88
+ options?: PaginationArgs & LedgerVersionArg;
87
89
  }): Promise<MoveModuleBytecode[]> {
88
90
  return getModules({ aptosConfig: this.config, ...args });
89
91
  }
@@ -108,7 +110,7 @@ export class Account {
108
110
  async getAccountModule(args: {
109
111
  accountAddress: AccountAddressInput;
110
112
  moduleName: string;
111
- options?: LedgerVersion;
113
+ options?: LedgerVersionArg;
112
114
  }): Promise<MoveModuleBytecode> {
113
115
  return getModule({ aptosConfig: this.config, ...args });
114
116
  }
@@ -149,7 +151,7 @@ export class Account {
149
151
  */
150
152
  async getAccountResources(args: {
151
153
  accountAddress: AccountAddressInput;
152
- options?: PaginationArgs & LedgerVersion;
154
+ options?: PaginationArgs & LedgerVersionArg;
153
155
  }): Promise<MoveResource[]> {
154
156
  return getResources({ aptosConfig: this.config, ...args });
155
157
  }
@@ -168,14 +170,14 @@ export class Account {
168
170
  * @example An example of an account resource
169
171
  * ```
170
172
  * {
171
- * data: { value: 6 }
173
+ * value: 6
172
174
  * }
173
175
  * ```
174
176
  */
175
177
  async getAccountResource<T extends {} = any>(args: {
176
178
  accountAddress: AccountAddressInput;
177
179
  resourceType: MoveStructId;
178
- options?: LedgerVersion;
180
+ options?: LedgerVersionArg;
179
181
  }): Promise<T> {
180
182
  return getResource<T>({ aptosConfig: this.config, ...args });
181
183
  }
@@ -186,13 +188,21 @@ export class Account {
186
188
  * This handles both if the account's authentication key has been rotated or not.
187
189
  *
188
190
  * @param args.authenticationKey The authentication key
191
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
189
192
  * @param args.options.ledgerVersion The ledger version to query, if not provided it will get the latest version
190
193
  * @returns Promise<AccountAddress> The accountAddress associated with the authentication key
191
194
  */
192
195
  async lookupOriginalAccountAddress(args: {
193
196
  authenticationKey: AccountAddressInput;
194
- options?: LedgerVersion;
197
+ minimumLedgerVersion?: AnyNumber;
198
+ options?: LedgerVersionArg;
195
199
  }): Promise<AccountAddress> {
200
+ await waitForIndexerOnVersion({
201
+ config: this.config,
202
+ minimumLedgerVersion: args.minimumLedgerVersion,
203
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
204
+ });
205
+
196
206
  return lookupOriginalAccountAddress({ aptosConfig: this.config, ...args });
197
207
  }
198
208
 
@@ -200,9 +210,18 @@ export class Account {
200
210
  * Queries the current count of tokens owned by an account
201
211
  *
202
212
  * @param args.accountAddress The account address
213
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
203
214
  * @returns Current count of tokens owned by the account
204
215
  */
205
- async getAccountTokensCount(args: { accountAddress: AccountAddressInput }): Promise<number> {
216
+ async getAccountTokensCount(args: {
217
+ accountAddress: AccountAddressInput;
218
+ minimumLedgerVersion?: AnyNumber;
219
+ }): Promise<number> {
220
+ await waitForIndexerOnVersion({
221
+ config: this.config,
222
+ minimumLedgerVersion: args.minimumLedgerVersion,
223
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
224
+ });
206
225
  return getAccountTokensCount({
207
226
  aptosConfig: this.config,
208
227
  ...args,
@@ -216,20 +235,23 @@ export class Account {
216
235
  * If you want to get only the token from a specific standard, you can pass an optional tokenStandard param
217
236
  *
218
237
  * @param args.accountAddress The account address we want to get the tokens for
238
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
219
239
  * @param args.options.tokenStandard The NFT standard to query for
220
- * @param args.options.pagination.offset The number token to start returning results from
221
- * @param args.options.pagination.limit The number of results to return
240
+ * @param args.options.offset The number token to start returning results from
241
+ * @param args.options.limit The number of results to return
222
242
  * @param args.options.orderBy The order to sort the tokens by
223
243
  * @returns Tokens array with the token data
224
244
  */
225
245
  async getAccountOwnedTokens(args: {
226
246
  accountAddress: AccountAddressInput;
227
- options?: {
228
- tokenStandard?: TokenStandard;
229
- pagination?: PaginationArgs;
230
- orderBy?: OrderBy<GetAccountOwnedTokensQueryResponse[0]>;
231
- };
247
+ minimumLedgerVersion?: AnyNumber;
248
+ options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountOwnedTokensQueryResponse[0]>;
232
249
  }): Promise<GetAccountOwnedTokensQueryResponse> {
250
+ await waitForIndexerOnVersion({
251
+ config: this.config,
252
+ minimumLedgerVersion: args.minimumLedgerVersion,
253
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
254
+ });
233
255
  return getAccountOwnedTokens({
234
256
  aptosConfig: this.config,
235
257
  ...args,
@@ -244,21 +266,24 @@ export class Account {
244
266
  *
245
267
  * @param args.accountAddress The account address we want to get the tokens for
246
268
  * @param args.collectionAddress The address of the collection being queried
269
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
247
270
  * @param args.options.tokenStandard The NFT standard to query for
248
- * @param args.options.pagination.offset The number token to start returning results from
249
- * @param args.options.pagination.limit The number of results to return
271
+ * @param args.options.offset The number token to start returning results from
272
+ * @param args.options.limit The number of results to return
250
273
  * @param args.options.orderBy The order to sort the tokens by
251
274
  * @returns Tokens array with the token data
252
275
  */
253
276
  async getAccountOwnedTokensFromCollectionAddress(args: {
254
277
  accountAddress: AccountAddressInput;
255
278
  collectionAddress: AccountAddressInput;
256
- options?: {
257
- tokenStandard?: TokenStandard;
258
- pagination?: PaginationArgs;
259
- orderBy?: OrderBy<GetAccountOwnedTokensFromCollectionResponse[0]>;
260
- };
279
+ minimumLedgerVersion?: AnyNumber;
280
+ options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountOwnedTokensFromCollectionResponse[0]>;
261
281
  }): Promise<GetAccountOwnedTokensFromCollectionResponse> {
282
+ await waitForIndexerOnVersion({
283
+ config: this.config,
284
+ minimumLedgerVersion: args.minimumLedgerVersion,
285
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
286
+ });
262
287
  return getAccountOwnedTokensFromCollectionAddress({
263
288
  aptosConfig: this.config,
264
289
  ...args,
@@ -272,20 +297,23 @@ export class Account {
272
297
  * If you want to get only the token from a specific standard, you can pass an optional tokenStandard param
273
298
  *
274
299
  * @param args.accountAddress The account address we want to get the collections for
300
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
275
301
  * @param args.options.tokenStandard The NFT standard to query for
276
- * @param args.options.pagination.offset The number collection to start returning results from
277
- * @param args.options.pagination.limit The number of results to return
302
+ * @param args.options.offset The number collection to start returning results from
303
+ * @param args.options.limit The number of results to return
278
304
  * @param args.options.orderBy The order to sort the tokens by
279
305
  * @returns Collections array with the collections data
280
306
  */
281
307
  async getAccountCollectionsWithOwnedTokens(args: {
282
308
  accountAddress: AccountAddressInput;
283
- options?: {
284
- tokenStandard?: TokenStandard;
285
- pagination?: PaginationArgs;
286
- orderBy?: OrderBy<GetAccountCollectionsWithOwnedTokenResponse[0]>;
287
- };
309
+ minimumLedgerVersion?: AnyNumber;
310
+ options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountCollectionsWithOwnedTokenResponse[0]>;
288
311
  }): Promise<GetAccountCollectionsWithOwnedTokenResponse> {
312
+ await waitForIndexerOnVersion({
313
+ config: this.config,
314
+ minimumLedgerVersion: args.minimumLedgerVersion,
315
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
316
+ });
289
317
  return getAccountCollectionsWithOwnedTokens({
290
318
  aptosConfig: this.config,
291
319
  ...args,
@@ -296,9 +324,18 @@ export class Account {
296
324
  * Queries the current count of transactions submitted by an account
297
325
  *
298
326
  * @param args.accountAddress The account address we want to get the total count for
327
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
299
328
  * @returns Current count of transactions made by an account
300
329
  */
301
- async getAccountTransactionsCount(args: { accountAddress: AccountAddressInput }): Promise<number> {
330
+ async getAccountTransactionsCount(args: {
331
+ accountAddress: AccountAddressInput;
332
+ minimumLedgerVersion?: AnyNumber;
333
+ }): Promise<number> {
334
+ await waitForIndexerOnVersion({
335
+ config: this.config,
336
+ minimumLedgerVersion: args.minimumLedgerVersion,
337
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
338
+ });
302
339
  return getAccountTransactionsCount({
303
340
  aptosConfig: this.config,
304
341
  ...args,
@@ -309,18 +346,25 @@ export class Account {
309
346
  * Queries an account's coins data
310
347
  *
311
348
  * @param args.accountAddress The account address we want to get the coins data for
312
- * @param args.options.pagination.offset The number coin to start returning results from
313
- * @param args.options.pagination.limit The number of results to return
314
- * @param args.options.orderBy The order to sort the coins by
349
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
350
+ * @param args.options.offset optional. The number coin to start returning results from
351
+ * @param args.options.limit optional. The number of results to return
352
+ * @param args.options.orderBy optional. The order to sort the coins by
353
+ * @param args.options.where optional. Filter the results by
315
354
  * @returns Array with the coins data
316
355
  */
317
356
  async getAccountCoinsData(args: {
318
357
  accountAddress: AccountAddressInput;
319
- options?: {
320
- pagination?: PaginationArgs;
321
- orderBy?: OrderBy<GetAccountCoinsDataResponse[0]>;
322
- };
358
+ minimumLedgerVersion?: AnyNumber;
359
+ options?: PaginationArgs &
360
+ OrderByArg<GetAccountCoinsDataResponse[0]> &
361
+ WhereArg<CurrentFungibleAssetBalancesBoolExp>;
323
362
  }): Promise<GetAccountCoinsDataResponse> {
363
+ await waitForIndexerOnVersion({
364
+ config: this.config,
365
+ minimumLedgerVersion: args.minimumLedgerVersion,
366
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
367
+ });
324
368
  return getAccountCoinsData({
325
369
  aptosConfig: this.config,
326
370
  ...args,
@@ -331,28 +375,81 @@ export class Account {
331
375
  * Queries the current count of an account's coins aggregated
332
376
  *
333
377
  * @param args.accountAddress The account address we want to get the total count for
378
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
334
379
  * @returns Current count of the aggregated count of all account's coins
335
380
  */
336
- async getAccountCoinsCount(args: { accountAddress: AccountAddressInput }): Promise<number> {
381
+ async getAccountCoinsCount(args: {
382
+ accountAddress: AccountAddressInput;
383
+ minimumLedgerVersion?: AnyNumber;
384
+ }): Promise<number> {
385
+ await waitForIndexerOnVersion({
386
+ config: this.config,
387
+ minimumLedgerVersion: args.minimumLedgerVersion,
388
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
389
+ });
337
390
  return getAccountCoinsCount({ aptosConfig: this.config, ...args });
338
391
  }
339
392
 
393
+ /**
394
+ * Queries the account's APT amount
395
+ *
396
+ * @param args.accountAddress The account address we want to get the total count for
397
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
398
+ * @returns Current amount of account's APT
399
+ */
400
+ async getAccountAPTAmount(args: {
401
+ accountAddress: AccountAddressInput;
402
+ minimumLedgerVersion?: AnyNumber;
403
+ }): Promise<number> {
404
+ await waitForIndexerOnVersion({
405
+ config: this.config,
406
+ minimumLedgerVersion: args.minimumLedgerVersion,
407
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
408
+ });
409
+ return getAccountCoinAmount({ aptosConfig: this.config, coinType: APTOS_COIN, ...args });
410
+ }
411
+
412
+ /**
413
+ * Queries the account's coin amount by the coin type
414
+ *
415
+ * @param args.accountAddress The account address we want to get the total count for
416
+ * @param args.coinType The coin type to query
417
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
418
+ * @returns Current amount of account's coin
419
+ */
420
+ async getAccountCoinAmount(args: {
421
+ accountAddress: AccountAddressInput;
422
+ coinType: MoveStructId;
423
+ minimumLedgerVersion?: AnyNumber;
424
+ }): Promise<number> {
425
+ await waitForIndexerOnVersion({
426
+ config: this.config,
427
+ minimumLedgerVersion: args.minimumLedgerVersion,
428
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
429
+ });
430
+ return getAccountCoinAmount({ aptosConfig: this.config, ...args });
431
+ }
432
+
340
433
  /**
341
434
  * Queries an account's owned objects
342
435
  *
343
436
  * @param args.accountAddress The account address we want to get the objects for
344
- * @param args.options.pagination.offset The number coin to start returning results from
345
- * @param args.options.pagination.limit The number of results to return
346
- * @param args.options.orderBy The order to sort the coins by
437
+ * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying
438
+ * @param args.options.offset The starting position to start returning results from
439
+ * @param args.options.limit The number of results to return
440
+ * @param args.options.orderBy The order to sort the objects by
347
441
  * @returns Objects array with the object data
348
442
  */
349
443
  async getAccountOwnedObjects(args: {
350
444
  accountAddress: AccountAddressInput;
351
- options?: {
352
- pagination?: PaginationArgs;
353
- orderBy?: OrderBy<GetAccountOwnedObjectsResponse[0]>;
354
- };
445
+ minimumLedgerVersion?: AnyNumber;
446
+ options?: PaginationArgs & OrderByArg<GetAccountOwnedObjectsResponse[0]>;
355
447
  }): Promise<GetAccountOwnedObjectsResponse> {
448
+ await waitForIndexerOnVersion({
449
+ config: this.config,
450
+ minimumLedgerVersion: args.minimumLedgerVersion,
451
+ processorTypes: [ProcessorType.ACCOUNT_TRANSACTION_PROCESSOR],
452
+ });
356
453
  return getAccountOwnedObjects({
357
454
  aptosConfig: this.config,
358
455
  ...args,
package/src/api/ans.ts CHANGED
@@ -1,27 +1,44 @@
1
1
  // Copyright © Aptos Foundation
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { RegisterNameParameters, getOwnerAddress, registerName } from "../internal/ans";
5
- import { InputSingleSignerTransaction } from "../transactions/types";
6
- import { MoveAddressType } from "../types";
4
+ import { Account, AccountAddressInput } from "../core";
5
+ import {
6
+ RegisterNameParameters,
7
+ getExpiration,
8
+ getOwnerAddress,
9
+ registerName,
10
+ getPrimaryName,
11
+ setPrimaryName,
12
+ getTargetAddress,
13
+ setTargetAddress,
14
+ renewDomain,
15
+ getName,
16
+ getAccountDomains,
17
+ GetAccountDomainsArgs,
18
+ GetAccountSubdomainsArgs,
19
+ getAccountSubdomains,
20
+ getAccountNames,
21
+ GetAccountNamesArgs,
22
+ getDomainSubdomains,
23
+ GetDomainSubdomainsArgs,
24
+ } from "../internal/ans";
25
+ import { GetANSNameResponse, MoveAddressType } from "../types";
26
+ import { InputGenerateTransactionOptions, SingleSignerTransaction } from "../transactions/types";
7
27
  import { AptosConfig } from "./aptosConfig";
8
28
 
9
29
  /**
10
30
  * A class to handle all `ANS` operations
11
31
  */
12
32
  export class ANS {
13
- readonly config: AptosConfig;
14
-
15
- constructor(config: AptosConfig) {
16
- this.config = config;
17
- }
33
+ constructor(readonly config: AptosConfig) {}
18
34
 
19
35
  /**
20
- * Retrieve the owner address of a domain name or subdomain name.
36
+ * Retrieve the owner address of a domain name or subdomain name from the contract.
21
37
  *
22
38
  * ```ts
23
- * getOwnerAddress({name: "test.aptos"})
24
39
  * // Will return the owner address of "test.aptos.apt" or undefined
40
+ * const owner = await aptos.getOwnerAddress({name: "test.aptos"})
41
+ * // owner = 0x123...
25
42
  * ```
26
43
  *
27
44
  * @param args.name - A string of the name to retrieve
@@ -33,26 +50,245 @@ export class ANS {
33
50
  }
34
51
 
35
52
  /**
36
- * Registers a new domain or subdomain name
53
+ * Retrieve the expiration time of a domain name or subdomain name from the contract.
54
+ *
55
+ * ```ts
56
+ * // Will return the expiration of "test.aptos.apt" or undefined
57
+ * const exp = await aptos.getExpiration({name: "test.aptos"})
58
+ * // new Date(exp) would give you the date in question: 2021-01-01T00:00:00.000Z
59
+ * ```
60
+ *
61
+ * @param args.name - A string of the name to retrieve
62
+ *
63
+ * @returns number as a unix timestamp in milliseconds.
64
+ */
65
+ async getExpiration(args: { name: string }): Promise<number | undefined> {
66
+ return getExpiration({ aptosConfig: this.config, ...args });
67
+ }
68
+
69
+ /**
70
+ * Retrieve the target address of a domain or subdomain name. This is the
71
+ * address the name points to for use on chain. Note, the target address can
72
+ * point to addresses that are not the owner of the name
73
+ *
74
+ * ```ts
75
+ * const targetAddr = await aptos.getTargetAddress({name: "test.aptos"})
76
+ * // targetAddr = 0x123...
77
+ * ```
78
+ *
79
+ * @param args.name - A string of the name: primary, primary.apt, secondary.primary, secondary.primary.apt, etc.
80
+ *
81
+ * @returns MoveAddressType if the name has a target, undefined otherwise
82
+ */
83
+ async getTargetAddress(args: { name: string }): Promise<MoveAddressType | undefined> {
84
+ return getTargetAddress({ aptosConfig: this.config, ...args });
85
+ }
86
+
87
+ /**
88
+ * Sets the target address of a domain or subdomain name. This is the
89
+ * address the name points to for use on chain. Note, the target address can
90
+ * point to addresses that are not the owner of the name
91
+ *
92
+ * ```ts
93
+ * await aptos.setTargetAddress({sender: alice, name: "test.aptos", address: bob.accountAddress})
94
+ * const address = await aptos.getTargetAddress({name: "test.aptos"})
95
+ * // address = bob.accountAddress
96
+ * ```
97
+ *
98
+ * @param args.name - A string of the name: test.aptos.apt, test.apt, test, test.aptos, etc.
99
+ * @param args.address - A AccountAddressInput of the address to set the domain or subdomain to
100
+ *
101
+ * @returns SingleSignerTransaction
102
+ */
103
+ async setTargetAddress(args: {
104
+ sender: Account;
105
+ name: string;
106
+ address: AccountAddressInput;
107
+ options?: InputGenerateTransactionOptions;
108
+ }): Promise<SingleSignerTransaction> {
109
+ return setTargetAddress({ aptosConfig: this.config, ...args });
110
+ }
111
+
112
+ /**
113
+ * Retrieve the primary name for an account. An account can have
114
+ * multiple names that target it, but only a single name that is primary. An
115
+ * account also may not have a primary name.
116
+ *
117
+ * ```ts
118
+ * const name = await aptos.getPrimaryName({address: alice.accountAddress})
119
+ * // name = test.aptos
120
+ * ```
121
+ *
122
+ * @param args.address - A AccountAddressInput (address) of the account
123
+ *
124
+ * @returns a string if the account has a primary name, undefined otherwise
125
+ */
126
+ async getPrimaryName(args: { address: AccountAddressInput }): Promise<string | undefined> {
127
+ return getPrimaryName({ aptosConfig: this.config, ...args });
128
+ }
129
+
130
+ /**
131
+ * Sets the primary name for the sender. An account can have
132
+ * multiple names that target it, but only a single name that is primary. An
133
+ * account also may not have a primary name.
134
+ *
135
+ * ```ts
136
+ * await aptos.setPrimaryName({sender: alice, name: "test.aptos"})
137
+ * const primaryName = await aptos.getPrimaryName({address: alice.accountAddress})
138
+ * // primaryName = test.aptos
139
+ * ```
140
+ *
141
+ * @param args.sender - The sender account
142
+ * @param args.name - A string of the name: test, test.apt, test.aptos, test.aptos.apt, etc.
143
+ *
144
+ * @returns SingleSignerTransaction
145
+ */
146
+ async setPrimaryName(args: {
147
+ sender: Account;
148
+ name?: string;
149
+ options?: InputGenerateTransactionOptions;
150
+ }): Promise<SingleSignerTransaction> {
151
+ return setPrimaryName({ aptosConfig: this.config, ...args });
152
+ }
153
+
154
+ /**
155
+ * Registers a new name
156
+ *
157
+ * ```ts
158
+ * // An example of registering a subdomain name assuming def.apt is already registered
159
+ * // and belongs to the sender alice.
160
+ * const txn = aptos.registerName({
161
+ * sender: alice,
162
+ * name: "test.aptos.apt",
163
+ * expiration: {
164
+ * policy: "subdomain:independent",
165
+ * expirationDate: Date.now() + 30 * 24 * 60 * 60 * 1000,
166
+ * },
167
+ * });
168
+ * ```
37
169
  *
38
170
  * @param args.sender - The sender account
39
- * @param args.name - A string or {domainName: string, subdomainName?: string} of the name to register. This
40
- * can be inclusive or exclusive of the .apt suffix.
41
- * Examples include: "xyz", "xyz.apt", "xyz.kyc.apt", {domainName: "xyz"}, {domainName: "kyc", subdomainName: "xyz"}.
171
+ * @param args.name - A string of the name to register. This can be inclusive or exclusive of the .apt suffix.
172
+ * Examples include: "test", "test.apt", "test.aptos.apt", etc.
42
173
  * @param args.expiration - An object with the expiration policy of the name.
43
174
  * @param args.expiration.policy - 'domain' | 'subdomain:follow-domain' | 'subdomain:independent'
44
175
  * - domain: Years is required and the name will expire after the given number of years.
45
176
  * - subdomain:follow-domain: The name will expire at the same time as the domain name.
46
177
  * - subdomain:independent: The name will expire at the given date.
178
+ * @param args.expiration.expirationDate - An epoch number in milliseconds of
179
+ * the date when the subdomain will expire. Only applicable when the policy is
180
+ * set to 'subdomain:independent'.
47
181
  * @param args.transferable - Determines if the subdomain being minted is soul-bound. Applicable only to subdomains.
48
182
  * @param args.targetAddress optional - The address the domain name will resolve to. If not provided,
49
183
  * the sender's address will be used.
50
184
  * @param args.toAddress optional - The address to send the domain name to. If not provided,
51
185
  * the transaction will be sent to the router.
52
186
  *
53
- * @returns InputSingleSignerTransaction
187
+ * @returns SingleSignerTransaction
54
188
  */
55
- async registerName(args: Omit<RegisterNameParameters, "aptosConfig">): Promise<InputSingleSignerTransaction> {
189
+ async registerName(args: Omit<RegisterNameParameters, "aptosConfig">): Promise<SingleSignerTransaction> {
56
190
  return registerName({ aptosConfig: this.config, ...args });
57
191
  }
192
+
193
+ /**
194
+ * Renews a domain name
195
+ *
196
+ * Note: If a domain name was minted with V1 of the contract, it will automatically be upgraded to V2 via this transaction.
197
+ *
198
+ * ```ts
199
+ * await aptos.renewDomain({sender: alice, name: "test"})
200
+ * // test.apt will be renewed for one year
201
+ * ```
202
+ *
203
+ * @param args.sender - The sender account
204
+ * @param args.name - A string of the domain the subdomain will be under. The signer must be the domain owner.
205
+ * Subdomains cannot be renewed.
206
+ * @param args.years - The number of years to renew the name. Currently only one year is permitted.
207
+ *
208
+ * @returns SingleSignerTransaction
209
+ */
210
+ async renewDomain(args: {
211
+ sender: Account;
212
+ name: string;
213
+ years?: 1;
214
+ options?: InputGenerateTransactionOptions;
215
+ }): Promise<SingleSignerTransaction> {
216
+ return renewDomain({ aptosConfig: this.config, ...args });
217
+ }
218
+
219
+ /**
220
+ * Fetches a single name from the indexer
221
+ * @param args.name - A string of the name to retrieve, e.g. "test.aptos.apt"
222
+ * or "test.apt" or "test". Can be inclusive or exclusive of the .apt suffix.
223
+ * Can be a subdomain.
224
+ *
225
+ * @returns A promise of an ANSName or undefined
226
+ */
227
+ async getName(args: { name: string }): Promise<GetANSNameResponse[0] | undefined> {
228
+ return getName({ aptosConfig: this.config, ...args });
229
+ }
230
+
231
+ /**
232
+ * Fetches all names for an account (both top level domains and subdomains)
233
+ *
234
+ * @param args
235
+ * @param args.accountAddress - A AccountAddressInput of the address to retrieve names for.
236
+ * @param args.options.offset - Optional, the offset to start from when fetching names
237
+ * @param args.options.limit - Optional, A number of the names to fetch per request
238
+ * @param args.options.orderBy - The order to sort the names by
239
+ * @param args.options.where - Additional filters to apply to the query
240
+ *
241
+ * @returns a promise of an array of ANSName
242
+ */
243
+ async getAccountNames(args: GetAccountNamesArgs): Promise<GetANSNameResponse> {
244
+ return getAccountNames({ aptosConfig: this.config, ...args });
245
+ }
246
+
247
+ /**
248
+ * Fetches all top level domain names for an account
249
+ *
250
+ * @param args
251
+ * @param args.accountAddress - A AccountAddressInput of the address to retrieve domain names for.
252
+ * @param args.options.offset - Optional, the offset to start from when fetching names
253
+ * @param args.options.limit - Optional, A number of the names to fetch per request
254
+ * @param args.options.orderBy - The order to sort the names by
255
+ * @param args.options.where - Additional filters to apply to the query
256
+ *
257
+ * @returns a promise of an array of ANSName
258
+ */
259
+ async getAccountDomains(args: GetAccountDomainsArgs): Promise<GetANSNameResponse> {
260
+ return getAccountDomains({ aptosConfig: this.config, ...args });
261
+ }
262
+
263
+ /**
264
+ * Fetches all subdomains names for an account
265
+ *
266
+ * @param args
267
+ * @param args.accountAddress - A AccountAddressInput of the address to retrieve subdomains names for.
268
+ * @param args.options.offset - Optional, the offset to start from when fetching names
269
+ * @param args.options.limit - Optional, A number of the names to fetch per request
270
+ * @param args.options.orderBy - The order to sort the names by
271
+ * @param args.options.where - Additional filters to apply to the query
272
+ *
273
+ * @returns a promise of an array of ANSName
274
+ */
275
+ async getAccountSubdomains(args: GetAccountSubdomainsArgs): Promise<GetANSNameResponse> {
276
+ return getAccountSubdomains({ aptosConfig: this.config, ...args });
277
+ }
278
+
279
+ /**
280
+ * Fetches all subdomains names for a given domain. Note, this will not return the domain itself.
281
+ *
282
+ * @param args
283
+ * @param args.domain - A string of the domain name: eg. "test.apt" or "test" (without the suffix of .apt)
284
+ * @param args.options.offset - Optional, the offset to start from when fetching names
285
+ * @param args.options.limit - Optional, A number of the names to fetch per request
286
+ * @param args.options.orderBy - The order to sort the names by
287
+ * @param args.options.where - Additional filters to apply to the query
288
+ *
289
+ * @returns a promise of an array of ANSName
290
+ */
291
+ async getDomainSubdomains(args: GetDomainSubdomainsArgs): Promise<GetANSNameResponse> {
292
+ return getDomainSubdomains({ aptosConfig: this.config, ...args });
293
+ }
58
294
  }