@mysten/sui 1.41.0 → 1.43.0

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 (475) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cjs/bcs/bcs.d.ts +47 -111
  3. package/dist/cjs/bcs/bcs.js +17 -17
  4. package/dist/cjs/bcs/bcs.js.map +2 -2
  5. package/dist/cjs/bcs/effects.d.ts +2 -6
  6. package/dist/cjs/bcs/effects.js +1 -1
  7. package/dist/cjs/bcs/effects.js.map +2 -2
  8. package/dist/cjs/bcs/index.d.ts +49 -117
  9. package/dist/cjs/bcs/type-tag-serializer.d.ts +1 -0
  10. package/dist/cjs/bcs/type-tag-serializer.js +5 -1
  11. package/dist/cjs/bcs/type-tag-serializer.js.map +2 -2
  12. package/dist/cjs/cryptography/intent.js +1 -1
  13. package/dist/cjs/cryptography/intent.js.map +2 -2
  14. package/dist/cjs/cryptography/keypair.js +1 -1
  15. package/dist/cjs/cryptography/keypair.js.map +2 -2
  16. package/dist/cjs/cryptography/publickey.js +1 -1
  17. package/dist/cjs/cryptography/publickey.js.map +2 -2
  18. package/dist/cjs/cryptography/signature.d.ts +2 -2
  19. package/dist/cjs/experimental/client.js +0 -4
  20. package/dist/cjs/experimental/client.js.map +2 -2
  21. package/dist/cjs/experimental/types.d.ts +1 -7
  22. package/dist/cjs/experimental/types.js.map +1 -1
  23. package/dist/cjs/graphql/generated/queries.d.ts +1 -1
  24. package/dist/cjs/graphql/generated/queries.js.map +1 -1
  25. package/dist/cjs/grpc/client.d.ts +7 -7
  26. package/dist/cjs/grpc/client.js +7 -7
  27. package/dist/cjs/grpc/client.js.map +2 -2
  28. package/dist/cjs/grpc/core.d.ts +4 -2
  29. package/dist/cjs/grpc/core.js +19 -22
  30. package/dist/cjs/grpc/core.js.map +2 -2
  31. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/argument.d.ts +4 -4
  32. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/argument.js +2 -2
  33. package/dist/cjs/grpc/proto/sui/rpc/v2/argument.js.map +7 -0
  34. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/balance_change.d.ts +2 -2
  35. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/balance_change.js +1 -1
  36. package/dist/cjs/grpc/proto/sui/rpc/v2/balance_change.js.map +7 -0
  37. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/bcs.d.ts +2 -2
  38. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/bcs.js +1 -1
  39. package/dist/cjs/grpc/proto/sui/rpc/v2/bcs.js.map +7 -0
  40. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/checkpoint.d.ts +19 -6
  41. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint.js +4 -2
  42. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint.js.map +7 -0
  43. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/checkpoint_contents.d.ts +7 -7
  44. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_contents.js +2 -2
  45. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +7 -0
  46. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/checkpoint_summary.d.ts +14 -14
  47. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_summary.js +4 -4
  48. package/dist/cjs/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +7 -0
  49. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/effects.d.ts +28 -23
  50. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/effects.js +15 -7
  51. package/dist/cjs/grpc/proto/sui/rpc/v2/effects.js.map +7 -0
  52. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/epoch.d.ts +5 -5
  53. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/epoch.js +1 -1
  54. package/dist/cjs/grpc/proto/sui/rpc/v2/epoch.js.map +7 -0
  55. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/error_reason.d.ts +1 -1
  56. package/dist/cjs/grpc/proto/sui/rpc/v2/error_reason.js.map +7 -0
  57. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/event.d.ts +7 -7
  58. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/event.js +2 -2
  59. package/dist/cjs/grpc/proto/sui/rpc/v2/event.js.map +7 -0
  60. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/executed_transaction.d.ts +12 -17
  61. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/executed_transaction.js +2 -15
  62. package/dist/cjs/grpc/proto/sui/rpc/v2/executed_transaction.js.map +7 -0
  63. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/execution_status.d.ts +44 -44
  64. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/execution_status.js +16 -16
  65. package/dist/cjs/grpc/proto/sui/rpc/v2/execution_status.js.map +7 -0
  66. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/gas_cost_summary.d.ts +2 -2
  67. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/gas_cost_summary.js +1 -1
  68. package/dist/cjs/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +7 -0
  69. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/input.d.ts +4 -4
  70. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/input.js +2 -2
  71. package/dist/cjs/grpc/proto/sui/rpc/v2/input.js.map +7 -0
  72. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.d.ts +70 -0
  73. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js +88 -0
  74. package/dist/cjs/grpc/proto/sui/rpc/v2/jwk.js.map +7 -0
  75. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.client.d.ts +16 -16
  76. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.client.js +7 -7
  77. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +7 -0
  78. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.d.ts +42 -42
  79. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.js +17 -17
  80. package/dist/cjs/grpc/proto/sui/rpc/v2/ledger_service.js.map +7 -0
  81. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/move_package.d.ts +48 -48
  82. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package.js +17 -20
  83. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package.js.map +7 -0
  84. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/move_package_service.client.d.ts +10 -10
  85. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.client.js +4 -4
  86. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +7 -0
  87. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/move_package_service.d.ts +23 -23
  88. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.js +10 -10
  89. package/dist/cjs/grpc/proto/sui/rpc/v2/move_package_service.js.map +7 -0
  90. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/name_service.client.d.ts +6 -6
  91. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.client.js +2 -2
  92. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.client.js.map +7 -0
  93. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.d.ts +14 -14
  94. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.js +6 -6
  95. package/dist/cjs/grpc/proto/sui/rpc/v2/name_service.js.map +7 -0
  96. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/object.d.ts +26 -6
  97. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/object.js +11 -2
  98. package/dist/cjs/grpc/proto/sui/rpc/v2/object.js.map +7 -0
  99. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/object_reference.d.ts +2 -2
  100. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/object_reference.js +1 -1
  101. package/dist/cjs/grpc/proto/sui/rpc/v2/object_reference.js.map +7 -0
  102. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/owner.d.ts +4 -4
  103. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/owner.js +2 -2
  104. package/dist/cjs/grpc/proto/sui/rpc/v2/owner.js.map +7 -0
  105. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/protocol_config.d.ts +2 -2
  106. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/protocol_config.js +1 -1
  107. package/dist/cjs/grpc/proto/sui/rpc/v2/protocol_config.js.map +7 -0
  108. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature.d.ts +78 -65
  109. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature.js +32 -27
  110. package/dist/cjs/grpc/proto/sui/rpc/v2/signature.js.map +7 -0
  111. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/signature_scheme.d.ts +1 -1
  112. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_scheme.js.map +7 -0
  113. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.client.d.ts +4 -4
  114. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.client.js +1 -1
  115. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +7 -0
  116. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.d.ts +9 -9
  117. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.js +3 -3
  118. package/dist/cjs/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +7 -0
  119. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.d.ts +71 -0
  120. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js +99 -0
  121. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.client.js.map +7 -0
  122. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2/live_data_service.d.ts → v2/state_service.d.ts} +65 -183
  123. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2/live_data_service.js → v2/state_service.js} +33 -139
  124. package/dist/cjs/grpc/proto/sui/rpc/v2/state_service.js.map +7 -0
  125. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/subscription_service.client.d.ts +6 -6
  126. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.client.js +2 -2
  127. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +7 -0
  128. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/subscription_service.d.ts +7 -7
  129. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.js +3 -3
  130. package/dist/cjs/grpc/proto/sui/rpc/v2/subscription_service.js.map +7 -0
  131. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/system_state.d.ts +38 -38
  132. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/system_state.js +9 -9
  133. package/dist/cjs/grpc/proto/sui/rpc/v2/system_state.js.map +7 -0
  134. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction.d.ts +284 -264
  135. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction.js +103 -159
  136. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction.js.map +7 -0
  137. package/dist/{esm/grpc/proto/sui/rpc/v2beta2 → cjs/grpc/proto/sui/rpc/v2}/transaction_execution_service.client.d.ts +14 -10
  138. package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction_execution_service.client.js +14 -4
  139. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +7 -0
  140. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +184 -0
  141. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js +159 -0
  142. package/dist/cjs/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +7 -0
  143. package/dist/cjs/jsonRpc/client.d.ts +2 -6
  144. package/dist/cjs/jsonRpc/client.js +0 -8
  145. package/dist/cjs/jsonRpc/client.js.map +2 -2
  146. package/dist/cjs/keypairs/passkey/publickey.d.ts +1 -1
  147. package/dist/cjs/multisig/publickey.d.ts +10 -10
  148. package/dist/cjs/multisig/publickey.js +2 -2
  149. package/dist/cjs/multisig/publickey.js.map +2 -2
  150. package/dist/cjs/transactions/TransactionData.d.ts +1 -0
  151. package/dist/cjs/transactions/TransactionData.js +71 -0
  152. package/dist/cjs/transactions/TransactionData.js.map +3 -3
  153. package/dist/cjs/transactions/serializer.js +1 -1
  154. package/dist/cjs/transactions/serializer.js.map +2 -2
  155. package/dist/cjs/utils/index.d.ts +1 -0
  156. package/dist/cjs/utils/index.js +2 -0
  157. package/dist/cjs/utils/index.js.map +2 -2
  158. package/dist/cjs/version.d.ts +2 -2
  159. package/dist/cjs/version.js +2 -2
  160. package/dist/cjs/version.js.map +1 -1
  161. package/dist/cjs/zklogin/bcs.d.ts +1 -3
  162. package/dist/cjs/zklogin/bcs.js +1 -1
  163. package/dist/cjs/zklogin/bcs.js.map +2 -2
  164. package/dist/cjs/zklogin/publickey.d.ts +1 -1
  165. package/dist/cjs/zklogin/signature.d.ts +1 -1
  166. package/dist/esm/bcs/bcs.d.ts +47 -111
  167. package/dist/esm/bcs/bcs.js +17 -17
  168. package/dist/esm/bcs/bcs.js.map +2 -2
  169. package/dist/esm/bcs/effects.d.ts +2 -6
  170. package/dist/esm/bcs/effects.js +1 -1
  171. package/dist/esm/bcs/effects.js.map +2 -2
  172. package/dist/esm/bcs/index.d.ts +49 -117
  173. package/dist/esm/bcs/type-tag-serializer.d.ts +1 -0
  174. package/dist/esm/bcs/type-tag-serializer.js +5 -1
  175. package/dist/esm/bcs/type-tag-serializer.js.map +2 -2
  176. package/dist/esm/cryptography/intent.js +1 -1
  177. package/dist/esm/cryptography/intent.js.map +2 -2
  178. package/dist/esm/cryptography/keypair.js +1 -1
  179. package/dist/esm/cryptography/keypair.js.map +2 -2
  180. package/dist/esm/cryptography/publickey.js +1 -1
  181. package/dist/esm/cryptography/publickey.js.map +2 -2
  182. package/dist/esm/cryptography/signature.d.ts +2 -2
  183. package/dist/esm/experimental/client.js +0 -4
  184. package/dist/esm/experimental/client.js.map +2 -2
  185. package/dist/esm/experimental/types.d.ts +1 -7
  186. package/dist/esm/graphql/generated/queries.d.ts +1 -1
  187. package/dist/esm/graphql/generated/queries.js.map +1 -1
  188. package/dist/esm/grpc/client.d.ts +7 -7
  189. package/dist/esm/grpc/client.js +7 -7
  190. package/dist/esm/grpc/client.js.map +2 -2
  191. package/dist/esm/grpc/core.d.ts +4 -2
  192. package/dist/esm/grpc/core.js +19 -22
  193. package/dist/esm/grpc/core.js.map +2 -2
  194. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/argument.d.ts +4 -4
  195. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/argument.js +2 -2
  196. package/dist/esm/grpc/proto/sui/rpc/v2/argument.js.map +7 -0
  197. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/balance_change.d.ts +2 -2
  198. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/balance_change.js +1 -1
  199. package/dist/esm/grpc/proto/sui/rpc/v2/balance_change.js.map +7 -0
  200. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/bcs.d.ts +2 -2
  201. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/bcs.js +1 -1
  202. package/dist/esm/grpc/proto/sui/rpc/v2/bcs.js.map +7 -0
  203. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/checkpoint.d.ts +19 -6
  204. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint.js +4 -2
  205. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint.js.map +7 -0
  206. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/checkpoint_contents.d.ts +7 -7
  207. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_contents.js +2 -2
  208. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_contents.js.map +7 -0
  209. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/checkpoint_summary.d.ts +14 -14
  210. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_summary.js +4 -4
  211. package/dist/esm/grpc/proto/sui/rpc/v2/checkpoint_summary.js.map +7 -0
  212. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/effects.d.ts +28 -23
  213. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/effects.js +15 -7
  214. package/dist/esm/grpc/proto/sui/rpc/v2/effects.js.map +7 -0
  215. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/epoch.d.ts +5 -5
  216. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/epoch.js +1 -1
  217. package/dist/esm/grpc/proto/sui/rpc/v2/epoch.js.map +7 -0
  218. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/error_reason.d.ts +1 -1
  219. package/dist/esm/grpc/proto/sui/rpc/v2/error_reason.js.map +7 -0
  220. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/event.d.ts +7 -7
  221. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/event.js +2 -2
  222. package/dist/esm/grpc/proto/sui/rpc/v2/event.js.map +7 -0
  223. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/executed_transaction.d.ts +12 -17
  224. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/executed_transaction.js +3 -16
  225. package/dist/esm/grpc/proto/sui/rpc/v2/executed_transaction.js.map +7 -0
  226. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/execution_status.d.ts +44 -44
  227. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/execution_status.js +16 -16
  228. package/dist/esm/grpc/proto/sui/rpc/v2/execution_status.js.map +7 -0
  229. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/gas_cost_summary.d.ts +2 -2
  230. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/gas_cost_summary.js +1 -1
  231. package/dist/esm/grpc/proto/sui/rpc/v2/gas_cost_summary.js.map +7 -0
  232. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/input.d.ts +4 -4
  233. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/input.js +2 -2
  234. package/dist/esm/grpc/proto/sui/rpc/v2/input.js.map +7 -0
  235. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.d.ts +70 -0
  236. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js +68 -0
  237. package/dist/esm/grpc/proto/sui/rpc/v2/jwk.js.map +7 -0
  238. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.client.d.ts +16 -16
  239. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.client.js +7 -7
  240. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.client.js.map +7 -0
  241. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.d.ts +42 -42
  242. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.js +17 -17
  243. package/dist/esm/grpc/proto/sui/rpc/v2/ledger_service.js.map +7 -0
  244. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/move_package.d.ts +48 -48
  245. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package.js +17 -20
  246. package/dist/esm/grpc/proto/sui/rpc/v2/move_package.js.map +7 -0
  247. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/move_package_service.client.d.ts +10 -10
  248. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.client.js +4 -4
  249. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.client.js.map +7 -0
  250. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/move_package_service.d.ts +23 -23
  251. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.js +10 -10
  252. package/dist/esm/grpc/proto/sui/rpc/v2/move_package_service.js.map +7 -0
  253. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/name_service.client.d.ts +6 -6
  254. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.client.js +2 -2
  255. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.client.js.map +7 -0
  256. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.d.ts +14 -14
  257. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.js +6 -6
  258. package/dist/esm/grpc/proto/sui/rpc/v2/name_service.js.map +7 -0
  259. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/object.d.ts +26 -6
  260. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/object.js +11 -2
  261. package/dist/esm/grpc/proto/sui/rpc/v2/object.js.map +7 -0
  262. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/object_reference.d.ts +2 -2
  263. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/object_reference.js +1 -1
  264. package/dist/esm/grpc/proto/sui/rpc/v2/object_reference.js.map +7 -0
  265. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/owner.d.ts +4 -4
  266. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/owner.js +2 -2
  267. package/dist/esm/grpc/proto/sui/rpc/v2/owner.js.map +7 -0
  268. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/protocol_config.d.ts +2 -2
  269. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/protocol_config.js +1 -1
  270. package/dist/esm/grpc/proto/sui/rpc/v2/protocol_config.js.map +7 -0
  271. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature.d.ts +78 -65
  272. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature.js +32 -27
  273. package/dist/esm/grpc/proto/sui/rpc/v2/signature.js.map +7 -0
  274. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/signature_scheme.d.ts +1 -1
  275. package/dist/esm/grpc/proto/sui/rpc/v2/signature_scheme.js.map +7 -0
  276. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.client.d.ts +4 -4
  277. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.client.js +1 -1
  278. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.client.js.map +7 -0
  279. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.d.ts +9 -9
  280. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.js +3 -3
  281. package/dist/esm/grpc/proto/sui/rpc/v2/signature_verification_service.js.map +7 -0
  282. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.d.ts +71 -0
  283. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js +79 -0
  284. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.client.js.map +7 -0
  285. package/dist/esm/grpc/proto/sui/rpc/{v2beta2/live_data_service.d.ts → v2/state_service.d.ts} +65 -183
  286. package/dist/esm/grpc/proto/sui/rpc/{v2beta2/live_data_service.js → v2/state_service.js} +30 -136
  287. package/dist/esm/grpc/proto/sui/rpc/v2/state_service.js.map +7 -0
  288. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/subscription_service.client.d.ts +6 -6
  289. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.client.js +2 -2
  290. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.client.js.map +7 -0
  291. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/subscription_service.d.ts +7 -7
  292. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.js +3 -3
  293. package/dist/esm/grpc/proto/sui/rpc/v2/subscription_service.js.map +7 -0
  294. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/system_state.d.ts +38 -38
  295. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/system_state.js +9 -9
  296. package/dist/esm/grpc/proto/sui/rpc/v2/system_state.js.map +7 -0
  297. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction.d.ts +284 -264
  298. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction.js +101 -157
  299. package/dist/esm/grpc/proto/sui/rpc/v2/transaction.js.map +7 -0
  300. package/dist/{cjs/grpc/proto/sui/rpc/v2beta2 → esm/grpc/proto/sui/rpc/v2}/transaction_execution_service.client.d.ts +14 -10
  301. package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction_execution_service.client.js +14 -4
  302. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.client.js.map +7 -0
  303. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.d.ts +184 -0
  304. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js +139 -0
  305. package/dist/esm/grpc/proto/sui/rpc/v2/transaction_execution_service.js.map +7 -0
  306. package/dist/esm/jsonRpc/client.d.ts +2 -6
  307. package/dist/esm/jsonRpc/client.js +0 -8
  308. package/dist/esm/jsonRpc/client.js.map +2 -2
  309. package/dist/esm/keypairs/passkey/publickey.d.ts +1 -1
  310. package/dist/esm/multisig/publickey.d.ts +10 -10
  311. package/dist/esm/multisig/publickey.js +2 -2
  312. package/dist/esm/multisig/publickey.js.map +2 -2
  313. package/dist/esm/transactions/TransactionData.d.ts +1 -0
  314. package/dist/esm/transactions/TransactionData.js +71 -0
  315. package/dist/esm/transactions/TransactionData.js.map +3 -3
  316. package/dist/esm/transactions/serializer.js +1 -1
  317. package/dist/esm/transactions/serializer.js.map +2 -2
  318. package/dist/esm/utils/index.d.ts +1 -0
  319. package/dist/esm/utils/index.js +2 -0
  320. package/dist/esm/utils/index.js.map +2 -2
  321. package/dist/esm/version.d.ts +2 -2
  322. package/dist/esm/version.js +2 -2
  323. package/dist/esm/version.js.map +1 -1
  324. package/dist/esm/zklogin/bcs.d.ts +1 -3
  325. package/dist/esm/zklogin/bcs.js +1 -1
  326. package/dist/esm/zklogin/bcs.js.map +2 -2
  327. package/dist/esm/zklogin/publickey.d.ts +1 -1
  328. package/dist/esm/zklogin/signature.d.ts +1 -1
  329. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  330. package/dist/tsconfig.tsbuildinfo +1 -1
  331. package/package.json +3 -3
  332. package/src/bcs/bcs.ts +17 -17
  333. package/src/bcs/effects.ts +1 -1
  334. package/src/bcs/type-tag-serializer.ts +4 -0
  335. package/src/cryptography/intent.ts +1 -1
  336. package/src/cryptography/keypair.ts +1 -1
  337. package/src/cryptography/publickey.ts +1 -1
  338. package/src/experimental/client.ts +0 -4
  339. package/src/experimental/types.ts +4 -17
  340. package/src/graphql/generated/queries.ts +1 -1
  341. package/src/grpc/client.ts +8 -8
  342. package/src/grpc/core.ts +48 -34
  343. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/argument.ts +7 -7
  344. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/balance_change.ts +4 -4
  345. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/bcs.ts +4 -4
  346. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint.ts +22 -8
  347. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_contents.ts +10 -10
  348. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/checkpoint_summary.ts +19 -19
  349. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/effects.ts +43 -31
  350. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/epoch.ts +7 -7
  351. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/error_reason.ts +2 -2
  352. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/event.ts +10 -10
  353. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/executed_transaction.ts +15 -33
  354. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/execution_status.ts +61 -61
  355. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/gas_cost_summary.ts +4 -4
  356. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/input.ts +7 -7
  357. package/src/grpc/proto/sui/rpc/v2/jwk.ts +94 -0
  358. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.client.ts +17 -17
  359. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/ledger_service.ts +60 -60
  360. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package.ts +66 -69
  361. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.client.ts +11 -11
  362. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/move_package_service.ts +34 -34
  363. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.client.ts +7 -7
  364. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/name_service.ts +21 -21
  365. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/object.ts +33 -8
  366. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/object_reference.ts +4 -4
  367. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/owner.ts +7 -7
  368. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/protocol_config.ts +4 -4
  369. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/signature.ts +105 -102
  370. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_scheme.ts +2 -2
  371. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.client.ts +5 -5
  372. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_verification_service.ts +13 -13
  373. package/src/grpc/proto/sui/rpc/v2/state_service.client.ts +161 -0
  374. package/src/grpc/proto/sui/rpc/{v2beta2/live_data_service.ts → v2/state_service.ts} +91 -268
  375. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.client.ts +7 -7
  376. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/subscription_service.ts +11 -11
  377. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/system_state.ts +48 -48
  378. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction.ts +349 -387
  379. package/src/grpc/proto/sui/rpc/{v2beta2 → v2}/transaction_execution_service.client.ts +31 -11
  380. package/src/grpc/proto/sui/rpc/v2/transaction_execution_service.ts +282 -0
  381. package/src/jsonRpc/client.ts +2 -17
  382. package/src/multisig/publickey.ts +14 -14
  383. package/src/transactions/TransactionData.ts +100 -1
  384. package/src/transactions/serializer.ts +1 -1
  385. package/src/utils/index.ts +1 -0
  386. package/src/version.ts +2 -2
  387. package/src/zklogin/bcs.ts +1 -1
  388. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/argument.js.map +0 -7
  389. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/balance_change.js.map +0 -7
  390. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/bcs.js.map +0 -7
  391. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/checkpoint.js.map +0 -7
  392. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/checkpoint_contents.js.map +0 -7
  393. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/checkpoint_summary.js.map +0 -7
  394. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/effects.js.map +0 -7
  395. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/epoch.js.map +0 -7
  396. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/error_reason.js.map +0 -7
  397. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/event.js.map +0 -7
  398. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/executed_transaction.js.map +0 -7
  399. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/execution_status.js.map +0 -7
  400. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/gas_cost_summary.js.map +0 -7
  401. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/input.js.map +0 -7
  402. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/ledger_service.client.js.map +0 -7
  403. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/ledger_service.js.map +0 -7
  404. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/live_data_service.client.d.ts +0 -81
  405. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/live_data_service.client.js +0 -0
  406. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/live_data_service.client.js.map +0 -7
  407. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/live_data_service.js.map +0 -7
  408. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/move_package.js.map +0 -7
  409. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/move_package_service.client.js.map +0 -7
  410. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/move_package_service.js.map +0 -7
  411. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/name_service.client.js.map +0 -7
  412. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/name_service.js.map +0 -7
  413. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/object.js.map +0 -7
  414. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/object_reference.js.map +0 -7
  415. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/owner.js.map +0 -7
  416. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/protocol_config.js.map +0 -7
  417. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/signature.js.map +0 -7
  418. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/signature_scheme.js.map +0 -7
  419. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/signature_verification_service.client.js.map +0 -7
  420. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/signature_verification_service.js.map +0 -7
  421. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/subscription_service.client.js.map +0 -7
  422. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/subscription_service.js.map +0 -7
  423. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/system_state.js.map +0 -7
  424. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/transaction.js.map +0 -7
  425. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.client.js.map +0 -7
  426. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.d.ts +0 -115
  427. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.js +0 -94
  428. package/dist/cjs/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.js.map +0 -7
  429. package/dist/esm/grpc/proto/sui/rpc/v2beta2/argument.js.map +0 -7
  430. package/dist/esm/grpc/proto/sui/rpc/v2beta2/balance_change.js.map +0 -7
  431. package/dist/esm/grpc/proto/sui/rpc/v2beta2/bcs.js.map +0 -7
  432. package/dist/esm/grpc/proto/sui/rpc/v2beta2/checkpoint.js.map +0 -7
  433. package/dist/esm/grpc/proto/sui/rpc/v2beta2/checkpoint_contents.js.map +0 -7
  434. package/dist/esm/grpc/proto/sui/rpc/v2beta2/checkpoint_summary.js.map +0 -7
  435. package/dist/esm/grpc/proto/sui/rpc/v2beta2/effects.js.map +0 -7
  436. package/dist/esm/grpc/proto/sui/rpc/v2beta2/epoch.js.map +0 -7
  437. package/dist/esm/grpc/proto/sui/rpc/v2beta2/error_reason.js.map +0 -7
  438. package/dist/esm/grpc/proto/sui/rpc/v2beta2/event.js.map +0 -7
  439. package/dist/esm/grpc/proto/sui/rpc/v2beta2/executed_transaction.js.map +0 -7
  440. package/dist/esm/grpc/proto/sui/rpc/v2beta2/execution_status.js.map +0 -7
  441. package/dist/esm/grpc/proto/sui/rpc/v2beta2/gas_cost_summary.js.map +0 -7
  442. package/dist/esm/grpc/proto/sui/rpc/v2beta2/input.js.map +0 -7
  443. package/dist/esm/grpc/proto/sui/rpc/v2beta2/ledger_service.client.js.map +0 -7
  444. package/dist/esm/grpc/proto/sui/rpc/v2beta2/ledger_service.js.map +0 -7
  445. package/dist/esm/grpc/proto/sui/rpc/v2beta2/live_data_service.client.d.ts +0 -81
  446. package/dist/esm/grpc/proto/sui/rpc/v2beta2/live_data_service.client.js +0 -92
  447. package/dist/esm/grpc/proto/sui/rpc/v2beta2/live_data_service.client.js.map +0 -7
  448. package/dist/esm/grpc/proto/sui/rpc/v2beta2/live_data_service.js.map +0 -7
  449. package/dist/esm/grpc/proto/sui/rpc/v2beta2/move_package.js.map +0 -7
  450. package/dist/esm/grpc/proto/sui/rpc/v2beta2/move_package_service.client.js.map +0 -7
  451. package/dist/esm/grpc/proto/sui/rpc/v2beta2/move_package_service.js.map +0 -7
  452. package/dist/esm/grpc/proto/sui/rpc/v2beta2/name_service.client.js.map +0 -7
  453. package/dist/esm/grpc/proto/sui/rpc/v2beta2/name_service.js.map +0 -7
  454. package/dist/esm/grpc/proto/sui/rpc/v2beta2/object.js.map +0 -7
  455. package/dist/esm/grpc/proto/sui/rpc/v2beta2/object_reference.js.map +0 -7
  456. package/dist/esm/grpc/proto/sui/rpc/v2beta2/owner.js.map +0 -7
  457. package/dist/esm/grpc/proto/sui/rpc/v2beta2/protocol_config.js.map +0 -7
  458. package/dist/esm/grpc/proto/sui/rpc/v2beta2/signature.js.map +0 -7
  459. package/dist/esm/grpc/proto/sui/rpc/v2beta2/signature_scheme.js.map +0 -7
  460. package/dist/esm/grpc/proto/sui/rpc/v2beta2/signature_verification_service.client.js.map +0 -7
  461. package/dist/esm/grpc/proto/sui/rpc/v2beta2/signature_verification_service.js.map +0 -7
  462. package/dist/esm/grpc/proto/sui/rpc/v2beta2/subscription_service.client.js.map +0 -7
  463. package/dist/esm/grpc/proto/sui/rpc/v2beta2/subscription_service.js.map +0 -7
  464. package/dist/esm/grpc/proto/sui/rpc/v2beta2/system_state.js.map +0 -7
  465. package/dist/esm/grpc/proto/sui/rpc/v2beta2/transaction.js.map +0 -7
  466. package/dist/esm/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.client.js.map +0 -7
  467. package/dist/esm/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.d.ts +0 -115
  468. package/dist/esm/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.js +0 -74
  469. package/dist/esm/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.js.map +0 -7
  470. package/src/grpc/proto/sui/rpc/v2beta2/live_data_service.client.ts +0 -187
  471. package/src/grpc/proto/sui/rpc/v2beta2/transaction_execution_service.ts +0 -178
  472. /package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/error_reason.js +0 -0
  473. /package/dist/cjs/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_scheme.js +0 -0
  474. /package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/error_reason.js +0 -0
  475. /package/dist/esm/grpc/proto/sui/rpc/{v2beta2 → v2}/signature_scheme.js +0 -0
@@ -170,21 +170,11 @@ declare const suiBcs: {
170
170
  }, string>;
171
171
  }, "Command">;
172
172
  CompressedSignature: import("@mysten/bcs").BcsEnum<{
173
- ED25519: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
174
- length: number;
175
- }, string>;
176
- Secp256k1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
177
- length: number;
178
- }, string>;
179
- Secp256r1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
180
- length: number;
181
- }, string>;
182
- ZkLogin: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
183
- length: number;
184
- }, string>;
185
- Passkey: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
186
- length: number;
187
- }, string>;
173
+ ED25519: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[64]">;
174
+ Secp256k1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[64]">;
175
+ Secp256r1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[64]">;
176
+ ZkLogin: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
177
+ Passkey: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
188
178
  }, "CompressedSignature">;
189
179
  GasData: import("@mysten/bcs").BcsStruct<{
190
180
  payment: import("@mysten/bcs").BcsType<{
@@ -228,27 +218,17 @@ declare const suiBcs: {
228
218
  }, "IntentVersion">;
229
219
  MultiSig: import("@mysten/bcs").BcsStruct<{
230
220
  sigs: import("@mysten/bcs").BcsType<import("@mysten/bcs").EnumOutputShapeWithKeys<{
231
- ED25519: number[];
232
- Secp256k1: number[];
233
- Secp256r1: number[];
234
- ZkLogin: number[];
235
- Passkey: number[];
221
+ ED25519: Uint8Array<ArrayBufferLike>;
222
+ Secp256k1: Uint8Array<ArrayBufferLike>;
223
+ Secp256r1: Uint8Array<ArrayBufferLike>;
224
+ ZkLogin: Uint8Array<ArrayBufferLike>;
225
+ Passkey: Uint8Array<ArrayBufferLike>;
236
226
  }, "ED25519" | "Secp256k1" | "Secp256r1" | "ZkLogin" | "Passkey">[], Iterable<import("@mysten/bcs").EnumInputShape<{
237
- ED25519: Iterable<number> & {
238
- length: number;
239
- };
240
- Secp256k1: Iterable<number> & {
241
- length: number;
242
- };
243
- Secp256r1: Iterable<number> & {
244
- length: number;
245
- };
246
- ZkLogin: Iterable<number> & {
247
- length: number;
248
- };
249
- Passkey: Iterable<number> & {
250
- length: number;
251
- };
227
+ ED25519: Iterable<number>;
228
+ Secp256k1: Iterable<number>;
229
+ Secp256r1: Iterable<number>;
230
+ ZkLogin: Iterable<number>;
231
+ Passkey: Iterable<number>;
252
232
  }>> & {
253
233
  length: number;
254
234
  }, string>;
@@ -256,30 +236,20 @@ declare const suiBcs: {
256
236
  multisig_pk: import("@mysten/bcs").BcsStruct<{
257
237
  pk_map: import("@mysten/bcs").BcsType<{
258
238
  pubKey: import("@mysten/bcs").EnumOutputShapeWithKeys<{
259
- ED25519: number[];
260
- Secp256k1: number[];
261
- Secp256r1: number[];
262
- ZkLogin: number[];
263
- Passkey: number[];
239
+ ED25519: Uint8Array<ArrayBufferLike>;
240
+ Secp256k1: Uint8Array<ArrayBufferLike>;
241
+ Secp256r1: Uint8Array<ArrayBufferLike>;
242
+ ZkLogin: Uint8Array<ArrayBufferLike>;
243
+ Passkey: Uint8Array<ArrayBufferLike>;
264
244
  }, "ED25519" | "Secp256k1" | "Secp256r1" | "ZkLogin" | "Passkey">;
265
245
  weight: number;
266
246
  }[], Iterable<{
267
247
  pubKey: import("@mysten/bcs").EnumInputShape<{
268
- ED25519: Iterable<number> & {
269
- length: number;
270
- };
271
- Secp256k1: Iterable<number> & {
272
- length: number;
273
- };
274
- Secp256r1: Iterable<number> & {
275
- length: number;
276
- };
277
- ZkLogin: Iterable<number> & {
278
- length: number;
279
- };
280
- Passkey: Iterable<number> & {
281
- length: number;
282
- };
248
+ ED25519: Iterable<number>;
249
+ Secp256k1: Iterable<number>;
250
+ Secp256r1: Iterable<number>;
251
+ ZkLogin: Iterable<number>;
252
+ Passkey: Iterable<number>;
283
253
  }>;
284
254
  weight: number;
285
255
  }> & {
@@ -290,51 +260,31 @@ declare const suiBcs: {
290
260
  }, string>;
291
261
  MultiSigPkMap: import("@mysten/bcs").BcsStruct<{
292
262
  pubKey: import("@mysten/bcs").BcsEnum<{
293
- ED25519: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
294
- length: number;
295
- }, string>;
296
- Secp256k1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
297
- length: number;
298
- }, string>;
299
- Secp256r1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
300
- length: number;
301
- }, string>;
302
- ZkLogin: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
303
- length: number;
304
- }, string>;
305
- Passkey: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
306
- length: number;
307
- }, string>;
263
+ ED25519: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[32]">;
264
+ Secp256k1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
265
+ Secp256r1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
266
+ ZkLogin: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
267
+ Passkey: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
308
268
  }, "PublicKey">;
309
269
  weight: import("@mysten/bcs").BcsType<number, number, "u8">;
310
270
  }, string>;
311
271
  MultiSigPublicKey: import("@mysten/bcs").BcsStruct<{
312
272
  pk_map: import("@mysten/bcs").BcsType<{
313
273
  pubKey: import("@mysten/bcs").EnumOutputShapeWithKeys<{
314
- ED25519: number[];
315
- Secp256k1: number[];
316
- Secp256r1: number[];
317
- ZkLogin: number[];
318
- Passkey: number[];
274
+ ED25519: Uint8Array<ArrayBufferLike>;
275
+ Secp256k1: Uint8Array<ArrayBufferLike>;
276
+ Secp256r1: Uint8Array<ArrayBufferLike>;
277
+ ZkLogin: Uint8Array<ArrayBufferLike>;
278
+ Passkey: Uint8Array<ArrayBufferLike>;
319
279
  }, "ED25519" | "Secp256k1" | "Secp256r1" | "ZkLogin" | "Passkey">;
320
280
  weight: number;
321
281
  }[], Iterable<{
322
282
  pubKey: import("@mysten/bcs").EnumInputShape<{
323
- ED25519: Iterable<number> & {
324
- length: number;
325
- };
326
- Secp256k1: Iterable<number> & {
327
- length: number;
328
- };
329
- Secp256r1: Iterable<number> & {
330
- length: number;
331
- };
332
- ZkLogin: Iterable<number> & {
333
- length: number;
334
- };
335
- Passkey: Iterable<number> & {
336
- length: number;
337
- };
283
+ ED25519: Iterable<number>;
284
+ Secp256k1: Iterable<number>;
285
+ Secp256r1: Iterable<number>;
286
+ ZkLogin: Iterable<number>;
287
+ Passkey: Iterable<number>;
338
288
  }>;
339
289
  weight: number;
340
290
  }> & {
@@ -373,13 +323,9 @@ declare const suiBcs: {
373
323
  }, string>;
374
324
  }, "Owner">;
375
325
  PasskeyAuthenticator: import("@mysten/bcs").BcsStruct<{
376
- authenticatorData: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
377
- length: number;
378
- }, string>;
326
+ authenticatorData: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
379
327
  clientDataJson: import("@mysten/bcs").BcsType<string, string, "string">;
380
- userSignature: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
381
- length: number;
382
- }, string>;
328
+ userSignature: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
383
329
  }, string>;
384
330
  ProgrammableMoveCall: import("@mysten/bcs").BcsStruct<{
385
331
  package: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
@@ -631,21 +577,11 @@ declare const suiBcs: {
631
577
  }, string>;
632
578
  }, string>;
633
579
  PublicKey: import("@mysten/bcs").BcsEnum<{
634
- ED25519: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
635
- length: number;
636
- }, string>;
637
- Secp256k1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
638
- length: number;
639
- }, string>;
640
- Secp256r1: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
641
- length: number;
642
- }, string>;
643
- ZkLogin: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
644
- length: number;
645
- }, string>;
646
- Passkey: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
647
- length: number;
648
- }, string>;
580
+ ED25519: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[32]">;
581
+ Secp256k1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
582
+ Secp256r1: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
583
+ ZkLogin: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
584
+ Passkey: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "bytes[33]">;
649
585
  }, "PublicKey">;
650
586
  SenderSignedData: import("@mysten/bcs").BcsType<{
651
587
  intentMessage: {
@@ -1896,9 +1832,7 @@ declare const suiBcs: {
1896
1832
  }, string>;
1897
1833
  IncompatibleUpgrade: null;
1898
1834
  DigestDoesNotMatch: import("@mysten/bcs").BcsStruct<{
1899
- digest: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
1900
- length: number;
1901
- }, string>;
1835
+ digest: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
1902
1836
  }, string>;
1903
1837
  UnknownUpgradePolicy: import("@mysten/bcs").BcsStruct<{
1904
1838
  policy: import("@mysten/bcs").BcsType<number, number, "u8">;
@@ -2220,9 +2154,7 @@ declare const suiBcs: {
2220
2154
  }, string>;
2221
2155
  IncompatibleUpgrade: null;
2222
2156
  DigestDoesNotMatch: import("@mysten/bcs").BcsStruct<{
2223
- digest: import("@mysten/bcs").BcsType<number[], Iterable<number> & {
2224
- length: number;
2225
- }, string>;
2157
+ digest: import("@mysten/bcs").BcsType<Uint8Array<ArrayBufferLike>, Iterable<number>, "vector<u8>">;
2226
2158
  }, string>;
2227
2159
  UnknownUpgradePolicy: import("@mysten/bcs").BcsStruct<{
2228
2160
  policy: import("@mysten/bcs").BcsType<number, number, "u8">;
@@ -4,3 +4,4 @@ export declare class TypeTagSerializer {
4
4
  static parseStructTypeArgs(str: string, normalizeAddress?: boolean): TypeTag[];
5
5
  static tagToString(tag: TypeTag): string;
6
6
  }
7
+ export declare function normalizeTypeTag(type: string): string;
@@ -18,7 +18,8 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var type_tag_serializer_exports = {};
20
20
  __export(type_tag_serializer_exports, {
21
- TypeTagSerializer: () => TypeTagSerializer
21
+ TypeTagSerializer: () => TypeTagSerializer,
22
+ normalizeTypeTag: () => normalizeTypeTag
22
23
  });
23
24
  module.exports = __toCommonJS(type_tag_serializer_exports);
24
25
  var import_bcs = require("@mysten/bcs");
@@ -110,4 +111,7 @@ class TypeTagSerializer {
110
111
  throw new Error("Invalid TypeTag");
111
112
  }
112
113
  }
114
+ function normalizeTypeTag(type) {
115
+ return TypeTagSerializer.tagToString(TypeTagSerializer.parseFromStr(type));
116
+ }
113
117
  //# sourceMappingURL=type-tag-serializer.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/bcs/type-tag-serializer.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { splitGenericParameters } from '@mysten/bcs';\n\nimport { normalizeSuiAddress } from '../utils/sui-types.js';\nimport type { TypeTag } from './types.js';\n\nconst VECTOR_REGEX = /^vector<(.+)>$/;\nconst STRUCT_REGEX = /^([^:]+)::([^:]+)::([^<]+)(<(.+)>)?/;\n\nexport class TypeTagSerializer {\n\tstatic parseFromStr(str: string, normalizeAddress = false): TypeTag {\n\t\tif (str === 'address') {\n\t\t\treturn { address: null };\n\t\t} else if (str === 'bool') {\n\t\t\treturn { bool: null };\n\t\t} else if (str === 'u8') {\n\t\t\treturn { u8: null };\n\t\t} else if (str === 'u16') {\n\t\t\treturn { u16: null };\n\t\t} else if (str === 'u32') {\n\t\t\treturn { u32: null };\n\t\t} else if (str === 'u64') {\n\t\t\treturn { u64: null };\n\t\t} else if (str === 'u128') {\n\t\t\treturn { u128: null };\n\t\t} else if (str === 'u256') {\n\t\t\treturn { u256: null };\n\t\t} else if (str === 'signer') {\n\t\t\treturn { signer: null };\n\t\t}\n\n\t\tconst vectorMatch = str.match(VECTOR_REGEX);\n\t\tif (vectorMatch) {\n\t\t\treturn {\n\t\t\t\tvector: TypeTagSerializer.parseFromStr(vectorMatch[1], normalizeAddress),\n\t\t\t};\n\t\t}\n\n\t\tconst structMatch = str.match(STRUCT_REGEX);\n\t\tif (structMatch) {\n\t\t\tconst address = normalizeAddress ? normalizeSuiAddress(structMatch[1]) : structMatch[1];\n\t\t\treturn {\n\t\t\t\tstruct: {\n\t\t\t\t\taddress,\n\t\t\t\t\tmodule: structMatch[2],\n\t\t\t\t\tname: structMatch[3],\n\t\t\t\t\ttypeParams:\n\t\t\t\t\t\tstructMatch[5] === undefined\n\t\t\t\t\t\t\t? []\n\t\t\t\t\t\t\t: TypeTagSerializer.parseStructTypeArgs(structMatch[5], normalizeAddress),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\tthrow new Error(`Encountered unexpected token when parsing type args for ${str}`);\n\t}\n\n\tstatic parseStructTypeArgs(str: string, normalizeAddress = false): TypeTag[] {\n\t\treturn splitGenericParameters(str).map((tok) =>\n\t\t\tTypeTagSerializer.parseFromStr(tok, normalizeAddress),\n\t\t);\n\t}\n\n\tstatic tagToString(tag: TypeTag): string {\n\t\tif ('bool' in tag) {\n\t\t\treturn 'bool';\n\t\t}\n\t\tif ('u8' in tag) {\n\t\t\treturn 'u8';\n\t\t}\n\t\tif ('u16' in tag) {\n\t\t\treturn 'u16';\n\t\t}\n\t\tif ('u32' in tag) {\n\t\t\treturn 'u32';\n\t\t}\n\t\tif ('u64' in tag) {\n\t\t\treturn 'u64';\n\t\t}\n\t\tif ('u128' in tag) {\n\t\t\treturn 'u128';\n\t\t}\n\t\tif ('u256' in tag) {\n\t\t\treturn 'u256';\n\t\t}\n\t\tif ('address' in tag) {\n\t\t\treturn 'address';\n\t\t}\n\t\tif ('signer' in tag) {\n\t\t\treturn 'signer';\n\t\t}\n\t\tif ('vector' in tag) {\n\t\t\treturn `vector<${TypeTagSerializer.tagToString(tag.vector)}>`;\n\t\t}\n\t\tif ('struct' in tag) {\n\t\t\tconst struct = tag.struct;\n\t\t\tconst typeParams = struct.typeParams.map(TypeTagSerializer.tagToString).join(', ');\n\t\t\treturn `${struct.address}::${struct.module}::${struct.name}${\n\t\t\t\ttypeParams ? `<${typeParams}>` : ''\n\t\t\t}`;\n\t\t}\n\t\tthrow new Error('Invalid TypeTag');\n\t}\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAuC;AAEvC,uBAAoC;AAGpC,MAAM,eAAe;AACrB,MAAM,eAAe;AAEd,MAAM,kBAAkB;AAAA,EAC9B,OAAO,aAAa,KAAa,mBAAmB,OAAgB;AACnE,QAAI,QAAQ,WAAW;AACtB,aAAO,EAAE,SAAS,KAAK;AAAA,IACxB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,MAAM;AACxB,aAAO,EAAE,IAAI,KAAK;AAAA,IACnB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,UAAU;AAC5B,aAAO,EAAE,QAAQ,KAAK;AAAA,IACvB;AAEA,UAAM,cAAc,IAAI,MAAM,YAAY;AAC1C,QAAI,aAAa;AAChB,aAAO;AAAA,QACN,QAAQ,kBAAkB,aAAa,YAAY,CAAC,GAAG,gBAAgB;AAAA,MACxE;AAAA,IACD;AAEA,UAAM,cAAc,IAAI,MAAM,YAAY;AAC1C,QAAI,aAAa;AAChB,YAAM,UAAU,uBAAmB,sCAAoB,YAAY,CAAC,CAAC,IAAI,YAAY,CAAC;AACtF,aAAO;AAAA,QACN,QAAQ;AAAA,UACP;AAAA,UACA,QAAQ,YAAY,CAAC;AAAA,UACrB,MAAM,YAAY,CAAC;AAAA,UACnB,YACC,YAAY,CAAC,MAAM,SAChB,CAAC,IACD,kBAAkB,oBAAoB,YAAY,CAAC,GAAG,gBAAgB;AAAA,QAC3E;AAAA,MACD;AAAA,IACD;AAEA,UAAM,IAAI,MAAM,2DAA2D,GAAG,EAAE;AAAA,EACjF;AAAA,EAEA,OAAO,oBAAoB,KAAa,mBAAmB,OAAkB;AAC5E,eAAO,mCAAuB,GAAG,EAAE;AAAA,MAAI,CAAC,QACvC,kBAAkB,aAAa,KAAK,gBAAgB;AAAA,IACrD;AAAA,EACD;AAAA,EAEA,OAAO,YAAY,KAAsB;AACxC,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,QAAQ,KAAK;AAChB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,aAAa,KAAK;AACrB,aAAO;AAAA,IACR;AACA,QAAI,YAAY,KAAK;AACpB,aAAO;AAAA,IACR;AACA,QAAI,YAAY,KAAK;AACpB,aAAO,UAAU,kBAAkB,YAAY,IAAI,MAAM,CAAC;AAAA,IAC3D;AACA,QAAI,YAAY,KAAK;AACpB,YAAM,SAAS,IAAI;AACnB,YAAM,aAAa,OAAO,WAAW,IAAI,kBAAkB,WAAW,EAAE,KAAK,IAAI;AACjF,aAAO,GAAG,OAAO,OAAO,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI,GACzD,aAAa,IAAI,UAAU,MAAM,EAClC;AAAA,IACD;AACA,UAAM,IAAI,MAAM,iBAAiB;AAAA,EAClC;AACD;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { splitGenericParameters } from '@mysten/bcs';\n\nimport { normalizeSuiAddress } from '../utils/sui-types.js';\nimport type { TypeTag } from './types.js';\n\nconst VECTOR_REGEX = /^vector<(.+)>$/;\nconst STRUCT_REGEX = /^([^:]+)::([^:]+)::([^<]+)(<(.+)>)?/;\n\nexport class TypeTagSerializer {\n\tstatic parseFromStr(str: string, normalizeAddress = false): TypeTag {\n\t\tif (str === 'address') {\n\t\t\treturn { address: null };\n\t\t} else if (str === 'bool') {\n\t\t\treturn { bool: null };\n\t\t} else if (str === 'u8') {\n\t\t\treturn { u8: null };\n\t\t} else if (str === 'u16') {\n\t\t\treturn { u16: null };\n\t\t} else if (str === 'u32') {\n\t\t\treturn { u32: null };\n\t\t} else if (str === 'u64') {\n\t\t\treturn { u64: null };\n\t\t} else if (str === 'u128') {\n\t\t\treturn { u128: null };\n\t\t} else if (str === 'u256') {\n\t\t\treturn { u256: null };\n\t\t} else if (str === 'signer') {\n\t\t\treturn { signer: null };\n\t\t}\n\n\t\tconst vectorMatch = str.match(VECTOR_REGEX);\n\t\tif (vectorMatch) {\n\t\t\treturn {\n\t\t\t\tvector: TypeTagSerializer.parseFromStr(vectorMatch[1], normalizeAddress),\n\t\t\t};\n\t\t}\n\n\t\tconst structMatch = str.match(STRUCT_REGEX);\n\t\tif (structMatch) {\n\t\t\tconst address = normalizeAddress ? normalizeSuiAddress(structMatch[1]) : structMatch[1];\n\t\t\treturn {\n\t\t\t\tstruct: {\n\t\t\t\t\taddress,\n\t\t\t\t\tmodule: structMatch[2],\n\t\t\t\t\tname: structMatch[3],\n\t\t\t\t\ttypeParams:\n\t\t\t\t\t\tstructMatch[5] === undefined\n\t\t\t\t\t\t\t? []\n\t\t\t\t\t\t\t: TypeTagSerializer.parseStructTypeArgs(structMatch[5], normalizeAddress),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\tthrow new Error(`Encountered unexpected token when parsing type args for ${str}`);\n\t}\n\n\tstatic parseStructTypeArgs(str: string, normalizeAddress = false): TypeTag[] {\n\t\treturn splitGenericParameters(str).map((tok) =>\n\t\t\tTypeTagSerializer.parseFromStr(tok, normalizeAddress),\n\t\t);\n\t}\n\n\tstatic tagToString(tag: TypeTag): string {\n\t\tif ('bool' in tag) {\n\t\t\treturn 'bool';\n\t\t}\n\t\tif ('u8' in tag) {\n\t\t\treturn 'u8';\n\t\t}\n\t\tif ('u16' in tag) {\n\t\t\treturn 'u16';\n\t\t}\n\t\tif ('u32' in tag) {\n\t\t\treturn 'u32';\n\t\t}\n\t\tif ('u64' in tag) {\n\t\t\treturn 'u64';\n\t\t}\n\t\tif ('u128' in tag) {\n\t\t\treturn 'u128';\n\t\t}\n\t\tif ('u256' in tag) {\n\t\t\treturn 'u256';\n\t\t}\n\t\tif ('address' in tag) {\n\t\t\treturn 'address';\n\t\t}\n\t\tif ('signer' in tag) {\n\t\t\treturn 'signer';\n\t\t}\n\t\tif ('vector' in tag) {\n\t\t\treturn `vector<${TypeTagSerializer.tagToString(tag.vector)}>`;\n\t\t}\n\t\tif ('struct' in tag) {\n\t\t\tconst struct = tag.struct;\n\t\t\tconst typeParams = struct.typeParams.map(TypeTagSerializer.tagToString).join(', ');\n\t\t\treturn `${struct.address}::${struct.module}::${struct.name}${\n\t\t\t\ttypeParams ? `<${typeParams}>` : ''\n\t\t\t}`;\n\t\t}\n\t\tthrow new Error('Invalid TypeTag');\n\t}\n}\n\nexport function normalizeTypeTag(type: string): string {\n\treturn TypeTagSerializer.tagToString(TypeTagSerializer.parseFromStr(type));\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAuC;AAEvC,uBAAoC;AAGpC,MAAM,eAAe;AACrB,MAAM,eAAe;AAEd,MAAM,kBAAkB;AAAA,EAC9B,OAAO,aAAa,KAAa,mBAAmB,OAAgB;AACnE,QAAI,QAAQ,WAAW;AACtB,aAAO,EAAE,SAAS,KAAK;AAAA,IACxB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,MAAM;AACxB,aAAO,EAAE,IAAI,KAAK;AAAA,IACnB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,OAAO;AACzB,aAAO,EAAE,KAAK,KAAK;AAAA,IACpB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,QAAQ;AAC1B,aAAO,EAAE,MAAM,KAAK;AAAA,IACrB,WAAW,QAAQ,UAAU;AAC5B,aAAO,EAAE,QAAQ,KAAK;AAAA,IACvB;AAEA,UAAM,cAAc,IAAI,MAAM,YAAY;AAC1C,QAAI,aAAa;AAChB,aAAO;AAAA,QACN,QAAQ,kBAAkB,aAAa,YAAY,CAAC,GAAG,gBAAgB;AAAA,MACxE;AAAA,IACD;AAEA,UAAM,cAAc,IAAI,MAAM,YAAY;AAC1C,QAAI,aAAa;AAChB,YAAM,UAAU,uBAAmB,sCAAoB,YAAY,CAAC,CAAC,IAAI,YAAY,CAAC;AACtF,aAAO;AAAA,QACN,QAAQ;AAAA,UACP;AAAA,UACA,QAAQ,YAAY,CAAC;AAAA,UACrB,MAAM,YAAY,CAAC;AAAA,UACnB,YACC,YAAY,CAAC,MAAM,SAChB,CAAC,IACD,kBAAkB,oBAAoB,YAAY,CAAC,GAAG,gBAAgB;AAAA,QAC3E;AAAA,MACD;AAAA,IACD;AAEA,UAAM,IAAI,MAAM,2DAA2D,GAAG,EAAE;AAAA,EACjF;AAAA,EAEA,OAAO,oBAAoB,KAAa,mBAAmB,OAAkB;AAC5E,eAAO,mCAAuB,GAAG,EAAE;AAAA,MAAI,CAAC,QACvC,kBAAkB,aAAa,KAAK,gBAAgB;AAAA,IACrD;AAAA,EACD;AAAA,EAEA,OAAO,YAAY,KAAsB;AACxC,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,QAAQ,KAAK;AAChB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,KAAK;AACjB,aAAO;AAAA,IACR;AACA,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,UAAU,KAAK;AAClB,aAAO;AAAA,IACR;AACA,QAAI,aAAa,KAAK;AACrB,aAAO;AAAA,IACR;AACA,QAAI,YAAY,KAAK;AACpB,aAAO;AAAA,IACR;AACA,QAAI,YAAY,KAAK;AACpB,aAAO,UAAU,kBAAkB,YAAY,IAAI,MAAM,CAAC;AAAA,IAC3D;AACA,QAAI,YAAY,KAAK;AACpB,YAAM,SAAS,IAAI;AACnB,YAAM,aAAa,OAAO,WAAW,IAAI,kBAAkB,WAAW,EAAE,KAAK,IAAI;AACjF,aAAO,GAAG,OAAO,OAAO,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI,GACzD,aAAa,IAAI,UAAU,MAAM,EAClC;AAAA,IACD;AACA,UAAM,IAAI,MAAM,iBAAiB;AAAA,EAClC;AACD;AAEO,SAAS,iBAAiB,MAAsB;AACtD,SAAO,kBAAkB,YAAY,kBAAkB,aAAa,IAAI,CAAC;AAC1E;",
6
6
  "names": []
7
7
  }
@@ -23,7 +23,7 @@ __export(intent_exports, {
23
23
  module.exports = __toCommonJS(intent_exports);
24
24
  var import_bcs = require("../bcs/index.js");
25
25
  function messageWithIntent(scope, message) {
26
- return import_bcs.bcs.IntentMessage(import_bcs.bcs.fixedArray(message.length, import_bcs.bcs.u8())).serialize({
26
+ return import_bcs.bcs.IntentMessage(import_bcs.bcs.bytes(message.length)).serialize({
27
27
  intent: {
28
28
  scope: { [scope]: true },
29
29
  version: { V0: true },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cryptography/intent.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { bcs } from '../bcs/index.js';\n\nexport type IntentScope = Exclude<keyof typeof bcs.IntentScope.$inferType, '$kind'>;\n/**\n * Inserts a domain separator for a message that is being signed\n */\nexport function messageWithIntent(scope: IntentScope, message: Uint8Array) {\n\treturn bcs\n\t\t.IntentMessage(bcs.fixedArray(message.length, bcs.u8()))\n\t\t.serialize({\n\t\t\tintent: {\n\t\t\t\tscope: { [scope as 'PersonalMessage']: true },\n\t\t\t\tversion: { V0: true },\n\t\t\t\tappId: { Sui: true },\n\t\t\t},\n\t\t\tvalue: message,\n\t\t})\n\t\t.toBytes();\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAoB;AAMb,SAAS,kBAAkB,OAAoB,SAAqB;AAC1E,SAAO,eACL,cAAc,eAAI,WAAW,QAAQ,QAAQ,eAAI,GAAG,CAAC,CAAC,EACtD,UAAU;AAAA,IACV,QAAQ;AAAA,MACP,OAAO,EAAE,CAAC,KAA0B,GAAG,KAAK;AAAA,MAC5C,SAAS,EAAE,IAAI,KAAK;AAAA,MACpB,OAAO,EAAE,KAAK,KAAK;AAAA,IACpB;AAAA,IACA,OAAO;AAAA,EACR,CAAC,EACA,QAAQ;AACX;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { bcs } from '../bcs/index.js';\n\nexport type IntentScope = Exclude<keyof typeof bcs.IntentScope.$inferType, '$kind'>;\n/**\n * Inserts a domain separator for a message that is being signed\n */\nexport function messageWithIntent(scope: IntentScope, message: Uint8Array) {\n\treturn bcs\n\t\t.IntentMessage(bcs.bytes(message.length))\n\t\t.serialize({\n\t\t\tintent: {\n\t\t\t\tscope: { [scope as 'PersonalMessage']: true },\n\t\t\t\tversion: { V0: true },\n\t\t\t\tappId: { Sui: true },\n\t\t\t},\n\t\t\tvalue: message,\n\t\t})\n\t\t.toBytes();\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAoB;AAMb,SAAS,kBAAkB,OAAoB,SAAqB;AAC1E,SAAO,eACL,cAAc,eAAI,MAAM,QAAQ,MAAM,CAAC,EACvC,UAAU;AAAA,IACV,QAAQ;AAAA,MACP,OAAO,EAAE,CAAC,KAA0B,GAAG,KAAK;AAAA,MAC5C,SAAS,EAAE,IAAI,KAAK;AAAA,MACpB,OAAO,EAAE,KAAK,KAAK;AAAA,IACpB;AAAA,IACA,OAAO;AAAA,EACR,CAAC,EACA,QAAQ;AACX;",
6
6
  "names": []
7
7
  }
@@ -65,7 +65,7 @@ class Signer {
65
65
  */
66
66
  async signPersonalMessage(bytes) {
67
67
  const { signature } = await this.signWithIntent(
68
- import_bcs.bcs.vector(import_bcs.bcs.u8()).serialize(bytes).toBytes(),
68
+ import_bcs.bcs.byteVector().serialize(bytes).toBytes(),
69
69
  "PersonalMessage"
70
70
  );
71
71
  return {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cryptography/keypair.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { bcs, toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bech32 } from '@scure/base';\n\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\nimport type { PublicKey } from './publickey.js';\nimport { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_FLAG } from './signature-scheme.js';\nimport type { SignatureScheme } from './signature-scheme.js';\nimport { toSerializedSignature } from './signature.js';\nimport type { Transaction } from '../transactions/Transaction.js';\nimport type { ClientWithCoreApi, Experimental_SuiClientTypes } from '../experimental/index.js';\n\nexport const PRIVATE_KEY_SIZE = 32;\nexport const LEGACY_PRIVATE_KEY_SIZE = 64;\nexport const SUI_PRIVATE_KEY_PREFIX = 'suiprivkey';\n\nexport type ParsedKeypair = {\n\tscheme: SignatureScheme;\n\t/** @deprecated use `scheme` instead */\n\tschema: SignatureScheme;\n\tsecretKey: Uint8Array;\n};\n\nexport interface SignatureWithBytes {\n\tbytes: string;\n\tsignature: string;\n}\n\nexport interface SignAndExecuteOptions {\n\ttransaction: Transaction;\n\tclient: ClientWithCoreApi;\n}\n\n/**\n * TODO: Document\n */\nexport abstract class Signer {\n\tabstract sign(bytes: Uint8Array): Promise<Uint8Array<ArrayBuffer>>;\n\t/**\n\t * Sign messages with a specific intent. By combining the message bytes with the intent before hashing and signing,\n\t * it ensures that a signed message is tied to a specific purpose and domain separator is provided\n\t */\n\tasync signWithIntent(bytes: Uint8Array, intent: IntentScope): Promise<SignatureWithBytes> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\tconst signature = toSerializedSignature({\n\t\t\tsignature: await this.sign(digest),\n\t\t\tsignatureScheme: this.getKeyScheme(),\n\t\t\tpublicKey: this.getPublicKey(),\n\t\t});\n\n\t\treturn {\n\t\t\tsignature,\n\t\t\tbytes: toBase64(bytes),\n\t\t};\n\t}\n\t/**\n\t * Signs provided transaction by calling `signWithIntent()` with a `TransactionData` provided as intent scope\n\t */\n\tasync signTransaction(bytes: Uint8Array) {\n\t\treturn this.signWithIntent(bytes, 'TransactionData');\n\t}\n\t/**\n\t * Signs provided personal message by calling `signWithIntent()` with a `PersonalMessage` provided as intent scope\n\t */\n\tasync signPersonalMessage(bytes: Uint8Array) {\n\t\tconst { signature } = await this.signWithIntent(\n\t\t\tbcs.vector(bcs.u8()).serialize(bytes).toBytes(),\n\t\t\t'PersonalMessage',\n\t\t);\n\n\t\treturn {\n\t\t\tbytes: toBase64(bytes),\n\t\t\tsignature,\n\t\t};\n\t}\n\n\tasync signAndExecuteTransaction({\n\t\ttransaction,\n\t\tclient,\n\t}: SignAndExecuteOptions): Promise<\n\t\tOmit<Experimental_SuiClientTypes.TransactionResponse, 'balanceChanges'>\n\t> {\n\t\tconst bytes = await transaction.build({ client });\n\t\tconst { signature } = await this.signTransaction(bytes);\n\t\tconst response = await client.core.executeTransaction({\n\t\t\ttransaction: bytes,\n\t\t\tsignatures: [signature],\n\t\t});\n\n\t\treturn response.transaction;\n\t}\n\n\ttoSuiAddress(): string {\n\t\treturn this.getPublicKey().toSuiAddress();\n\t}\n\n\t/**\n\t * Get the key scheme of the keypair: Secp256k1 or ED25519\n\t */\n\tabstract getKeyScheme(): SignatureScheme;\n\n\t/**\n\t * The public key for this keypair\n\t */\n\tabstract getPublicKey(): PublicKey;\n}\n\nexport abstract class Keypair extends Signer {\n\t/**\n\t * This returns the Bech32 secret key string for this keypair.\n\t */\n\tabstract getSecretKey(): string;\n}\n\n/**\n * This returns an ParsedKeypair object based by validating the\n * 33-byte Bech32 encoded string starting with `suiprivkey`, and\n * parse out the signature scheme and the private key in bytes.\n */\nexport function decodeSuiPrivateKey(value: string): ParsedKeypair {\n\tconst { prefix, words } = bech32.decode(value as `${string}1${string}`);\n\tif (prefix !== SUI_PRIVATE_KEY_PREFIX) {\n\t\tthrow new Error('invalid private key prefix');\n\t}\n\tconst extendedSecretKey = new Uint8Array(bech32.fromWords(words));\n\tconst secretKey = extendedSecretKey.slice(1);\n\tconst signatureScheme =\n\t\tSIGNATURE_FLAG_TO_SCHEME[extendedSecretKey[0] as keyof typeof SIGNATURE_FLAG_TO_SCHEME];\n\n\treturn {\n\t\tscheme: signatureScheme,\n\t\tschema: signatureScheme,\n\t\tsecretKey: secretKey,\n\t};\n}\n\n/**\n * This returns a Bech32 encoded string starting with `suiprivkey`,\n * encoding 33-byte `flag || bytes` for the given the 32-byte private\n * key and its signature scheme.\n */\nexport function encodeSuiPrivateKey(bytes: Uint8Array, scheme: SignatureScheme): string {\n\tif (bytes.length !== PRIVATE_KEY_SIZE) {\n\t\tthrow new Error('Invalid bytes length');\n\t}\n\tconst flag = SIGNATURE_SCHEME_TO_FLAG[scheme];\n\tconst privKeyBytes = new Uint8Array(bytes.length + 1);\n\tprivKeyBytes.set([flag]);\n\tprivKeyBytes.set(bytes, 1);\n\treturn bech32.encode(SUI_PRIVATE_KEY_PREFIX, bech32.toWords(privKeyBytes));\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAA8B;AAC9B,qBAAwB;AACxB,kBAAuB;AAGvB,oBAAkC;AAElC,8BAAmE;AAEnE,uBAAsC;AAI/B,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAChC,MAAM,yBAAyB;AAsB/B,MAAe,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAM5B,MAAM,eAAe,OAAmB,QAAkD;AACzF,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,UAAM,gBAAY,wCAAsB;AAAA,MACvC,WAAW,MAAM,KAAK,KAAK,MAAM;AAAA,MACjC,iBAAiB,KAAK,aAAa;AAAA,MACnC,WAAW,KAAK,aAAa;AAAA,IAC9B,CAAC;AAED,WAAO;AAAA,MACN;AAAA,MACA,WAAO,qBAAS,KAAK;AAAA,IACtB;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,gBAAgB,OAAmB;AACxC,WAAO,KAAK,eAAe,OAAO,iBAAiB;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,oBAAoB,OAAmB;AAC5C,UAAM,EAAE,UAAU,IAAI,MAAM,KAAK;AAAA,MAChC,eAAI,OAAO,eAAI,GAAG,CAAC,EAAE,UAAU,KAAK,EAAE,QAAQ;AAAA,MAC9C;AAAA,IACD;AAEA,WAAO;AAAA,MACN,WAAO,qBAAS,KAAK;AAAA,MACrB;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,0BAA0B;AAAA,IAC/B;AAAA,IACA;AAAA,EACD,GAEE;AACD,UAAM,QAAQ,MAAM,YAAY,MAAM,EAAE,OAAO,CAAC;AAChD,UAAM,EAAE,UAAU,IAAI,MAAM,KAAK,gBAAgB,KAAK;AACtD,UAAM,WAAW,MAAM,OAAO,KAAK,mBAAmB;AAAA,MACrD,aAAa;AAAA,MACb,YAAY,CAAC,SAAS;AAAA,IACvB,CAAC;AAED,WAAO,SAAS;AAAA,EACjB;AAAA,EAEA,eAAuB;AACtB,WAAO,KAAK,aAAa,EAAE,aAAa;AAAA,EACzC;AAWD;AAEO,MAAe,gBAAgB,OAAO;AAK7C;AAOO,SAAS,oBAAoB,OAA8B;AACjE,QAAM,EAAE,QAAQ,MAAM,IAAI,mBAAO,OAAO,KAA8B;AACtE,MAAI,WAAW,wBAAwB;AACtC,UAAM,IAAI,MAAM,4BAA4B;AAAA,EAC7C;AACA,QAAM,oBAAoB,IAAI,WAAW,mBAAO,UAAU,KAAK,CAAC;AAChE,QAAM,YAAY,kBAAkB,MAAM,CAAC;AAC3C,QAAM,kBACL,iDAAyB,kBAAkB,CAAC,CAA0C;AAEvF,SAAO;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR;AAAA,EACD;AACD;AAOO,SAAS,oBAAoB,OAAmB,QAAiC;AACvF,MAAI,MAAM,WAAW,kBAAkB;AACtC,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACvC;AACA,QAAM,OAAO,iDAAyB,MAAM;AAC5C,QAAM,eAAe,IAAI,WAAW,MAAM,SAAS,CAAC;AACpD,eAAa,IAAI,CAAC,IAAI,CAAC;AACvB,eAAa,IAAI,OAAO,CAAC;AACzB,SAAO,mBAAO,OAAO,wBAAwB,mBAAO,QAAQ,YAAY,CAAC;AAC1E;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { bcs, toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bech32 } from '@scure/base';\n\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\nimport type { PublicKey } from './publickey.js';\nimport { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_FLAG } from './signature-scheme.js';\nimport type { SignatureScheme } from './signature-scheme.js';\nimport { toSerializedSignature } from './signature.js';\nimport type { Transaction } from '../transactions/Transaction.js';\nimport type { ClientWithCoreApi, Experimental_SuiClientTypes } from '../experimental/index.js';\n\nexport const PRIVATE_KEY_SIZE = 32;\nexport const LEGACY_PRIVATE_KEY_SIZE = 64;\nexport const SUI_PRIVATE_KEY_PREFIX = 'suiprivkey';\n\nexport type ParsedKeypair = {\n\tscheme: SignatureScheme;\n\t/** @deprecated use `scheme` instead */\n\tschema: SignatureScheme;\n\tsecretKey: Uint8Array;\n};\n\nexport interface SignatureWithBytes {\n\tbytes: string;\n\tsignature: string;\n}\n\nexport interface SignAndExecuteOptions {\n\ttransaction: Transaction;\n\tclient: ClientWithCoreApi;\n}\n\n/**\n * TODO: Document\n */\nexport abstract class Signer {\n\tabstract sign(bytes: Uint8Array): Promise<Uint8Array<ArrayBuffer>>;\n\t/**\n\t * Sign messages with a specific intent. By combining the message bytes with the intent before hashing and signing,\n\t * it ensures that a signed message is tied to a specific purpose and domain separator is provided\n\t */\n\tasync signWithIntent(bytes: Uint8Array, intent: IntentScope): Promise<SignatureWithBytes> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\tconst signature = toSerializedSignature({\n\t\t\tsignature: await this.sign(digest),\n\t\t\tsignatureScheme: this.getKeyScheme(),\n\t\t\tpublicKey: this.getPublicKey(),\n\t\t});\n\n\t\treturn {\n\t\t\tsignature,\n\t\t\tbytes: toBase64(bytes),\n\t\t};\n\t}\n\t/**\n\t * Signs provided transaction by calling `signWithIntent()` with a `TransactionData` provided as intent scope\n\t */\n\tasync signTransaction(bytes: Uint8Array) {\n\t\treturn this.signWithIntent(bytes, 'TransactionData');\n\t}\n\t/**\n\t * Signs provided personal message by calling `signWithIntent()` with a `PersonalMessage` provided as intent scope\n\t */\n\tasync signPersonalMessage(bytes: Uint8Array) {\n\t\tconst { signature } = await this.signWithIntent(\n\t\t\tbcs.byteVector().serialize(bytes).toBytes(),\n\t\t\t'PersonalMessage',\n\t\t);\n\n\t\treturn {\n\t\t\tbytes: toBase64(bytes),\n\t\t\tsignature,\n\t\t};\n\t}\n\n\tasync signAndExecuteTransaction({\n\t\ttransaction,\n\t\tclient,\n\t}: SignAndExecuteOptions): Promise<\n\t\tOmit<Experimental_SuiClientTypes.TransactionResponse, 'balanceChanges'>\n\t> {\n\t\tconst bytes = await transaction.build({ client });\n\t\tconst { signature } = await this.signTransaction(bytes);\n\t\tconst response = await client.core.executeTransaction({\n\t\t\ttransaction: bytes,\n\t\t\tsignatures: [signature],\n\t\t});\n\n\t\treturn response.transaction;\n\t}\n\n\ttoSuiAddress(): string {\n\t\treturn this.getPublicKey().toSuiAddress();\n\t}\n\n\t/**\n\t * Get the key scheme of the keypair: Secp256k1 or ED25519\n\t */\n\tabstract getKeyScheme(): SignatureScheme;\n\n\t/**\n\t * The public key for this keypair\n\t */\n\tabstract getPublicKey(): PublicKey;\n}\n\nexport abstract class Keypair extends Signer {\n\t/**\n\t * This returns the Bech32 secret key string for this keypair.\n\t */\n\tabstract getSecretKey(): string;\n}\n\n/**\n * This returns an ParsedKeypair object based by validating the\n * 33-byte Bech32 encoded string starting with `suiprivkey`, and\n * parse out the signature scheme and the private key in bytes.\n */\nexport function decodeSuiPrivateKey(value: string): ParsedKeypair {\n\tconst { prefix, words } = bech32.decode(value as `${string}1${string}`);\n\tif (prefix !== SUI_PRIVATE_KEY_PREFIX) {\n\t\tthrow new Error('invalid private key prefix');\n\t}\n\tconst extendedSecretKey = new Uint8Array(bech32.fromWords(words));\n\tconst secretKey = extendedSecretKey.slice(1);\n\tconst signatureScheme =\n\t\tSIGNATURE_FLAG_TO_SCHEME[extendedSecretKey[0] as keyof typeof SIGNATURE_FLAG_TO_SCHEME];\n\n\treturn {\n\t\tscheme: signatureScheme,\n\t\tschema: signatureScheme,\n\t\tsecretKey: secretKey,\n\t};\n}\n\n/**\n * This returns a Bech32 encoded string starting with `suiprivkey`,\n * encoding 33-byte `flag || bytes` for the given the 32-byte private\n * key and its signature scheme.\n */\nexport function encodeSuiPrivateKey(bytes: Uint8Array, scheme: SignatureScheme): string {\n\tif (bytes.length !== PRIVATE_KEY_SIZE) {\n\t\tthrow new Error('Invalid bytes length');\n\t}\n\tconst flag = SIGNATURE_SCHEME_TO_FLAG[scheme];\n\tconst privKeyBytes = new Uint8Array(bytes.length + 1);\n\tprivKeyBytes.set([flag]);\n\tprivKeyBytes.set(bytes, 1);\n\treturn bech32.encode(SUI_PRIVATE_KEY_PREFIX, bech32.toWords(privKeyBytes));\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAA8B;AAC9B,qBAAwB;AACxB,kBAAuB;AAGvB,oBAAkC;AAElC,8BAAmE;AAEnE,uBAAsC;AAI/B,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAChC,MAAM,yBAAyB;AAsB/B,MAAe,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAM5B,MAAM,eAAe,OAAmB,QAAkD;AACzF,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,UAAM,gBAAY,wCAAsB;AAAA,MACvC,WAAW,MAAM,KAAK,KAAK,MAAM;AAAA,MACjC,iBAAiB,KAAK,aAAa;AAAA,MACnC,WAAW,KAAK,aAAa;AAAA,IAC9B,CAAC;AAED,WAAO;AAAA,MACN;AAAA,MACA,WAAO,qBAAS,KAAK;AAAA,IACtB;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,gBAAgB,OAAmB;AACxC,WAAO,KAAK,eAAe,OAAO,iBAAiB;AAAA,EACpD;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,oBAAoB,OAAmB;AAC5C,UAAM,EAAE,UAAU,IAAI,MAAM,KAAK;AAAA,MAChC,eAAI,WAAW,EAAE,UAAU,KAAK,EAAE,QAAQ;AAAA,MAC1C;AAAA,IACD;AAEA,WAAO;AAAA,MACN,WAAO,qBAAS,KAAK;AAAA,MACrB;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,0BAA0B;AAAA,IAC/B;AAAA,IACA;AAAA,EACD,GAEE;AACD,UAAM,QAAQ,MAAM,YAAY,MAAM,EAAE,OAAO,CAAC;AAChD,UAAM,EAAE,UAAU,IAAI,MAAM,KAAK,gBAAgB,KAAK;AACtD,UAAM,WAAW,MAAM,OAAO,KAAK,mBAAmB;AAAA,MACrD,aAAa;AAAA,MACb,YAAY,CAAC,SAAS;AAAA,IACvB,CAAC;AAED,WAAO,SAAS;AAAA,EACjB;AAAA,EAEA,eAAuB;AACtB,WAAO,KAAK,aAAa,EAAE,aAAa;AAAA,EACzC;AAWD;AAEO,MAAe,gBAAgB,OAAO;AAK7C;AAOO,SAAS,oBAAoB,OAA8B;AACjE,QAAM,EAAE,QAAQ,MAAM,IAAI,mBAAO,OAAO,KAA8B;AACtE,MAAI,WAAW,wBAAwB;AACtC,UAAM,IAAI,MAAM,4BAA4B;AAAA,EAC7C;AACA,QAAM,oBAAoB,IAAI,WAAW,mBAAO,UAAU,KAAK,CAAC;AAChE,QAAM,YAAY,kBAAkB,MAAM,CAAC;AAC3C,QAAM,kBACL,iDAAyB,kBAAkB,CAAC,CAA0C;AAEvF,SAAO;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR;AAAA,EACD;AACD;AAOO,SAAS,oBAAoB,OAAmB,QAAiC;AACvF,MAAI,MAAM,WAAW,kBAAkB;AACtC,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACvC;AACA,QAAM,OAAO,iDAAyB,MAAM;AAC5C,QAAM,eAAe,IAAI,WAAW,MAAM,SAAS,CAAC;AACpD,eAAa,IAAI,CAAC,IAAI,CAAC;AACvB,eAAa,IAAI,OAAO,CAAC;AACzB,SAAO,mBAAO,OAAO,wBAAwB,mBAAO,QAAQ,YAAY,CAAC;AAC1E;",
6
6
  "names": []
7
7
  }
@@ -79,7 +79,7 @@ class PublicKey {
79
79
  */
80
80
  verifyPersonalMessage(message, signature) {
81
81
  return this.verifyWithIntent(
82
- import_bcs2.bcs.vector(import_bcs2.bcs.u8()).serialize(message).toBytes(),
82
+ import_bcs2.bcs.byteVector().serialize(message).toBytes(),
83
83
  signature,
84
84
  "PersonalMessage"
85
85
  );
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cryptography/publickey.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { fromBase64, toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bytesToHex } from '@noble/hashes/utils';\n\nimport { bcs } from '../bcs/index.js';\nimport { normalizeSuiAddress, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\nimport { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_SIZE } from './signature-scheme.js';\n\n/**\n * Value to be converted into public key.\n */\nexport type PublicKeyInitData = string | Uint8Array | Iterable<number>;\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n\tif (a === b) return true;\n\n\tif (a.length !== b.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < a.length; i++) {\n\t\tif (a[i] !== b[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * A public key\n */\nexport abstract class PublicKey {\n\t/**\n\t * Checks if two public keys are equal\n\t */\n\tequals(publicKey: PublicKey) {\n\t\treturn bytesEqual(this.toRawBytes(), publicKey.toRawBytes());\n\t}\n\n\t/**\n\t * Return the base-64 representation of the public key\n\t */\n\ttoBase64() {\n\t\treturn toBase64(this.toRawBytes());\n\t}\n\n\ttoString(): never {\n\t\tthrow new Error(\n\t\t\t'`toString` is not implemented on public keys. Use `toBase64()` or `toRawBytes()` instead.',\n\t\t);\n\t}\n\n\t/**\n\t * Return the Sui representation of the public key encoded in\n\t * base-64. A Sui public key is formed by the concatenation\n\t * of the scheme flag with the raw bytes of the public key\n\t */\n\ttoSuiPublicKey(): string {\n\t\tconst bytes = this.toSuiBytes();\n\t\treturn toBase64(bytes);\n\t}\n\n\tverifyWithIntent(\n\t\tbytes: Uint8Array,\n\t\tsignature: Uint8Array | string,\n\t\tintent: IntentScope,\n\t): Promise<boolean> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\treturn this.verify(digest, signature);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided PersonalMessage\n\t */\n\tverifyPersonalMessage(message: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(\n\t\t\tbcs.vector(bcs.u8()).serialize(message).toBytes(),\n\t\t\tsignature,\n\t\t\t'PersonalMessage',\n\t\t);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided Transaction\n\t */\n\tverifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(transaction, signature, 'TransactionData');\n\t}\n\n\t/**\n\t * Verifies that the public key is associated with the provided address\n\t */\n\tverifyAddress(address: string): boolean {\n\t\treturn this.toSuiAddress() === address;\n\t}\n\n\t/**\n\t * Returns the bytes representation of the public key\n\t * prefixed with the signature scheme flag\n\t */\n\ttoSuiBytes(): Uint8Array<ArrayBuffer> {\n\t\tconst rawBytes = this.toRawBytes();\n\t\tconst suiBytes = new Uint8Array(rawBytes.length + 1);\n\t\tsuiBytes.set([this.flag()]);\n\t\tsuiBytes.set(rawBytes, 1);\n\n\t\treturn suiBytes;\n\t}\n\n\t/**\n\t * Return the Sui address associated with this Ed25519 public key\n\t */\n\ttoSuiAddress(): string {\n\t\t// Each hex char represents half a byte, hence hex address doubles the length\n\t\treturn normalizeSuiAddress(\n\t\t\tbytesToHex(blake2b(this.toSuiBytes(), { dkLen: 32 })).slice(0, SUI_ADDRESS_LENGTH * 2),\n\t\t);\n\t}\n\n\t/**\n\t * Return the byte array representation of the public key\n\t */\n\tabstract toRawBytes(): Uint8Array<ArrayBuffer>;\n\n\t/**\n\t * Return signature scheme flag of the public key\n\t */\n\tabstract flag(): number;\n\n\t/**\n\t * Verifies that the signature is valid for for the provided message\n\t */\n\tabstract verify(data: Uint8Array, signature: Uint8Array | string): Promise<boolean>;\n}\n\nexport function parseSerializedKeypairSignature(serializedSignature: string) {\n\tconst bytes = fromBase64(serializedSignature);\n\n\tconst signatureScheme =\n\t\tSIGNATURE_FLAG_TO_SCHEME[bytes[0] as keyof typeof SIGNATURE_FLAG_TO_SCHEME];\n\n\tswitch (signatureScheme) {\n\t\tcase 'ED25519':\n\t\tcase 'Secp256k1':\n\t\tcase 'Secp256r1':\n\t\t\tconst size =\n\t\t\t\tSIGNATURE_SCHEME_TO_SIZE[signatureScheme as keyof typeof SIGNATURE_SCHEME_TO_SIZE];\n\t\t\tconst signature = bytes.slice(1, bytes.length - size);\n\t\t\tconst publicKey = bytes.slice(1 + signature.length);\n\n\t\t\treturn {\n\t\t\t\tserializedSignature,\n\t\t\t\tsignatureScheme,\n\t\t\t\tsignature,\n\t\t\t\tpublicKey,\n\t\t\t\tbytes,\n\t\t\t};\n\t\tdefault:\n\t\t\tthrow new Error('Unsupported signature scheme');\n\t}\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAqC;AACrC,qBAAwB;AACxB,mBAA2B;AAE3B,IAAAA,cAAoB;AACpB,uBAAwD;AAExD,oBAAkC;AAClC,8BAAmE;AAO5D,SAAS,WAAW,GAAe,GAAe;AACxD,MAAI,MAAM,EAAG,QAAO;AAEpB,MAAI,EAAE,WAAW,EAAE,QAAQ;AAC1B,WAAO;AAAA,EACR;AAEA,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AAClC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG;AAClB,aAAO;AAAA,IACR;AAAA,EACD;AACA,SAAO;AACR;AAKO,MAAe,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/B,OAAO,WAAsB;AAC5B,WAAO,WAAW,KAAK,WAAW,GAAG,UAAU,WAAW,CAAC;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW;AACV,eAAO,qBAAS,KAAK,WAAW,CAAC;AAAA,EAClC;AAAA,EAEA,WAAkB;AACjB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,iBAAyB;AACxB,UAAM,QAAQ,KAAK,WAAW;AAC9B,eAAO,qBAAS,KAAK;AAAA,EACtB;AAAA,EAEA,iBACC,OACA,WACA,QACmB;AACnB,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,sBAAsB,SAAqB,WAAkD;AAC5F,WAAO,KAAK;AAAA,MACX,gBAAI,OAAO,gBAAI,GAAG,CAAC,EAAE,UAAU,OAAO,EAAE,QAAQ;AAAA,MAChD;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,aAAyB,WAAkD;AAC5F,WAAO,KAAK,iBAAiB,aAAa,WAAW,iBAAiB;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,SAA0B;AACvC,WAAO,KAAK,aAAa,MAAM;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAsC;AACrC,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,WAAW,IAAI,WAAW,SAAS,SAAS,CAAC;AACnD,aAAS,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;AAC1B,aAAS,IAAI,UAAU,CAAC;AAExB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,eAAuB;AAEtB,eAAO;AAAA,UACN,6BAAW,wBAAQ,KAAK,WAAW,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,sCAAqB,CAAC;AAAA,IACtF;AAAA,EACD;AAgBD;AAEO,SAAS,gCAAgC,qBAA6B;AAC5E,QAAM,YAAQ,uBAAW,mBAAmB;AAE5C,QAAM,kBACL,iDAAyB,MAAM,CAAC,CAA0C;AAE3E,UAAQ,iBAAiB;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACJ,YAAM,OACL,iDAAyB,eAAwD;AAClF,YAAM,YAAY,MAAM,MAAM,GAAG,MAAM,SAAS,IAAI;AACpD,YAAM,YAAY,MAAM,MAAM,IAAI,UAAU,MAAM;AAElD,aAAO;AAAA,QACN;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AACC,YAAM,IAAI,MAAM,8BAA8B;AAAA,EAChD;AACD;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { fromBase64, toBase64 } from '@mysten/bcs';\nimport { blake2b } from '@noble/hashes/blake2b';\nimport { bytesToHex } from '@noble/hashes/utils';\n\nimport { bcs } from '../bcs/index.js';\nimport { normalizeSuiAddress, SUI_ADDRESS_LENGTH } from '../utils/sui-types.js';\nimport type { IntentScope } from './intent.js';\nimport { messageWithIntent } from './intent.js';\nimport { SIGNATURE_FLAG_TO_SCHEME, SIGNATURE_SCHEME_TO_SIZE } from './signature-scheme.js';\n\n/**\n * Value to be converted into public key.\n */\nexport type PublicKeyInitData = string | Uint8Array | Iterable<number>;\n\nexport function bytesEqual(a: Uint8Array, b: Uint8Array) {\n\tif (a === b) return true;\n\n\tif (a.length !== b.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < a.length; i++) {\n\t\tif (a[i] !== b[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * A public key\n */\nexport abstract class PublicKey {\n\t/**\n\t * Checks if two public keys are equal\n\t */\n\tequals(publicKey: PublicKey) {\n\t\treturn bytesEqual(this.toRawBytes(), publicKey.toRawBytes());\n\t}\n\n\t/**\n\t * Return the base-64 representation of the public key\n\t */\n\ttoBase64() {\n\t\treturn toBase64(this.toRawBytes());\n\t}\n\n\ttoString(): never {\n\t\tthrow new Error(\n\t\t\t'`toString` is not implemented on public keys. Use `toBase64()` or `toRawBytes()` instead.',\n\t\t);\n\t}\n\n\t/**\n\t * Return the Sui representation of the public key encoded in\n\t * base-64. A Sui public key is formed by the concatenation\n\t * of the scheme flag with the raw bytes of the public key\n\t */\n\ttoSuiPublicKey(): string {\n\t\tconst bytes = this.toSuiBytes();\n\t\treturn toBase64(bytes);\n\t}\n\n\tverifyWithIntent(\n\t\tbytes: Uint8Array,\n\t\tsignature: Uint8Array | string,\n\t\tintent: IntentScope,\n\t): Promise<boolean> {\n\t\tconst intentMessage = messageWithIntent(intent, bytes);\n\t\tconst digest = blake2b(intentMessage, { dkLen: 32 });\n\n\t\treturn this.verify(digest, signature);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided PersonalMessage\n\t */\n\tverifyPersonalMessage(message: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(\n\t\t\tbcs.byteVector().serialize(message).toBytes(),\n\t\t\tsignature,\n\t\t\t'PersonalMessage',\n\t\t);\n\t}\n\n\t/**\n\t * Verifies that the signature is valid for for the provided Transaction\n\t */\n\tverifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean> {\n\t\treturn this.verifyWithIntent(transaction, signature, 'TransactionData');\n\t}\n\n\t/**\n\t * Verifies that the public key is associated with the provided address\n\t */\n\tverifyAddress(address: string): boolean {\n\t\treturn this.toSuiAddress() === address;\n\t}\n\n\t/**\n\t * Returns the bytes representation of the public key\n\t * prefixed with the signature scheme flag\n\t */\n\ttoSuiBytes(): Uint8Array<ArrayBuffer> {\n\t\tconst rawBytes = this.toRawBytes();\n\t\tconst suiBytes = new Uint8Array(rawBytes.length + 1);\n\t\tsuiBytes.set([this.flag()]);\n\t\tsuiBytes.set(rawBytes, 1);\n\n\t\treturn suiBytes;\n\t}\n\n\t/**\n\t * Return the Sui address associated with this Ed25519 public key\n\t */\n\ttoSuiAddress(): string {\n\t\t// Each hex char represents half a byte, hence hex address doubles the length\n\t\treturn normalizeSuiAddress(\n\t\t\tbytesToHex(blake2b(this.toSuiBytes(), { dkLen: 32 })).slice(0, SUI_ADDRESS_LENGTH * 2),\n\t\t);\n\t}\n\n\t/**\n\t * Return the byte array representation of the public key\n\t */\n\tabstract toRawBytes(): Uint8Array<ArrayBuffer>;\n\n\t/**\n\t * Return signature scheme flag of the public key\n\t */\n\tabstract flag(): number;\n\n\t/**\n\t * Verifies that the signature is valid for for the provided message\n\t */\n\tabstract verify(data: Uint8Array, signature: Uint8Array | string): Promise<boolean>;\n}\n\nexport function parseSerializedKeypairSignature(serializedSignature: string) {\n\tconst bytes = fromBase64(serializedSignature);\n\n\tconst signatureScheme =\n\t\tSIGNATURE_FLAG_TO_SCHEME[bytes[0] as keyof typeof SIGNATURE_FLAG_TO_SCHEME];\n\n\tswitch (signatureScheme) {\n\t\tcase 'ED25519':\n\t\tcase 'Secp256k1':\n\t\tcase 'Secp256r1':\n\t\t\tconst size =\n\t\t\t\tSIGNATURE_SCHEME_TO_SIZE[signatureScheme as keyof typeof SIGNATURE_SCHEME_TO_SIZE];\n\t\t\tconst signature = bytes.slice(1, bytes.length - size);\n\t\t\tconst publicKey = bytes.slice(1 + signature.length);\n\n\t\t\treturn {\n\t\t\t\tserializedSignature,\n\t\t\t\tsignatureScheme,\n\t\t\t\tsignature,\n\t\t\t\tpublicKey,\n\t\t\t\tbytes,\n\t\t\t};\n\t\tdefault:\n\t\t\tthrow new Error('Unsupported signature scheme');\n\t}\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAqC;AACrC,qBAAwB;AACxB,mBAA2B;AAE3B,IAAAA,cAAoB;AACpB,uBAAwD;AAExD,oBAAkC;AAClC,8BAAmE;AAO5D,SAAS,WAAW,GAAe,GAAe;AACxD,MAAI,MAAM,EAAG,QAAO;AAEpB,MAAI,EAAE,WAAW,EAAE,QAAQ;AAC1B,WAAO;AAAA,EACR;AAEA,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AAClC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG;AAClB,aAAO;AAAA,IACR;AAAA,EACD;AACA,SAAO;AACR;AAKO,MAAe,UAAU;AAAA;AAAA;AAAA;AAAA,EAI/B,OAAO,WAAsB;AAC5B,WAAO,WAAW,KAAK,WAAW,GAAG,UAAU,WAAW,CAAC;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW;AACV,eAAO,qBAAS,KAAK,WAAW,CAAC;AAAA,EAClC;AAAA,EAEA,WAAkB;AACjB,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,iBAAyB;AACxB,UAAM,QAAQ,KAAK,WAAW;AAC9B,eAAO,qBAAS,KAAK;AAAA,EACtB;AAAA,EAEA,iBACC,OACA,WACA,QACmB;AACnB,UAAM,oBAAgB,iCAAkB,QAAQ,KAAK;AACrD,UAAM,aAAS,wBAAQ,eAAe,EAAE,OAAO,GAAG,CAAC;AAEnD,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,sBAAsB,SAAqB,WAAkD;AAC5F,WAAO,KAAK;AAAA,MACX,gBAAI,WAAW,EAAE,UAAU,OAAO,EAAE,QAAQ;AAAA,MAC5C;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,aAAyB,WAAkD;AAC5F,WAAO,KAAK,iBAAiB,aAAa,WAAW,iBAAiB;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,SAA0B;AACvC,WAAO,KAAK,aAAa,MAAM;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAsC;AACrC,UAAM,WAAW,KAAK,WAAW;AACjC,UAAM,WAAW,IAAI,WAAW,SAAS,SAAS,CAAC;AACnD,aAAS,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;AAC1B,aAAS,IAAI,UAAU,CAAC;AAExB,WAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA,EAKA,eAAuB;AAEtB,eAAO;AAAA,UACN,6BAAW,wBAAQ,KAAK,WAAW,GAAG,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,sCAAqB,CAAC;AAAA,IACtF;AAAA,EACD;AAgBD;AAEO,SAAS,gCAAgC,qBAA6B;AAC5E,QAAM,YAAQ,uBAAW,mBAAmB;AAE5C,QAAM,kBACL,iDAAyB,MAAM,CAAC,CAA0C;AAE3E,UAAQ,iBAAiB;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACJ,YAAM,OACL,iDAAyB,eAAwD;AAClF,YAAM,YAAY,MAAM,MAAM,GAAG,MAAM,SAAS,IAAI;AACpD,YAAM,YAAY,MAAM,MAAM,IAAI,UAAU,MAAM;AAElD,aAAO;AAAA,QACN;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,IACD;AACC,YAAM,IAAI,MAAM,8BAA8B;AAAA,EAChD;AACD;",
6
6
  "names": ["import_bcs"]
7
7
  }
@@ -28,7 +28,7 @@ export declare function parseSerializedSignature(serializedSignature: string): {
28
28
  signatureScheme: "Passkey";
29
29
  serializedSignature: string;
30
30
  signature: Uint8Array<ArrayBufferLike>;
31
- authenticatorData: number[];
31
+ authenticatorData: Uint8Array<ArrayBufferLike>;
32
32
  clientDataJson: string;
33
33
  userSignature: Uint8Array<ArrayBuffer>;
34
34
  publicKey: Uint8Array<ArrayBuffer>;
@@ -50,7 +50,7 @@ export declare function parseSerializedSignature(serializedSignature: string): {
50
50
  addressSeed: string;
51
51
  };
52
52
  maxEpoch: string;
53
- userSignature: number[];
53
+ userSignature: Uint8Array<ArrayBufferLike>;
54
54
  iss: string;
55
55
  addressSeed: bigint;
56
56
  };
@@ -37,10 +37,6 @@ class Experimental_BaseClient {
37
37
  this,
38
38
  Object.fromEntries(
39
39
  registrations.map((registration) => {
40
- if ("experimental_asClientExtension" in registration) {
41
- const { name, register } = registration.experimental_asClientExtension();
42
- return [name, { value: register(this) }];
43
- }
44
40
  return [registration.name, { value: registration.register(this) }];
45
41
  })
46
42
  )
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/experimental/client.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n/* eslint-disable @typescript-eslint/ban-types */\n\nimport type { Simplify, UnionToIntersection } from '@mysten/utils';\nimport { ClientCache } from './cache.js';\nimport type { Experimental_CoreClient } from './core.js';\nimport type {\n\tClientWithExtensions,\n\tExperimental_SuiClientTypes,\n\tSuiClientRegistration,\n} from './types.js';\n\nexport abstract class Experimental_BaseClient {\n\tnetwork: Experimental_SuiClientTypes.Network;\n\tcache: ClientCache;\n\tbase: Experimental_BaseClient;\n\n\tconstructor({\n\t\tnetwork,\n\t\tbase,\n\t\tcache = base?.cache ?? new ClientCache(),\n\t}: Experimental_SuiClientTypes.SuiClientOptions) {\n\t\tthis.network = network;\n\t\tthis.base = base ?? this;\n\t\tthis.cache = cache;\n\t}\n\n\tabstract core: Experimental_CoreClient;\n\n\t$extend<const Registrations extends SuiClientRegistration<this>[]>(\n\t\t...registrations: Registrations\n\t) {\n\t\treturn Object.create(\n\t\t\tthis,\n\t\t\tObject.fromEntries(\n\t\t\t\tregistrations.map((registration) => {\n\t\t\t\t\tif ('experimental_asClientExtension' in registration) {\n\t\t\t\t\t\tconst { name, register } = registration.experimental_asClientExtension();\n\t\t\t\t\t\treturn [name, { value: register(this) }];\n\t\t\t\t\t}\n\t\t\t\t\treturn [registration.name, { value: registration.register(this) }];\n\t\t\t\t}),\n\t\t\t),\n\t\t) as ClientWithExtensions<\n\t\t\tSimplify<\n\t\t\t\tUnionToIntersection<\n\t\t\t\t\t{\n\t\t\t\t\t\t[K in keyof Registrations]: Registrations[K] extends SuiClientRegistration<\n\t\t\t\t\t\t\tthis,\n\t\t\t\t\t\t\tinfer Name extends string,\n\t\t\t\t\t\t\tinfer Extension\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t[K2 in Name]: Extension;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: never;\n\t\t\t\t\t}[number]\n\t\t\t\t>\n\t\t\t>,\n\t\t\tthis\n\t\t>;\n\t}\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,mBAA4B;AAQrB,MAAe,wBAAwB;AAAA,EAK7C,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA,QAAQ,MAAM,SAAS,IAAI,yBAAY;AAAA,EACxC,GAAiD;AAChD,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ;AACpB,SAAK,QAAQ;AAAA,EACd;AAAA,EAIA,WACI,eACF;AACD,WAAO,OAAO;AAAA,MACb;AAAA,MACA,OAAO;AAAA,QACN,cAAc,IAAI,CAAC,iBAAiB;AACnC,cAAI,oCAAoC,cAAc;AACrD,kBAAM,EAAE,MAAM,SAAS,IAAI,aAAa,+BAA+B;AACvE,mBAAO,CAAC,MAAM,EAAE,OAAO,SAAS,IAAI,EAAE,CAAC;AAAA,UACxC;AACA,iBAAO,CAAC,aAAa,MAAM,EAAE,OAAO,aAAa,SAAS,IAAI,EAAE,CAAC;AAAA,QAClE,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EAkBD;AACD;",
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n/* eslint-disable @typescript-eslint/ban-types */\n\nimport type { Simplify, UnionToIntersection } from '@mysten/utils';\nimport { ClientCache } from './cache.js';\nimport type { Experimental_CoreClient } from './core.js';\nimport type {\n\tClientWithExtensions,\n\tExperimental_SuiClientTypes,\n\tSuiClientRegistration,\n} from './types.js';\n\nexport abstract class Experimental_BaseClient {\n\tnetwork: Experimental_SuiClientTypes.Network;\n\tcache: ClientCache;\n\tbase: Experimental_BaseClient;\n\n\tconstructor({\n\t\tnetwork,\n\t\tbase,\n\t\tcache = base?.cache ?? new ClientCache(),\n\t}: Experimental_SuiClientTypes.SuiClientOptions) {\n\t\tthis.network = network;\n\t\tthis.base = base ?? this;\n\t\tthis.cache = cache;\n\t}\n\n\tabstract core: Experimental_CoreClient;\n\n\t$extend<const Registrations extends SuiClientRegistration<this>[]>(\n\t\t...registrations: Registrations\n\t) {\n\t\treturn Object.create(\n\t\t\tthis,\n\t\t\tObject.fromEntries(\n\t\t\t\tregistrations.map((registration) => {\n\t\t\t\t\treturn [registration.name, { value: registration.register(this) }];\n\t\t\t\t}),\n\t\t\t),\n\t\t) as ClientWithExtensions<\n\t\t\tSimplify<\n\t\t\t\tUnionToIntersection<\n\t\t\t\t\t{\n\t\t\t\t\t\t[K in keyof Registrations]: Registrations[K] extends SuiClientRegistration<\n\t\t\t\t\t\t\tthis,\n\t\t\t\t\t\t\tinfer Name extends string,\n\t\t\t\t\t\t\tinfer Extension\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t[K2 in Name]: Extension;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: never;\n\t\t\t\t\t}[number]\n\t\t\t\t>\n\t\t\t>,\n\t\t\tthis\n\t\t>;\n\t}\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,mBAA4B;AAQrB,MAAe,wBAAwB;AAAA,EAK7C,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA,QAAQ,MAAM,SAAS,IAAI,yBAAY;AAAA,EACxC,GAAiD;AAChD,SAAK,UAAU;AACf,SAAK,OAAO,QAAQ;AACpB,SAAK,QAAQ;AAAA,EACd;AAAA,EAIA,WACI,eACF;AACD,WAAO,OAAO;AAAA,MACb;AAAA,MACA,OAAO;AAAA,QACN,cAAc,IAAI,CAAC,iBAAiB;AACnC,iBAAO,CAAC,aAAa,MAAM,EAAE,OAAO,aAAa,SAAS,IAAI,EAAE,CAAC;AAAA,QAClE,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EAkBD;AACD;",
6
6
  "names": []
7
7
  }
@@ -4,13 +4,7 @@ import type { Experimental_BaseClient } from './client.js';
4
4
  export type SuiClientRegistration<T extends Experimental_BaseClient = Experimental_BaseClient, Name extends string = string, Extension = unknown> = {
5
5
  readonly name: Name;
6
6
  readonly register: (client: T) => Extension;
7
- } | SelfRegisteringClientExtension<T, Name, Extension>;
8
- export interface SelfRegisteringClientExtension<T extends Experimental_BaseClient = Experimental_BaseClient, Name extends string = string, Extension = unknown> {
9
- experimental_asClientExtension: () => {
10
- readonly name: Name;
11
- readonly register: (client: T) => Extension;
12
- };
13
- }
7
+ };
14
8
  export type ClientWithExtensions<T, Base extends Experimental_BaseClient = Experimental_BaseClient> = Base & T;
15
9
  export declare namespace Experimental_SuiClientTypes {
16
10
  type Network = 'mainnet' | 'testnet' | 'devnet' | 'localnet' | (string & {});
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/experimental/types.ts"],
4
- "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n/* eslint-disable @typescript-eslint/ban-types */\n\nimport type { SerializedTransactionDataV2, TransactionPlugin } from '../transactions/index.js';\nimport type { ClientCache } from './cache.js';\nimport type { Experimental_BaseClient } from './client.js';\n\nexport type SuiClientRegistration<\n\tT extends Experimental_BaseClient = Experimental_BaseClient,\n\tName extends string = string,\n\tExtension = unknown,\n> =\n\t| {\n\t\t\treadonly name: Name;\n\t\t\treadonly register: (client: T) => Extension;\n\t }\n\t| SelfRegisteringClientExtension<T, Name, Extension>;\n\nexport interface SelfRegisteringClientExtension<\n\tT extends Experimental_BaseClient = Experimental_BaseClient,\n\tName extends string = string,\n\tExtension = unknown,\n> {\n\texperimental_asClientExtension: () => {\n\t\treadonly name: Name;\n\t\treadonly register: (client: T) => Extension;\n\t};\n}\n\nexport type ClientWithExtensions<\n\tT,\n\tBase extends Experimental_BaseClient = Experimental_BaseClient,\n> = Base & T;\n\nexport namespace Experimental_SuiClientTypes {\n\texport type Network = 'mainnet' | 'testnet' | 'devnet' | 'localnet' | (string & {});\n\n\texport interface SuiClientOptions {\n\t\tnetwork: Network;\n\t\tbase?: Experimental_BaseClient;\n\t\tcache?: ClientCache;\n\t}\n\n\texport interface MvrOptions {\n\t\turl?: string;\n\t\tpageSize?: number;\n\t\toverrides?: {\n\t\t\tpackages?: Record<string, string>;\n\t\t\ttypes?: Record<string, string>;\n\t\t};\n\t}\n\n\texport interface CoreClientMethodOptions {\n\t\tsignal?: AbortSignal;\n\t}\n\n\t/** Object methods */\n\texport interface TransportMethods {\n\t\tgetObjects: (options: GetObjectsOptions) => Promise<GetObjectsResponse>;\n\t\tgetOwnedObjects: (options: GetOwnedObjectsOptions) => Promise<GetOwnedObjectsResponse>;\n\t\tgetCoins: (options: GetCoinsOptions) => Promise<GetCoinsResponse>;\n\t\tgetDynamicFields: (options: GetDynamicFieldsOptions) => Promise<GetDynamicFieldsResponse>;\n\t\tgetDynamicField: (options: GetDynamicFieldOptions) => Promise<GetDynamicFieldResponse>;\n\t}\n\n\texport interface GetObjectsOptions extends CoreClientMethodOptions {\n\t\tobjectIds: string[];\n\t}\n\n\texport interface GetObjectOptions extends CoreClientMethodOptions {\n\t\tobjectId: string;\n\t}\n\n\texport interface GetOwnedObjectsOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t\ttype?: string;\n\t}\n\n\texport interface GetCoinsOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcoinType: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetDynamicFieldsOptions extends CoreClientMethodOptions {\n\t\tparentId: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetDynamicFieldOptions extends CoreClientMethodOptions {\n\t\tparentId: string;\n\t\tname: DynamicFieldName;\n\t}\n\n\texport interface GetObjectsResponse {\n\t\tobjects: (ObjectResponse | Error)[];\n\t}\n\n\texport interface GetObjectResponse {\n\t\tobject: ObjectResponse;\n\t}\n\n\texport interface GetOwnedObjectsResponse {\n\t\tobjects: ObjectResponse[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\texport interface GetCoinsResponse {\n\t\tobjects: CoinResponse[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\texport interface ObjectResponse {\n\t\tid: string;\n\t\tversion: string;\n\t\tdigest: string;\n\t\towner: ObjectOwner;\n\t\ttype: string;\n\t\tcontent: PromiseLike<Uint8Array>;\n\t\tpreviousTransaction: string | null;\n\t}\n\n\texport interface CoinResponse extends ObjectResponse {\n\t\tbalance: string;\n\t}\n\n\texport interface GetDynamicFieldsResponse {\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t\tdynamicFields: {\n\t\t\tid: string;\n\t\t\ttype: string;\n\t\t\tname: DynamicFieldName;\n\t\t}[];\n\t}\n\n\texport interface GetDynamicFieldResponse {\n\t\tdynamicField: {\n\t\t\tname: DynamicFieldName;\n\t\t\tvalue: DynamicFieldValue;\n\t\t\tid: string;\n\t\t\tversion: string;\n\t\t\tdigest: string;\n\t\t\ttype: string;\n\t\t\tpreviousTransaction: string | null;\n\t\t};\n\t}\n\n\texport interface DynamicFieldName {\n\t\ttype: string;\n\t\tbcs: Uint8Array;\n\t}\n\n\texport interface DynamicFieldValue {\n\t\ttype: string;\n\t\tbcs: Uint8Array;\n\t}\n\n\t/** Balance methods */\n\texport interface TransportMethods {\n\t\tgetBalance: (options: GetBalanceOptions) => Promise<GetBalanceResponse>;\n\t\tgetAllBalances: (options: GetAllBalancesOptions) => Promise<GetAllBalancesResponse>;\n\t}\n\n\texport interface GetBalanceOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcoinType: string;\n\t}\n\n\texport interface CoinBalance {\n\t\tcoinType: string;\n\t\tbalance: string;\n\t}\n\n\texport interface GetBalanceResponse {\n\t\tbalance: CoinBalance;\n\t}\n\n\texport interface GetAllBalancesOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetAllBalancesResponse {\n\t\tbalances: CoinBalance[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\t/** Transaction methods */\n\texport interface TransportMethods {\n\t\tgetTransaction: (options: GetTransactionOptions) => Promise<GetTransactionResponse>;\n\t\texecuteTransaction: (options: ExecuteTransactionOptions) => Promise<ExecuteTransactionResponse>;\n\t\tdryRunTransaction: (options: DryRunTransactionOptions) => Promise<DryRunTransactionResponse>;\n\t\tresolveTransactionPlugin: () => TransactionPlugin;\n\t}\n\n\texport interface TransactionResponse {\n\t\tdigest: string;\n\t\tsignatures: string[];\n\t\tepoch: string | null;\n\t\teffects: TransactionEffects;\n\t\tobjectTypes: PromiseLike<Record<string, string>>;\n\t\ttransaction: TransactionData;\n\t\tbalanceChanges: BalanceChange[];\n\t\t// TODO: add events\n\t\t// events?: Uint8Array;\n\t}\n\n\texport interface BalanceChange {\n\t\tcoinType: string;\n\t\taddress: string;\n\t\tamount: string;\n\t}\n\n\texport interface TransactionData extends SerializedTransactionDataV2 {\n\t\tbcs: Uint8Array;\n\t}\n\n\texport interface GetTransactionOptions extends CoreClientMethodOptions {\n\t\tdigest: string;\n\t}\n\n\texport interface GetTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface ExecuteTransactionOptions extends CoreClientMethodOptions {\n\t\ttransaction: Uint8Array;\n\t\tsignatures: string[];\n\t}\n\n\texport interface DryRunTransactionOptions extends CoreClientMethodOptions {\n\t\ttransaction: Uint8Array;\n\t}\n\n\texport interface DryRunTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface ExecuteTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface GetReferenceGasPriceOptions extends CoreClientMethodOptions {}\n\n\texport interface TransportMethods {\n\t\tgetReferenceGasPrice?: (\n\t\t\toptions?: GetReferenceGasPriceOptions,\n\t\t) => Promise<GetReferenceGasPriceResponse>;\n\t}\n\n\texport interface GetReferenceGasPriceResponse {\n\t\treferenceGasPrice: string;\n\t}\n\n\t/** ZkLogin methods */\n\texport interface VerifyZkLoginSignatureOptions extends CoreClientMethodOptions {\n\t\tbytes: string;\n\t\tsignature: string;\n\t\tintentScope: 'TransactionData' | 'PersonalMessage';\n\t\tauthor: string;\n\t}\n\n\texport interface ZkLoginVerifyResponse {\n\t\tsuccess: boolean;\n\t\terrors: string[];\n\t}\n\n\texport interface TransportMethods {\n\t\tverifyZkLoginSignature: (\n\t\t\toptions: VerifyZkLoginSignatureOptions,\n\t\t) => Promise<ZkLoginVerifyResponse>;\n\t}\n\n\t/** Name service methods */\n\texport interface ResolveNameServiceNamesOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcursor?: string | null | undefined;\n\t\tlimit?: number | null | undefined;\n\t}\n\n\texport interface ResolveNameServiceNamesResponse {\n\t\tdata: string[];\n\t\thasNextPage: boolean;\n\t\tnextCursor: string | null;\n\t}\n\n\texport interface TransportMethods {\n\t\tresolveNameServiceNames?: (\n\t\t\toptions: ResolveNameServiceNamesOptions,\n\t\t) => Promise<ResolveNameServiceNamesResponse>;\n\t}\n\n\t/** MVR methods */\n\n\texport interface TransportMethods {\n\t\tmvr: MvrMethods;\n\t}\n\n\texport interface MvrMethods {\n\t\tresolvePackage: (options: MvrResolvePackageOptions) => Promise<MvrResolvePackageResponse>;\n\t\tresolveType: (options: MvrResolveTypeOptions) => Promise<MvrResolveTypeResponse>;\n\t\tresolve: (options: MvrResolveOptions) => Promise<MvrResolveResponse>;\n\t}\n\n\texport interface MvrResolvePackageOptions extends CoreClientMethodOptions {\n\t\tpackage: string;\n\t}\n\n\texport interface MvrResolveTypeOptions extends CoreClientMethodOptions {\n\t\ttype: string;\n\t}\n\n\texport interface MvrResolveOptions extends CoreClientMethodOptions {\n\t\tpackages?: string[];\n\t\ttypes?: string[];\n\t}\n\n\texport interface MvrResolvePackageResponse {\n\t\tpackage: string;\n\t}\n\n\texport interface MvrResolveTypeResponse {\n\t\ttype: string;\n\t}\n\n\texport interface MvrResolveResponse {\n\t\tpackages: Record<\n\t\t\tstring,\n\t\t\t{\n\t\t\t\tpackage: string;\n\t\t\t}\n\t\t>;\n\t\ttypes: Record<\n\t\t\tstring,\n\t\t\t{\n\t\t\t\ttype: string;\n\t\t\t}\n\t\t>;\n\t}\n\n\t/** Move package methods */\n\n\texport interface TransportMethods {\n\t\tgetMoveFunction: (options: GetMoveFunctionOptions) => Promise<GetMoveFunctionResponse>;\n\t}\n\n\texport interface GetMovePackageOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t}\n\n\texport interface GetMovePackageResponse {\n\t\tpackage: PackageResponse;\n\t}\n\n\texport interface PackageResponse {\n\t\tstorageId: string;\n\t\toriginalId: string;\n\t\tversion: string;\n\t\tmodules: ModuleResponse[];\n\t}\n\n\texport interface ModuleResponse {\n\t\tname: string;\n\t\tdatatypes: DatatypeResponse[];\n\t\tfunctions: FunctionResponse[];\n\t}\n\n\texport type DatatypeResponse =\n\t\t| {\n\t\t\t\t$kind: 'struct';\n\t\t\t\ttypeName: string;\n\t\t\t\tdefiningId: string;\n\t\t\t\tmoduleName: string;\n\t\t\t\tname: string;\n\t\t\t\tabilities: Ability[];\n\t\t\t\ttypeParameters: TypeParameter[];\n\t\t\t\tfields: FieldDescriptor[];\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'enum';\n\t\t\t\ttypeName: string;\n\t\t\t\tdefiningId: string;\n\t\t\t\tmoduleName: string;\n\t\t\t\tname: string;\n\t\t\t\tabilities: Ability[];\n\t\t\t\ttypeParameters: TypeParameter[];\n\t\t\t\tvariants: VariantDescriptor[];\n\t\t };\n\n\texport type Ability = 'copy' | 'drop' | 'store' | 'key' | 'unknown';\n\texport type DatatypeKind = 'struct' | 'enum' | 'unknown';\n\n\texport interface TypeParameter {\n\t\tconstraints: Ability[];\n\t\tisPhantom: boolean;\n\t}\n\n\texport interface FieldDescriptor {\n\t\tname: string;\n\t\tposition: number;\n\t\ttype: OpenSignatureBody;\n\t}\n\n\texport interface VariantDescriptor {\n\t\tname: string;\n\t\tposition: number;\n\t\tfields: FieldDescriptor[];\n\t}\n\n\texport interface GetMoveFunctionOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t}\n\n\texport interface GetMoveFunctionResponse {\n\t\tfunction: FunctionResponse;\n\t}\n\n\texport interface GetMoveDatatypeOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t}\n\n\texport interface GetMoveDatatypeResponse {\n\t\tdatatype: DatatypeResponse;\n\t}\n\n\texport type Visibility = 'public' | 'friend' | 'private' | 'unknown';\n\n\texport interface FunctionResponse {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t\tvisibility: Visibility;\n\t\tisEntry: boolean;\n\t\ttypeParameters: TypeParameter[];\n\t\tparameters: OpenSignature[];\n\t\treturns: OpenSignature[];\n\t}\n\n\texport type ReferenceType = 'mutable' | 'immutable' | 'unknown';\n\texport type OpenSignature = {\n\t\treference: ReferenceType | null;\n\t\tbody: OpenSignatureBody;\n\t};\n\n\texport type OpenSignatureBody =\n\t\t| {\n\t\t\t\t$kind: 'u8' | 'u16' | 'u32' | 'u64' | 'u128' | 'u256' | 'bool' | 'address' | 'unknown';\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'vector';\n\t\t\t\tvector: OpenSignatureBody;\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'datatype';\n\t\t\t\tdatatype: {\n\t\t\t\t\ttypeName: string;\n\t\t\t\t\ttypeParameters: OpenSignatureBody[];\n\t\t\t\t};\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'typeParameter';\n\t\t\t\tindex: number;\n\t\t };\n\n\t/** ObjectOwner types */\n\n\texport interface AddressOwner {\n\t\t$kind: 'AddressOwner';\n\t\tAddressOwner: string;\n\t}\n\n\texport interface ParentOwner {\n\t\t$kind: 'ObjectOwner';\n\t\tObjectOwner: string;\n\t}\n\n\texport interface SharedOwner {\n\t\t$kind: 'Shared';\n\t\tShared: {\n\t\t\tinitialSharedVersion: string;\n\t\t};\n\t}\n\n\texport interface ImmutableOwner {\n\t\t$kind: 'Immutable';\n\t\tImmutable: true;\n\t}\n\n\texport interface ConsensusAddressOwner {\n\t\t$kind: 'ConsensusAddressOwner';\n\t\tConsensusAddressOwner: {\n\t\t\towner: string;\n\t\t\tstartVersion: string;\n\t\t};\n\t}\n\n\texport interface UnknownOwner {\n\t\t$kind: 'Unknown';\n\t}\n\n\texport type ObjectOwner =\n\t\t| AddressOwner\n\t\t| ParentOwner\n\t\t| SharedOwner\n\t\t| ImmutableOwner\n\t\t| ConsensusAddressOwner\n\t\t| UnknownOwner;\n\n\t/** Effects */\n\n\texport interface TransactionEffects {\n\t\tbcs: Uint8Array | null;\n\t\tdigest: string;\n\t\tversion: number;\n\t\tstatus: ExecutionStatus;\n\t\tgasUsed: GasCostSummary;\n\t\ttransactionDigest: string;\n\t\tgasObject: ChangedObject | null;\n\t\teventsDigest: string | null;\n\t\tdependencies: string[];\n\t\tlamportVersion: string | null;\n\t\tchangedObjects: ChangedObject[];\n\t\tunchangedConsensusObjects: UnchangedConsensusObject[];\n\t\tauxiliaryDataDigest: string | null;\n\t}\n\n\texport interface ChangedObject {\n\t\tid: string;\n\t\tinputState: 'Unknown' | 'DoesNotExist' | 'Exists';\n\t\tinputVersion: string | null;\n\t\tinputDigest: string | null;\n\t\tinputOwner: ObjectOwner | null;\n\t\toutputState: 'Unknown' | 'DoesNotExist' | 'ObjectWrite' | 'PackageWrite';\n\t\toutputVersion: string | null;\n\t\toutputDigest: string | null;\n\t\toutputOwner: ObjectOwner | null;\n\t\tidOperation: 'Unknown' | 'None' | 'Created' | 'Deleted';\n\t}\n\n\texport interface GasCostSummary {\n\t\tcomputationCost: string;\n\t\tstorageCost: string;\n\t\tstorageRebate: string;\n\t\tnonRefundableStorageFee: string;\n\t}\n\n\texport type ExecutionStatus =\n\t\t| {\n\t\t\t\tsuccess: true;\n\t\t\t\terror: null;\n\t\t }\n\t\t| {\n\t\t\t\tsuccess: false;\n\t\t\t\t// TODO: this should probably be typed better: https://github.com/bmwill/sui/blob/646a2c819346dc140cc649eb9fea368fb14f96e5/crates/sui-rpc-api/proto/sui/rpc/v2beta/execution_status.proto#L22\n\t\t\t\terror: string;\n\t\t };\n\n\texport interface UnchangedConsensusObject {\n\t\tkind:\n\t\t\t| 'Unknown'\n\t\t\t| 'ReadOnlyRoot'\n\t\t\t| 'MutateConsensusStreamEnded'\n\t\t\t| 'ReadConsensusStreamEnded'\n\t\t\t| 'Cancelled'\n\t\t\t| 'PerEpochConfig';\n\t\tobjectId: string;\n\t\tversion: string | null;\n\t\tdigest: string | null;\n\t}\n}\n"],
4
+ "sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n/* eslint-disable @typescript-eslint/ban-types */\n\nimport type { SerializedTransactionDataV2, TransactionPlugin } from '../transactions/index.js';\nimport type { ClientCache } from './cache.js';\nimport type { Experimental_BaseClient } from './client.js';\n\nexport type SuiClientRegistration<\n\tT extends Experimental_BaseClient = Experimental_BaseClient,\n\tName extends string = string,\n\tExtension = unknown,\n> = {\n\treadonly name: Name;\n\treadonly register: (client: T) => Extension;\n};\n\nexport type ClientWithExtensions<\n\tT,\n\tBase extends Experimental_BaseClient = Experimental_BaseClient,\n> = Base & T;\n\nexport namespace Experimental_SuiClientTypes {\n\texport type Network = 'mainnet' | 'testnet' | 'devnet' | 'localnet' | (string & {});\n\n\texport interface SuiClientOptions {\n\t\tnetwork: Network;\n\t\tbase?: Experimental_BaseClient;\n\t\tcache?: ClientCache;\n\t}\n\n\texport interface MvrOptions {\n\t\turl?: string;\n\t\tpageSize?: number;\n\t\toverrides?: {\n\t\t\tpackages?: Record<string, string>;\n\t\t\ttypes?: Record<string, string>;\n\t\t};\n\t}\n\n\texport interface CoreClientMethodOptions {\n\t\tsignal?: AbortSignal;\n\t}\n\n\t/** Object methods */\n\texport interface TransportMethods {\n\t\tgetObjects: (options: GetObjectsOptions) => Promise<GetObjectsResponse>;\n\t\tgetOwnedObjects: (options: GetOwnedObjectsOptions) => Promise<GetOwnedObjectsResponse>;\n\t\tgetCoins: (options: GetCoinsOptions) => Promise<GetCoinsResponse>;\n\t\tgetDynamicFields: (options: GetDynamicFieldsOptions) => Promise<GetDynamicFieldsResponse>;\n\t\tgetDynamicField: (options: GetDynamicFieldOptions) => Promise<GetDynamicFieldResponse>;\n\t}\n\n\texport interface GetObjectsOptions extends CoreClientMethodOptions {\n\t\tobjectIds: string[];\n\t}\n\n\texport interface GetObjectOptions extends CoreClientMethodOptions {\n\t\tobjectId: string;\n\t}\n\n\texport interface GetOwnedObjectsOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t\ttype?: string;\n\t}\n\n\texport interface GetCoinsOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcoinType: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetDynamicFieldsOptions extends CoreClientMethodOptions {\n\t\tparentId: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetDynamicFieldOptions extends CoreClientMethodOptions {\n\t\tparentId: string;\n\t\tname: DynamicFieldName;\n\t}\n\n\texport interface GetObjectsResponse {\n\t\tobjects: (ObjectResponse | Error)[];\n\t}\n\n\texport interface GetObjectResponse {\n\t\tobject: ObjectResponse;\n\t}\n\n\texport interface GetOwnedObjectsResponse {\n\t\tobjects: ObjectResponse[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\texport interface GetCoinsResponse {\n\t\tobjects: CoinResponse[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\texport interface ObjectResponse {\n\t\tid: string;\n\t\tversion: string;\n\t\tdigest: string;\n\t\towner: ObjectOwner;\n\t\ttype: string;\n\t\tcontent: PromiseLike<Uint8Array>;\n\t\tpreviousTransaction: string | null;\n\t}\n\n\texport interface CoinResponse extends ObjectResponse {\n\t\tbalance: string;\n\t}\n\n\texport interface GetDynamicFieldsResponse {\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t\tdynamicFields: {\n\t\t\tid: string;\n\t\t\ttype: string;\n\t\t\tname: DynamicFieldName;\n\t\t}[];\n\t}\n\n\texport interface GetDynamicFieldResponse {\n\t\tdynamicField: {\n\t\t\tname: DynamicFieldName;\n\t\t\tvalue: DynamicFieldValue;\n\t\t\tid: string;\n\t\t\tversion: string;\n\t\t\tdigest: string;\n\t\t\ttype: string;\n\t\t\tpreviousTransaction: string | null;\n\t\t};\n\t}\n\n\texport interface DynamicFieldName {\n\t\ttype: string;\n\t\tbcs: Uint8Array;\n\t}\n\n\texport interface DynamicFieldValue {\n\t\ttype: string;\n\t\tbcs: Uint8Array;\n\t}\n\n\t/** Balance methods */\n\texport interface TransportMethods {\n\t\tgetBalance: (options: GetBalanceOptions) => Promise<GetBalanceResponse>;\n\t\tgetAllBalances: (options: GetAllBalancesOptions) => Promise<GetAllBalancesResponse>;\n\t}\n\n\texport interface GetBalanceOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcoinType: string;\n\t}\n\n\texport interface CoinBalance {\n\t\tcoinType: string;\n\t\tbalance: string;\n\t}\n\n\texport interface GetBalanceResponse {\n\t\tbalance: CoinBalance;\n\t}\n\n\texport interface GetAllBalancesOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tlimit?: number;\n\t\tcursor?: string | null;\n\t}\n\n\texport interface GetAllBalancesResponse {\n\t\tbalances: CoinBalance[];\n\t\thasNextPage: boolean;\n\t\tcursor: string | null;\n\t}\n\n\t/** Transaction methods */\n\texport interface TransportMethods {\n\t\tgetTransaction: (options: GetTransactionOptions) => Promise<GetTransactionResponse>;\n\t\texecuteTransaction: (options: ExecuteTransactionOptions) => Promise<ExecuteTransactionResponse>;\n\t\tdryRunTransaction: (options: DryRunTransactionOptions) => Promise<DryRunTransactionResponse>;\n\t\tresolveTransactionPlugin: () => TransactionPlugin;\n\t}\n\n\texport interface TransactionResponse {\n\t\tdigest: string;\n\t\tsignatures: string[];\n\t\tepoch: string | null;\n\t\teffects: TransactionEffects;\n\t\tobjectTypes: PromiseLike<Record<string, string>>;\n\t\ttransaction: TransactionData;\n\t\tbalanceChanges: BalanceChange[];\n\t\t// TODO: add events\n\t\t// events?: Uint8Array;\n\t}\n\n\texport interface BalanceChange {\n\t\tcoinType: string;\n\t\taddress: string;\n\t\tamount: string;\n\t}\n\n\texport interface TransactionData extends SerializedTransactionDataV2 {\n\t\tbcs: Uint8Array;\n\t}\n\n\texport interface GetTransactionOptions extends CoreClientMethodOptions {\n\t\tdigest: string;\n\t}\n\n\texport interface GetTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface ExecuteTransactionOptions extends CoreClientMethodOptions {\n\t\ttransaction: Uint8Array;\n\t\tsignatures: string[];\n\t}\n\n\texport interface DryRunTransactionOptions extends CoreClientMethodOptions {\n\t\ttransaction: Uint8Array;\n\t}\n\n\texport interface DryRunTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface ExecuteTransactionResponse {\n\t\ttransaction: TransactionResponse;\n\t}\n\n\texport interface GetReferenceGasPriceOptions extends CoreClientMethodOptions {}\n\n\texport interface TransportMethods {\n\t\tgetReferenceGasPrice?: (\n\t\t\toptions?: GetReferenceGasPriceOptions,\n\t\t) => Promise<GetReferenceGasPriceResponse>;\n\t}\n\n\texport interface GetReferenceGasPriceResponse {\n\t\treferenceGasPrice: string;\n\t}\n\n\t/** ZkLogin methods */\n\texport interface VerifyZkLoginSignatureOptions extends CoreClientMethodOptions {\n\t\tbytes: string;\n\t\tsignature: string;\n\t\tintentScope: 'TransactionData' | 'PersonalMessage';\n\t\tauthor: string;\n\t}\n\n\texport interface ZkLoginVerifyResponse {\n\t\tsuccess: boolean;\n\t\terrors: string[];\n\t}\n\n\texport interface TransportMethods {\n\t\tverifyZkLoginSignature: (\n\t\t\toptions: VerifyZkLoginSignatureOptions,\n\t\t) => Promise<ZkLoginVerifyResponse>;\n\t}\n\n\t/** Name service methods */\n\texport interface ResolveNameServiceNamesOptions extends CoreClientMethodOptions {\n\t\taddress: string;\n\t\tcursor?: string | null | undefined;\n\t\tlimit?: number | null | undefined;\n\t}\n\n\texport interface ResolveNameServiceNamesResponse {\n\t\tdata: string[];\n\t\thasNextPage: boolean;\n\t\tnextCursor: string | null;\n\t}\n\n\texport interface TransportMethods {\n\t\tresolveNameServiceNames?: (\n\t\t\toptions: ResolveNameServiceNamesOptions,\n\t\t) => Promise<ResolveNameServiceNamesResponse>;\n\t}\n\n\t/** MVR methods */\n\n\texport interface TransportMethods {\n\t\tmvr: MvrMethods;\n\t}\n\n\texport interface MvrMethods {\n\t\tresolvePackage: (options: MvrResolvePackageOptions) => Promise<MvrResolvePackageResponse>;\n\t\tresolveType: (options: MvrResolveTypeOptions) => Promise<MvrResolveTypeResponse>;\n\t\tresolve: (options: MvrResolveOptions) => Promise<MvrResolveResponse>;\n\t}\n\n\texport interface MvrResolvePackageOptions extends CoreClientMethodOptions {\n\t\tpackage: string;\n\t}\n\n\texport interface MvrResolveTypeOptions extends CoreClientMethodOptions {\n\t\ttype: string;\n\t}\n\n\texport interface MvrResolveOptions extends CoreClientMethodOptions {\n\t\tpackages?: string[];\n\t\ttypes?: string[];\n\t}\n\n\texport interface MvrResolvePackageResponse {\n\t\tpackage: string;\n\t}\n\n\texport interface MvrResolveTypeResponse {\n\t\ttype: string;\n\t}\n\n\texport interface MvrResolveResponse {\n\t\tpackages: Record<\n\t\t\tstring,\n\t\t\t{\n\t\t\t\tpackage: string;\n\t\t\t}\n\t\t>;\n\t\ttypes: Record<\n\t\t\tstring,\n\t\t\t{\n\t\t\t\ttype: string;\n\t\t\t}\n\t\t>;\n\t}\n\n\t/** Move package methods */\n\n\texport interface TransportMethods {\n\t\tgetMoveFunction: (options: GetMoveFunctionOptions) => Promise<GetMoveFunctionResponse>;\n\t}\n\n\texport interface GetMovePackageOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t}\n\n\texport interface GetMovePackageResponse {\n\t\tpackage: PackageResponse;\n\t}\n\n\texport interface PackageResponse {\n\t\tstorageId: string;\n\t\toriginalId: string;\n\t\tversion: string;\n\t\tmodules: ModuleResponse[];\n\t}\n\n\texport interface ModuleResponse {\n\t\tname: string;\n\t\tdatatypes: DatatypeResponse[];\n\t\tfunctions: FunctionResponse[];\n\t}\n\n\texport type DatatypeResponse =\n\t\t| {\n\t\t\t\t$kind: 'struct';\n\t\t\t\ttypeName: string;\n\t\t\t\tdefiningId: string;\n\t\t\t\tmoduleName: string;\n\t\t\t\tname: string;\n\t\t\t\tabilities: Ability[];\n\t\t\t\ttypeParameters: TypeParameter[];\n\t\t\t\tfields: FieldDescriptor[];\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'enum';\n\t\t\t\ttypeName: string;\n\t\t\t\tdefiningId: string;\n\t\t\t\tmoduleName: string;\n\t\t\t\tname: string;\n\t\t\t\tabilities: Ability[];\n\t\t\t\ttypeParameters: TypeParameter[];\n\t\t\t\tvariants: VariantDescriptor[];\n\t\t };\n\n\texport type Ability = 'copy' | 'drop' | 'store' | 'key' | 'unknown';\n\texport type DatatypeKind = 'struct' | 'enum' | 'unknown';\n\n\texport interface TypeParameter {\n\t\tconstraints: Ability[];\n\t\tisPhantom: boolean;\n\t}\n\n\texport interface FieldDescriptor {\n\t\tname: string;\n\t\tposition: number;\n\t\ttype: OpenSignatureBody;\n\t}\n\n\texport interface VariantDescriptor {\n\t\tname: string;\n\t\tposition: number;\n\t\tfields: FieldDescriptor[];\n\t}\n\n\texport interface GetMoveFunctionOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t}\n\n\texport interface GetMoveFunctionResponse {\n\t\tfunction: FunctionResponse;\n\t}\n\n\texport interface GetMoveDatatypeOptions extends CoreClientMethodOptions {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t}\n\n\texport interface GetMoveDatatypeResponse {\n\t\tdatatype: DatatypeResponse;\n\t}\n\n\texport type Visibility = 'public' | 'friend' | 'private' | 'unknown';\n\n\texport interface FunctionResponse {\n\t\tpackageId: string;\n\t\tmoduleName: string;\n\t\tname: string;\n\t\tvisibility: Visibility;\n\t\tisEntry: boolean;\n\t\ttypeParameters: TypeParameter[];\n\t\tparameters: OpenSignature[];\n\t\treturns: OpenSignature[];\n\t}\n\n\texport type ReferenceType = 'mutable' | 'immutable' | 'unknown';\n\texport type OpenSignature = {\n\t\treference: ReferenceType | null;\n\t\tbody: OpenSignatureBody;\n\t};\n\n\texport type OpenSignatureBody =\n\t\t| {\n\t\t\t\t$kind: 'u8' | 'u16' | 'u32' | 'u64' | 'u128' | 'u256' | 'bool' | 'address' | 'unknown';\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'vector';\n\t\t\t\tvector: OpenSignatureBody;\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'datatype';\n\t\t\t\tdatatype: {\n\t\t\t\t\ttypeName: string;\n\t\t\t\t\ttypeParameters: OpenSignatureBody[];\n\t\t\t\t};\n\t\t }\n\t\t| {\n\t\t\t\t$kind: 'typeParameter';\n\t\t\t\tindex: number;\n\t\t };\n\n\t/** ObjectOwner types */\n\n\texport interface AddressOwner {\n\t\t$kind: 'AddressOwner';\n\t\tAddressOwner: string;\n\t}\n\n\texport interface ParentOwner {\n\t\t$kind: 'ObjectOwner';\n\t\tObjectOwner: string;\n\t}\n\n\texport interface SharedOwner {\n\t\t$kind: 'Shared';\n\t\tShared: {\n\t\t\tinitialSharedVersion: string;\n\t\t};\n\t}\n\n\texport interface ImmutableOwner {\n\t\t$kind: 'Immutable';\n\t\tImmutable: true;\n\t}\n\n\texport interface ConsensusAddressOwner {\n\t\t$kind: 'ConsensusAddressOwner';\n\t\tConsensusAddressOwner: {\n\t\t\towner: string;\n\t\t\tstartVersion: string;\n\t\t};\n\t}\n\n\texport interface UnknownOwner {\n\t\t$kind: 'Unknown';\n\t}\n\n\texport type ObjectOwner =\n\t\t| AddressOwner\n\t\t| ParentOwner\n\t\t| SharedOwner\n\t\t| ImmutableOwner\n\t\t| ConsensusAddressOwner\n\t\t| UnknownOwner;\n\n\t/** Effects */\n\n\texport interface TransactionEffects {\n\t\tbcs: Uint8Array | null;\n\t\tdigest: string;\n\t\tversion: number;\n\t\tstatus: ExecutionStatus;\n\t\tgasUsed: GasCostSummary;\n\t\ttransactionDigest: string;\n\t\tgasObject: ChangedObject | null;\n\t\teventsDigest: string | null;\n\t\tdependencies: string[];\n\t\tlamportVersion: string | null;\n\t\tchangedObjects: ChangedObject[];\n\t\tunchangedConsensusObjects: UnchangedConsensusObject[];\n\t\tauxiliaryDataDigest: string | null;\n\t}\n\n\texport interface ChangedObject {\n\t\tid: string;\n\t\tinputState: 'Unknown' | 'DoesNotExist' | 'Exists';\n\t\tinputVersion: string | null;\n\t\tinputDigest: string | null;\n\t\tinputOwner: ObjectOwner | null;\n\t\toutputState: 'Unknown' | 'DoesNotExist' | 'ObjectWrite' | 'PackageWrite';\n\t\toutputVersion: string | null;\n\t\toutputDigest: string | null;\n\t\toutputOwner: ObjectOwner | null;\n\t\tidOperation: 'Unknown' | 'None' | 'Created' | 'Deleted';\n\t}\n\n\texport interface GasCostSummary {\n\t\tcomputationCost: string;\n\t\tstorageCost: string;\n\t\tstorageRebate: string;\n\t\tnonRefundableStorageFee: string;\n\t}\n\n\texport type ExecutionStatus =\n\t\t| {\n\t\t\t\tsuccess: true;\n\t\t\t\terror: null;\n\t\t }\n\t\t| {\n\t\t\t\tsuccess: false;\n\t\t\t\t// TODO: this should probably be typed better: https://github.com/bmwill/sui/blob/646a2c819346dc140cc649eb9fea368fb14f96e5/crates/sui-rpc-api/proto/sui/rpc/v2beta/execution_status.proto#L22\n\t\t\t\terror: string;\n\t\t };\n\n\texport interface UnchangedConsensusObject {\n\t\tkind:\n\t\t\t| 'Unknown'\n\t\t\t| 'ReadOnlyRoot'\n\t\t\t| 'MutateConsensusStreamEnded'\n\t\t\t| 'ReadConsensusStreamEnded'\n\t\t\t| 'Cancelled'\n\t\t\t| 'PerEpochConfig';\n\t\tobjectId: string;\n\t\tversion: string | null;\n\t\tdigest: string | null;\n\t}\n}\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -3934,7 +3934,7 @@ export type Shared = {
3934
3934
  export type SharedInput = {
3935
3935
  __typename?: 'SharedInput';
3936
3936
  address: Scalars['SuiAddress']['output'];
3937
- /** The version that this this object was shared at. */
3937
+ /** The version at which this object was shared.​ */
3938
3938
  initialSharedVersion: Scalars['UInt53']['output'];
3939
3939
  /**
3940
3940
  * Controls whether the transaction block can reference the shared object as a mutable