@mysten/sui 0.0.0-experimental-20240529040124

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 (609) hide show
  1. package/CHANGELOG.md +905 -0
  2. package/LICENSE +201 -0
  3. package/README.md +520 -0
  4. package/bcs/package.json +6 -0
  5. package/client/package.json +6 -0
  6. package/cryptography/package.json +6 -0
  7. package/dist/cjs/bcs/bcs.d.ts +2283 -0
  8. package/dist/cjs/bcs/bcs.js +306 -0
  9. package/dist/cjs/bcs/bcs.js.map +7 -0
  10. package/dist/cjs/bcs/effects.d.ts +793 -0
  11. package/dist/cjs/bcs/effects.js +203 -0
  12. package/dist/cjs/bcs/effects.js.map +7 -0
  13. package/dist/cjs/bcs/index.d.ts +3081 -0
  14. package/dist/cjs/bcs/index.js +73 -0
  15. package/dist/cjs/bcs/index.js.map +7 -0
  16. package/dist/cjs/bcs/type-tag-serializer.d.ts +6 -0
  17. package/dist/cjs/bcs/type-tag-serializer.js +113 -0
  18. package/dist/cjs/bcs/type-tag-serializer.js.map +7 -0
  19. package/dist/cjs/bcs/types.d.ts +114 -0
  20. package/dist/cjs/bcs/types.js +27 -0
  21. package/dist/cjs/bcs/types.js.map +7 -0
  22. package/dist/cjs/client/client.d.ts +229 -0
  23. package/dist/cjs/client/client.js +582 -0
  24. package/dist/cjs/client/client.js.map +7 -0
  25. package/dist/cjs/client/errors.d.ts +12 -0
  26. package/dist/cjs/client/errors.js +60 -0
  27. package/dist/cjs/client/errors.js.map +7 -0
  28. package/dist/cjs/client/http-transport.d.ts +40 -0
  29. package/dist/cjs/client/http-transport.js +125 -0
  30. package/dist/cjs/client/http-transport.js.map +7 -0
  31. package/dist/cjs/client/index.d.ts +5 -0
  32. package/dist/cjs/client/index.js +36 -0
  33. package/dist/cjs/client/index.js.map +7 -0
  34. package/dist/cjs/client/network.d.ts +1 -0
  35. package/dist/cjs/client/network.js +38 -0
  36. package/dist/cjs/client/network.js.map +7 -0
  37. package/dist/cjs/client/rpc-websocket-client.d.ts +49 -0
  38. package/dist/cjs/client/rpc-websocket-client.js +206 -0
  39. package/dist/cjs/client/rpc-websocket-client.js.map +7 -0
  40. package/dist/cjs/client/types/chain.d.ts +99 -0
  41. package/dist/cjs/client/types/chain.js +17 -0
  42. package/dist/cjs/client/types/chain.js.map +7 -0
  43. package/dist/cjs/client/types/changes.d.ts +19 -0
  44. package/dist/cjs/client/types/changes.js +17 -0
  45. package/dist/cjs/client/types/changes.js.map +7 -0
  46. package/dist/cjs/client/types/coins.d.ts +6 -0
  47. package/dist/cjs/client/types/coins.js +17 -0
  48. package/dist/cjs/client/types/coins.js.map +7 -0
  49. package/dist/cjs/client/types/common.d.ts +2 -0
  50. package/dist/cjs/client/types/common.js +17 -0
  51. package/dist/cjs/client/types/common.js.map +7 -0
  52. package/dist/cjs/client/types/generated.d.ts +1376 -0
  53. package/dist/cjs/client/types/generated.js +17 -0
  54. package/dist/cjs/client/types/generated.js.map +7 -0
  55. package/dist/cjs/client/types/index.d.ts +6 -0
  56. package/dist/cjs/client/types/index.js +24 -0
  57. package/dist/cjs/client/types/index.js.map +7 -0
  58. package/dist/cjs/client/types/params.d.ts +585 -0
  59. package/dist/cjs/client/types/params.js +17 -0
  60. package/dist/cjs/client/types/params.js.map +7 -0
  61. package/dist/cjs/cryptography/index.d.ts +7 -0
  62. package/dist/cjs/cryptography/index.js +47 -0
  63. package/dist/cjs/cryptography/index.js.map +7 -0
  64. package/dist/cjs/cryptography/intent.d.ts +6 -0
  65. package/dist/cjs/cryptography/intent.js +35 -0
  66. package/dist/cjs/cryptography/intent.js.map +7 -0
  67. package/dist/cjs/cryptography/keypair.d.ts +63 -0
  68. package/dist/cjs/cryptography/keypair.js +105 -0
  69. package/dist/cjs/cryptography/keypair.js.map +7 -0
  70. package/dist/cjs/cryptography/mnemonics.d.ts +27 -0
  71. package/dist/cjs/cryptography/mnemonics.js +47 -0
  72. package/dist/cjs/cryptography/mnemonics.js.map +7 -0
  73. package/dist/cjs/cryptography/publickey.d.ts +56 -0
  74. package/dist/cjs/cryptography/publickey.js +112 -0
  75. package/dist/cjs/cryptography/publickey.js.map +7 -0
  76. package/dist/cjs/cryptography/signature-scheme.d.ts +21 -0
  77. package/dist/cjs/cryptography/signature-scheme.js +45 -0
  78. package/dist/cjs/cryptography/signature-scheme.js.map +7 -0
  79. package/dist/cjs/cryptography/signature.d.ts +60 -0
  80. package/dist/cjs/cryptography/signature.js +75 -0
  81. package/dist/cjs/cryptography/signature.js.map +7 -0
  82. package/dist/cjs/faucet/faucet.d.ts +42 -0
  83. package/dist/cjs/faucet/faucet.js +103 -0
  84. package/dist/cjs/faucet/faucet.js.map +7 -0
  85. package/dist/cjs/faucet/index.d.ts +1 -0
  86. package/dist/cjs/faucet/index.js +29 -0
  87. package/dist/cjs/faucet/index.js.map +7 -0
  88. package/dist/cjs/graphql/client.d.ts +42 -0
  89. package/dist/cjs/graphql/client.js +93 -0
  90. package/dist/cjs/graphql/client.js.map +7 -0
  91. package/dist/cjs/graphql/generated/2024-01/tada-env.d.js +17 -0
  92. package/dist/cjs/graphql/generated/2024-01/tada-env.d.js.map +7 -0
  93. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js +17 -0
  94. package/dist/cjs/graphql/generated/2024.1/tada-env.d.js.map +7 -0
  95. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js +12 -0
  96. package/dist/cjs/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
  97. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js +17 -0
  98. package/dist/cjs/graphql/generated/2024.4/tada-env.d.js.map +7 -0
  99. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js +12 -0
  100. package/dist/cjs/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
  101. package/dist/cjs/graphql/index.d.ts +1 -0
  102. package/dist/cjs/graphql/index.js +26 -0
  103. package/dist/cjs/graphql/index.js.map +7 -0
  104. package/dist/cjs/graphql/schemas/2024.1/index.d.ts +8971 -0
  105. package/dist/cjs/graphql/schemas/2024.1/index.js +31 -0
  106. package/dist/cjs/graphql/schemas/2024.1/index.js.map +7 -0
  107. package/dist/cjs/graphql/schemas/2024.4/index.d.ts +8995 -0
  108. package/dist/cjs/graphql/schemas/2024.4/index.js +31 -0
  109. package/dist/cjs/graphql/schemas/2024.4/index.js.map +7 -0
  110. package/dist/cjs/graphql/types.d.ts +70 -0
  111. package/dist/cjs/graphql/types.js +17 -0
  112. package/dist/cjs/graphql/types.js.map +7 -0
  113. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.d.ts +13 -0
  114. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js +101 -0
  115. package/dist/cjs/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
  116. package/dist/cjs/keypairs/ed25519/index.d.ts +2 -0
  117. package/dist/cjs/keypairs/ed25519/index.js +28 -0
  118. package/dist/cjs/keypairs/ed25519/index.js.map +7 -0
  119. package/dist/cjs/keypairs/ed25519/keypair.d.ts +74 -0
  120. package/dist/cjs/keypairs/ed25519/keypair.js +151 -0
  121. package/dist/cjs/keypairs/ed25519/keypair.js.map +7 -0
  122. package/dist/cjs/keypairs/ed25519/publickey.d.ts +30 -0
  123. package/dist/cjs/keypairs/ed25519/publickey.js +99 -0
  124. package/dist/cjs/keypairs/ed25519/publickey.js.map +7 -0
  125. package/dist/cjs/keypairs/secp256k1/index.d.ts +2 -0
  126. package/dist/cjs/keypairs/secp256k1/index.js +28 -0
  127. package/dist/cjs/keypairs/secp256k1/index.js.map +7 -0
  128. package/dist/cjs/keypairs/secp256k1/keypair.d.ts +73 -0
  129. package/dist/cjs/keypairs/secp256k1/keypair.js +143 -0
  130. package/dist/cjs/keypairs/secp256k1/keypair.js.map +7 -0
  131. package/dist/cjs/keypairs/secp256k1/publickey.d.ts +30 -0
  132. package/dist/cjs/keypairs/secp256k1/publickey.js +94 -0
  133. package/dist/cjs/keypairs/secp256k1/publickey.js.map +7 -0
  134. package/dist/cjs/keypairs/secp256r1/index.d.ts +2 -0
  135. package/dist/cjs/keypairs/secp256r1/index.js +28 -0
  136. package/dist/cjs/keypairs/secp256r1/index.js.map +7 -0
  137. package/dist/cjs/keypairs/secp256r1/keypair.d.ts +73 -0
  138. package/dist/cjs/keypairs/secp256r1/keypair.js +137 -0
  139. package/dist/cjs/keypairs/secp256r1/keypair.js.map +7 -0
  140. package/dist/cjs/keypairs/secp256r1/publickey.d.ts +30 -0
  141. package/dist/cjs/keypairs/secp256r1/publickey.js +94 -0
  142. package/dist/cjs/keypairs/secp256r1/publickey.js.map +7 -0
  143. package/dist/cjs/multisig/index.d.ts +2 -0
  144. package/dist/cjs/multisig/index.js +28 -0
  145. package/dist/cjs/multisig/index.js.map +7 -0
  146. package/dist/cjs/multisig/publickey.d.ts +110 -0
  147. package/dist/cjs/multisig/publickey.js +260 -0
  148. package/dist/cjs/multisig/publickey.js.map +7 -0
  149. package/dist/cjs/multisig/signer.d.ts +19 -0
  150. package/dist/cjs/multisig/signer.js +115 -0
  151. package/dist/cjs/multisig/signer.js.map +7 -0
  152. package/dist/cjs/package.json +5 -0
  153. package/dist/cjs/transactions/Commands.d.ts +110 -0
  154. package/dist/cjs/transactions/Commands.js +140 -0
  155. package/dist/cjs/transactions/Commands.js.map +7 -0
  156. package/dist/cjs/transactions/Inputs.d.ts +22 -0
  157. package/dist/cjs/transactions/Inputs.js +80 -0
  158. package/dist/cjs/transactions/Inputs.js.map +7 -0
  159. package/dist/cjs/transactions/ObjectCache.d.ts +85 -0
  160. package/dist/cjs/transactions/ObjectCache.js +246 -0
  161. package/dist/cjs/transactions/ObjectCache.js.map +7 -0
  162. package/dist/cjs/transactions/Transaction.d.ts +672 -0
  163. package/dist/cjs/transactions/Transaction.js +459 -0
  164. package/dist/cjs/transactions/Transaction.js.map +7 -0
  165. package/dist/cjs/transactions/TransactionData.d.ts +64 -0
  166. package/dist/cjs/transactions/TransactionData.js +249 -0
  167. package/dist/cjs/transactions/TransactionData.js.map +7 -0
  168. package/dist/cjs/transactions/__tests__/Transaction.test.d.ts +1 -0
  169. package/dist/cjs/transactions/__tests__/bcs.test.d.ts +1 -0
  170. package/dist/cjs/transactions/data/internal.d.ts +2689 -0
  171. package/dist/cjs/transactions/data/internal.js +210 -0
  172. package/dist/cjs/transactions/data/internal.js.map +7 -0
  173. package/dist/cjs/transactions/data/v1.d.ts +1839 -0
  174. package/dist/cjs/transactions/data/v1.js +440 -0
  175. package/dist/cjs/transactions/data/v1.js.map +7 -0
  176. package/dist/cjs/transactions/data/v2.d.ts +450 -0
  177. package/dist/cjs/transactions/data/v2.js +123 -0
  178. package/dist/cjs/transactions/data/v2.js.map +7 -0
  179. package/dist/cjs/transactions/executor/caching.d.ts +29 -0
  180. package/dist/cjs/transactions/executor/caching.js +109 -0
  181. package/dist/cjs/transactions/executor/caching.js.map +7 -0
  182. package/dist/cjs/transactions/executor/parallel.d.ts +22 -0
  183. package/dist/cjs/transactions/executor/parallel.js +316 -0
  184. package/dist/cjs/transactions/executor/parallel.js.map +7 -0
  185. package/dist/cjs/transactions/executor/queue.d.ts +11 -0
  186. package/dist/cjs/transactions/executor/queue.js +92 -0
  187. package/dist/cjs/transactions/executor/queue.js.map +7 -0
  188. package/dist/cjs/transactions/executor/serial.d.ts +27 -0
  189. package/dist/cjs/transactions/executor/serial.js +140 -0
  190. package/dist/cjs/transactions/executor/serial.js.map +7 -0
  191. package/dist/cjs/transactions/hash.d.ts +7 -0
  192. package/dist/cjs/transactions/hash.js +32 -0
  193. package/dist/cjs/transactions/hash.js.map +7 -0
  194. package/dist/cjs/transactions/index.d.ts +13 -0
  195. package/dist/cjs/transactions/index.js +47 -0
  196. package/dist/cjs/transactions/index.js.map +7 -0
  197. package/dist/cjs/transactions/intents/CoinWithBalance.d.ts +6 -0
  198. package/dist/cjs/transactions/intents/CoinWithBalance.js +168 -0
  199. package/dist/cjs/transactions/intents/CoinWithBalance.js.map +7 -0
  200. package/dist/cjs/transactions/json-rpc-resolver.d.ts +12 -0
  201. package/dist/cjs/transactions/json-rpc-resolver.js +353 -0
  202. package/dist/cjs/transactions/json-rpc-resolver.js.map +7 -0
  203. package/dist/cjs/transactions/pure.d.ts +185 -0
  204. package/dist/cjs/transactions/pure.js +41 -0
  205. package/dist/cjs/transactions/pure.js.map +7 -0
  206. package/dist/cjs/transactions/serializer.d.ts +7 -0
  207. package/dist/cjs/transactions/serializer.js +176 -0
  208. package/dist/cjs/transactions/serializer.js.map +7 -0
  209. package/dist/cjs/transactions/utils.d.ts +8 -0
  210. package/dist/cjs/transactions/utils.js +66 -0
  211. package/dist/cjs/transactions/utils.js.map +7 -0
  212. package/dist/cjs/utils/constants.d.ts +9 -0
  213. package/dist/cjs/utils/constants.js +42 -0
  214. package/dist/cjs/utils/constants.js.map +7 -0
  215. package/dist/cjs/utils/format.d.ts +2 -0
  216. package/dist/cjs/utils/format.js +36 -0
  217. package/dist/cjs/utils/format.js.map +7 -0
  218. package/dist/cjs/utils/index.d.ts +5 -0
  219. package/dist/cjs/utils/index.js +53 -0
  220. package/dist/cjs/utils/index.js.map +7 -0
  221. package/dist/cjs/utils/sui-types.d.ts +27 -0
  222. package/dist/cjs/utils/sui-types.js +90 -0
  223. package/dist/cjs/utils/sui-types.js.map +7 -0
  224. package/dist/cjs/utils/suins.d.ts +2 -0
  225. package/dist/cjs/utils/suins.js +57 -0
  226. package/dist/cjs/utils/suins.js.map +7 -0
  227. package/dist/cjs/verify/index.d.ts +1 -0
  228. package/dist/cjs/verify/index.js +29 -0
  229. package/dist/cjs/verify/index.js.map +7 -0
  230. package/dist/cjs/verify/verify.d.ts +11 -0
  231. package/dist/cjs/verify/verify.js +101 -0
  232. package/dist/cjs/verify/verify.js.map +7 -0
  233. package/dist/cjs/version.d.ts +2 -0
  234. package/dist/cjs/version.js +27 -0
  235. package/dist/cjs/version.js.map +7 -0
  236. package/dist/cjs/zklogin/address.d.ts +1 -0
  237. package/dist/cjs/zklogin/address.js +44 -0
  238. package/dist/cjs/zklogin/address.js.map +7 -0
  239. package/dist/cjs/zklogin/bcs.d.ts +46 -0
  240. package/dist/cjs/zklogin/bcs.js +42 -0
  241. package/dist/cjs/zklogin/bcs.js.map +7 -0
  242. package/dist/cjs/zklogin/index.d.ts +5 -0
  243. package/dist/cjs/zklogin/index.js +33 -0
  244. package/dist/cjs/zklogin/index.js.map +7 -0
  245. package/dist/cjs/zklogin/jwt-utils.d.ts +5 -0
  246. package/dist/cjs/zklogin/jwt-utils.js +102 -0
  247. package/dist/cjs/zklogin/jwt-utils.js.map +7 -0
  248. package/dist/cjs/zklogin/publickey.d.ts +69 -0
  249. package/dist/cjs/zklogin/publickey.js +197 -0
  250. package/dist/cjs/zklogin/publickey.js.map +7 -0
  251. package/dist/cjs/zklogin/signature.d.ts +23 -0
  252. package/dist/cjs/zklogin/signature.js +48 -0
  253. package/dist/cjs/zklogin/signature.js.map +7 -0
  254. package/dist/cjs/zklogin/utils.d.ts +2 -0
  255. package/dist/cjs/zklogin/utils.js +46 -0
  256. package/dist/cjs/zklogin/utils.js.map +7 -0
  257. package/dist/esm/bcs/bcs.d.ts +2283 -0
  258. package/dist/esm/bcs/bcs.js +286 -0
  259. package/dist/esm/bcs/bcs.js.map +7 -0
  260. package/dist/esm/bcs/effects.d.ts +793 -0
  261. package/dist/esm/bcs/effects.js +183 -0
  262. package/dist/esm/bcs/effects.js.map +7 -0
  263. package/dist/esm/bcs/index.d.ts +3081 -0
  264. package/dist/esm/bcs/index.js +83 -0
  265. package/dist/esm/bcs/index.js.map +7 -0
  266. package/dist/esm/bcs/type-tag-serializer.d.ts +6 -0
  267. package/dist/esm/bcs/type-tag-serializer.js +93 -0
  268. package/dist/esm/bcs/type-tag-serializer.js.map +7 -0
  269. package/dist/esm/bcs/types.d.ts +114 -0
  270. package/dist/esm/bcs/types.js +7 -0
  271. package/dist/esm/bcs/types.js.map +7 -0
  272. package/dist/esm/client/client.d.ts +229 -0
  273. package/dist/esm/client/client.js +568 -0
  274. package/dist/esm/client/client.js.map +7 -0
  275. package/dist/esm/client/errors.d.ts +12 -0
  276. package/dist/esm/client/errors.js +40 -0
  277. package/dist/esm/client/errors.js.map +7 -0
  278. package/dist/esm/client/http-transport.d.ts +40 -0
  279. package/dist/esm/client/http-transport.js +105 -0
  280. package/dist/esm/client/http-transport.js.map +7 -0
  281. package/dist/esm/client/index.d.ts +5 -0
  282. package/dist/esm/client/index.js +20 -0
  283. package/dist/esm/client/index.js.map +7 -0
  284. package/dist/esm/client/network.d.ts +1 -0
  285. package/dist/esm/client/network.js +18 -0
  286. package/dist/esm/client/network.js.map +7 -0
  287. package/dist/esm/client/rpc-websocket-client.d.ts +49 -0
  288. package/dist/esm/client/rpc-websocket-client.js +186 -0
  289. package/dist/esm/client/rpc-websocket-client.js.map +7 -0
  290. package/dist/esm/client/types/chain.d.ts +99 -0
  291. package/dist/esm/client/types/chain.js +1 -0
  292. package/dist/esm/client/types/chain.js.map +7 -0
  293. package/dist/esm/client/types/changes.d.ts +19 -0
  294. package/dist/esm/client/types/changes.js +1 -0
  295. package/dist/esm/client/types/changes.js.map +7 -0
  296. package/dist/esm/client/types/coins.d.ts +6 -0
  297. package/dist/esm/client/types/coins.js +1 -0
  298. package/dist/esm/client/types/coins.js.map +7 -0
  299. package/dist/esm/client/types/common.d.ts +2 -0
  300. package/dist/esm/client/types/common.js +1 -0
  301. package/dist/esm/client/types/common.js.map +7 -0
  302. package/dist/esm/client/types/generated.d.ts +1376 -0
  303. package/dist/esm/client/types/generated.js +1 -0
  304. package/dist/esm/client/types/generated.js.map +7 -0
  305. package/dist/esm/client/types/index.d.ts +6 -0
  306. package/dist/esm/client/types/index.js +7 -0
  307. package/dist/esm/client/types/index.js.map +7 -0
  308. package/dist/esm/client/types/params.d.ts +585 -0
  309. package/dist/esm/client/types/params.js +1 -0
  310. package/dist/esm/client/types/params.js.map +7 -0
  311. package/dist/esm/cryptography/index.d.ts +7 -0
  312. package/dist/esm/cryptography/index.js +47 -0
  313. package/dist/esm/cryptography/index.js.map +7 -0
  314. package/dist/esm/cryptography/intent.d.ts +6 -0
  315. package/dist/esm/cryptography/intent.js +15 -0
  316. package/dist/esm/cryptography/intent.js.map +7 -0
  317. package/dist/esm/cryptography/keypair.d.ts +63 -0
  318. package/dist/esm/cryptography/keypair.js +85 -0
  319. package/dist/esm/cryptography/keypair.js.map +7 -0
  320. package/dist/esm/cryptography/mnemonics.d.ts +27 -0
  321. package/dist/esm/cryptography/mnemonics.js +27 -0
  322. package/dist/esm/cryptography/mnemonics.js.map +7 -0
  323. package/dist/esm/cryptography/publickey.d.ts +56 -0
  324. package/dist/esm/cryptography/publickey.js +92 -0
  325. package/dist/esm/cryptography/publickey.js.map +7 -0
  326. package/dist/esm/cryptography/signature-scheme.d.ts +21 -0
  327. package/dist/esm/cryptography/signature-scheme.js +25 -0
  328. package/dist/esm/cryptography/signature-scheme.js.map +7 -0
  329. package/dist/esm/cryptography/signature.d.ts +60 -0
  330. package/dist/esm/cryptography/signature.js +59 -0
  331. package/dist/esm/cryptography/signature.js.map +7 -0
  332. package/dist/esm/faucet/faucet.d.ts +42 -0
  333. package/dist/esm/faucet/faucet.js +83 -0
  334. package/dist/esm/faucet/faucet.js.map +7 -0
  335. package/dist/esm/faucet/index.d.ts +1 -0
  336. package/dist/esm/faucet/index.js +15 -0
  337. package/dist/esm/faucet/index.js.map +7 -0
  338. package/dist/esm/graphql/client.d.ts +42 -0
  339. package/dist/esm/graphql/client.js +73 -0
  340. package/dist/esm/graphql/client.js.map +7 -0
  341. package/dist/esm/graphql/generated/2024-01/tada-env.d.js +1 -0
  342. package/dist/esm/graphql/generated/2024-01/tada-env.d.js.map +7 -0
  343. package/dist/esm/graphql/generated/2024.1/tada-env.d.js +1 -0
  344. package/dist/esm/graphql/generated/2024.1/tada-env.d.js.map +7 -0
  345. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js +17 -0
  346. package/dist/esm/graphql/generated/2024.1/tsconfig.tada.js.map +7 -0
  347. package/dist/esm/graphql/generated/2024.4/tada-env.d.js +1 -0
  348. package/dist/esm/graphql/generated/2024.4/tada-env.d.js.map +7 -0
  349. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js +17 -0
  350. package/dist/esm/graphql/generated/2024.4/tsconfig.tada.js.map +7 -0
  351. package/dist/esm/graphql/index.d.ts +1 -0
  352. package/dist/esm/graphql/index.js +9 -0
  353. package/dist/esm/graphql/index.js.map +7 -0
  354. package/dist/esm/graphql/schemas/2024.1/index.d.ts +8971 -0
  355. package/dist/esm/graphql/schemas/2024.1/index.js +10 -0
  356. package/dist/esm/graphql/schemas/2024.1/index.js.map +7 -0
  357. package/dist/esm/graphql/schemas/2024.4/index.d.ts +8995 -0
  358. package/dist/esm/graphql/schemas/2024.4/index.js +10 -0
  359. package/dist/esm/graphql/schemas/2024.4/index.js.map +7 -0
  360. package/dist/esm/graphql/types.d.ts +70 -0
  361. package/dist/esm/graphql/types.js +1 -0
  362. package/dist/esm/graphql/types.js.map +7 -0
  363. package/dist/esm/keypairs/ed25519/ed25519-hd-key.d.ts +13 -0
  364. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js +71 -0
  365. package/dist/esm/keypairs/ed25519/ed25519-hd-key.js.map +7 -0
  366. package/dist/esm/keypairs/ed25519/index.d.ts +2 -0
  367. package/dist/esm/keypairs/ed25519/index.js +11 -0
  368. package/dist/esm/keypairs/ed25519/index.js.map +7 -0
  369. package/dist/esm/keypairs/ed25519/keypair.d.ts +74 -0
  370. package/dist/esm/keypairs/ed25519/keypair.js +121 -0
  371. package/dist/esm/keypairs/ed25519/keypair.js.map +7 -0
  372. package/dist/esm/keypairs/ed25519/publickey.d.ts +30 -0
  373. package/dist/esm/keypairs/ed25519/publickey.js +69 -0
  374. package/dist/esm/keypairs/ed25519/publickey.js.map +7 -0
  375. package/dist/esm/keypairs/secp256k1/index.d.ts +2 -0
  376. package/dist/esm/keypairs/secp256k1/index.js +11 -0
  377. package/dist/esm/keypairs/secp256k1/index.js.map +7 -0
  378. package/dist/esm/keypairs/secp256k1/keypair.d.ts +73 -0
  379. package/dist/esm/keypairs/secp256k1/keypair.js +123 -0
  380. package/dist/esm/keypairs/secp256k1/keypair.js.map +7 -0
  381. package/dist/esm/keypairs/secp256k1/publickey.d.ts +30 -0
  382. package/dist/esm/keypairs/secp256k1/publickey.js +74 -0
  383. package/dist/esm/keypairs/secp256k1/publickey.js.map +7 -0
  384. package/dist/esm/keypairs/secp256r1/index.d.ts +2 -0
  385. package/dist/esm/keypairs/secp256r1/index.js +11 -0
  386. package/dist/esm/keypairs/secp256r1/index.js.map +7 -0
  387. package/dist/esm/keypairs/secp256r1/keypair.d.ts +73 -0
  388. package/dist/esm/keypairs/secp256r1/keypair.js +117 -0
  389. package/dist/esm/keypairs/secp256r1/keypair.js.map +7 -0
  390. package/dist/esm/keypairs/secp256r1/publickey.d.ts +30 -0
  391. package/dist/esm/keypairs/secp256r1/publickey.js +74 -0
  392. package/dist/esm/keypairs/secp256r1/publickey.js.map +7 -0
  393. package/dist/esm/multisig/index.d.ts +2 -0
  394. package/dist/esm/multisig/index.js +8 -0
  395. package/dist/esm/multisig/index.js.map +7 -0
  396. package/dist/esm/multisig/publickey.d.ts +110 -0
  397. package/dist/esm/multisig/publickey.js +243 -0
  398. package/dist/esm/multisig/publickey.js.map +7 -0
  399. package/dist/esm/multisig/signer.d.ts +19 -0
  400. package/dist/esm/multisig/signer.js +95 -0
  401. package/dist/esm/multisig/signer.js.map +7 -0
  402. package/dist/esm/package.json +5 -0
  403. package/dist/esm/transactions/Commands.d.ts +110 -0
  404. package/dist/esm/transactions/Commands.js +120 -0
  405. package/dist/esm/transactions/Commands.js.map +7 -0
  406. package/dist/esm/transactions/Inputs.d.ts +22 -0
  407. package/dist/esm/transactions/Inputs.js +60 -0
  408. package/dist/esm/transactions/Inputs.js.map +7 -0
  409. package/dist/esm/transactions/ObjectCache.d.ts +85 -0
  410. package/dist/esm/transactions/ObjectCache.js +226 -0
  411. package/dist/esm/transactions/ObjectCache.js.map +7 -0
  412. package/dist/esm/transactions/Transaction.d.ts +672 -0
  413. package/dist/esm/transactions/Transaction.js +439 -0
  414. package/dist/esm/transactions/Transaction.js.map +7 -0
  415. package/dist/esm/transactions/TransactionData.d.ts +64 -0
  416. package/dist/esm/transactions/TransactionData.js +229 -0
  417. package/dist/esm/transactions/TransactionData.js.map +7 -0
  418. package/dist/esm/transactions/__tests__/Transaction.test.d.ts +1 -0
  419. package/dist/esm/transactions/__tests__/bcs.test.d.ts +1 -0
  420. package/dist/esm/transactions/data/internal.d.ts +2689 -0
  421. package/dist/esm/transactions/data/internal.js +208 -0
  422. package/dist/esm/transactions/data/internal.js.map +7 -0
  423. package/dist/esm/transactions/data/v1.d.ts +1839 -0
  424. package/dist/esm/transactions/data/v1.js +437 -0
  425. package/dist/esm/transactions/data/v1.js.map +7 -0
  426. package/dist/esm/transactions/data/v2.d.ts +450 -0
  427. package/dist/esm/transactions/data/v2.js +118 -0
  428. package/dist/esm/transactions/data/v2.js.map +7 -0
  429. package/dist/esm/transactions/executor/caching.d.ts +29 -0
  430. package/dist/esm/transactions/executor/caching.js +89 -0
  431. package/dist/esm/transactions/executor/caching.js.map +7 -0
  432. package/dist/esm/transactions/executor/parallel.d.ts +22 -0
  433. package/dist/esm/transactions/executor/parallel.js +296 -0
  434. package/dist/esm/transactions/executor/parallel.js.map +7 -0
  435. package/dist/esm/transactions/executor/queue.d.ts +11 -0
  436. package/dist/esm/transactions/executor/queue.js +72 -0
  437. package/dist/esm/transactions/executor/queue.js.map +7 -0
  438. package/dist/esm/transactions/executor/serial.d.ts +27 -0
  439. package/dist/esm/transactions/executor/serial.js +120 -0
  440. package/dist/esm/transactions/executor/serial.js.map +7 -0
  441. package/dist/esm/transactions/hash.d.ts +7 -0
  442. package/dist/esm/transactions/hash.js +12 -0
  443. package/dist/esm/transactions/hash.js.map +7 -0
  444. package/dist/esm/transactions/index.d.ts +13 -0
  445. package/dist/esm/transactions/index.js +33 -0
  446. package/dist/esm/transactions/index.js.map +7 -0
  447. package/dist/esm/transactions/intents/CoinWithBalance.d.ts +6 -0
  448. package/dist/esm/transactions/intents/CoinWithBalance.js +148 -0
  449. package/dist/esm/transactions/intents/CoinWithBalance.js.map +7 -0
  450. package/dist/esm/transactions/json-rpc-resolver.d.ts +12 -0
  451. package/dist/esm/transactions/json-rpc-resolver.js +333 -0
  452. package/dist/esm/transactions/json-rpc-resolver.js.map +7 -0
  453. package/dist/esm/transactions/pure.d.ts +185 -0
  454. package/dist/esm/transactions/pure.js +21 -0
  455. package/dist/esm/transactions/pure.js.map +7 -0
  456. package/dist/esm/transactions/serializer.d.ts +7 -0
  457. package/dist/esm/transactions/serializer.js +156 -0
  458. package/dist/esm/transactions/serializer.js.map +7 -0
  459. package/dist/esm/transactions/utils.d.ts +8 -0
  460. package/dist/esm/transactions/utils.js +46 -0
  461. package/dist/esm/transactions/utils.js.map +7 -0
  462. package/dist/esm/utils/constants.d.ts +9 -0
  463. package/dist/esm/utils/constants.js +22 -0
  464. package/dist/esm/utils/constants.js.map +7 -0
  465. package/dist/esm/utils/format.d.ts +2 -0
  466. package/dist/esm/utils/format.js +16 -0
  467. package/dist/esm/utils/format.js.map +7 -0
  468. package/dist/esm/utils/index.d.ts +5 -0
  469. package/dist/esm/utils/index.js +52 -0
  470. package/dist/esm/utils/index.js.map +7 -0
  471. package/dist/esm/utils/sui-types.d.ts +27 -0
  472. package/dist/esm/utils/sui-types.js +70 -0
  473. package/dist/esm/utils/sui-types.js.map +7 -0
  474. package/dist/esm/utils/suins.d.ts +2 -0
  475. package/dist/esm/utils/suins.js +37 -0
  476. package/dist/esm/utils/suins.js.map +7 -0
  477. package/dist/esm/verify/index.d.ts +1 -0
  478. package/dist/esm/verify/index.js +15 -0
  479. package/dist/esm/verify/index.js.map +7 -0
  480. package/dist/esm/verify/verify.d.ts +11 -0
  481. package/dist/esm/verify/verify.js +81 -0
  482. package/dist/esm/verify/verify.js.map +7 -0
  483. package/dist/esm/version.d.ts +2 -0
  484. package/dist/esm/version.js +7 -0
  485. package/dist/esm/version.js.map +7 -0
  486. package/dist/esm/zklogin/address.d.ts +1 -0
  487. package/dist/esm/zklogin/address.js +24 -0
  488. package/dist/esm/zklogin/address.js.map +7 -0
  489. package/dist/esm/zklogin/bcs.d.ts +46 -0
  490. package/dist/esm/zklogin/bcs.js +22 -0
  491. package/dist/esm/zklogin/bcs.js.map +7 -0
  492. package/dist/esm/zklogin/index.d.ts +5 -0
  493. package/dist/esm/zklogin/index.js +13 -0
  494. package/dist/esm/zklogin/index.js.map +7 -0
  495. package/dist/esm/zklogin/jwt-utils.d.ts +5 -0
  496. package/dist/esm/zklogin/jwt-utils.js +82 -0
  497. package/dist/esm/zklogin/jwt-utils.js.map +7 -0
  498. package/dist/esm/zklogin/publickey.d.ts +69 -0
  499. package/dist/esm/zklogin/publickey.js +177 -0
  500. package/dist/esm/zklogin/publickey.js.map +7 -0
  501. package/dist/esm/zklogin/signature.d.ts +23 -0
  502. package/dist/esm/zklogin/signature.js +28 -0
  503. package/dist/esm/zklogin/signature.js.map +7 -0
  504. package/dist/esm/zklogin/utils.d.ts +2 -0
  505. package/dist/esm/zklogin/utils.js +26 -0
  506. package/dist/esm/zklogin/utils.js.map +7 -0
  507. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  508. package/dist/tsconfig.tsbuildinfo +1 -0
  509. package/faucet/package.json +6 -0
  510. package/graphql/package.json +6 -0
  511. package/graphql/schemas/2024.1/package.json +6 -0
  512. package/graphql/schemas/2024.4/package.json +6 -0
  513. package/keypairs/ed25519/package.json +6 -0
  514. package/keypairs/secp256k1/package.json +6 -0
  515. package/keypairs/secp256r1/package.json +6 -0
  516. package/multisig/package.json +6 -0
  517. package/package.json +160 -0
  518. package/src/bcs/bcs.ts +300 -0
  519. package/src/bcs/effects.ts +200 -0
  520. package/src/bcs/index.ts +87 -0
  521. package/src/bcs/type-tag-serializer.ts +106 -0
  522. package/src/bcs/types.ts +113 -0
  523. package/src/client/client.ts +814 -0
  524. package/src/client/errors.ts +45 -0
  525. package/src/client/http-transport.ts +130 -0
  526. package/src/client/index.ts +21 -0
  527. package/src/client/network.ts +17 -0
  528. package/src/client/rpc-websocket-client.ts +234 -0
  529. package/src/client/types/chain.ts +122 -0
  530. package/src/client/types/changes.ts +11 -0
  531. package/src/client/types/coins.ts +9 -0
  532. package/src/client/types/common.ts +5 -0
  533. package/src/client/types/generated.ts +1508 -0
  534. package/src/client/types/index.ts +9 -0
  535. package/src/client/types/params.ts +584 -0
  536. package/src/cryptography/index.ts +36 -0
  537. package/src/cryptography/intent.ts +22 -0
  538. package/src/cryptography/keypair.ts +130 -0
  539. package/src/cryptography/mnemonics.ts +49 -0
  540. package/src/cryptography/publickey.ts +133 -0
  541. package/src/cryptography/signature-scheme.ts +28 -0
  542. package/src/cryptography/signature.ts +86 -0
  543. package/src/faucet/faucet.ts +130 -0
  544. package/src/faucet/index.ts +10 -0
  545. package/src/graphql/client.ts +110 -0
  546. package/src/graphql/generated/2024-01/tada-env.d.ts +202 -0
  547. package/src/graphql/generated/2024.1/schema.graphql +4168 -0
  548. package/src/graphql/generated/2024.1/tada-env.d.ts +201 -0
  549. package/src/graphql/generated/2024.1/tsconfig.tada.json +11 -0
  550. package/src/graphql/generated/2024.4/schema.graphql +4183 -0
  551. package/src/graphql/generated/2024.4/tada-env.d.ts +202 -0
  552. package/src/graphql/generated/2024.4/tsconfig.tada.json +11 -0
  553. package/src/graphql/index.ts +12 -0
  554. package/src/graphql/schemas/2024.1/index.ts +17 -0
  555. package/src/graphql/schemas/2024.4/index.ts +17 -0
  556. package/src/graphql/types.ts +86 -0
  557. package/src/keypairs/ed25519/ed25519-hd-key.ts +93 -0
  558. package/src/keypairs/ed25519/index.ts +9 -0
  559. package/src/keypairs/ed25519/keypair.ts +151 -0
  560. package/src/keypairs/ed25519/publickey.ts +86 -0
  561. package/src/keypairs/secp256k1/index.ts +9 -0
  562. package/src/keypairs/secp256k1/keypair.ts +151 -0
  563. package/src/keypairs/secp256k1/publickey.ts +91 -0
  564. package/src/keypairs/secp256r1/index.ts +9 -0
  565. package/src/keypairs/secp256r1/keypair.ts +147 -0
  566. package/src/keypairs/secp256r1/publickey.ts +91 -0
  567. package/src/multisig/index.ts +5 -0
  568. package/src/multisig/publickey.ts +356 -0
  569. package/src/multisig/signer.ts +92 -0
  570. package/src/transactions/Commands.ts +178 -0
  571. package/src/transactions/Inputs.ts +68 -0
  572. package/src/transactions/ObjectCache.ts +296 -0
  573. package/src/transactions/Transaction.ts +553 -0
  574. package/src/transactions/TransactionData.ts +296 -0
  575. package/src/transactions/__tests__/Transaction.test.ts +184 -0
  576. package/src/transactions/__tests__/bcs.test.ts +205 -0
  577. package/src/transactions/data/internal.ts +321 -0
  578. package/src/transactions/data/v1.ts +501 -0
  579. package/src/transactions/data/v2.ts +146 -0
  580. package/src/transactions/executor/caching.ts +94 -0
  581. package/src/transactions/executor/parallel.ts +335 -0
  582. package/src/transactions/executor/queue.ts +65 -0
  583. package/src/transactions/executor/serial.ts +131 -0
  584. package/src/transactions/hash.ts +20 -0
  585. package/src/transactions/index.ts +41 -0
  586. package/src/transactions/intents/CoinWithBalance.ts +204 -0
  587. package/src/transactions/json-rpc-resolver.ts +482 -0
  588. package/src/transactions/pure.ts +32 -0
  589. package/src/transactions/serializer.ts +205 -0
  590. package/src/transactions/utils.ts +66 -0
  591. package/src/utils/constants.ts +15 -0
  592. package/src/utils/format.ts +19 -0
  593. package/src/utils/index.ts +29 -0
  594. package/src/utils/sui-types.ts +110 -0
  595. package/src/utils/suins.ts +43 -0
  596. package/src/verify/index.ts +11 -0
  597. package/src/verify/verify.ts +111 -0
  598. package/src/version.ts +7 -0
  599. package/src/zklogin/address.ts +27 -0
  600. package/src/zklogin/bcs.ts +26 -0
  601. package/src/zklogin/index.ts +8 -0
  602. package/src/zklogin/jwt-utils.ts +113 -0
  603. package/src/zklogin/publickey.ts +190 -0
  604. package/src/zklogin/signature.ts +37 -0
  605. package/src/zklogin/utils.ts +33 -0
  606. package/transactions/package.json +6 -0
  607. package/utils/package.json +6 -0
  608. package/verify/package.json +6 -0
  609. package/zklogin/package.json +6 -0
package/README.md ADDED
@@ -0,0 +1,520 @@
1
+ # Docs site
2
+
3
+ For more complete docs, visit the [Sui TypeScript SDK docs](https://sdk.mystenlabs.com/)
4
+
5
+ # Sui TypeScript SDK
6
+
7
+ This is the Sui TypeScript SDK built on the Sui
8
+ [JSON RPC API](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx). It
9
+ provides utility classes and functions for applications to sign transactions and interact with the
10
+ Sui network.
11
+
12
+ WARNING: Note that we are still iterating on the RPC and SDK API before TestNet, therefore please
13
+ expect frequent breaking changes in the short-term. We expect the API to stabilize after the
14
+ upcoming TestNet launch.
15
+
16
+ ## Working with Devnet
17
+
18
+ The SDK will be published to [npm registry](https://www.npmjs.com/package/@mysten/sui) with the same
19
+ bi-weekly release cycle as the Devnet validators and
20
+ [RPC Server](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx). To
21
+ use the SDK in your project, you can do:
22
+
23
+ ```bash
24
+ $ npm install @mysten/sui
25
+ ```
26
+
27
+ You can also use your preferred npm client, such as yarn or pnpm.
28
+
29
+ ## Working with local network
30
+
31
+ Note that the `latest` tag for the [published SDK](https://www.npmjs.com/package/@mysten/sui) might
32
+ go out of sync with the RPC server on the `main` branch until the next release. If you're developing
33
+ against a local network, we recommend using the `experimental`-tagged packages, which contain the
34
+ latest changes from `main`.
35
+
36
+ ```bash
37
+ npm install @mysten/sui@experimental
38
+ ```
39
+
40
+ Refer to the
41
+ [JSON RPC](https://github.com/MystenLabs/sui/blob/main/docs/content/references/sui-api.mdx) topic
42
+ for instructions about how to start a local network and local RPC server.
43
+
44
+ ## Building Locally
45
+
46
+ To get started you need to install [pnpm](https://pnpm.io/), then run the following command:
47
+
48
+ ```bash
49
+ # Install all dependencies
50
+ $ pnpm install
51
+ # Run the build for the TypeScript SDK
52
+ $ pnpm sdk build
53
+ ```
54
+
55
+ > All `pnpm` commands below are intended to be run in the root of the Sui repo.
56
+
57
+ ## Type Doc
58
+
59
+ You can view the generated [Type Doc](https://typedoc.org/) for the
60
+ [current release of the SDK](https://www.npmjs.com/package/@mysten/sui) at
61
+ http://typescript-sdk-docs.s3-website-us-east-1.amazonaws.com/.
62
+
63
+ For the latest docs for the `main` branch, run `pnpm doc` and open the
64
+ [doc/index.html](doc/index.html) in your browser.
65
+
66
+ ## Testing
67
+
68
+ To run unit tests
69
+
70
+ ```
71
+ pnpm --filter @mysten/sui test:unit
72
+ ```
73
+
74
+ To run E2E tests against local network
75
+
76
+ ```
77
+ pnpm --filter @mysten/sui prepare:e2e
78
+
79
+ // This will run all e2e tests
80
+ pnpm --filter @mysten/sui test:e2e
81
+
82
+ // Alternatively you can choose to run only one test file
83
+ npx vitest txn-builder.test.ts
84
+ ```
85
+
86
+ Troubleshooting:
87
+
88
+ If you see errors like `ECONNRESET or "socket hang up"`, run `node -v` to make sure your node
89
+ version is `v18.x.x`. Refer to this
90
+ [guide](https://blog.logrocket.com/how-switch-node-js-versions-nvm/) to switch node version.
91
+
92
+ Some more follow up here is if you used homebrew to install node, there could be multiple paths to
93
+ node on your machine.
94
+ https://stackoverflow.com/questions/52676244/node-version-not-updating-after-nvm-use-on-mac
95
+
96
+ To run E2E tests against Devnet
97
+
98
+ ```
99
+ VITE_FAUCET_URL='https://faucet.devnet.sui.io:443/gas' VITE_FULLNODE_URL='https://fullnode.devnet.sui.io' pnpm --filter @mysten/sui exec vitest e2e
100
+ ```
101
+
102
+ ## Connecting to Sui Network
103
+
104
+ The `SuiClient` class provides a connection to the JSON-RPC Server and should be used for all
105
+ read-only operations. The default URLs to connect with the RPC server are:
106
+
107
+ - local: http://127.0.0.1:9000
108
+ - Devnet: https://fullnode.devnet.sui.io
109
+
110
+ ```typescript
111
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
112
+
113
+ // create a client connected to devnet
114
+ const client = new SuiClient({ url: getFullnodeUrl('devnet') });
115
+
116
+ // get coins owned by an address
117
+ await client.getCoins({
118
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
119
+ });
120
+ ```
121
+
122
+ For local development, you can run `cargo run --bin sui-test-validator` to spin up a local network
123
+ with a local validator, a fullnode, and a faucet server. Refer to
124
+ [this guide](https://docs.sui.io/build/sui-local-network) for more information.
125
+
126
+ ```typescript
127
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
128
+
129
+ // create a client connected to devnet
130
+ const client = new SuiClient({ url: getFullnodeUrl('localnet') });
131
+
132
+ // get coins owned by an address
133
+ await client.getCoins({
134
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
135
+ });
136
+ ```
137
+
138
+ You can also construct your own in custom connections, with the URL for your own fullnode
139
+
140
+ ```typescript
141
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
142
+
143
+ // create a client connected to devnet
144
+ const client = new SuiClient({
145
+ url: 'https://fullnode.devnet.sui.io',
146
+ });
147
+
148
+ // get coins owned by an address
149
+ await client.getCoins({
150
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
151
+ });
152
+ ```
153
+
154
+ ## Getting coins from the faucet
155
+
156
+ You can request sui from the faucet when running against devnet, testnet, or localnet
157
+
158
+ ```typescript
159
+ import { getFaucetHost, requestSuiFromFaucetV0 } from '@mysten/sui/faucet';
160
+
161
+ await requestSuiFromFaucetV0({
162
+ host: getFaucetHost('testnet'),
163
+ recipient: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
164
+ });
165
+ ```
166
+
167
+ ## Writing APIs
168
+
169
+ For a primer for building transactions, refer to
170
+ [this guide](https://docs.sui.io/build/prog-trans-ts-sdk).
171
+
172
+ ### Transfer Object
173
+
174
+ ```typescript
175
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
176
+ import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
177
+ import { TransactionBlock } from '@mysten/sui/transactions';
178
+
179
+ // Generate a new Ed25519 Keypair
180
+ const keypair = new Ed25519Keypair();
181
+ const client = new SuiClient({
182
+ url: getFullnodeUrl('testnet'),
183
+ });
184
+
185
+ const tx = new TransactionBlock();
186
+ tx.transferObjects(
187
+ ['0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2'],
188
+ '0x1d20dcdb2bca4f508ea9613994683eb4e76e9c4ed371169677c1be02aaf0b12a',
189
+ );
190
+ const result = await client.signAndExecuteTransactionBlock({
191
+ signer: keypair,
192
+ transactionBlock: tx,
193
+ });
194
+ console.log({ result });
195
+ ```
196
+
197
+ ### Transfer Sui
198
+
199
+ To transfer `1000` MIST to another address:
200
+
201
+ ```typescript
202
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
203
+ import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
204
+ import { TransactionBlock } from '@mysten/sui/transactions';
205
+
206
+ // Generate a new Ed25519 Keypair
207
+ const keypair = new Ed25519Keypair();
208
+ const client = new SuiClient({
209
+ url: getFullnodeUrl('testnet'),
210
+ });
211
+
212
+ const tx = new TransactionBlock();
213
+ const [coin] = tx.splitCoins(tx.gas, [1000]);
214
+ tx.transferObjects([coin], keypair.getPublicKey().toSuiAddress());
215
+ const result = await client.signAndExecuteTransactionBlock({
216
+ signer: keypair,
217
+ transactionBlock: tx,
218
+ });
219
+ console.log({ result });
220
+ ```
221
+
222
+ ### Merge coins
223
+
224
+ ```typescript
225
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
226
+ import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
227
+ import { TransactionBlock } from '@mysten/sui/transactions';
228
+
229
+ // Generate a new Ed25519 Keypair
230
+ const keypair = new Ed25519Keypair();
231
+ const client = new SuiClient({
232
+ url: getFullnodeUrl('testnet'),
233
+ });
234
+
235
+ const tx = new TransactionBlock();
236
+ tx.mergeCoins('0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2', [
237
+ '0x127a8975134a4824d9288722c4ee4fc824cd22502ab4ad9f6617f3ba19229c1b',
238
+ ]);
239
+ const result = await client.signAndExecuteTransactionBlock({
240
+ signer: keypair,
241
+ transactionBlock: tx,
242
+ });
243
+ console.log({ result });
244
+ ```
245
+
246
+ ### Move Call
247
+
248
+ ```typescript
249
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
250
+ import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
251
+ import { TransactionBlock } from '@mysten/sui/transactions';
252
+
253
+ // Generate a new Ed25519 Keypair
254
+ const keypair = new Ed25519Keypair();
255
+ const client = new SuiClient({
256
+ url: getFullnodeUrl('testnet'),
257
+ });
258
+ const packageObjectId = '0x...';
259
+ const tx = new TransactionBlock();
260
+ tx.moveCall({
261
+ target: `${packageObjectId}::nft::mint`,
262
+ arguments: [tx.pure.string('Example NFT')],
263
+ });
264
+ const result = await client.signAndExecuteTransactionBlock({
265
+ signer: keypair,
266
+ transactionBlock: tx,
267
+ });
268
+ console.log({ result });
269
+ ```
270
+
271
+ ### Publish Modules
272
+
273
+ To publish a package:
274
+
275
+ ```typescript
276
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
277
+ import { Ed25519Keypair } from '@mysten/sui/keypairs/ed25519';
278
+ import { TransactionBlock } from '@mysten/sui/transactions';
279
+
280
+ const { execSync } = require('child_process');
281
+ // Generate a new Ed25519 Keypair
282
+ const keypair = new Ed25519Keypair();
283
+ const client = new SuiClient({
284
+ url: getFullnodeUrl('testnet'),
285
+ });
286
+ const { modules, dependencies } = JSON.parse(
287
+ execSync(`${cliPath} move build --dump-bytecode-as-base64 --path ${packagePath}`, {
288
+ encoding: 'utf-8',
289
+ }),
290
+ );
291
+ const tx = new TransactionBlock();
292
+ const [upgradeCap] = tx.publish({
293
+ modules,
294
+ dependencies,
295
+ });
296
+ tx.transferObjects([upgradeCap], await client.getAddress());
297
+ const result = await client.signAndExecuteTransactionBlock({
298
+ signer: keypair,
299
+ transactionBlock: tx,
300
+ });
301
+ console.log({ result });
302
+ ```
303
+
304
+ ## Reading APIs
305
+
306
+ ### Get Owned Objects
307
+
308
+ Fetch objects owned by the address
309
+ `0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
310
+
311
+ ```typescript
312
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
313
+
314
+ const client = new SuiClient({
315
+ url: getFullnodeUrl('testnet'),
316
+ });
317
+ const objects = await client.getOwnedObjects({
318
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
319
+ });
320
+ ```
321
+
322
+ ### Get Object
323
+
324
+ Fetch object details for the object with id
325
+ `0xe19739da1a701eadc21683c5b127e62b553e833e8a15a4f292f4f48b4afea3f2`
326
+
327
+ ```typescript
328
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
329
+
330
+ const client = new SuiClient({
331
+ url: getFullnodeUrl('testnet'),
332
+ });
333
+ const txn = await client.getObject({
334
+ id: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
335
+ // fetch the object content field
336
+ options: { showContent: true },
337
+ });
338
+ // You can also fetch multiple objects in one batch request
339
+ const txns = await client.multiGetObjects({
340
+ ids: [
341
+ '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
342
+ '0x9ad3de788483877fe348aef7f6ba3e52b9cfee5f52de0694d36b16a6b50c1429',
343
+ ],
344
+ // only fetch the object type
345
+ options: { showType: true },
346
+ });
347
+ ```
348
+
349
+ ### Get Transaction
350
+
351
+ Fetch transaction details from transaction digests:
352
+
353
+ ```typescript
354
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
355
+
356
+ const client = new SuiClient({
357
+ url: getFullnodeUrl('testnet'),
358
+ });
359
+ const txn = await client.getTransactionBlock({
360
+ digest: '9XFneskU8tW7UxQf7tE5qFRfcN4FadtC2Z3HAZkgeETd=',
361
+ // only fetch the effects field
362
+ options: {
363
+ showEffects: true,
364
+ showInput: false,
365
+ showEvents: false,
366
+ showObjectChanges: false,
367
+ showBalanceChanges: false,
368
+ },
369
+ });
370
+
371
+ // You can also fetch multiple transactions in one batch request
372
+ const txns = await client.multiGetTransactionBlocks({
373
+ digests: [
374
+ '9XFneskU8tW7UxQf7tE5qFRfcN4FadtC2Z3HAZkgeETd=',
375
+ '17mn5W1CczLwitHCO9OIUbqirNrQ0cuKdyxaNe16SAME=',
376
+ ],
377
+ // fetch both the input transaction data as well as effects
378
+ options: { showInput: true, showEffects: true },
379
+ });
380
+ ```
381
+
382
+ ### Get Checkpoints
383
+
384
+ Get latest 100 Checkpoints in descending order and print Transaction Digests for each one of them.
385
+
386
+ ```typescript
387
+ client.getCheckpoints({ descendingOrder: true }).then(function (checkpointPage: CheckpointPage) {
388
+ console.log(checkpointPage);
389
+
390
+ checkpointPage.data.forEach((checkpoint) => {
391
+ console.log('---------------------------------------------------------------');
392
+ console.log(
393
+ ' ----------- Transactions for Checkpoint: ',
394
+ checkpoint.sequenceNumber,
395
+ ' -------- ',
396
+ );
397
+ console.log('---------------------------------------------------------------');
398
+ checkpoint.transactions.forEach((tx) => {
399
+ console.log(tx);
400
+ });
401
+ console.log('***************************************************************');
402
+ });
403
+ });
404
+ ```
405
+
406
+ Get Checkpoint 1994010 and print details.
407
+
408
+ ```typescript
409
+ client.getCheckpoint({ id: '1994010' }).then(function (checkpoint: Checkpoint) {
410
+ console.log('Checkpoint Sequence Num ', checkpoint.sequenceNumber);
411
+ console.log('Checkpoint timestampMs ', checkpoint.timestampMs);
412
+ console.log('Checkpoint # of Transactions ', checkpoint.transactions.length);
413
+ });
414
+ ```
415
+
416
+ ### Get Coins
417
+
418
+ Fetch coins of type `0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC`
419
+ owned by an address:
420
+
421
+ ```typescript
422
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
423
+
424
+ const client = new SuiClient({
425
+ url: getFullnodeUrl('testnet'),
426
+ });
427
+ const coins = await client.getCoins({
428
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
429
+ coinType: '0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC',
430
+ });
431
+ ```
432
+
433
+ Fetch all coin objects owned by an address:
434
+
435
+ ```typescript
436
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
437
+
438
+ const client = new SuiClient({
439
+ url: getFullnodeUrl('testnet'),
440
+ });
441
+ const allCoins = await client.getAllCoins({
442
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
443
+ });
444
+ ```
445
+
446
+ Fetch the total coin balance for one coin type, owned by an address:
447
+
448
+ ```typescript
449
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
450
+
451
+ const client = new SuiClient({
452
+ url: getFullnodeUrl('testnet'),
453
+ });
454
+ // If coin type is not specified, it defaults to 0x2::sui::SUI
455
+ const coinBalance = await client.getBalance({
456
+ owner: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
457
+ coinType: '0x65b0553a591d7b13376e03a408e112c706dc0909a79080c810b93b06f922c458::usdc::USDC',
458
+ });
459
+ ```
460
+
461
+ ### Events API
462
+
463
+ Querying events created by transactions sent by account
464
+ `0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
465
+
466
+ ```typescript
467
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
468
+
469
+ const client = new SuiClient({
470
+ url: getFullnodeUrl('testnet'),
471
+ });
472
+ const events = client.queryEvents({
473
+ query: { Sender: toolbox.address() },
474
+ limit: 2,
475
+ });
476
+ ```
477
+
478
+ Subscribe to all events created by transactions sent by account
479
+ `0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231`
480
+
481
+ ```typescript
482
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
483
+
484
+ const client = new SuiClient({
485
+ url: getFullnodeUrl('testnet'),
486
+ });
487
+ // calls RPC method 'suix_subscribeEvent' with params:
488
+ // [ { Sender: '0xbff6ccc8707aa517b4f1b95750a2a8c666012df3' } ]
489
+ const unsubscribe = await client.subscribeEvent({
490
+ filter: {
491
+ Sender: '0xcc2bd176a478baea9a0de7a24cd927661cc6e860d5bacecb9a138ef20dbab231',
492
+ },
493
+ onMessage(event) {
494
+ // handle subscription notification message here. This function is called once per subscription message.
495
+ },
496
+ });
497
+
498
+ // later, to unsubscribe:
499
+ await unsubscribe();
500
+ ```
501
+
502
+ Subscribe to all events created by a package's `nft` module
503
+
504
+ ```typescript
505
+ import { getFullnodeUrl, SuiClient } from '@mysten/sui/client';
506
+
507
+ const client = new SuiClient({
508
+ url: getFullnodeUrl('testnet'),
509
+ });
510
+ const somePackage = '0x...';
511
+ const devnetNftFilter = {
512
+ MoveModule: { package: somePackage, module: 'nft' },
513
+ };
514
+ const devNftSub = await client.subscribeEvent({
515
+ filter: devnetNftFilter,
516
+ onMessage(event) {
517
+ // handle subscription notification message here
518
+ },
519
+ });
520
+ ```
@@ -0,0 +1,6 @@
1
+ {
2
+ "private": true,
3
+ "import": "../dist/esm/bcs/index.js",
4
+ "main": "../dist/cjs/bcs/index.js",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "private": true,
3
+ "import": "../dist/esm/client/index.js",
4
+ "main": "../dist/cjs/client/index.js",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "private": true,
3
+ "import": "../dist/esm/cryptography/index.js",
4
+ "main": "../dist/cjs/cryptography/index.js",
5
+ "sideEffects": false
6
+ }