@waterx/sdk 3.0.1 → 3.0.3

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 (398) hide show
  1. package/dist/cjs/package.json +3 -0
  2. package/dist/cjs/src/account/account-request.d.ts +9 -0
  3. package/dist/cjs/src/account/account-request.js +20 -0
  4. package/dist/cjs/src/account/account.d.ts +158 -0
  5. package/dist/cjs/src/account/account.js +238 -0
  6. package/dist/cjs/src/account/client.d.ts +42 -0
  7. package/dist/cjs/src/account/client.js +18 -0
  8. package/dist/cjs/src/account/config.d.ts +151 -0
  9. package/dist/cjs/src/account/config.js +9 -0
  10. package/dist/cjs/src/account/constants.d.ts +5 -0
  11. package/dist/cjs/src/account/constants.js +8 -0
  12. package/dist/cjs/src/account/fetch/referral.d.ts +15 -0
  13. package/dist/cjs/src/account/fetch/referral.js +56 -0
  14. package/dist/cjs/src/account/fetch/simulate.d.ts +34 -0
  15. package/dist/cjs/src/account/fetch/simulate.js +49 -0
  16. package/dist/cjs/src/account/funding/balance.d.ts +32 -0
  17. package/dist/cjs/src/account/funding/balance.js +100 -0
  18. package/dist/cjs/src/account/funding/consolidate.d.ts +46 -0
  19. package/dist/cjs/src/account/funding/consolidate.js +143 -0
  20. package/dist/cjs/src/account/funding/credit.d.ts +129 -0
  21. package/dist/cjs/src/account/funding/credit.js +252 -0
  22. package/dist/cjs/src/account/funding/custody.d.ts +57 -0
  23. package/dist/cjs/src/account/funding/custody.js +139 -0
  24. package/dist/cjs/src/account/funding/wormhole.d.ts +86 -0
  25. package/dist/cjs/src/account/funding/wormhole.js +166 -0
  26. package/dist/cjs/src/account/index.d.ts +29 -0
  27. package/dist/cjs/src/account/index.js +45 -0
  28. package/dist/cjs/src/account/referral.d.ts +21 -0
  29. package/dist/cjs/src/account/referral.js +78 -0
  30. package/dist/cjs/src/account/waterx-account.d.ts +31 -0
  31. package/dist/cjs/src/account/waterx-account.js +29 -0
  32. package/dist/cjs/src/base-client.d.ts +74 -0
  33. package/dist/cjs/src/base-client.js +101 -0
  34. package/dist/cjs/src/constants.d.ts +32 -0
  35. package/dist/cjs/src/constants.js +41 -0
  36. package/dist/cjs/src/generated/bucket_v2_framework/account.d.ts +107 -0
  37. package/dist/cjs/src/generated/bucket_v2_framework/account.js +141 -0
  38. package/dist/cjs/src/generated/bucket_v2_framework/deps/std/type_name.d.ts +17 -0
  39. package/dist/cjs/src/generated/bucket_v2_framework/deps/std/type_name.js +22 -0
  40. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/balance.d.ts +12 -0
  41. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/balance.js +17 -0
  42. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_map.d.ts +36 -0
  43. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_map.js +31 -0
  44. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_set.d.ts +16 -0
  45. package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_set.js +22 -0
  46. package/dist/cjs/src/generated/bucket_v2_framework/double.d.ts +384 -0
  47. package/dist/cjs/src/generated/bucket_v2_framework/double.js +504 -0
  48. package/dist/cjs/src/generated/bucket_v2_framework/float.d.ts +364 -0
  49. package/dist/cjs/src/generated/bucket_v2_framework/float.js +476 -0
  50. package/dist/cjs/src/generated/bucket_v2_framework/liability.d.ts +171 -0
  51. package/dist/cjs/src/generated/bucket_v2_framework/liability.js +192 -0
  52. package/dist/cjs/src/generated/bucket_v2_framework/linked_table.d.ts +384 -0
  53. package/dist/cjs/src/generated/bucket_v2_framework/linked_table.js +405 -0
  54. package/dist/cjs/src/generated/bucket_v2_framework/sheet.d.ts +424 -0
  55. package/dist/cjs/src/generated/bucket_v2_framework/sheet.js +395 -0
  56. package/dist/cjs/src/generated/native_custody/custody_vault.d.ts +586 -0
  57. package/dist/cjs/src/generated/native_custody/custody_vault.js +555 -0
  58. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/float.d.ts +8 -0
  59. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/float.js +13 -0
  60. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/liability.d.ts +11 -0
  61. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/liability.js +16 -0
  62. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/sheet.d.ts +49 -0
  63. package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/sheet.js +52 -0
  64. package/dist/cjs/src/generated/native_custody/deps/std/type_name.d.ts +17 -0
  65. package/dist/cjs/src/generated/native_custody/deps/std/type_name.js +22 -0
  66. package/dist/cjs/src/generated/native_custody/deps/sui/balance.d.ts +12 -0
  67. package/dist/cjs/src/generated/native_custody/deps/sui/balance.js +17 -0
  68. package/dist/cjs/src/generated/native_custody/deps/sui/vec_map.d.ts +36 -0
  69. package/dist/cjs/src/generated/native_custody/deps/sui/vec_map.js +31 -0
  70. package/dist/cjs/src/generated/native_custody/deps/sui/vec_set.d.ts +16 -0
  71. package/dist/cjs/src/generated/native_custody/deps/sui/vec_set.js +22 -0
  72. package/dist/cjs/src/generated/native_custody/events.d.ts +36 -0
  73. package/dist/cjs/src/generated/native_custody/events.js +71 -0
  74. package/dist/cjs/src/generated/pyth_sponsor_rule/deps/sui/balance.d.ts +12 -0
  75. package/dist/cjs/src/generated/pyth_sponsor_rule/deps/sui/balance.js +17 -0
  76. package/dist/cjs/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.d.ts +68 -0
  77. package/dist/cjs/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.js +113 -0
  78. package/dist/cjs/src/generated/utils/index.d.ts +30 -0
  79. package/dist/cjs/src/generated/utils/index.js +168 -0
  80. package/dist/cjs/src/generated/waterx_account/account.d.ts +1906 -0
  81. package/dist/cjs/src/generated/waterx_account/account.js +1929 -0
  82. package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/liability.d.ts +11 -0
  83. package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/liability.js +16 -0
  84. package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/sheet.d.ts +49 -0
  85. package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/sheet.js +52 -0
  86. package/dist/cjs/src/generated/waterx_account/deps/std/type_name.d.ts +17 -0
  87. package/dist/cjs/src/generated/waterx_account/deps/std/type_name.js +22 -0
  88. package/dist/cjs/src/generated/waterx_account/deps/sui/balance.d.ts +12 -0
  89. package/dist/cjs/src/generated/waterx_account/deps/sui/balance.js +17 -0
  90. package/dist/cjs/src/generated/waterx_account/deps/sui/object_table.d.ts +17 -0
  91. package/dist/cjs/src/generated/waterx_account/deps/sui/object_table.js +22 -0
  92. package/dist/cjs/src/generated/waterx_account/deps/sui/table.d.ts +29 -0
  93. package/dist/cjs/src/generated/waterx_account/deps/sui/table.js +34 -0
  94. package/dist/cjs/src/generated/waterx_account/deps/sui/vec_map.d.ts +36 -0
  95. package/dist/cjs/src/generated/waterx_account/deps/sui/vec_map.js +31 -0
  96. package/dist/cjs/src/generated/waterx_account/deps/sui/vec_set.d.ts +16 -0
  97. package/dist/cjs/src/generated/waterx_account/deps/sui/vec_set.js +22 -0
  98. package/dist/cjs/src/generated/waterx_account/direct_rule.d.ts +77 -0
  99. package/dist/cjs/src/generated/waterx_account/direct_rule.js +83 -0
  100. package/dist/cjs/src/generated/waterx_account/events.d.ts +190 -0
  101. package/dist/cjs/src/generated/waterx_account/events.js +173 -0
  102. package/dist/cjs/src/generated/waterx_account/version.d.ts +10 -0
  103. package/dist/cjs/src/generated/waterx_account/version.js +11 -0
  104. package/dist/cjs/src/generated/waterx_constant_rule/constant_rule.d.ts +68 -0
  105. package/dist/cjs/src/generated/waterx_constant_rule/constant_rule.js +97 -0
  106. package/dist/cjs/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.d.ts +8 -0
  107. package/dist/cjs/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.js +13 -0
  108. package/dist/cjs/src/generated/waterx_constant_rule/deps/sui/vec_map.d.ts +36 -0
  109. package/dist/cjs/src/generated/waterx_constant_rule/deps/sui/vec_map.js +31 -0
  110. package/dist/cjs/src/generated/waterx_credit/credit_registry.d.ts +708 -0
  111. package/dist/cjs/src/generated/waterx_credit/credit_registry.js +728 -0
  112. package/dist/cjs/src/generated/waterx_credit/deps/std/type_name.d.ts +17 -0
  113. package/dist/cjs/src/generated/waterx_credit/deps/std/type_name.js +22 -0
  114. package/dist/cjs/src/generated/waterx_credit/deps/sui/table.d.ts +29 -0
  115. package/dist/cjs/src/generated/waterx_credit/deps/sui/table.js +34 -0
  116. package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_map.d.ts +36 -0
  117. package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_map.js +31 -0
  118. package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_set.d.ts +16 -0
  119. package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_set.js +22 -0
  120. package/dist/cjs/src/generated/waterx_credit/limited_supply.d.ts +107 -0
  121. package/dist/cjs/src/generated/waterx_credit/limited_supply.js +143 -0
  122. package/dist/cjs/src/generated/waterx_oracle/aggregator.d.ts +211 -0
  123. package/dist/cjs/src/generated/waterx_oracle/aggregator.js +258 -0
  124. package/dist/cjs/src/generated/waterx_oracle/collector.d.ts +119 -0
  125. package/dist/cjs/src/generated/waterx_oracle/collector.js +147 -0
  126. package/dist/cjs/src/generated/waterx_oracle/deps/bucket_v2_framework/float.d.ts +8 -0
  127. package/dist/cjs/src/generated/waterx_oracle/deps/bucket_v2_framework/float.js +13 -0
  128. package/dist/cjs/src/generated/waterx_oracle/deps/std/type_name.d.ts +17 -0
  129. package/dist/cjs/src/generated/waterx_oracle/deps/std/type_name.js +22 -0
  130. package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_map.d.ts +36 -0
  131. package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_map.js +31 -0
  132. package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_set.d.ts +16 -0
  133. package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_set.js +22 -0
  134. package/dist/cjs/src/generated/waterx_oracle/oracle.d.ts +304 -0
  135. package/dist/cjs/src/generated/waterx_oracle/oracle.js +381 -0
  136. package/dist/cjs/src/generated/waterx_oracle/version.d.ts +10 -0
  137. package/dist/cjs/src/generated/waterx_oracle/version.js +11 -0
  138. package/dist/cjs/src/generated/waterx_perp/account_data.d.ts +269 -0
  139. package/dist/cjs/src/generated/waterx_perp/account_data.js +340 -0
  140. package/dist/cjs/src/generated/waterx_perp/admin.d.ts +19 -0
  141. package/dist/cjs/src/generated/waterx_perp/admin.js +26 -0
  142. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/double.d.ts +8 -0
  143. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/double.js +13 -0
  144. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/float.d.ts +8 -0
  145. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/float.js +13 -0
  146. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/liability.d.ts +11 -0
  147. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/liability.js +16 -0
  148. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  149. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.js +21 -0
  150. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.d.ts +49 -0
  151. package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.js +52 -0
  152. package/dist/cjs/src/generated/waterx_perp/deps/std/type_name.d.ts +17 -0
  153. package/dist/cjs/src/generated/waterx_perp/deps/std/type_name.js +22 -0
  154. package/dist/cjs/src/generated/waterx_perp/deps/sui/balance.d.ts +15 -0
  155. package/dist/cjs/src/generated/waterx_perp/deps/sui/balance.js +20 -0
  156. package/dist/cjs/src/generated/waterx_perp/deps/sui/coin.d.ts +14 -0
  157. package/dist/cjs/src/generated/waterx_perp/deps/sui/coin.js +51 -0
  158. package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_map.d.ts +36 -0
  159. package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_map.js +31 -0
  160. package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_set.d.ts +16 -0
  161. package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_set.js +22 -0
  162. package/dist/cjs/src/generated/waterx_perp/events.d.ts +1283 -0
  163. package/dist/cjs/src/generated/waterx_perp/events.js +990 -0
  164. package/dist/cjs/src/generated/waterx_perp/global_config.d.ts +775 -0
  165. package/dist/cjs/src/generated/waterx_perp/global_config.js +918 -0
  166. package/dist/cjs/src/generated/waterx_perp/keyed_big_vector.d.ts +553 -0
  167. package/dist/cjs/src/generated/waterx_perp/keyed_big_vector.js +626 -0
  168. package/dist/cjs/src/generated/waterx_perp/lp_pool.d.ts +1648 -0
  169. package/dist/cjs/src/generated/waterx_perp/lp_pool.js +1630 -0
  170. package/dist/cjs/src/generated/waterx_perp/market_config.d.ts +733 -0
  171. package/dist/cjs/src/generated/waterx_perp/market_config.js +871 -0
  172. package/dist/cjs/src/generated/waterx_perp/math.d.ts +63 -0
  173. package/dist/cjs/src/generated/waterx_perp/math.js +70 -0
  174. package/dist/cjs/src/generated/waterx_perp/memo.d.ts +251 -0
  175. package/dist/cjs/src/generated/waterx_perp/memo.js +360 -0
  176. package/dist/cjs/src/generated/waterx_perp/order_book.d.ts +290 -0
  177. package/dist/cjs/src/generated/waterx_perp/order_book.js +388 -0
  178. package/dist/cjs/src/generated/waterx_perp/position.d.ts +1005 -0
  179. package/dist/cjs/src/generated/waterx_perp/position.js +1200 -0
  180. package/dist/cjs/src/generated/waterx_perp/request.d.ts +544 -0
  181. package/dist/cjs/src/generated/waterx_perp/request.js +609 -0
  182. package/dist/cjs/src/generated/waterx_perp/response.d.ts +247 -0
  183. package/dist/cjs/src/generated/waterx_perp/response.js +331 -0
  184. package/dist/cjs/src/generated/waterx_perp/trading.d.ts +2945 -0
  185. package/dist/cjs/src/generated/waterx_perp/trading.js +2616 -0
  186. package/dist/cjs/src/generated/waterx_perp/version.d.ts +10 -0
  187. package/dist/cjs/src/generated/waterx_perp/version.js +11 -0
  188. package/dist/cjs/src/generated/waterx_perp/witness.d.ts +18 -0
  189. package/dist/cjs/src/generated/waterx_perp/witness.js +25 -0
  190. package/dist/cjs/src/generated/waterx_perp_view/deps/std/type_name.d.ts +17 -0
  191. package/dist/cjs/src/generated/waterx_perp_view/deps/std/type_name.js +22 -0
  192. package/dist/cjs/src/generated/waterx_perp_view/view.d.ts +447 -0
  193. package/dist/cjs/src/generated/waterx_perp_view/view.js +459 -0
  194. package/dist/cjs/src/generated/waterx_prediction/account_data.d.ts +344 -0
  195. package/dist/cjs/src/generated/waterx_prediction/account_data.js +470 -0
  196. package/dist/cjs/src/generated/waterx_prediction/admin.d.ts +7 -0
  197. package/dist/cjs/src/generated/waterx_prediction/admin.js +12 -0
  198. package/dist/cjs/src/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  199. package/dist/cjs/src/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.js +21 -0
  200. package/dist/cjs/src/generated/waterx_prediction/deps/sui/balance.d.ts +12 -0
  201. package/dist/cjs/src/generated/waterx_prediction/deps/sui/balance.js +17 -0
  202. package/dist/cjs/src/generated/waterx_prediction/deps/sui/table.d.ts +29 -0
  203. package/dist/cjs/src/generated/waterx_prediction/deps/sui/table.js +34 -0
  204. package/dist/cjs/src/generated/waterx_prediction/deps/sui/vec_set.d.ts +16 -0
  205. package/dist/cjs/src/generated/waterx_prediction/deps/sui/vec_set.js +22 -0
  206. package/dist/cjs/src/generated/waterx_prediction/events.d.ts +288 -0
  207. package/dist/cjs/src/generated/waterx_prediction/events.js +254 -0
  208. package/dist/cjs/src/generated/waterx_prediction/global_config.d.ts +121 -0
  209. package/dist/cjs/src/generated/waterx_prediction/global_config.js +186 -0
  210. package/dist/cjs/src/generated/waterx_prediction/order.d.ts +233 -0
  211. package/dist/cjs/src/generated/waterx_prediction/order.js +339 -0
  212. package/dist/cjs/src/generated/waterx_prediction/outcome.d.ts +58 -0
  213. package/dist/cjs/src/generated/waterx_prediction/outcome.js +82 -0
  214. package/dist/cjs/src/generated/waterx_prediction/position.d.ts +175 -0
  215. package/dist/cjs/src/generated/waterx_prediction/position.js +232 -0
  216. package/dist/cjs/src/generated/waterx_prediction/version.d.ts +10 -0
  217. package/dist/cjs/src/generated/waterx_prediction/version.js +11 -0
  218. package/dist/cjs/src/generated/waterx_prediction/view.d.ts +418 -0
  219. package/dist/cjs/src/generated/waterx_prediction/view.js +492 -0
  220. package/dist/cjs/src/generated/waterx_prediction/waterx_prediction.d.ts +1858 -0
  221. package/dist/cjs/src/generated/waterx_prediction/waterx_prediction.js +1972 -0
  222. package/dist/cjs/src/generated/waterx_pyth_rule/deps/sui/vec_map.d.ts +36 -0
  223. package/dist/cjs/src/generated/waterx_pyth_rule/deps/sui/vec_map.js +31 -0
  224. package/dist/cjs/src/generated/waterx_pyth_rule/pyth_rule.d.ts +192 -0
  225. package/dist/cjs/src/generated/waterx_pyth_rule/pyth_rule.js +214 -0
  226. package/dist/cjs/src/generated/waterx_referral/deps/sui/table.d.ts +29 -0
  227. package/dist/cjs/src/generated/waterx_referral/deps/sui/table.js +34 -0
  228. package/dist/cjs/src/generated/waterx_referral/deps/sui/vec_set.d.ts +16 -0
  229. package/dist/cjs/src/generated/waterx_referral/deps/sui/vec_set.js +22 -0
  230. package/dist/cjs/src/generated/waterx_referral/referral_table.d.ts +171 -0
  231. package/dist/cjs/src/generated/waterx_referral/referral_table.js +239 -0
  232. package/dist/cjs/src/generated/waterx_staking/deps/bucket_v2_framework/double.d.ts +8 -0
  233. package/dist/cjs/src/generated/waterx_staking/deps/bucket_v2_framework/double.js +13 -0
  234. package/dist/cjs/src/generated/waterx_staking/deps/sui/balance.d.ts +12 -0
  235. package/dist/cjs/src/generated/waterx_staking/deps/sui/balance.js +17 -0
  236. package/dist/cjs/src/generated/waterx_staking/deps/sui/table.d.ts +29 -0
  237. package/dist/cjs/src/generated/waterx_staking/deps/sui/table.js +34 -0
  238. package/dist/cjs/src/generated/waterx_staking/deps/sui/vec_set.d.ts +16 -0
  239. package/dist/cjs/src/generated/waterx_staking/deps/sui/vec_set.js +22 -0
  240. package/dist/cjs/src/generated/waterx_staking/waterx_staking.d.ts +746 -0
  241. package/dist/cjs/src/generated/waterx_staking/waterx_staking.js +797 -0
  242. package/dist/cjs/src/generated/waterx_staking/witness.d.ts +16 -0
  243. package/dist/cjs/src/generated/waterx_staking/witness.js +21 -0
  244. package/dist/cjs/src/generated/waterx_supra_rule/deps/sui/vec_map.d.ts +36 -0
  245. package/dist/cjs/src/generated/waterx_supra_rule/deps/sui/vec_map.js +31 -0
  246. package/dist/cjs/src/generated/waterx_supra_rule/supra_rule.d.ts +158 -0
  247. package/dist/cjs/src/generated/waterx_supra_rule/supra_rule.js +189 -0
  248. package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.d.ts +8 -0
  249. package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.js +13 -0
  250. package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  251. package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.js +21 -0
  252. package/dist/cjs/src/generated/withdrawal_queue/deps/std/type_name.d.ts +17 -0
  253. package/dist/cjs/src/generated/withdrawal_queue/deps/std/type_name.js +22 -0
  254. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/balance.d.ts +12 -0
  255. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/balance.js +17 -0
  256. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_map.d.ts +36 -0
  257. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_map.js +31 -0
  258. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_set.d.ts +16 -0
  259. package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_set.js +22 -0
  260. package/dist/cjs/src/generated/withdrawal_queue/withdrawal_queue.d.ts +923 -0
  261. package/dist/cjs/src/generated/withdrawal_queue/withdrawal_queue.js +965 -0
  262. package/dist/cjs/src/generated/wlp/wlp.d.ts +28 -0
  263. package/dist/cjs/src/generated/wlp/wlp.js +37 -0
  264. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/table.d.ts +29 -0
  265. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/table.js +34 -0
  266. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_map.d.ts +36 -0
  267. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_map.js +31 -0
  268. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_set.d.ts +16 -0
  269. package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_set.js +22 -0
  270. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.d.ts +12 -0
  271. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.js +45 -0
  272. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.d.ts +14 -0
  273. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.js +19 -0
  274. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/set.d.ts +16 -0
  275. package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/set.js +51 -0
  276. package/dist/cjs/src/generated/wormhole_bridge/events.d.ts +32 -0
  277. package/dist/cjs/src/generated/wormhole_bridge/events.js +31 -0
  278. package/dist/cjs/src/generated/wormhole_bridge/wormhole_bridge.d.ts +638 -0
  279. package/dist/cjs/src/generated/wormhole_bridge/wormhole_bridge.js +692 -0
  280. package/dist/cjs/src/oracle/aggregate.d.ts +74 -0
  281. package/dist/cjs/src/oracle/aggregate.js +118 -0
  282. package/dist/cjs/src/oracle/config.d.ts +99 -0
  283. package/dist/cjs/src/oracle/config.js +26 -0
  284. package/dist/cjs/src/oracle/host.d.ts +32 -0
  285. package/dist/cjs/src/oracle/host.js +11 -0
  286. package/dist/cjs/src/oracle/index.d.ts +16 -0
  287. package/dist/cjs/src/oracle/index.js +31 -0
  288. package/dist/cjs/src/oracle/pyth.d.ts +52 -0
  289. package/dist/cjs/src/oracle/pyth.js +227 -0
  290. package/dist/cjs/src/oracle/rules/constant-rule.d.ts +9 -0
  291. package/dist/cjs/src/oracle/rules/constant-rule.js +17 -0
  292. package/dist/cjs/src/oracle/rules/pyth-rule.d.ts +11 -0
  293. package/dist/cjs/src/oracle/rules/pyth-rule.js +23 -0
  294. package/dist/cjs/src/oracle/rules/sponsor.d.ts +28 -0
  295. package/dist/cjs/src/oracle/rules/sponsor.js +52 -0
  296. package/dist/cjs/src/oracle/rules/supra-rule.d.ts +11 -0
  297. package/dist/cjs/src/oracle/rules/supra-rule.js +25 -0
  298. package/dist/cjs/src/perp/client.d.ts +78 -0
  299. package/dist/cjs/src/perp/client.js +112 -0
  300. package/dist/cjs/src/perp/config-view.d.ts +102 -0
  301. package/dist/cjs/src/perp/config-view.js +178 -0
  302. package/dist/cjs/src/perp/config.d.ts +126 -0
  303. package/dist/cjs/src/perp/config.js +119 -0
  304. package/dist/cjs/src/perp/constants.d.ts +49 -0
  305. package/dist/cjs/src/perp/constants.js +79 -0
  306. package/dist/cjs/src/perp/fetch/account.d.ts +43 -0
  307. package/dist/cjs/src/perp/fetch/account.js +69 -0
  308. package/dist/cjs/src/perp/fetch/bridge.d.ts +90 -0
  309. package/dist/cjs/src/perp/fetch/bridge.js +131 -0
  310. package/dist/cjs/src/perp/fetch/custody.d.ts +32 -0
  311. package/dist/cjs/src/perp/fetch/custody.js +66 -0
  312. package/dist/cjs/src/perp/fetch/market.d.ts +30 -0
  313. package/dist/cjs/src/perp/fetch/market.js +75 -0
  314. package/dist/cjs/src/perp/fetch/positions.d.ts +70 -0
  315. package/dist/cjs/src/perp/fetch/positions.js +195 -0
  316. package/dist/cjs/src/perp/fetch/simulate.d.ts +12 -0
  317. package/dist/cjs/src/perp/fetch/simulate.js +21 -0
  318. package/dist/cjs/src/perp/fetch.d.ts +23 -0
  319. package/dist/cjs/src/perp/fetch.js +39 -0
  320. package/dist/cjs/src/perp/index.d.ts +29 -0
  321. package/dist/cjs/src/perp/index.js +183 -0
  322. package/dist/cjs/src/perp/tx-builders/common.d.ts +83 -0
  323. package/dist/cjs/src/perp/tx-builders/common.js +76 -0
  324. package/dist/cjs/src/perp/tx-builders/credit.d.ts +65 -0
  325. package/dist/cjs/src/perp/tx-builders/credit.js +67 -0
  326. package/dist/cjs/src/perp/tx-builders/rewards.d.ts +30 -0
  327. package/dist/cjs/src/perp/tx-builders/rewards.js +37 -0
  328. package/dist/cjs/src/perp/tx-builders/trading.d.ts +51 -0
  329. package/dist/cjs/src/perp/tx-builders/trading.js +71 -0
  330. package/dist/cjs/src/perp/tx-builders/wlp.d.ts +90 -0
  331. package/dist/cjs/src/perp/tx-builders/wlp.js +126 -0
  332. package/dist/cjs/src/perp/tx-builders.d.ts +23 -0
  333. package/dist/cjs/src/perp/tx-builders.js +45 -0
  334. package/dist/cjs/src/perp/user/index.d.ts +8 -0
  335. package/dist/cjs/src/perp/user/index.js +24 -0
  336. package/dist/cjs/src/perp/user/order.d.ts +89 -0
  337. package/dist/cjs/src/perp/user/order.js +175 -0
  338. package/dist/cjs/src/perp/user/staking.d.ts +54 -0
  339. package/dist/cjs/src/perp/user/staking.js +147 -0
  340. package/dist/cjs/src/perp/user/trading.d.ts +119 -0
  341. package/dist/cjs/src/perp/user/trading.js +310 -0
  342. package/dist/cjs/src/perp/user/wlp.d.ts +58 -0
  343. package/dist/cjs/src/perp/user/wlp.js +139 -0
  344. package/dist/cjs/src/prediction/account.d.ts +96 -0
  345. package/dist/cjs/src/prediction/account.js +212 -0
  346. package/dist/cjs/src/prediction/admin.d.ts +47 -0
  347. package/dist/cjs/src/prediction/admin.js +116 -0
  348. package/dist/cjs/src/prediction/bcs.d.ts +28 -0
  349. package/dist/cjs/src/prediction/bcs.js +189 -0
  350. package/dist/cjs/src/prediction/client.d.ts +45 -0
  351. package/dist/cjs/src/prediction/client.js +112 -0
  352. package/dist/cjs/src/prediction/config.d.ts +74 -0
  353. package/dist/cjs/src/prediction/config.js +86 -0
  354. package/dist/cjs/src/prediction/constants.d.ts +44 -0
  355. package/dist/cjs/src/prediction/constants.js +49 -0
  356. package/dist/cjs/src/prediction/fetch.d.ts +82 -0
  357. package/dist/cjs/src/prediction/fetch.js +294 -0
  358. package/dist/cjs/src/prediction/gift-link.d.ts +6 -0
  359. package/dist/cjs/src/prediction/gift-link.js +16 -0
  360. package/dist/cjs/src/prediction/gift.d.ts +223 -0
  361. package/dist/cjs/src/prediction/gift.js +465 -0
  362. package/dist/cjs/src/prediction/index.d.ts +29 -0
  363. package/dist/cjs/src/prediction/index.js +154 -0
  364. package/dist/cjs/src/prediction/prediction.d.ts +149 -0
  365. package/dist/cjs/src/prediction/prediction.js +410 -0
  366. package/dist/cjs/src/prediction/tx-builders.d.ts +44 -0
  367. package/dist/cjs/src/prediction/tx-builders.js +56 -0
  368. package/dist/cjs/src/prediction/types.d.ts +95 -0
  369. package/dist/cjs/src/prediction/types.js +2 -0
  370. package/dist/cjs/src/prediction/user/account.d.ts +2 -0
  371. package/dist/cjs/src/prediction/user/account.js +17 -0
  372. package/dist/cjs/src/prediction/user/admin.d.ts +6 -0
  373. package/dist/cjs/src/prediction/user/admin.js +19 -0
  374. package/dist/cjs/src/prediction/user/gift.d.ts +2 -0
  375. package/dist/cjs/src/prediction/user/gift.js +24 -0
  376. package/dist/cjs/src/prediction/user/index.d.ts +5 -0
  377. package/dist/cjs/src/prediction/user/index.js +60 -0
  378. package/dist/cjs/src/prediction/user/keeper.d.ts +2 -0
  379. package/dist/cjs/src/prediction/user/keeper.js +13 -0
  380. package/dist/cjs/src/prediction/user/order.d.ts +2 -0
  381. package/dist/cjs/src/prediction/user/order.js +6 -0
  382. package/dist/cjs/src/prediction/user/position.d.ts +2 -0
  383. package/dist/cjs/src/prediction/user/position.js +11 -0
  384. package/dist/cjs/src/prediction/utils/bcs.d.ts +6 -0
  385. package/dist/cjs/src/prediction/utils/bcs.js +29 -0
  386. package/dist/cjs/src/prediction/utils/index.d.ts +8 -0
  387. package/dist/cjs/src/prediction/utils/index.js +31 -0
  388. package/dist/cjs/src/prediction/utils.d.ts +30 -0
  389. package/dist/cjs/src/prediction/utils.js +200 -0
  390. package/dist/cjs/src/sdk.d.ts +22 -0
  391. package/dist/cjs/src/sdk.js +62 -0
  392. package/dist/cjs/src/unified-client.d.ts +402 -0
  393. package/dist/cjs/src/unified-client.js +218 -0
  394. package/dist/cjs/src/utils/config.d.ts +11 -0
  395. package/dist/cjs/src/utils/config.js +19 -0
  396. package/dist/cjs/src/utils/math.d.ts +287 -0
  397. package/dist/cjs/src/utils/math.js +469 -0
  398. package/package.json +119 -31
@@ -0,0 +1,1906 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ /**
5
+ * Generalized multi-account framework for the WaterX ecosystem.
6
+ *
7
+ * Pure custody layer. Accounts hold per-T `Balance<T>` as dynamic fields keyed by
8
+ * `BalanceKey<T>()`, with a `VecMap<TypeName, u64>` mirror on each `Account` for
9
+ * fast enumeration. External flow in/out is mediated by hot-potato
10
+ * `DepositRequest<T>` / `WithdrawRequest<T>` that the framework issues; a
11
+ * registered policy module destroys the potato with its own witness and decides
12
+ * what final asset to put back into the account (e.g. a PSM policy turns
13
+ * `Coin<USDC>` into `Balance<USD>` and credits the account via `put<USD, P>`).
14
+ *
15
+ * Internal protocol ↔ account flow stays witness-gated via `take<T, P>` /
16
+ * `put<T, P>` with no policy registration involved — the protocol module's witness
17
+ * is the only authority needed, since only that module can construct a value of
18
+ * its witness type.
19
+ *
20
+ * Types of T:
21
+ *
22
+ * - Has registered deposit policy → `request_deposit<T>` works.
23
+ * - Has registered withdraw policy → `request_withdraw<T>` works.
24
+ * - Neither → "Parkable". Coins can sit on the account address via
25
+ * `transfer_coin<T>` or external `transfer::public_transfer`, but nothing the
26
+ * framework does will fold them into the account until a policy is registered
27
+ * (or owner drains via `receive_coin`).
28
+ */
29
+ import { MoveStruct, MoveTuple, type RawTransactionArgument } from '../utils/index.ts';
30
+ import { type BcsType } from '@mysten/sui/bcs';
31
+ import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
32
+ export declare const ACCOUNT: MoveStruct<{
33
+ dummy_field: BcsType<boolean, boolean, "bool">;
34
+ }, "@waterx/account::account::ACCOUNT">;
35
+ export declare const AdminCap: MoveStruct<{
36
+ id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
37
+ }, "@waterx/account::account::AdminCap">;
38
+ export declare const WaterXAccount: MoveStruct<{
39
+ dummy_field: BcsType<boolean, boolean, "bool">;
40
+ }, "@waterx/account::account::WaterXAccount">;
41
+ export declare const AccountRegistry: MoveStruct<{
42
+ id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
43
+ /**
44
+ * `ObjectTable` (not plain `Table`) so each `Account` retains a distinct on-chain
45
+ * address that off-chain callers can query directly via `getObject(account_id)`
46
+ * instead of walking dynamic-field handles on the registry UID.
47
+ */
48
+ accounts: MoveStruct<{
49
+ id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
50
+ size: BcsType<string, string | number | bigint, "u64">;
51
+ }, "0x2::object_table::ObjectTable<phantom K, phantom V>">;
52
+ owner_index: MoveStruct<{
53
+ id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
54
+ size: BcsType<string, string | number | bigint, "u64">;
55
+ }, "0x2::table::Table<phantom K, phantom V>">;
56
+ /**
57
+ * Admin-managed whitelist of protocol witness types allowed to move funds
58
+ * (`take<T, P>` / `put<T, P>`) and mutate per-account protocol data
59
+ * (`new_data<P, D>` / `borrow_data_mut<P, D>` / `remove_data<P, D>`). For each
60
+ * whitelisted `P`, the value is the set of asset types `T` that protocol is
61
+ * allowed to draw via `take<T, P>` — admin opts each pair in via two phases:
62
+ * `whitelist_protocol<P>(registry, &AdminCap)` registers `P` with an empty asset
63
+ * set, then `allow_protocol_asset<P, T>(registry, &AdminCap)` adds each T.
64
+ *
65
+ * Gates:
66
+ *
67
+ * - `take<T, P>` requires both `P` whitelisted AND `T` in `protocol_whitelist[P]`
68
+ * (plus per-account auth on the caller).
69
+ * - `put<T, P>` requires only `P` whitelisted. The T-gate stays open even after
70
+ * `disallow_protocol_asset<P, T>`, so existing positions can always close.
71
+ * - `new_data<P, _>` / `borrow_data_mut<P, _>` / `remove_data<P, _>` require only
72
+ * `P` whitelisted.
73
+ */
74
+ protocol_whitelist: MoveStruct<{
75
+ contents: BcsType<{
76
+ key: {
77
+ name: string;
78
+ };
79
+ value: {
80
+ [x: string]: unknown;
81
+ };
82
+ }[], Iterable<{
83
+ key: {
84
+ name: string;
85
+ };
86
+ value: {
87
+ [x: string]: unknown;
88
+ };
89
+ }> & {
90
+ length: number;
91
+ }, string>;
92
+ }, `0x2::vec_map::VecMap<std::type_name::TypeName, ${any}>`>;
93
+ /**
94
+ * `T → registered DepositPolicy witness TypeName`. Presence means
95
+ * `request_deposit<T>` / `request_deposit_from_receivings<T>` are permitted; only
96
+ * the module that defines the registered witness type can call
97
+ * `consume_deposit<T, P>` to unwrap the resulting `DepositRequest<T>`. Deposit
98
+ * policy registration is independent of `protocol_whitelist` — a policy can be the
99
+ * _consumer_ of a request without being allowed to `take`/`put`.
100
+ * `T → set of DepositPolicy witness TypeNames`. Multiple policies can be
101
+ * registered per T to support extension (a new policy added alongside the old) and
102
+ * migration (both coexist while consumers switch). `request_deposit<T>` requires
103
+ * the set to be non-empty; `consume_deposit<T, P>` requires P to be in the set.
104
+ */
105
+ deposit_policies: MoveStruct<{
106
+ contents: BcsType<{
107
+ key: {
108
+ name: string;
109
+ };
110
+ value: {
111
+ [x: string]: unknown;
112
+ };
113
+ }[], Iterable<{
114
+ key: {
115
+ name: string;
116
+ };
117
+ value: {
118
+ [x: string]: unknown;
119
+ };
120
+ }> & {
121
+ length: number;
122
+ }, string>;
123
+ }, `0x2::vec_map::VecMap<std::type_name::TypeName, ${any}>`>;
124
+ /**
125
+ * `T → set of WithdrawPolicy witness TypeNames`. Symmetric to `deposit_policies`
126
+ * for `request_withdraw<T>` / `consume_withdraw`.
127
+ */
128
+ withdraw_policies: MoveStruct<{
129
+ contents: BcsType<{
130
+ key: {
131
+ name: string;
132
+ };
133
+ value: {
134
+ [x: string]: unknown;
135
+ };
136
+ }[], Iterable<{
137
+ key: {
138
+ name: string;
139
+ };
140
+ value: {
141
+ [x: string]: unknown;
142
+ };
143
+ }> & {
144
+ length: number;
145
+ }, string>;
146
+ }, `0x2::vec_map::VecMap<std::type_name::TypeName, ${any}>`>;
147
+ /**
148
+ * Per-T aggregate of `Balance<T>` currently held inside accounts. Incremented in
149
+ * `put<T, P>`, decremented in `take<T, P>` and `request_withdraw<T>`. Does _not_
150
+ * include balance held by protocols (after `take`) or sitting in flight inside a
151
+ * `DepositRequest` / `WithdrawRequest` hot potato.
152
+ */
153
+ balances: MoveStruct<{
154
+ contents: BcsType<{
155
+ key: {
156
+ name: string;
157
+ };
158
+ value: string;
159
+ }[], Iterable<{
160
+ key: {
161
+ name: string;
162
+ };
163
+ value: string | number | bigint;
164
+ }> & {
165
+ length: number;
166
+ }, string>;
167
+ }, "0x2::vec_map::VecMap<std::type_name::TypeName, u64>">;
168
+ allowed_versions: MoveStruct<any, any>;
169
+ managers: MoveStruct<any, any>;
170
+ paused: BcsType<boolean, boolean, "bool">;
171
+ }, "@waterx/account::account::AccountRegistry">;
172
+ export declare const VaultKey: MoveTuple<readonly [BcsType<boolean, boolean, "bool">], "@waterx/account::account::VaultKey<phantom T>">;
173
+ export declare const Vault: MoveStruct<{
174
+ balance: MoveStruct<{
175
+ value: BcsType<string, string | number | bigint, "u64">;
176
+ }, "0x2::balance::Balance<phantom T>">;
177
+ sheet: MoveStruct<{
178
+ credits: MoveStruct<{
179
+ contents: BcsType<{
180
+ key: [{
181
+ name: string;
182
+ }];
183
+ value: {
184
+ value: string;
185
+ };
186
+ }[], Iterable<{
187
+ key: readonly [{
188
+ name: string;
189
+ }];
190
+ value: {
191
+ value: string | number | bigint;
192
+ };
193
+ }> & {
194
+ length: number;
195
+ }, string>;
196
+ }, "0x2::vec_map::VecMap<bucket_v2_framework::sheet::Entity, bucket_v2_framework::liability::Credit<phantom T>>">;
197
+ debts: MoveStruct<{
198
+ contents: BcsType<{
199
+ key: [{
200
+ name: string;
201
+ }];
202
+ value: {
203
+ value: string;
204
+ };
205
+ }[], Iterable<{
206
+ key: readonly [{
207
+ name: string;
208
+ }];
209
+ value: {
210
+ value: string | number | bigint;
211
+ };
212
+ }> & {
213
+ length: number;
214
+ }, string>;
215
+ }, "0x2::vec_map::VecMap<bucket_v2_framework::sheet::Entity, bucket_v2_framework::liability::Debt<phantom T>>">;
216
+ blacklist: MoveStruct<any, any>;
217
+ }, "bucket_v2_framework::sheet::Sheet<phantom CoinType, phantom SelfEntity>">;
218
+ }, "@waterx/account::account::Vault<phantom T>">;
219
+ export declare const ProtocolDataKey: MoveTuple<readonly [BcsType<boolean, boolean, "bool">], "@waterx/account::account::ProtocolDataKey<phantom PROTOCOL>">;
220
+ export declare const Delegate: MoveStruct<{
221
+ delegate_address: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
222
+ alias: BcsType<string, string, "string">;
223
+ /**
224
+ * Framework-level action bitmap (`PERM_WITHDRAW`, `PERM_RECEIVE`,
225
+ * `PERM_MANAGE_DELEGATES`). **Vestigial — retained for ABI/bitmap stability but no
226
+ * longer the live authority for any path.** All three bits now gate nothing: the
227
+ * funds-out paths (`request_withdraw` / `withdraw_from_funds` / `receive`) and
228
+ * delegate-perm management (`set/unset_delegate_protocol_permission`) are
229
+ * owner-only. Delegate authority lives entirely in `protocol_permissions` below
230
+ * plus the per-account `take`/`put` gate. `effective_permissions` /
231
+ * `has_permission` remain as public views but no internal path consults them.
232
+ */
233
+ permissions: BcsType<number, number, "u32">;
234
+ /**
235
+ * Per-protocol bitmap. Missing key → delegate cannot drive that protocol. Each
236
+ * protocol's module interprets its own bits. Owner always has `PERM_ALL` per
237
+ * protocol regardless of this field.
238
+ */
239
+ protocol_permissions: MoveStruct<{
240
+ contents: BcsType<{
241
+ key: {
242
+ name: string;
243
+ };
244
+ value: number;
245
+ }[], Iterable<{
246
+ key: {
247
+ name: string;
248
+ };
249
+ value: number;
250
+ }> & {
251
+ length: number;
252
+ }, string>;
253
+ }, "0x2::vec_map::VecMap<std::type_name::TypeName, u32>">;
254
+ expires_at_ms: BcsType<string | null, string | number | bigint | null | undefined, "Option<u64>">;
255
+ }, "@waterx/account::account::Delegate">;
256
+ export declare const Account: MoveStruct<{
257
+ id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
258
+ owner_address: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
259
+ alias: BcsType<string, string, "string">;
260
+ delegates: BcsType<{
261
+ delegate_address: string;
262
+ alias: string;
263
+ permissions: number;
264
+ protocol_permissions: {
265
+ contents: {
266
+ key: {
267
+ name: string;
268
+ };
269
+ value: number;
270
+ }[];
271
+ };
272
+ expires_at_ms: string | null;
273
+ }[], Iterable<{
274
+ delegate_address: string | Uint8Array<ArrayBufferLike>;
275
+ alias: string;
276
+ permissions: number;
277
+ protocol_permissions: {
278
+ contents: Iterable<{
279
+ key: {
280
+ name: string;
281
+ };
282
+ value: number;
283
+ }> & {
284
+ length: number;
285
+ };
286
+ };
287
+ expires_at_ms: string | number | bigint | null | undefined;
288
+ }> & {
289
+ length: number;
290
+ }, string>;
291
+ /**
292
+ * Mirror of the per-T `Balance<T>` values stored as dynamic fields under
293
+ * `BalanceKey<T>()` on this UID. Always equals the matching stored balance's
294
+ * `value()`.
295
+ */
296
+ balances: MoveStruct<{
297
+ contents: BcsType<{
298
+ key: {
299
+ name: string;
300
+ };
301
+ value: string;
302
+ }[], Iterable<{
303
+ key: {
304
+ name: string;
305
+ };
306
+ value: string | number | bigint;
307
+ }> & {
308
+ length: number;
309
+ }, string>;
310
+ }, "0x2::vec_map::VecMap<std::type_name::TypeName, u64>">;
311
+ }, "@waterx/account::account::Account">;
312
+ export declare const DepositRequest: MoveStruct<{
313
+ account_id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
314
+ balance: MoveStruct<{
315
+ value: BcsType<string, string | number | bigint, "u64">;
316
+ }, "0x2::balance::Balance<phantom T>">;
317
+ extra_data: BcsType<number[], Iterable<number> & {
318
+ length: number;
319
+ }, string>;
320
+ }, "@waterx/account::account::DepositRequest<phantom T>">;
321
+ export declare const WithdrawRequest: MoveStruct<{
322
+ account_id: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
323
+ balance: MoveStruct<{
324
+ value: BcsType<string, string | number | bigint, "u64">;
325
+ }, "0x2::balance::Balance<phantom T>">;
326
+ recipient: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
327
+ extra_data: BcsType<number[], Iterable<number> & {
328
+ length: number;
329
+ }, string>;
330
+ }, "@waterx/account::account::WithdrawRequest<phantom T>">;
331
+ export declare const PausedProtocolsKey: MoveTuple<readonly [BcsType<boolean, boolean, "bool">], "@waterx/account::account::PausedProtocolsKey">;
332
+ export declare const AccountKey: MoveStruct<{
333
+ owner: BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
334
+ index: BcsType<string, string | number | bigint, "u64">;
335
+ }, "@waterx/account::account::AccountKey">;
336
+ export interface PermNoneOptions {
337
+ package?: string;
338
+ arguments?: [
339
+ ];
340
+ }
341
+ export declare function permNone(options?: PermNoneOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
342
+ export interface PermWithdrawOptions {
343
+ package?: string;
344
+ arguments?: [
345
+ ];
346
+ }
347
+ export declare function permWithdraw(options?: PermWithdrawOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
348
+ export interface PermManageDelegatesOptions {
349
+ package?: string;
350
+ arguments?: [
351
+ ];
352
+ }
353
+ export declare function permManageDelegates(options?: PermManageDelegatesOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
354
+ export interface PermReceiveOptions {
355
+ package?: string;
356
+ arguments?: [
357
+ ];
358
+ }
359
+ export declare function permReceive(options?: PermReceiveOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
360
+ export interface PermAllOptions {
361
+ package?: string;
362
+ arguments?: [
363
+ ];
364
+ }
365
+ export declare function permAll(options?: PermAllOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
366
+ export interface AliasMaxLengthOptions {
367
+ package?: string;
368
+ arguments?: [
369
+ ];
370
+ }
371
+ export declare function aliasMaxLength(options?: AliasMaxLengthOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
372
+ export interface MaxAccountsPerOwnerOptions {
373
+ package?: string;
374
+ arguments?: [
375
+ ];
376
+ }
377
+ export declare function maxAccountsPerOwner(options?: MaxAccountsPerOwnerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
378
+ export interface MaxDelegatesPerAccountOptions {
379
+ package?: string;
380
+ arguments?: [
381
+ ];
382
+ }
383
+ export declare function maxDelegatesPerAccount(options?: MaxDelegatesPerAccountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
384
+ export interface MaxProtocolPermsPerDelegateOptions {
385
+ package?: string;
386
+ arguments?: [
387
+ ];
388
+ }
389
+ export declare function maxProtocolPermsPerDelegate(options?: MaxProtocolPermsPerDelegateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
390
+ export interface AssertVersionArguments {
391
+ registry: RawTransactionArgument<string>;
392
+ }
393
+ export interface AssertVersionOptions {
394
+ package?: string;
395
+ arguments: AssertVersionArguments | [
396
+ registry: RawTransactionArgument<string>
397
+ ];
398
+ }
399
+ export declare function assertVersion(options: AssertVersionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
400
+ export interface IsVersionAllowedArguments {
401
+ registry: RawTransactionArgument<string>;
402
+ v: RawTransactionArgument<number>;
403
+ }
404
+ export interface IsVersionAllowedOptions {
405
+ package?: string;
406
+ arguments: IsVersionAllowedArguments | [
407
+ registry: RawTransactionArgument<string>,
408
+ v: RawTransactionArgument<number>
409
+ ];
410
+ }
411
+ export declare function isVersionAllowed(options: IsVersionAllowedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
412
+ export interface AllowVersionArguments {
413
+ registry: RawTransactionArgument<string>;
414
+ _: RawTransactionArgument<string>;
415
+ v: RawTransactionArgument<number>;
416
+ }
417
+ export interface AllowVersionOptions {
418
+ package?: string;
419
+ arguments: AllowVersionArguments | [
420
+ registry: RawTransactionArgument<string>,
421
+ _: RawTransactionArgument<string>,
422
+ v: RawTransactionArgument<number>
423
+ ];
424
+ }
425
+ export declare function allowVersion(options: AllowVersionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
426
+ export interface DisallowVersionArguments {
427
+ registry: RawTransactionArgument<string>;
428
+ _: RawTransactionArgument<string>;
429
+ v: RawTransactionArgument<number>;
430
+ }
431
+ export interface DisallowVersionOptions {
432
+ package?: string;
433
+ arguments: DisallowVersionArguments | [
434
+ registry: RawTransactionArgument<string>,
435
+ _: RawTransactionArgument<string>,
436
+ v: RawTransactionArgument<number>
437
+ ];
438
+ }
439
+ export declare function disallowVersion(options: DisallowVersionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
440
+ export interface IsPausedArguments {
441
+ registry: RawTransactionArgument<string>;
442
+ }
443
+ export interface IsPausedOptions {
444
+ package?: string;
445
+ arguments: IsPausedArguments | [
446
+ registry: RawTransactionArgument<string>
447
+ ];
448
+ }
449
+ export declare function isPaused(options: IsPausedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
450
+ export interface AssertNotPausedArguments {
451
+ registry: RawTransactionArgument<string>;
452
+ }
453
+ export interface AssertNotPausedOptions {
454
+ package?: string;
455
+ arguments: AssertNotPausedArguments | [
456
+ registry: RawTransactionArgument<string>
457
+ ];
458
+ }
459
+ export declare function assertNotPaused(options: AssertNotPausedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
460
+ export interface PauseArguments {
461
+ registry: RawTransactionArgument<string>;
462
+ managerRequest: TransactionArgument;
463
+ }
464
+ export interface PauseOptions {
465
+ package?: string;
466
+ arguments: PauseArguments | [
467
+ registry: RawTransactionArgument<string>,
468
+ managerRequest: TransactionArgument
469
+ ];
470
+ }
471
+ export declare function pause(options: PauseOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
472
+ export interface UnpauseArguments {
473
+ registry: RawTransactionArgument<string>;
474
+ _: RawTransactionArgument<string>;
475
+ }
476
+ export interface UnpauseOptions {
477
+ package?: string;
478
+ arguments: UnpauseArguments | [
479
+ registry: RawTransactionArgument<string>,
480
+ _: RawTransactionArgument<string>
481
+ ];
482
+ }
483
+ export declare function unpause(options: UnpauseOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
484
+ export interface IsManagerArguments {
485
+ registry: RawTransactionArgument<string>;
486
+ addr: RawTransactionArgument<string>;
487
+ }
488
+ export interface IsManagerOptions {
489
+ package?: string;
490
+ arguments: IsManagerArguments | [
491
+ registry: RawTransactionArgument<string>,
492
+ addr: RawTransactionArgument<string>
493
+ ];
494
+ }
495
+ export declare function isManager(options: IsManagerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
496
+ export interface ManagersArguments {
497
+ registry: RawTransactionArgument<string>;
498
+ }
499
+ export interface ManagersOptions {
500
+ package?: string;
501
+ arguments: ManagersArguments | [
502
+ registry: RawTransactionArgument<string>
503
+ ];
504
+ }
505
+ export declare function managers(options: ManagersOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
506
+ export interface AddManagerArguments {
507
+ registry: RawTransactionArgument<string>;
508
+ _: RawTransactionArgument<string>;
509
+ manager: RawTransactionArgument<string>;
510
+ }
511
+ export interface AddManagerOptions {
512
+ package?: string;
513
+ arguments: AddManagerArguments | [
514
+ registry: RawTransactionArgument<string>,
515
+ _: RawTransactionArgument<string>,
516
+ manager: RawTransactionArgument<string>
517
+ ];
518
+ }
519
+ export declare function addManager(options: AddManagerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
520
+ export interface RemoveManagerArguments {
521
+ registry: RawTransactionArgument<string>;
522
+ _: RawTransactionArgument<string>;
523
+ manager: RawTransactionArgument<string>;
524
+ }
525
+ export interface RemoveManagerOptions {
526
+ package?: string;
527
+ arguments: RemoveManagerArguments | [
528
+ registry: RawTransactionArgument<string>,
529
+ _: RawTransactionArgument<string>,
530
+ manager: RawTransactionArgument<string>
531
+ ];
532
+ }
533
+ export declare function removeManager(options: RemoveManagerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
534
+ export interface IsProtocolWhitelistedArguments {
535
+ registry: RawTransactionArgument<string>;
536
+ }
537
+ export interface IsProtocolWhitelistedOptions {
538
+ package?: string;
539
+ arguments: IsProtocolWhitelistedArguments | [
540
+ registry: RawTransactionArgument<string>
541
+ ];
542
+ typeArguments: [
543
+ string
544
+ ];
545
+ }
546
+ export declare function isProtocolWhitelisted(options: IsProtocolWhitelistedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
547
+ export interface IsProtocolAssetAllowedArguments {
548
+ registry: RawTransactionArgument<string>;
549
+ }
550
+ export interface IsProtocolAssetAllowedOptions {
551
+ package?: string;
552
+ arguments: IsProtocolAssetAllowedArguments | [
553
+ registry: RawTransactionArgument<string>
554
+ ];
555
+ typeArguments: [
556
+ string,
557
+ string
558
+ ];
559
+ }
560
+ export declare function isProtocolAssetAllowed(options: IsProtocolAssetAllowedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
561
+ export interface ProtocolWhitelistArguments {
562
+ registry: RawTransactionArgument<string>;
563
+ }
564
+ export interface ProtocolWhitelistOptions {
565
+ package?: string;
566
+ arguments: ProtocolWhitelistArguments | [
567
+ registry: RawTransactionArgument<string>
568
+ ];
569
+ }
570
+ export declare function protocolWhitelist(options: ProtocolWhitelistOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
571
+ export interface WhitelistProtocolArguments {
572
+ registry: RawTransactionArgument<string>;
573
+ _: RawTransactionArgument<string>;
574
+ }
575
+ export interface WhitelistProtocolOptions {
576
+ package?: string;
577
+ arguments: WhitelistProtocolArguments | [
578
+ registry: RawTransactionArgument<string>,
579
+ _: RawTransactionArgument<string>
580
+ ];
581
+ typeArguments: [
582
+ string
583
+ ];
584
+ }
585
+ /**
586
+ * Admin: register witness type `P` with an empty asset set. After this, admin must
587
+ * call `allow_protocol_asset<P, T>` for each T the protocol may draw. Strict —
588
+ * aborts if `P` is already listed.
589
+ */
590
+ export declare function whitelistProtocol(options: WhitelistProtocolOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
591
+ export interface DelistProtocolArguments {
592
+ registry: RawTransactionArgument<string>;
593
+ _: RawTransactionArgument<string>;
594
+ }
595
+ export interface DelistProtocolOptions {
596
+ package?: string;
597
+ arguments: DelistProtocolArguments | [
598
+ registry: RawTransactionArgument<string>,
599
+ _: RawTransactionArgument<string>
600
+ ];
601
+ typeArguments: [
602
+ string
603
+ ];
604
+ }
605
+ /**
606
+ * Admin: remove witness type `P` (and its entire asset set) from the protocol
607
+ * whitelist. After this, every `take<T, P>` / `put<T, P>` and witness-gated
608
+ * data-slot call aborts. Existing data slots and protocol-held balances are
609
+ * untouched — only future calls are blocked, so admin can pause a misbehaving
610
+ * protocol without stranding state on accounts.
611
+ */
612
+ export declare function delistProtocol(options: DelistProtocolOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
613
+ export interface PauseProtocolArguments {
614
+ registry: RawTransactionArgument<string>;
615
+ _: RawTransactionArgument<string>;
616
+ }
617
+ export interface PauseProtocolOptions {
618
+ package?: string;
619
+ arguments: PauseProtocolArguments | [
620
+ registry: RawTransactionArgument<string>,
621
+ _: RawTransactionArgument<string>
622
+ ];
623
+ typeArguments: [
624
+ string
625
+ ];
626
+ }
627
+ /**
628
+ * Admin: pause protocol `P` WITHOUT delisting it. A paused protocol cannot
629
+ * `take<_, P>` (new outbound debits) or `new_data<P, _>` (new account state), but
630
+ * `put<_, P>`, `borrow_data_mut<P, _>`, and `remove_data<P, _>` keep working — so
631
+ * in-flight refunds, claims, and close/cleanup can complete. Use this instead of
632
+ * `delist_protocol` for emergency stops; delisting blocks the exit paths too and
633
+ * strands active per-account state (see audit M09).
634
+ */
635
+ export declare function pauseProtocol(options: PauseProtocolOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
636
+ export interface UnpauseProtocolArguments {
637
+ registry: RawTransactionArgument<string>;
638
+ _: RawTransactionArgument<string>;
639
+ }
640
+ export interface UnpauseProtocolOptions {
641
+ package?: string;
642
+ arguments: UnpauseProtocolArguments | [
643
+ registry: RawTransactionArgument<string>,
644
+ _: RawTransactionArgument<string>
645
+ ];
646
+ typeArguments: [
647
+ string
648
+ ];
649
+ }
650
+ /** Admin: lift a `pause_protocol<P>`. Idempotent on a non-paused protocol. */
651
+ export declare function unpauseProtocol(options: UnpauseProtocolOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
652
+ export interface IsProtocolPausedArguments {
653
+ registry: RawTransactionArgument<string>;
654
+ }
655
+ export interface IsProtocolPausedOptions {
656
+ package?: string;
657
+ arguments: IsProtocolPausedArguments | [
658
+ registry: RawTransactionArgument<string>
659
+ ];
660
+ typeArguments: [
661
+ string
662
+ ];
663
+ }
664
+ export declare function isProtocolPaused(options: IsProtocolPausedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
665
+ export interface AllowProtocolAssetArguments {
666
+ registry: RawTransactionArgument<string>;
667
+ _: RawTransactionArgument<string>;
668
+ }
669
+ export interface AllowProtocolAssetOptions {
670
+ package?: string;
671
+ arguments: AllowProtocolAssetArguments | [
672
+ registry: RawTransactionArgument<string>,
673
+ _: RawTransactionArgument<string>
674
+ ];
675
+ typeArguments: [
676
+ string,
677
+ string
678
+ ];
679
+ }
680
+ /**
681
+ * Admin: add asset type `T` to protocol `P`'s allowed-asset set. After this,
682
+ * `take<T, P>` is permitted (subject to per-account auth). Aborts if `P` is not
683
+ * whitelisted or if `T` is already in the set.
684
+ */
685
+ export declare function allowProtocolAsset(options: AllowProtocolAssetOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
686
+ export interface DisallowProtocolAssetArguments {
687
+ registry: RawTransactionArgument<string>;
688
+ _: RawTransactionArgument<string>;
689
+ }
690
+ export interface DisallowProtocolAssetOptions {
691
+ package?: string;
692
+ arguments: DisallowProtocolAssetArguments | [
693
+ registry: RawTransactionArgument<string>,
694
+ _: RawTransactionArgument<string>
695
+ ];
696
+ typeArguments: [
697
+ string,
698
+ string
699
+ ];
700
+ }
701
+ /**
702
+ * Admin: remove asset type `T` from protocol `P`'s allowed-asset set. Blocks
703
+ * future `take<T, P>` calls but `put<T, P>` on `T` stays open so existing
704
+ * positions can always close. Aborts if `P` is not whitelisted or if `T` is not in
705
+ * the set.
706
+ */
707
+ export declare function disallowProtocolAsset(options: DisallowProtocolAssetOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
708
+ export interface IsDepositPolicyRegisteredArguments {
709
+ registry: RawTransactionArgument<string>;
710
+ }
711
+ export interface IsDepositPolicyRegisteredOptions {
712
+ package?: string;
713
+ arguments: IsDepositPolicyRegisteredArguments | [
714
+ registry: RawTransactionArgument<string>
715
+ ];
716
+ typeArguments: [
717
+ string
718
+ ];
719
+ }
720
+ /**
721
+ * Returns true if `T` has at least one deposit policy registered. Used by
722
+ * `request_deposit<T>` to gate inflow and by `withdraw_from_funds<T>` to refuse
723
+ * policy-managed types.
724
+ */
725
+ export declare function isDepositPolicyRegistered(options: IsDepositPolicyRegisteredOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
726
+ export interface IsWithdrawPolicyRegisteredArguments {
727
+ registry: RawTransactionArgument<string>;
728
+ }
729
+ export interface IsWithdrawPolicyRegisteredOptions {
730
+ package?: string;
731
+ arguments: IsWithdrawPolicyRegisteredArguments | [
732
+ registry: RawTransactionArgument<string>
733
+ ];
734
+ typeArguments: [
735
+ string
736
+ ];
737
+ }
738
+ /** Returns true if `T` has at least one withdraw policy registered. */
739
+ export declare function isWithdrawPolicyRegistered(options: IsWithdrawPolicyRegisteredOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
740
+ export interface IsDepositPolicyRegisteredForArguments {
741
+ registry: RawTransactionArgument<string>;
742
+ }
743
+ export interface IsDepositPolicyRegisteredForOptions {
744
+ package?: string;
745
+ arguments: IsDepositPolicyRegisteredForArguments | [
746
+ registry: RawTransactionArgument<string>
747
+ ];
748
+ typeArguments: [
749
+ string,
750
+ string
751
+ ];
752
+ }
753
+ /**
754
+ * Returns true if the specific witness `P` is one of T's registered deposit
755
+ * policies. `consume_deposit<T, P>` aborts `EPolicyMismatch` when this would
756
+ * return false.
757
+ */
758
+ export declare function isDepositPolicyRegisteredFor(options: IsDepositPolicyRegisteredForOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
759
+ export interface IsWithdrawPolicyRegisteredForArguments {
760
+ registry: RawTransactionArgument<string>;
761
+ }
762
+ export interface IsWithdrawPolicyRegisteredForOptions {
763
+ package?: string;
764
+ arguments: IsWithdrawPolicyRegisteredForArguments | [
765
+ registry: RawTransactionArgument<string>
766
+ ];
767
+ typeArguments: [
768
+ string,
769
+ string
770
+ ];
771
+ }
772
+ export declare function isWithdrawPolicyRegisteredFor(options: IsWithdrawPolicyRegisteredForOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
773
+ export interface DepositPoliciesForArguments {
774
+ registry: RawTransactionArgument<string>;
775
+ }
776
+ export interface DepositPoliciesForOptions {
777
+ package?: string;
778
+ arguments: DepositPoliciesForArguments | [
779
+ registry: RawTransactionArgument<string>
780
+ ];
781
+ typeArguments: [
782
+ string
783
+ ];
784
+ }
785
+ /**
786
+ * Returns the full set of deposit-policy witness typenames registered for `T`, as
787
+ * a `vector<TypeName>` copy (TypeName is `copy + drop + store`, so this is
788
+ * cheap). Aborts if T has no policies. Off-chain consumers wanting iteration
789
+ * without the copy should walk the full `deposit_policies()` map instead.
790
+ */
791
+ export declare function depositPoliciesFor(options: DepositPoliciesForOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
792
+ export interface WithdrawPoliciesForArguments {
793
+ registry: RawTransactionArgument<string>;
794
+ }
795
+ export interface WithdrawPoliciesForOptions {
796
+ package?: string;
797
+ arguments: WithdrawPoliciesForArguments | [
798
+ registry: RawTransactionArgument<string>
799
+ ];
800
+ typeArguments: [
801
+ string
802
+ ];
803
+ }
804
+ export declare function withdrawPoliciesFor(options: WithdrawPoliciesForOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
805
+ export interface DepositPoliciesArguments {
806
+ registry: RawTransactionArgument<string>;
807
+ }
808
+ export interface DepositPoliciesOptions {
809
+ package?: string;
810
+ arguments: DepositPoliciesArguments | [
811
+ registry: RawTransactionArgument<string>
812
+ ];
813
+ }
814
+ export declare function depositPolicies(options: DepositPoliciesOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
815
+ export interface WithdrawPoliciesArguments {
816
+ registry: RawTransactionArgument<string>;
817
+ }
818
+ export interface WithdrawPoliciesOptions {
819
+ package?: string;
820
+ arguments: WithdrawPoliciesArguments | [
821
+ registry: RawTransactionArgument<string>
822
+ ];
823
+ }
824
+ export declare function withdrawPolicies(options: WithdrawPoliciesOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
825
+ export interface RegisterDepositPolicyArguments {
826
+ registry: RawTransactionArgument<string>;
827
+ _: RawTransactionArgument<string>;
828
+ }
829
+ export interface RegisterDepositPolicyOptions {
830
+ package?: string;
831
+ arguments: RegisterDepositPolicyArguments | [
832
+ registry: RawTransactionArgument<string>,
833
+ _: RawTransactionArgument<string>
834
+ ];
835
+ typeArguments: [
836
+ string,
837
+ string
838
+ ];
839
+ }
840
+ /**
841
+ * Admin: register witness type `P` as a deposit policy for `T`. Multiple policies
842
+ * can coexist per T to support extension (a new module added alongside the old)
843
+ * and migration (consumers switch one at a time). Idempotent — adding an
844
+ * already-registered `(T, P)` pair is a silent no-op so admin can re-run deploy
845
+ * scripts safely.
846
+ */
847
+ export declare function registerDepositPolicy(options: RegisterDepositPolicyOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
848
+ export interface RegisterWithdrawPolicyArguments {
849
+ registry: RawTransactionArgument<string>;
850
+ _: RawTransactionArgument<string>;
851
+ }
852
+ export interface RegisterWithdrawPolicyOptions {
853
+ package?: string;
854
+ arguments: RegisterWithdrawPolicyArguments | [
855
+ registry: RawTransactionArgument<string>,
856
+ _: RawTransactionArgument<string>
857
+ ];
858
+ typeArguments: [
859
+ string,
860
+ string
861
+ ];
862
+ }
863
+ export declare function registerWithdrawPolicy(options: RegisterWithdrawPolicyOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
864
+ export interface UnregisterDepositPolicyArguments {
865
+ registry: RawTransactionArgument<string>;
866
+ _: RawTransactionArgument<string>;
867
+ }
868
+ export interface UnregisterDepositPolicyOptions {
869
+ package?: string;
870
+ arguments: UnregisterDepositPolicyArguments | [
871
+ registry: RawTransactionArgument<string>,
872
+ _: RawTransactionArgument<string>
873
+ ];
874
+ typeArguments: [
875
+ string,
876
+ string
877
+ ];
878
+ }
879
+ /**
880
+ * Admin: remove `P` from T's deposit-policy set. Other registered policies for `T`
881
+ * keep working. If `P` is the last entry, the `T` key is cleaned up so
882
+ * `is_deposit_policy_registered<T>` returns false. Aborts if `(T, P)` isn't
883
+ * registered.
884
+ */
885
+ export declare function unregisterDepositPolicy(options: UnregisterDepositPolicyOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
886
+ export interface UnregisterWithdrawPolicyArguments {
887
+ registry: RawTransactionArgument<string>;
888
+ _: RawTransactionArgument<string>;
889
+ }
890
+ export interface UnregisterWithdrawPolicyOptions {
891
+ package?: string;
892
+ arguments: UnregisterWithdrawPolicyArguments | [
893
+ registry: RawTransactionArgument<string>,
894
+ _: RawTransactionArgument<string>
895
+ ];
896
+ typeArguments: [
897
+ string,
898
+ string
899
+ ];
900
+ }
901
+ export declare function unregisterWithdrawPolicy(options: UnregisterWithdrawPolicyOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
902
+ export interface CreateAccountArguments {
903
+ registry: RawTransactionArgument<string>;
904
+ senderRequest: TransactionArgument;
905
+ alias: RawTransactionArgument<string>;
906
+ }
907
+ export interface CreateAccountOptions {
908
+ package?: string;
909
+ arguments: CreateAccountArguments | [
910
+ registry: RawTransactionArgument<string>,
911
+ senderRequest: TransactionArgument,
912
+ alias: RawTransactionArgument<string>
913
+ ];
914
+ }
915
+ export declare function createAccount(options: CreateAccountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
916
+ export interface DeriveAccountAddressArguments {
917
+ registry: RawTransactionArgument<string>;
918
+ owner: RawTransactionArgument<string>;
919
+ index: RawTransactionArgument<number | bigint>;
920
+ }
921
+ export interface DeriveAccountAddressOptions {
922
+ package?: string;
923
+ arguments: DeriveAccountAddressArguments | [
924
+ registry: RawTransactionArgument<string>,
925
+ owner: RawTransactionArgument<string>,
926
+ index: RawTransactionArgument<number | bigint>
927
+ ];
928
+ }
929
+ /**
930
+ * Off-chain view: compute the address a future `create_account` call will produce
931
+ * for `(owner, index)`. Mirrors `derived_object::derive_address` keyed on
932
+ * `AccountKey`. Useful for SDKs that want to address an account before it exists,
933
+ * or to discover all of an owner's accounts by iterating index from 0 up to
934
+ * `MAX_ACCOUNTS_PER_OWNER` and checking `has_account` against each derived
935
+ * address.
936
+ */
937
+ export declare function deriveAccountAddress(options: DeriveAccountAddressOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
938
+ export interface SetAliasArguments {
939
+ registry: RawTransactionArgument<string>;
940
+ senderRequest: TransactionArgument;
941
+ accountId: RawTransactionArgument<string>;
942
+ alias: RawTransactionArgument<string>;
943
+ }
944
+ export interface SetAliasOptions {
945
+ package?: string;
946
+ arguments: SetAliasArguments | [
947
+ registry: RawTransactionArgument<string>,
948
+ senderRequest: TransactionArgument,
949
+ accountId: RawTransactionArgument<string>,
950
+ alias: RawTransactionArgument<string>
951
+ ];
952
+ }
953
+ export declare function setAlias(options: SetAliasOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
954
+ export interface AddDelegateArguments {
955
+ registry: RawTransactionArgument<string>;
956
+ senderRequest: TransactionArgument;
957
+ accountId: RawTransactionArgument<string>;
958
+ delegateAddress: RawTransactionArgument<string>;
959
+ alias: RawTransactionArgument<string>;
960
+ permissions: RawTransactionArgument<number>;
961
+ expiresAtMs: RawTransactionArgument<number | bigint | null>;
962
+ }
963
+ export interface AddDelegateOptions {
964
+ package?: string;
965
+ arguments: AddDelegateArguments | [
966
+ registry: RawTransactionArgument<string>,
967
+ senderRequest: TransactionArgument,
968
+ accountId: RawTransactionArgument<string>,
969
+ delegateAddress: RawTransactionArgument<string>,
970
+ alias: RawTransactionArgument<string>,
971
+ permissions: RawTransactionArgument<number>,
972
+ expiresAtMs: RawTransactionArgument<number | bigint | null>
973
+ ];
974
+ }
975
+ export declare function addDelegate(options: AddDelegateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
976
+ export interface RemoveDelegateArguments {
977
+ registry: RawTransactionArgument<string>;
978
+ senderRequest: TransactionArgument;
979
+ accountId: RawTransactionArgument<string>;
980
+ delegateAddress: RawTransactionArgument<string>;
981
+ }
982
+ export interface RemoveDelegateOptions {
983
+ package?: string;
984
+ arguments: RemoveDelegateArguments | [
985
+ registry: RawTransactionArgument<string>,
986
+ senderRequest: TransactionArgument,
987
+ accountId: RawTransactionArgument<string>,
988
+ delegateAddress: RawTransactionArgument<string>
989
+ ];
990
+ }
991
+ /**
992
+ * Owner-only for live delegates; permissionless once the delegate has passed its
993
+ * `expires_at_ms`. Lets a keeper / bot prune dead entries without bothering the
994
+ * owner — an expired delegate carries no authority, so removing it is purely
995
+ * janitorial.
996
+ */
997
+ export declare function removeDelegate(options: RemoveDelegateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
998
+ export interface UpdateDelegateArguments {
999
+ registry: RawTransactionArgument<string>;
1000
+ senderRequest: TransactionArgument;
1001
+ accountId: RawTransactionArgument<string>;
1002
+ delegateAddress: RawTransactionArgument<string>;
1003
+ alias: RawTransactionArgument<string>;
1004
+ permissions: RawTransactionArgument<number>;
1005
+ expiresAtMs: RawTransactionArgument<number | bigint | null>;
1006
+ }
1007
+ export interface UpdateDelegateOptions {
1008
+ package?: string;
1009
+ arguments: UpdateDelegateArguments | [
1010
+ registry: RawTransactionArgument<string>,
1011
+ senderRequest: TransactionArgument,
1012
+ accountId: RawTransactionArgument<string>,
1013
+ delegateAddress: RawTransactionArgument<string>,
1014
+ alias: RawTransactionArgument<string>,
1015
+ permissions: RawTransactionArgument<number>,
1016
+ expiresAtMs: RawTransactionArgument<number | bigint | null>
1017
+ ];
1018
+ }
1019
+ export declare function updateDelegate(options: UpdateDelegateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1020
+ export interface SetDelegateProtocolPermissionArguments {
1021
+ registry: RawTransactionArgument<string>;
1022
+ senderRequest: TransactionArgument;
1023
+ accountId: RawTransactionArgument<string>;
1024
+ delegateAddress: RawTransactionArgument<string>;
1025
+ permissions: RawTransactionArgument<number>;
1026
+ }
1027
+ export interface SetDelegateProtocolPermissionOptions {
1028
+ package?: string;
1029
+ arguments: SetDelegateProtocolPermissionArguments | [
1030
+ registry: RawTransactionArgument<string>,
1031
+ senderRequest: TransactionArgument,
1032
+ accountId: RawTransactionArgument<string>,
1033
+ delegateAddress: RawTransactionArgument<string>,
1034
+ permissions: RawTransactionArgument<number>
1035
+ ];
1036
+ typeArguments: [
1037
+ string
1038
+ ];
1039
+ }
1040
+ export declare function setDelegateProtocolPermission(options: SetDelegateProtocolPermissionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1041
+ export interface UnsetDelegateProtocolPermissionArguments {
1042
+ registry: RawTransactionArgument<string>;
1043
+ senderRequest: TransactionArgument;
1044
+ accountId: RawTransactionArgument<string>;
1045
+ delegateAddress: RawTransactionArgument<string>;
1046
+ }
1047
+ export interface UnsetDelegateProtocolPermissionOptions {
1048
+ package?: string;
1049
+ arguments: UnsetDelegateProtocolPermissionArguments | [
1050
+ registry: RawTransactionArgument<string>,
1051
+ senderRequest: TransactionArgument,
1052
+ accountId: RawTransactionArgument<string>,
1053
+ delegateAddress: RawTransactionArgument<string>
1054
+ ];
1055
+ typeArguments: [
1056
+ string
1057
+ ];
1058
+ }
1059
+ export declare function unsetDelegateProtocolPermission(options: UnsetDelegateProtocolPermissionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1060
+ export interface RequestDepositArguments {
1061
+ registry: RawTransactionArgument<string>;
1062
+ accountId: RawTransactionArgument<string>;
1063
+ coin: RawTransactionArgument<string>;
1064
+ extraData: RawTransactionArgument<Array<number>>;
1065
+ }
1066
+ export interface RequestDepositOptions {
1067
+ package?: string;
1068
+ arguments: RequestDepositArguments | [
1069
+ registry: RawTransactionArgument<string>,
1070
+ accountId: RawTransactionArgument<string>,
1071
+ coin: RawTransactionArgument<string>,
1072
+ extraData: RawTransactionArgument<Array<number>>
1073
+ ];
1074
+ typeArguments: [
1075
+ string
1076
+ ];
1077
+ }
1078
+ /**
1079
+ * Wraps an in-PTB `Coin<T>` into a `DepositRequest<T>` for the account.
1080
+ * Permissionless — anyone can pay into any account, since the policy (not the
1081
+ * framework) decides what the eventual credited asset is. `T` must have a
1082
+ * registered deposit policy; aborts otherwise.
1083
+ */
1084
+ export declare function requestDeposit(options: RequestDepositOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1085
+ export interface RequestDepositFromReceivingsArguments {
1086
+ registry: RawTransactionArgument<string>;
1087
+ accountId: RawTransactionArgument<string>;
1088
+ receivings: TransactionArgument;
1089
+ extraData: RawTransactionArgument<Array<number>>;
1090
+ }
1091
+ export interface RequestDepositFromReceivingsOptions {
1092
+ package?: string;
1093
+ arguments: RequestDepositFromReceivingsArguments | [
1094
+ registry: RawTransactionArgument<string>,
1095
+ accountId: RawTransactionArgument<string>,
1096
+ receivings: TransactionArgument,
1097
+ extraData: RawTransactionArgument<Array<number>>
1098
+ ];
1099
+ typeArguments: [
1100
+ string
1101
+ ];
1102
+ }
1103
+ /**
1104
+ * Drains `Receiving<Coin<T>>` entries addressed to the account's UID into a single
1105
+ * merged `Coin<T>` and wraps it as a `DepositRequest<T>`. Used when a user (or
1106
+ * anyone) previously `transfer_coin`-ed a `Coin<T>` onto the account address and
1107
+ * now wants to fold it into custody. Permissionless for the same reason as
1108
+ * `request_deposit<T>`.
1109
+ */
1110
+ export declare function requestDepositFromReceivings(options: RequestDepositFromReceivingsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1111
+ export interface RequestDepositFromFundsArguments {
1112
+ registry: RawTransactionArgument<string>;
1113
+ accountId: RawTransactionArgument<string>;
1114
+ accumulatorRoot: RawTransactionArgument<string>;
1115
+ extraData: RawTransactionArgument<Array<number>>;
1116
+ }
1117
+ export interface RequestDepositFromFundsOptions {
1118
+ package?: string;
1119
+ arguments: RequestDepositFromFundsArguments | [
1120
+ registry: RawTransactionArgument<string>,
1121
+ accountId: RawTransactionArgument<string>,
1122
+ accumulatorRoot: RawTransactionArgument<string>,
1123
+ extraData: RawTransactionArgument<Array<number>>
1124
+ ];
1125
+ typeArguments: [
1126
+ string
1127
+ ];
1128
+ }
1129
+ /**
1130
+ * Drains every `Balance<T>` sitting at the account's UID-derived address in Sui's
1131
+ * native funds accumulator and wraps the total into a single `DepositRequest<T>`.
1132
+ * Useful for accounts that receive `Coin<T>` via `0x2::balance::send_funds<T>` (or
1133
+ * any path that lands T at `account_id.to_address()` directly) and want it folded
1134
+ * into framework custody through the deposit-policy pipeline.
1135
+ *
1136
+ * The total drained equals `settled_funds_value<T>(root, addr)` as of the last
1137
+ * consensus commit — within the writing PTB itself, that read returns the pre-tx
1138
+ * value, so SDKs should treat this as a between-tx drain. Permissionless
1139
+ * (crediting an account is always allowed), pause-free, requires `T` to have a
1140
+ * registered deposit policy. Returns a deposit request even when the address holds
1141
+ * zero T (the carried balance is `Balance::zero()` in that case) — callers can
1142
+ * short-circuit off-chain by checking `settled_funds_value` first.
1143
+ */
1144
+ export declare function requestDepositFromFunds(options: RequestDepositFromFundsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1145
+ export interface ConsumeDepositArguments<P extends BcsType<any>> {
1146
+ registry: RawTransactionArgument<string>;
1147
+ req: TransactionArgument;
1148
+ Witness: RawTransactionArgument<P>;
1149
+ }
1150
+ export interface ConsumeDepositOptions<P extends BcsType<any>> {
1151
+ package?: string;
1152
+ arguments: ConsumeDepositArguments<P> | [
1153
+ registry: RawTransactionArgument<string>,
1154
+ req: TransactionArgument,
1155
+ Witness: RawTransactionArgument<P>
1156
+ ];
1157
+ typeArguments: [
1158
+ string,
1159
+ string
1160
+ ];
1161
+ }
1162
+ /**
1163
+ * Policy-side unwrap. Verifies that `P` is the registered deposit policy for `T`,
1164
+ * then destructures the hot potato. The policy module is responsible for what
1165
+ * happens next — typically swap / convert `Balance<T>` to some `Balance<T_OUT>`
1166
+ * and call `put<T_OUT, P>` to credit the account.
1167
+ */
1168
+ export declare function consumeDeposit<P extends BcsType<any>>(options: ConsumeDepositOptions<P>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1169
+ export interface RequestWithdrawArguments {
1170
+ registry: RawTransactionArgument<string>;
1171
+ senderRequest: TransactionArgument;
1172
+ accountId: RawTransactionArgument<string>;
1173
+ amount: RawTransactionArgument<number | bigint>;
1174
+ recipient: RawTransactionArgument<string>;
1175
+ extraData: RawTransactionArgument<Array<number>>;
1176
+ }
1177
+ export interface RequestWithdrawOptions {
1178
+ package?: string;
1179
+ arguments: RequestWithdrawArguments | [
1180
+ registry: RawTransactionArgument<string>,
1181
+ senderRequest: TransactionArgument,
1182
+ accountId: RawTransactionArgument<string>,
1183
+ amount: RawTransactionArgument<number | bigint>,
1184
+ recipient: RawTransactionArgument<string>,
1185
+ extraData: RawTransactionArgument<Array<number>>
1186
+ ];
1187
+ typeArguments: [
1188
+ string
1189
+ ];
1190
+ }
1191
+ /**
1192
+ * Debits `amount` of the account's stored `Balance<T>` and packages it into a
1193
+ * `WithdrawRequest<T>` for the registered withdraw policy. Auth (owner-only — see
1194
+ * the gate below; `PERM_WITHDRAW` delegates are rejected) and pause are checked
1195
+ * here, not in `consume_withdraw`.
1196
+ */
1197
+ export declare function requestWithdraw(options: RequestWithdrawOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1198
+ export interface ConsumeWithdrawArguments<P extends BcsType<any>> {
1199
+ registry: RawTransactionArgument<string>;
1200
+ req: TransactionArgument;
1201
+ Witness: RawTransactionArgument<P>;
1202
+ }
1203
+ export interface ConsumeWithdrawOptions<P extends BcsType<any>> {
1204
+ package?: string;
1205
+ arguments: ConsumeWithdrawArguments<P> | [
1206
+ registry: RawTransactionArgument<string>,
1207
+ req: TransactionArgument,
1208
+ Witness: RawTransactionArgument<P>
1209
+ ];
1210
+ typeArguments: [
1211
+ string,
1212
+ string
1213
+ ];
1214
+ }
1215
+ /**
1216
+ * Policy-side unwrap. Verifies that `P` is the registered withdraw policy for `T`,
1217
+ * then destructures the hot potato. The policy module decides what to do with the
1218
+ * `Balance<T>` (transfer to `recipient` as `Coin<T>`, swap to another asset and
1219
+ * transfer, queue for later settlement, etc.).
1220
+ */
1221
+ export declare function consumeWithdraw<P extends BcsType<any>>(options: ConsumeWithdrawOptions<P>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1222
+ export interface TransferCoinArguments {
1223
+ registry: RawTransactionArgument<string>;
1224
+ accountId: RawTransactionArgument<string>;
1225
+ coin: RawTransactionArgument<string>;
1226
+ }
1227
+ export interface TransferCoinOptions {
1228
+ package?: string;
1229
+ arguments: TransferCoinArguments | [
1230
+ registry: RawTransactionArgument<string>,
1231
+ accountId: RawTransactionArgument<string>,
1232
+ coin: RawTransactionArgument<string>
1233
+ ];
1234
+ typeArguments: [
1235
+ string
1236
+ ];
1237
+ }
1238
+ /**
1239
+ * TTOs a `Coin<T>` to the account's UID address. The coin sits there until someone
1240
+ * calls `request_deposit_from_receivings<T>` (which requires a registered deposit
1241
+ * policy that then folds the coin into the account's stored balance) or
1242
+ * `receive<Coin<T>>` (owner-only, no policy needed). Useful for async / cross-PTB
1243
+ * deposits and for routing protocol payouts (e.g. reward claims) into an account
1244
+ * when `T` has no deposit policy.
1245
+ */
1246
+ export declare function transferCoin(options: TransferCoinOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1247
+ export interface ReceiveArguments {
1248
+ registry: RawTransactionArgument<string>;
1249
+ senderRequest: TransactionArgument;
1250
+ accountId: RawTransactionArgument<string>;
1251
+ receiving: TransactionArgument;
1252
+ }
1253
+ export interface ReceiveOptions {
1254
+ package?: string;
1255
+ arguments: ReceiveArguments | [
1256
+ registry: RawTransactionArgument<string>,
1257
+ senderRequest: TransactionArgument,
1258
+ accountId: RawTransactionArgument<string>,
1259
+ receiving: TransactionArgument
1260
+ ];
1261
+ typeArguments: [
1262
+ string
1263
+ ];
1264
+ }
1265
+ /**
1266
+ * Account-owner drain of a TTO'd object on the account's UID. Generic over
1267
+ * `T: key + store` — works for NFTs, reward objects, or `Coin<X>` where `X` has no
1268
+ * registered deposit policy.
1269
+ *
1270
+ * **Policy-managed Coin<X> is rejected.** If `T == Coin<X>` and `X` has a deposit
1271
+ * policy registered, this aborts `EUseRequestDepositInstead` to keep policy-routed
1272
+ * inflow on the deposit-policy pipeline — bypassing via `receive` would skip the
1273
+ * conversion / authorization the policy is supposed to enforce. Use
1274
+ * `request_deposit_from_receivings<X>` or `request_deposit_from_funds<X>` for
1275
+ * inflow when X has a deposit policy.
1276
+ *
1277
+ * Auth: account owner only. Receiving a TTO'd object hands it to the caller's PTB
1278
+ * — an off-platform exfil path — so a delegate can never drive it, even one
1279
+ * holding `PERM_RECEIVE`. The `PERM_RECEIVE` bit is retained for ABI stability but
1280
+ * no longer gates any path. Returns the received object to the caller's PTB.
1281
+ */
1282
+ export declare function receive(options: ReceiveOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1283
+ export interface WithdrawFromFundsArguments {
1284
+ registry: RawTransactionArgument<string>;
1285
+ senderRequest: TransactionArgument;
1286
+ accountId: RawTransactionArgument<string>;
1287
+ accumulatorRoot: RawTransactionArgument<string>;
1288
+ }
1289
+ export interface WithdrawFromFundsOptions {
1290
+ package?: string;
1291
+ arguments: WithdrawFromFundsArguments | [
1292
+ registry: RawTransactionArgument<string>,
1293
+ senderRequest: TransactionArgument,
1294
+ accountId: RawTransactionArgument<string>,
1295
+ accumulatorRoot: RawTransactionArgument<string>
1296
+ ];
1297
+ typeArguments: [
1298
+ string
1299
+ ];
1300
+ }
1301
+ /**
1302
+ * Drains every `Balance<T>` sitting at the account's UID-derived address in Sui's
1303
+ * native funds accumulator and returns it directly as a `Balance<T>`. Symmetric to
1304
+ * `request_deposit_from_funds<T>`, but explicitly for `T` that has **no**
1305
+ * registered deposit policy — policy-managed inflow must route through the
1306
+ * deposit-policy pipeline instead. The intent is to let the account owner pull
1307
+ * policy-less inflow (reward tokens TTO'd via `send_funds`, miscellaneous
1308
+ * `Balance<T>` the SDK parked at the address) straight out.
1309
+ *
1310
+ * Auth: same as `request_withdraw<T>` — owner-only. A delegate is rejected even
1311
+ * one holding `PERM_WITHDRAW` (the bit no longer gates this path; retained for ABI
1312
+ * stability only). Aborts `EUseRequestDepositInstead` if `T` has a deposit policy
1313
+ * registered. Pause-gated. Returns `Balance::zero<T>()` when the address holds no
1314
+ * T.
1315
+ */
1316
+ export declare function withdrawFromFunds(options: WithdrawFromFundsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1317
+ export interface TakeArguments<P extends BcsType<any>> {
1318
+ registry: RawTransactionArgument<string>;
1319
+ senderRequest: TransactionArgument;
1320
+ accountId: RawTransactionArgument<string>;
1321
+ amount: RawTransactionArgument<number | bigint>;
1322
+ Witness: RawTransactionArgument<P>;
1323
+ }
1324
+ export interface TakeOptions<P extends BcsType<any>> {
1325
+ package?: string;
1326
+ arguments: TakeArguments<P> | [
1327
+ registry: RawTransactionArgument<string>,
1328
+ senderRequest: TransactionArgument,
1329
+ accountId: RawTransactionArgument<string>,
1330
+ amount: RawTransactionArgument<number | bigint>,
1331
+ Witness: RawTransactionArgument<P>
1332
+ ];
1333
+ typeArguments: [
1334
+ string,
1335
+ string
1336
+ ];
1337
+ }
1338
+ /**
1339
+ * Splits `amount` of `Balance<T>` off `account_id` for protocol `P` to use. Three
1340
+ * gates compose:
1341
+ *
1342
+ * 1. **Witness privacy.** Only the module that defines `P` can produce a value of
1343
+ * `P`, so only that module can call `take<T, P>`.
1344
+ * 2. **Protocol whitelist.** `P` must be in `protocol_whitelist` (admin-managed).
1345
+ * Stops any deployed module that happens to own a `drop` witness from draining
1346
+ * accounts.
1347
+ * 3. **Per-account auth.** `sender_request.address()` must be the account's owner
1348
+ * OR a non-expired delegate — even a legitimate whitelisted protocol cannot
1349
+ * move funds out of an account that doesn't know the caller. This mirrors EOA
1350
+ * semantics: the account never pays out without the owner (or a delegated key)
1351
+ * signing. Per-action bit semantics on `protocol_permissions[P]` remain the
1352
+ * protocol's responsibility on top of this.
1353
+ *
1354
+ * No deposit/withdraw policy is consulted — `take` / `put` are the
1355
+ * protocol↔account flow and orthogonal to the external deposit/withdraw path that
1356
+ * policies own.
1357
+ */
1358
+ export declare function take<P extends BcsType<any>>(options: TakeOptions<P>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1359
+ export interface PutArguments<P extends BcsType<any>> {
1360
+ registry: RawTransactionArgument<string>;
1361
+ accountId: RawTransactionArgument<string>;
1362
+ bal: TransactionArgument;
1363
+ Witness: RawTransactionArgument<P>;
1364
+ }
1365
+ export interface PutOptions<P extends BcsType<any>> {
1366
+ package?: string;
1367
+ arguments: PutArguments<P> | [
1368
+ registry: RawTransactionArgument<string>,
1369
+ accountId: RawTransactionArgument<string>,
1370
+ bal: TransactionArgument,
1371
+ Witness: RawTransactionArgument<P>
1372
+ ];
1373
+ typeArguments: [
1374
+ string,
1375
+ string
1376
+ ];
1377
+ }
1378
+ /**
1379
+ * Joins `bal` into `account_id`'s stored `Balance<T>`. Symmetric to `take<T, P>`.
1380
+ * Zero-value balances are silently destroyed.
1381
+ */
1382
+ export declare function put<P extends BcsType<any>>(options: PutOptions<P>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1383
+ export interface HasAccountArguments {
1384
+ registry: RawTransactionArgument<string>;
1385
+ accountId: RawTransactionArgument<string>;
1386
+ }
1387
+ export interface HasAccountOptions {
1388
+ package?: string;
1389
+ arguments: HasAccountArguments | [
1390
+ registry: RawTransactionArgument<string>,
1391
+ accountId: RawTransactionArgument<string>
1392
+ ];
1393
+ }
1394
+ export declare function hasAccount(options: HasAccountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1395
+ export interface IsAccountAuthorizedArguments {
1396
+ registry: RawTransactionArgument<string>;
1397
+ accountId: RawTransactionArgument<string>;
1398
+ addr: RawTransactionArgument<string>;
1399
+ nowMs: RawTransactionArgument<number | bigint>;
1400
+ }
1401
+ export interface IsAccountAuthorizedOptions {
1402
+ package?: string;
1403
+ arguments: IsAccountAuthorizedArguments | [
1404
+ registry: RawTransactionArgument<string>,
1405
+ accountId: RawTransactionArgument<string>,
1406
+ addr: RawTransactionArgument<string>,
1407
+ nowMs: RawTransactionArgument<number | bigint>
1408
+ ];
1409
+ }
1410
+ /**
1411
+ * Returns `true` when `addr` is the account's owner or a non-expired delegate,
1412
+ * regardless of permission bits. The framework's "is this address known to the
1413
+ * account?" gate — per-action bit semantics are the protocol's responsibility on
1414
+ * top of this.
1415
+ */
1416
+ export declare function isAccountAuthorized(options: IsAccountAuthorizedOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1417
+ export interface IsAccountOwnerArguments {
1418
+ registry: RawTransactionArgument<string>;
1419
+ accountId: RawTransactionArgument<string>;
1420
+ addr: RawTransactionArgument<string>;
1421
+ }
1422
+ export interface IsAccountOwnerOptions {
1423
+ package?: string;
1424
+ arguments: IsAccountOwnerArguments | [
1425
+ registry: RawTransactionArgument<string>,
1426
+ accountId: RawTransactionArgument<string>,
1427
+ addr: RawTransactionArgument<string>
1428
+ ];
1429
+ }
1430
+ /**
1431
+ * Returns `true` only when `addr` is the account's **owner** — delegates are
1432
+ * excluded regardless of their permission bits or expiry. Protocols use this for
1433
+ * owner-only actions that must never be delegate-driven (e.g. collateral
1434
+ * withdrawal): defense-in-depth so a phished or compromised delegate key can never
1435
+ * move funds, only the owner's own signature can. Contrast `is_account_authorized`
1436
+ * (owner OR live delegate).
1437
+ */
1438
+ export declare function isAccountOwner(options: IsAccountOwnerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1439
+ export interface AccountCountArguments {
1440
+ registry: RawTransactionArgument<string>;
1441
+ owner: RawTransactionArgument<string>;
1442
+ }
1443
+ export interface AccountCountOptions {
1444
+ package?: string;
1445
+ arguments: AccountCountArguments | [
1446
+ registry: RawTransactionArgument<string>,
1447
+ owner: RawTransactionArgument<string>
1448
+ ];
1449
+ }
1450
+ export declare function accountCount(options: AccountCountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1451
+ export interface AccountIdsArguments {
1452
+ registry: RawTransactionArgument<string>;
1453
+ owner: RawTransactionArgument<string>;
1454
+ }
1455
+ export interface AccountIdsOptions {
1456
+ package?: string;
1457
+ arguments: AccountIdsArguments | [
1458
+ registry: RawTransactionArgument<string>,
1459
+ owner: RawTransactionArgument<string>
1460
+ ];
1461
+ }
1462
+ export declare function accountIds(options: AccountIdsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1463
+ export interface EffectivePermissionsArguments {
1464
+ registry: RawTransactionArgument<string>;
1465
+ accountId: RawTransactionArgument<string>;
1466
+ addr: RawTransactionArgument<string>;
1467
+ nowMs: RawTransactionArgument<number | bigint>;
1468
+ }
1469
+ export interface EffectivePermissionsOptions {
1470
+ package?: string;
1471
+ arguments: EffectivePermissionsArguments | [
1472
+ registry: RawTransactionArgument<string>,
1473
+ accountId: RawTransactionArgument<string>,
1474
+ addr: RawTransactionArgument<string>,
1475
+ nowMs: RawTransactionArgument<number | bigint>
1476
+ ];
1477
+ }
1478
+ /**
1479
+ * Framework-level effective permissions (used by `request_withdraw`). Owner →
1480
+ * `PERM_ALL`. Delegate → its `permissions` bitmap unless expired. Stranger →
1481
+ * `PERM_NONE`.
1482
+ */
1483
+ export declare function effectivePermissions(options: EffectivePermissionsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1484
+ export interface HasPermissionArguments {
1485
+ registry: RawTransactionArgument<string>;
1486
+ accountId: RawTransactionArgument<string>;
1487
+ addr: RawTransactionArgument<string>;
1488
+ permission: RawTransactionArgument<number>;
1489
+ nowMs: RawTransactionArgument<number | bigint>;
1490
+ }
1491
+ export interface HasPermissionOptions {
1492
+ package?: string;
1493
+ arguments: HasPermissionArguments | [
1494
+ registry: RawTransactionArgument<string>,
1495
+ accountId: RawTransactionArgument<string>,
1496
+ addr: RawTransactionArgument<string>,
1497
+ permission: RawTransactionArgument<number>,
1498
+ nowMs: RawTransactionArgument<number | bigint>
1499
+ ];
1500
+ }
1501
+ export declare function hasPermission(options: HasPermissionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1502
+ export interface EffectiveProtocolPermissionsArguments {
1503
+ registry: RawTransactionArgument<string>;
1504
+ accountId: RawTransactionArgument<string>;
1505
+ addr: RawTransactionArgument<string>;
1506
+ nowMs: RawTransactionArgument<number | bigint>;
1507
+ }
1508
+ export interface EffectiveProtocolPermissionsOptions {
1509
+ package?: string;
1510
+ arguments: EffectiveProtocolPermissionsArguments | [
1511
+ registry: RawTransactionArgument<string>,
1512
+ accountId: RawTransactionArgument<string>,
1513
+ addr: RawTransactionArgument<string>,
1514
+ nowMs: RawTransactionArgument<number | bigint>
1515
+ ];
1516
+ typeArguments: [
1517
+ string
1518
+ ];
1519
+ }
1520
+ /**
1521
+ * Per-protocol effective permissions (used by protocol modules). Owner →
1522
+ * `PERM_ALL` for any protocol. Delegate → the bitmap stored at
1523
+ * `protocol_permissions[TypeName(PROTOCOL)]`, or `PERM_NONE` if absent or expired.
1524
+ * Stranger → `PERM_NONE`.
1525
+ */
1526
+ export declare function effectiveProtocolPermissions(options: EffectiveProtocolPermissionsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1527
+ export interface HasProtocolPermissionArguments {
1528
+ registry: RawTransactionArgument<string>;
1529
+ accountId: RawTransactionArgument<string>;
1530
+ addr: RawTransactionArgument<string>;
1531
+ permission: RawTransactionArgument<number>;
1532
+ nowMs: RawTransactionArgument<number | bigint>;
1533
+ }
1534
+ export interface HasProtocolPermissionOptions {
1535
+ package?: string;
1536
+ arguments: HasProtocolPermissionArguments | [
1537
+ registry: RawTransactionArgument<string>,
1538
+ accountId: RawTransactionArgument<string>,
1539
+ addr: RawTransactionArgument<string>,
1540
+ permission: RawTransactionArgument<number>,
1541
+ nowMs: RawTransactionArgument<number | bigint>
1542
+ ];
1543
+ typeArguments: [
1544
+ string
1545
+ ];
1546
+ }
1547
+ export declare function hasProtocolPermission(options: HasProtocolPermissionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1548
+ export interface AccountBalanceArguments {
1549
+ registry: RawTransactionArgument<string>;
1550
+ accountId: RawTransactionArgument<string>;
1551
+ }
1552
+ export interface AccountBalanceOptions {
1553
+ package?: string;
1554
+ arguments: AccountBalanceArguments | [
1555
+ registry: RawTransactionArgument<string>,
1556
+ accountId: RawTransactionArgument<string>
1557
+ ];
1558
+ typeArguments: [
1559
+ string
1560
+ ];
1561
+ }
1562
+ export declare function accountBalance(options: AccountBalanceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1563
+ export interface AccountBalancesArguments {
1564
+ registry: RawTransactionArgument<string>;
1565
+ accountId: RawTransactionArgument<string>;
1566
+ }
1567
+ export interface AccountBalancesOptions {
1568
+ package?: string;
1569
+ arguments: AccountBalancesArguments | [
1570
+ registry: RawTransactionArgument<string>,
1571
+ accountId: RawTransactionArgument<string>
1572
+ ];
1573
+ }
1574
+ export declare function accountBalances(options: AccountBalancesOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1575
+ export interface BalanceArguments {
1576
+ registry: RawTransactionArgument<string>;
1577
+ }
1578
+ export interface BalanceOptions {
1579
+ package?: string;
1580
+ arguments: BalanceArguments | [
1581
+ registry: RawTransactionArgument<string>
1582
+ ];
1583
+ typeArguments: [
1584
+ string
1585
+ ];
1586
+ }
1587
+ /**
1588
+ * Total `Balance<T>` currently held across all accounts. Counter; not derived from
1589
+ * iterating accounts. Excludes balance held by protocols (after `take`) and
1590
+ * balance sitting in hot-potato requests in flight.
1591
+ */
1592
+ export declare function balance(options: BalanceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1593
+ export interface AccountOwnerArguments {
1594
+ account: RawTransactionArgument<string>;
1595
+ }
1596
+ export interface AccountOwnerOptions {
1597
+ package?: string;
1598
+ arguments: AccountOwnerArguments | [
1599
+ account: RawTransactionArgument<string>
1600
+ ];
1601
+ }
1602
+ export declare function accountOwner(options: AccountOwnerOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1603
+ export interface AccountAliasArguments {
1604
+ account: RawTransactionArgument<string>;
1605
+ }
1606
+ export interface AccountAliasOptions {
1607
+ package?: string;
1608
+ arguments: AccountAliasArguments | [
1609
+ account: RawTransactionArgument<string>
1610
+ ];
1611
+ }
1612
+ export declare function accountAlias(options: AccountAliasOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1613
+ export interface AccountIdArguments {
1614
+ account: RawTransactionArgument<string>;
1615
+ }
1616
+ export interface AccountIdOptions {
1617
+ package?: string;
1618
+ arguments: AccountIdArguments | [
1619
+ account: RawTransactionArgument<string>
1620
+ ];
1621
+ }
1622
+ export declare function accountId(options: AccountIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1623
+ export interface AccountAddressArguments {
1624
+ account: RawTransactionArgument<string>;
1625
+ }
1626
+ export interface AccountAddressOptions {
1627
+ package?: string;
1628
+ arguments: AccountAddressArguments | [
1629
+ account: RawTransactionArgument<string>
1630
+ ];
1631
+ }
1632
+ export declare function accountAddress(options: AccountAddressOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1633
+ export interface AccountDelegatesArguments {
1634
+ account: RawTransactionArgument<string>;
1635
+ }
1636
+ export interface AccountDelegatesOptions {
1637
+ package?: string;
1638
+ arguments: AccountDelegatesArguments | [
1639
+ account: RawTransactionArgument<string>
1640
+ ];
1641
+ }
1642
+ export declare function accountDelegates(options: AccountDelegatesOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1643
+ export interface AccountBalancesFieldArguments {
1644
+ account: RawTransactionArgument<string>;
1645
+ }
1646
+ export interface AccountBalancesFieldOptions {
1647
+ package?: string;
1648
+ arguments: AccountBalancesFieldArguments | [
1649
+ account: RawTransactionArgument<string>
1650
+ ];
1651
+ }
1652
+ export declare function accountBalancesField(options: AccountBalancesFieldOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1653
+ export interface DelegateAddressArguments {
1654
+ delegate: TransactionArgument;
1655
+ }
1656
+ export interface DelegateAddressOptions {
1657
+ package?: string;
1658
+ arguments: DelegateAddressArguments | [
1659
+ delegate: TransactionArgument
1660
+ ];
1661
+ }
1662
+ export declare function delegateAddress(options: DelegateAddressOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1663
+ export interface DelegateAliasArguments {
1664
+ delegate: TransactionArgument;
1665
+ }
1666
+ export interface DelegateAliasOptions {
1667
+ package?: string;
1668
+ arguments: DelegateAliasArguments | [
1669
+ delegate: TransactionArgument
1670
+ ];
1671
+ }
1672
+ export declare function delegateAlias(options: DelegateAliasOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1673
+ export interface DelegatePermissionsArguments {
1674
+ delegate: TransactionArgument;
1675
+ }
1676
+ export interface DelegatePermissionsOptions {
1677
+ package?: string;
1678
+ arguments: DelegatePermissionsArguments | [
1679
+ delegate: TransactionArgument
1680
+ ];
1681
+ }
1682
+ export declare function delegatePermissions(options: DelegatePermissionsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1683
+ export interface DelegateProtocolPermissionsArguments {
1684
+ delegate: TransactionArgument;
1685
+ }
1686
+ export interface DelegateProtocolPermissionsOptions {
1687
+ package?: string;
1688
+ arguments: DelegateProtocolPermissionsArguments | [
1689
+ delegate: TransactionArgument
1690
+ ];
1691
+ }
1692
+ export declare function delegateProtocolPermissions(options: DelegateProtocolPermissionsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1693
+ export interface DelegateExpiresAtMsArguments {
1694
+ delegate: TransactionArgument;
1695
+ }
1696
+ export interface DelegateExpiresAtMsOptions {
1697
+ package?: string;
1698
+ arguments: DelegateExpiresAtMsArguments | [
1699
+ delegate: TransactionArgument
1700
+ ];
1701
+ }
1702
+ export declare function delegateExpiresAtMs(options: DelegateExpiresAtMsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1703
+ export interface DepositRequestAccountIdArguments {
1704
+ r: TransactionArgument;
1705
+ }
1706
+ export interface DepositRequestAccountIdOptions {
1707
+ package?: string;
1708
+ arguments: DepositRequestAccountIdArguments | [
1709
+ r: TransactionArgument
1710
+ ];
1711
+ typeArguments: [
1712
+ string
1713
+ ];
1714
+ }
1715
+ export declare function depositRequestAccountId(options: DepositRequestAccountIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1716
+ export interface DepositRequestBalanceArguments {
1717
+ r: TransactionArgument;
1718
+ }
1719
+ export interface DepositRequestBalanceOptions {
1720
+ package?: string;
1721
+ arguments: DepositRequestBalanceArguments | [
1722
+ r: TransactionArgument
1723
+ ];
1724
+ typeArguments: [
1725
+ string
1726
+ ];
1727
+ }
1728
+ export declare function depositRequestBalance(options: DepositRequestBalanceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1729
+ export interface DepositRequestAmountArguments {
1730
+ r: TransactionArgument;
1731
+ }
1732
+ export interface DepositRequestAmountOptions {
1733
+ package?: string;
1734
+ arguments: DepositRequestAmountArguments | [
1735
+ r: TransactionArgument
1736
+ ];
1737
+ typeArguments: [
1738
+ string
1739
+ ];
1740
+ }
1741
+ export declare function depositRequestAmount(options: DepositRequestAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1742
+ export interface DepositRequestExtraDataArguments {
1743
+ r: TransactionArgument;
1744
+ }
1745
+ export interface DepositRequestExtraDataOptions {
1746
+ package?: string;
1747
+ arguments: DepositRequestExtraDataArguments | [
1748
+ r: TransactionArgument
1749
+ ];
1750
+ typeArguments: [
1751
+ string
1752
+ ];
1753
+ }
1754
+ export declare function depositRequestExtraData(options: DepositRequestExtraDataOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1755
+ export interface WithdrawRequestAccountIdArguments {
1756
+ r: TransactionArgument;
1757
+ }
1758
+ export interface WithdrawRequestAccountIdOptions {
1759
+ package?: string;
1760
+ arguments: WithdrawRequestAccountIdArguments | [
1761
+ r: TransactionArgument
1762
+ ];
1763
+ typeArguments: [
1764
+ string
1765
+ ];
1766
+ }
1767
+ export declare function withdrawRequestAccountId(options: WithdrawRequestAccountIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1768
+ export interface WithdrawRequestBalanceArguments {
1769
+ r: TransactionArgument;
1770
+ }
1771
+ export interface WithdrawRequestBalanceOptions {
1772
+ package?: string;
1773
+ arguments: WithdrawRequestBalanceArguments | [
1774
+ r: TransactionArgument
1775
+ ];
1776
+ typeArguments: [
1777
+ string
1778
+ ];
1779
+ }
1780
+ export declare function withdrawRequestBalance(options: WithdrawRequestBalanceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1781
+ export interface WithdrawRequestAmountArguments {
1782
+ r: TransactionArgument;
1783
+ }
1784
+ export interface WithdrawRequestAmountOptions {
1785
+ package?: string;
1786
+ arguments: WithdrawRequestAmountArguments | [
1787
+ r: TransactionArgument
1788
+ ];
1789
+ typeArguments: [
1790
+ string
1791
+ ];
1792
+ }
1793
+ export declare function withdrawRequestAmount(options: WithdrawRequestAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1794
+ export interface WithdrawRequestRecipientArguments {
1795
+ r: TransactionArgument;
1796
+ }
1797
+ export interface WithdrawRequestRecipientOptions {
1798
+ package?: string;
1799
+ arguments: WithdrawRequestRecipientArguments | [
1800
+ r: TransactionArgument
1801
+ ];
1802
+ typeArguments: [
1803
+ string
1804
+ ];
1805
+ }
1806
+ export declare function withdrawRequestRecipient(options: WithdrawRequestRecipientOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1807
+ export interface WithdrawRequestExtraDataArguments {
1808
+ r: TransactionArgument;
1809
+ }
1810
+ export interface WithdrawRequestExtraDataOptions {
1811
+ package?: string;
1812
+ arguments: WithdrawRequestExtraDataArguments | [
1813
+ r: TransactionArgument
1814
+ ];
1815
+ typeArguments: [
1816
+ string
1817
+ ];
1818
+ }
1819
+ export declare function withdrawRequestExtraData(options: WithdrawRequestExtraDataOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1820
+ export interface NewDataArguments<PROTOCOL extends BcsType<any>, ProtocolData extends BcsType<any>> {
1821
+ registry: RawTransactionArgument<string>;
1822
+ accountId: RawTransactionArgument<string>;
1823
+ Witness: RawTransactionArgument<PROTOCOL>;
1824
+ data: RawTransactionArgument<ProtocolData>;
1825
+ }
1826
+ export interface NewDataOptions<PROTOCOL extends BcsType<any>, ProtocolData extends BcsType<any>> {
1827
+ package?: string;
1828
+ arguments: NewDataArguments<PROTOCOL, ProtocolData> | [
1829
+ registry: RawTransactionArgument<string>,
1830
+ accountId: RawTransactionArgument<string>,
1831
+ Witness: RawTransactionArgument<PROTOCOL>,
1832
+ data: RawTransactionArgument<ProtocolData>
1833
+ ];
1834
+ typeArguments: [
1835
+ string,
1836
+ string
1837
+ ];
1838
+ }
1839
+ export declare function newData<PROTOCOL extends BcsType<any>, ProtocolData extends BcsType<any>>(options: NewDataOptions<PROTOCOL, ProtocolData>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1840
+ export interface BorrowDataArguments {
1841
+ registry: RawTransactionArgument<string>;
1842
+ accountId: RawTransactionArgument<string>;
1843
+ }
1844
+ export interface BorrowDataOptions {
1845
+ package?: string;
1846
+ arguments: BorrowDataArguments | [
1847
+ registry: RawTransactionArgument<string>,
1848
+ accountId: RawTransactionArgument<string>
1849
+ ];
1850
+ typeArguments: [
1851
+ string,
1852
+ string
1853
+ ];
1854
+ }
1855
+ export declare function borrowData(options: BorrowDataOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1856
+ export interface BorrowDataMutArguments<PROTOCOL extends BcsType<any>> {
1857
+ registry: RawTransactionArgument<string>;
1858
+ accountId: RawTransactionArgument<string>;
1859
+ Witness: RawTransactionArgument<PROTOCOL>;
1860
+ }
1861
+ export interface BorrowDataMutOptions<PROTOCOL extends BcsType<any>> {
1862
+ package?: string;
1863
+ arguments: BorrowDataMutArguments<PROTOCOL> | [
1864
+ registry: RawTransactionArgument<string>,
1865
+ accountId: RawTransactionArgument<string>,
1866
+ Witness: RawTransactionArgument<PROTOCOL>
1867
+ ];
1868
+ typeArguments: [
1869
+ string,
1870
+ string
1871
+ ];
1872
+ }
1873
+ export declare function borrowDataMut<PROTOCOL extends BcsType<any>>(options: BorrowDataMutOptions<PROTOCOL>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1874
+ export interface HasDataArguments {
1875
+ registry: RawTransactionArgument<string>;
1876
+ accountId: RawTransactionArgument<string>;
1877
+ }
1878
+ export interface HasDataOptions {
1879
+ package?: string;
1880
+ arguments: HasDataArguments | [
1881
+ registry: RawTransactionArgument<string>,
1882
+ accountId: RawTransactionArgument<string>
1883
+ ];
1884
+ typeArguments: [
1885
+ string
1886
+ ];
1887
+ }
1888
+ export declare function hasData(options: HasDataOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
1889
+ export interface RemoveDataArguments<PROTOCOL extends BcsType<any>> {
1890
+ registry: RawTransactionArgument<string>;
1891
+ accountId: RawTransactionArgument<string>;
1892
+ Witness: RawTransactionArgument<PROTOCOL>;
1893
+ }
1894
+ export interface RemoveDataOptions<PROTOCOL extends BcsType<any>> {
1895
+ package?: string;
1896
+ arguments: RemoveDataArguments<PROTOCOL> | [
1897
+ registry: RawTransactionArgument<string>,
1898
+ accountId: RawTransactionArgument<string>,
1899
+ Witness: RawTransactionArgument<PROTOCOL>
1900
+ ];
1901
+ typeArguments: [
1902
+ string,
1903
+ string
1904
+ ];
1905
+ }
1906
+ export declare function removeData<PROTOCOL extends BcsType<any>>(options: RemoveDataOptions<PROTOCOL>): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;