@waterx/sdk 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +204 -0
  3. package/dist/src/client.d.ts +109 -0
  4. package/dist/src/client.js +197 -0
  5. package/dist/src/config.d.ts +229 -0
  6. package/dist/src/config.js +107 -0
  7. package/dist/src/constants.d.ts +64 -0
  8. package/dist/src/constants.js +71 -0
  9. package/dist/src/fetch.d.ts +144 -0
  10. package/dist/src/fetch.js +419 -0
  11. package/dist/src/generated/bucket_v2_framework/account.d.ts +107 -0
  12. package/dist/src/generated/bucket_v2_framework/account.js +129 -0
  13. package/dist/src/generated/bucket_v2_framework/deps/std/type_name.d.ts +17 -0
  14. package/dist/src/generated/bucket_v2_framework/deps/std/type_name.js +19 -0
  15. package/dist/src/generated/bucket_v2_framework/deps/sui/balance.d.ts +12 -0
  16. package/dist/src/generated/bucket_v2_framework/deps/sui/balance.js +14 -0
  17. package/dist/src/generated/bucket_v2_framework/deps/sui/vec_map.d.ts +36 -0
  18. package/dist/src/generated/bucket_v2_framework/deps/sui/vec_map.js +27 -0
  19. package/dist/src/generated/bucket_v2_framework/deps/sui/vec_set.d.ts +16 -0
  20. package/dist/src/generated/bucket_v2_framework/deps/sui/vec_set.js +19 -0
  21. package/dist/src/generated/bucket_v2_framework/double.d.ts +384 -0
  22. package/dist/src/generated/bucket_v2_framework/double.js +466 -0
  23. package/dist/src/generated/bucket_v2_framework/float.d.ts +364 -0
  24. package/dist/src/generated/bucket_v2_framework/float.js +440 -0
  25. package/dist/src/generated/bucket_v2_framework/liability.d.ts +197 -0
  26. package/dist/src/generated/bucket_v2_framework/liability.js +205 -0
  27. package/dist/src/generated/bucket_v2_framework/linked_table.d.ts +384 -0
  28. package/dist/src/generated/bucket_v2_framework/linked_table.js +382 -0
  29. package/dist/src/generated/bucket_v2_framework/sheet.d.ts +424 -0
  30. package/dist/src/generated/bucket_v2_framework/sheet.js +344 -0
  31. package/dist/src/generated/native_custody/custody_vault.d.ts +572 -0
  32. package/dist/src/generated/native_custody/custody_vault.js +483 -0
  33. package/dist/src/generated/native_custody/deps/bucket_v2_framework/float.d.ts +8 -0
  34. package/dist/src/generated/native_custody/deps/bucket_v2_framework/float.js +10 -0
  35. package/dist/src/generated/native_custody/deps/bucket_v2_framework/liability.d.ts +11 -0
  36. package/dist/src/generated/native_custody/deps/bucket_v2_framework/liability.js +13 -0
  37. package/dist/src/generated/native_custody/deps/bucket_v2_framework/sheet.d.ts +49 -0
  38. package/dist/src/generated/native_custody/deps/bucket_v2_framework/sheet.js +18 -0
  39. package/dist/src/generated/native_custody/deps/std/type_name.d.ts +17 -0
  40. package/dist/src/generated/native_custody/deps/std/type_name.js +19 -0
  41. package/dist/src/generated/native_custody/deps/sui/balance.d.ts +12 -0
  42. package/dist/src/generated/native_custody/deps/sui/balance.js +14 -0
  43. package/dist/src/generated/native_custody/deps/sui/vec_map.d.ts +36 -0
  44. package/dist/src/generated/native_custody/deps/sui/vec_map.js +27 -0
  45. package/dist/src/generated/native_custody/deps/sui/vec_set.d.ts +16 -0
  46. package/dist/src/generated/native_custody/deps/sui/vec_set.js +19 -0
  47. package/dist/src/generated/native_custody/events.d.ts +36 -0
  48. package/dist/src/generated/native_custody/events.js +36 -0
  49. package/dist/src/generated/pyth_sponsor_rule/deps/sui/balance.d.ts +12 -0
  50. package/dist/src/generated/pyth_sponsor_rule/deps/sui/balance.js +14 -0
  51. package/dist/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.d.ts +68 -0
  52. package/dist/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.js +74 -0
  53. package/dist/src/generated/utils/index.d.ts +30 -0
  54. package/dist/src/generated/utils/index.js +157 -0
  55. package/dist/src/generated/waterx_account/account.d.ts +1818 -0
  56. package/dist/src/generated/waterx_account/account.js +1723 -0
  57. package/dist/src/generated/waterx_account/deps/bucket_v2_framework/liability.d.ts +11 -0
  58. package/dist/src/generated/waterx_account/deps/bucket_v2_framework/liability.js +13 -0
  59. package/dist/src/generated/waterx_account/deps/bucket_v2_framework/sheet.d.ts +49 -0
  60. package/dist/src/generated/waterx_account/deps/bucket_v2_framework/sheet.js +18 -0
  61. package/dist/src/generated/waterx_account/deps/std/type_name.d.ts +17 -0
  62. package/dist/src/generated/waterx_account/deps/std/type_name.js +19 -0
  63. package/dist/src/generated/waterx_account/deps/sui/balance.d.ts +12 -0
  64. package/dist/src/generated/waterx_account/deps/sui/balance.js +14 -0
  65. package/dist/src/generated/waterx_account/deps/sui/object_table.d.ts +17 -0
  66. package/dist/src/generated/waterx_account/deps/sui/object_table.js +19 -0
  67. package/dist/src/generated/waterx_account/deps/sui/table.d.ts +29 -0
  68. package/dist/src/generated/waterx_account/deps/sui/table.js +31 -0
  69. package/dist/src/generated/waterx_account/deps/sui/vec_map.d.ts +36 -0
  70. package/dist/src/generated/waterx_account/deps/sui/vec_map.js +27 -0
  71. package/dist/src/generated/waterx_account/deps/sui/vec_set.d.ts +16 -0
  72. package/dist/src/generated/waterx_account/deps/sui/vec_set.js +19 -0
  73. package/dist/src/generated/waterx_account/direct_rule.d.ts +77 -0
  74. package/dist/src/generated/waterx_account/direct_rule.js +78 -0
  75. package/dist/src/generated/waterx_account/events.d.ts +180 -0
  76. package/dist/src/generated/waterx_account/events.js +156 -0
  77. package/dist/src/generated/waterx_account/version.d.ts +10 -0
  78. package/dist/src/generated/waterx_account/version.js +8 -0
  79. package/dist/src/generated/waterx_credit/credit_registry.d.ts +708 -0
  80. package/dist/src/generated/waterx_credit/credit_registry.js +658 -0
  81. package/dist/src/generated/waterx_credit/deps/std/type_name.d.ts +17 -0
  82. package/dist/src/generated/waterx_credit/deps/std/type_name.js +19 -0
  83. package/dist/src/generated/waterx_credit/deps/sui/table.d.ts +29 -0
  84. package/dist/src/generated/waterx_credit/deps/sui/table.js +31 -0
  85. package/dist/src/generated/waterx_credit/deps/sui/vec_map.d.ts +36 -0
  86. package/dist/src/generated/waterx_credit/deps/sui/vec_map.js +27 -0
  87. package/dist/src/generated/waterx_credit/deps/sui/vec_set.d.ts +16 -0
  88. package/dist/src/generated/waterx_credit/deps/sui/vec_set.js +19 -0
  89. package/dist/src/generated/waterx_credit/limited_supply.d.ts +107 -0
  90. package/dist/src/generated/waterx_credit/limited_supply.js +131 -0
  91. package/dist/src/generated/waterx_oracle/aggregator.d.ts +211 -0
  92. package/dist/src/generated/waterx_oracle/aggregator.js +213 -0
  93. package/dist/src/generated/waterx_oracle/collector.d.ts +119 -0
  94. package/dist/src/generated/waterx_oracle/collector.js +105 -0
  95. package/dist/src/generated/waterx_oracle/deps/bucket_v2_framework/float.d.ts +8 -0
  96. package/dist/src/generated/waterx_oracle/deps/bucket_v2_framework/float.js +10 -0
  97. package/dist/src/generated/waterx_oracle/deps/std/type_name.d.ts +17 -0
  98. package/dist/src/generated/waterx_oracle/deps/std/type_name.js +19 -0
  99. package/dist/src/generated/waterx_oracle/deps/sui/vec_map.d.ts +36 -0
  100. package/dist/src/generated/waterx_oracle/deps/sui/vec_map.js +27 -0
  101. package/dist/src/generated/waterx_oracle/deps/sui/vec_set.d.ts +16 -0
  102. package/dist/src/generated/waterx_oracle/deps/sui/vec_set.js +19 -0
  103. package/dist/src/generated/waterx_oracle/oracle.d.ts +298 -0
  104. package/dist/src/generated/waterx_oracle/oracle.js +323 -0
  105. package/dist/src/generated/waterx_oracle/version.d.ts +10 -0
  106. package/dist/src/generated/waterx_oracle/version.js +8 -0
  107. package/dist/src/generated/waterx_perp/account_data.d.ts +269 -0
  108. package/dist/src/generated/waterx_perp/account_data.js +284 -0
  109. package/dist/src/generated/waterx_perp/admin.d.ts +19 -0
  110. package/dist/src/generated/waterx_perp/admin.js +22 -0
  111. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/double.d.ts +8 -0
  112. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/double.js +10 -0
  113. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/float.d.ts +8 -0
  114. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/float.js +10 -0
  115. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/liability.d.ts +11 -0
  116. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/liability.js +13 -0
  117. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  118. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.js +18 -0
  119. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.d.ts +49 -0
  120. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.js +18 -0
  121. package/dist/src/generated/waterx_perp/deps/std/type_name.d.ts +17 -0
  122. package/dist/src/generated/waterx_perp/deps/std/type_name.js +19 -0
  123. package/dist/src/generated/waterx_perp/deps/sui/balance.d.ts +15 -0
  124. package/dist/src/generated/waterx_perp/deps/sui/balance.js +17 -0
  125. package/dist/src/generated/waterx_perp/deps/sui/coin.d.ts +14 -0
  126. package/dist/src/generated/waterx_perp/deps/sui/coin.js +15 -0
  127. package/dist/src/generated/waterx_perp/deps/sui/vec_map.d.ts +36 -0
  128. package/dist/src/generated/waterx_perp/deps/sui/vec_map.js +27 -0
  129. package/dist/src/generated/waterx_perp/deps/sui/vec_set.d.ts +16 -0
  130. package/dist/src/generated/waterx_perp/deps/sui/vec_set.js +19 -0
  131. package/dist/src/generated/waterx_perp/events.d.ts +1283 -0
  132. package/dist/src/generated/waterx_perp/events.js +1018 -0
  133. package/dist/src/generated/waterx_perp/global_config.d.ts +775 -0
  134. package/dist/src/generated/waterx_perp/global_config.js +836 -0
  135. package/dist/src/generated/waterx_perp/keyed_big_vector.d.ts +553 -0
  136. package/dist/src/generated/waterx_perp/keyed_big_vector.js +554 -0
  137. package/dist/src/generated/waterx_perp/lp_pool.d.ts +1648 -0
  138. package/dist/src/generated/waterx_perp/lp_pool.js +1521 -0
  139. package/dist/src/generated/waterx_perp/market_config.d.ts +715 -0
  140. package/dist/src/generated/waterx_perp/market_config.js +780 -0
  141. package/dist/src/generated/waterx_perp/math.d.ts +63 -0
  142. package/dist/src/generated/waterx_perp/math.js +64 -0
  143. package/dist/src/generated/waterx_perp/memo.d.ts +251 -0
  144. package/dist/src/generated/waterx_perp/memo.js +323 -0
  145. package/dist/src/generated/waterx_perp/order_book.d.ts +290 -0
  146. package/dist/src/generated/waterx_perp/order_book.js +329 -0
  147. package/dist/src/generated/waterx_perp/position.d.ts +1005 -0
  148. package/dist/src/generated/waterx_perp/position.js +1103 -0
  149. package/dist/src/generated/waterx_perp/request.d.ts +544 -0
  150. package/dist/src/generated/waterx_perp/request.js +541 -0
  151. package/dist/src/generated/waterx_perp/response.d.ts +247 -0
  152. package/dist/src/generated/waterx_perp/response.js +280 -0
  153. package/dist/src/generated/waterx_perp/trading.d.ts +2821 -0
  154. package/dist/src/generated/waterx_perp/trading.js +2372 -0
  155. package/dist/src/generated/waterx_perp/version.d.ts +10 -0
  156. package/dist/src/generated/waterx_perp/version.js +8 -0
  157. package/dist/src/generated/waterx_perp/witness.d.ts +18 -0
  158. package/dist/src/generated/waterx_perp/witness.js +21 -0
  159. package/dist/src/generated/waterx_perp_view/deps/std/type_name.d.ts +17 -0
  160. package/dist/src/generated/waterx_perp_view/deps/std/type_name.js +19 -0
  161. package/dist/src/generated/waterx_perp_view/view.d.ts +447 -0
  162. package/dist/src/generated/waterx_perp_view/view.js +414 -0
  163. package/dist/src/generated/waterx_pyth_rule/deps/sui/vec_map.d.ts +36 -0
  164. package/dist/src/generated/waterx_pyth_rule/deps/sui/vec_map.js +27 -0
  165. package/dist/src/generated/waterx_pyth_rule/pyth_rule.d.ts +90 -0
  166. package/dist/src/generated/waterx_pyth_rule/pyth_rule.js +72 -0
  167. package/dist/src/generated/waterx_referral/deps/sui/table.d.ts +29 -0
  168. package/dist/src/generated/waterx_referral/deps/sui/table.js +31 -0
  169. package/dist/src/generated/waterx_referral/deps/sui/vec_set.d.ts +16 -0
  170. package/dist/src/generated/waterx_referral/deps/sui/vec_set.js +19 -0
  171. package/dist/src/generated/waterx_referral/referral_table.d.ts +171 -0
  172. package/dist/src/generated/waterx_referral/referral_table.js +192 -0
  173. package/dist/src/generated/waterx_staking/deps/bucket_v2_framework/double.d.ts +8 -0
  174. package/dist/src/generated/waterx_staking/deps/bucket_v2_framework/double.js +10 -0
  175. package/dist/src/generated/waterx_staking/deps/sui/balance.d.ts +12 -0
  176. package/dist/src/generated/waterx_staking/deps/sui/balance.js +14 -0
  177. package/dist/src/generated/waterx_staking/deps/sui/table.d.ts +29 -0
  178. package/dist/src/generated/waterx_staking/deps/sui/table.js +31 -0
  179. package/dist/src/generated/waterx_staking/deps/sui/vec_set.d.ts +16 -0
  180. package/dist/src/generated/waterx_staking/deps/sui/vec_set.js +19 -0
  181. package/dist/src/generated/waterx_staking/waterx_staking.d.ts +746 -0
  182. package/dist/src/generated/waterx_staking/waterx_staking.js +731 -0
  183. package/dist/src/generated/waterx_staking/witness.d.ts +16 -0
  184. package/dist/src/generated/waterx_staking/witness.js +18 -0
  185. package/dist/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  186. package/dist/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.js +18 -0
  187. package/dist/src/generated/withdrawal_queue/deps/std/type_name.d.ts +17 -0
  188. package/dist/src/generated/withdrawal_queue/deps/std/type_name.js +19 -0
  189. package/dist/src/generated/withdrawal_queue/deps/sui/balance.d.ts +12 -0
  190. package/dist/src/generated/withdrawal_queue/deps/sui/balance.js +14 -0
  191. package/dist/src/generated/withdrawal_queue/deps/sui/vec_set.d.ts +16 -0
  192. package/dist/src/generated/withdrawal_queue/deps/sui/vec_set.js +19 -0
  193. package/dist/src/generated/withdrawal_queue/withdrawal_queue.d.ts +483 -0
  194. package/dist/src/generated/withdrawal_queue/withdrawal_queue.js +480 -0
  195. package/dist/src/generated/wlp/wlp.d.ts +28 -0
  196. package/dist/src/generated/wlp/wlp.js +32 -0
  197. package/dist/src/generated/wormhole_bridge/deps/sui/table.d.ts +29 -0
  198. package/dist/src/generated/wormhole_bridge/deps/sui/table.js +31 -0
  199. package/dist/src/generated/wormhole_bridge/deps/sui/vec_map.d.ts +36 -0
  200. package/dist/src/generated/wormhole_bridge/deps/sui/vec_map.js +27 -0
  201. package/dist/src/generated/wormhole_bridge/deps/sui/vec_set.d.ts +16 -0
  202. package/dist/src/generated/wormhole_bridge/deps/sui/vec_set.js +19 -0
  203. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.d.ts +12 -0
  204. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.js +9 -0
  205. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.d.ts +14 -0
  206. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.js +16 -0
  207. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/set.d.ts +16 -0
  208. package/dist/src/generated/wormhole_bridge/deps/wormhole_sdk/set.js +15 -0
  209. package/dist/src/generated/wormhole_bridge/events.d.ts +32 -0
  210. package/dist/src/generated/wormhole_bridge/events.js +28 -0
  211. package/dist/src/generated/wormhole_bridge/wormhole_bridge.d.ts +498 -0
  212. package/dist/src/generated/wormhole_bridge/wormhole_bridge.js +494 -0
  213. package/dist/src/index.d.ts +28 -0
  214. package/dist/src/index.js +34 -0
  215. package/dist/src/tx-builders.d.ts +242 -0
  216. package/dist/src/tx-builders.js +320 -0
  217. package/dist/src/user/account.d.ts +129 -0
  218. package/dist/src/user/account.js +166 -0
  219. package/dist/src/user/credit.d.ts +135 -0
  220. package/dist/src/user/credit.js +255 -0
  221. package/dist/src/user/custody.d.ts +71 -0
  222. package/dist/src/user/custody.js +112 -0
  223. package/dist/src/user/index.d.ts +8 -0
  224. package/dist/src/user/index.js +8 -0
  225. package/dist/src/user/order.d.ts +89 -0
  226. package/dist/src/user/order.js +134 -0
  227. package/dist/src/user/referral.d.ts +21 -0
  228. package/dist/src/user/referral.js +41 -0
  229. package/dist/src/user/staking.d.ts +54 -0
  230. package/dist/src/user/staking.js +109 -0
  231. package/dist/src/user/trading.d.ts +119 -0
  232. package/dist/src/user/trading.js +262 -0
  233. package/dist/src/user/wlp.d.ts +58 -0
  234. package/dist/src/user/wlp.js +99 -0
  235. package/dist/src/utils/account-request.d.ts +9 -0
  236. package/dist/src/utils/account-request.js +17 -0
  237. package/dist/src/utils/config.d.ts +11 -0
  238. package/dist/src/utils/config.js +15 -0
  239. package/dist/src/utils/math.d.ts +201 -0
  240. package/dist/src/utils/math.js +343 -0
  241. package/dist/src/utils/pyth.d.ts +89 -0
  242. package/dist/src/utils/pyth.js +316 -0
  243. package/dist/src/utils/wormhole.d.ts +86 -0
  244. package/dist/src/utils/wormhole.js +154 -0
  245. package/package.json +66 -0
@@ -0,0 +1,247 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ /** Droppable response returned by WaterX Perp trading execution. */
5
+ import { MoveStruct, type RawTransactionArgument } from '../utils/index.ts';
6
+ import { type Transaction } from '@mysten/sui/transactions';
7
+ export declare const TradingResponse: MoveStruct<{
8
+ /** Trading market object id. */
9
+ market_id: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
10
+ /** Affected wxa account id. Use this for ownership attribution. */
11
+ account_id: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
12
+ /** One of the `waterx_perp::trading::action_*` values. */
13
+ action: import("@mysten/sui/bcs").BcsType<number, number, "u8">;
14
+ /** Execution caller. This can be a keeper or risk manager. */
15
+ sender: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
16
+ /** Order id touched or created by the execution, when applicable. */
17
+ order_id: import("@mysten/sui/bcs").BcsType<string | null, string | number | bigint | null | undefined, "Option<u64>">;
18
+ /** Position id touched or created by the execution, when applicable. */
19
+ position_id: import("@mysten/sui/bcs").BcsType<string | null, string | number | bigint | null | undefined, "Option<u64>">;
20
+ /** Raw collateral-token PnL amount. Direction is `pnl_is_profit`. */
21
+ pnl_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
22
+ /** Meaningful only when `pnl_amount > 0`. */
23
+ pnl_is_profit: import("@mysten/sui/bcs").BcsType<boolean, boolean, "bool">;
24
+ /** Raw collateral-token fees recorded or realized by this execution. */
25
+ fee_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
26
+ /** Raw collateral amount credited back to the affected wxa account. */
27
+ returned_collateral_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
28
+ /** Raw collateral newly provided by this execution. */
29
+ input_collateral_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
30
+ /** Post-action position collateral, or zero when no position remains. */
31
+ position_collateral_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
32
+ /** Order or position direction for the executed action. */
33
+ is_long: import("@mysten/sui/bcs").BcsType<boolean, boolean, "bool">;
34
+ /** Executed or requested size when surfaced by the path; zero if not applicable. */
35
+ size: MoveStruct<{
36
+ value: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u128">;
37
+ }, "bucket_v2_framework::float::Float">;
38
+ /** Execution or trigger price when surfaced by the path; zero if not applicable. */
39
+ execution_price: MoveStruct<{
40
+ value: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u128">;
41
+ }, "bucket_v2_framework::float::Float">;
42
+ }, "@waterx/perp::response::TradingResponse">;
43
+ export interface MarketIdArguments {
44
+ self: RawTransactionArgument<string>;
45
+ }
46
+ export interface MarketIdOptions {
47
+ package?: string;
48
+ arguments: MarketIdArguments | [
49
+ self: RawTransactionArgument<string>
50
+ ];
51
+ }
52
+ export declare function marketId(options: MarketIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
53
+ export interface AccountIdArguments {
54
+ self: RawTransactionArgument<string>;
55
+ }
56
+ export interface AccountIdOptions {
57
+ package?: string;
58
+ arguments: AccountIdArguments | [
59
+ self: RawTransactionArgument<string>
60
+ ];
61
+ }
62
+ export declare function accountId(options: AccountIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
63
+ export interface ActionArguments {
64
+ self: RawTransactionArgument<string>;
65
+ }
66
+ export interface ActionOptions {
67
+ package?: string;
68
+ arguments: ActionArguments | [
69
+ self: RawTransactionArgument<string>
70
+ ];
71
+ }
72
+ export declare function action(options: ActionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
73
+ export interface SenderArguments {
74
+ self: RawTransactionArgument<string>;
75
+ }
76
+ export interface SenderOptions {
77
+ package?: string;
78
+ arguments: SenderArguments | [
79
+ self: RawTransactionArgument<string>
80
+ ];
81
+ }
82
+ export declare function sender(options: SenderOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
83
+ export interface OrderIdArguments {
84
+ self: RawTransactionArgument<string>;
85
+ }
86
+ export interface OrderIdOptions {
87
+ package?: string;
88
+ arguments: OrderIdArguments | [
89
+ self: RawTransactionArgument<string>
90
+ ];
91
+ }
92
+ export declare function orderId(options: OrderIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
93
+ export interface PositionIdArguments {
94
+ self: RawTransactionArgument<string>;
95
+ }
96
+ export interface PositionIdOptions {
97
+ package?: string;
98
+ arguments: PositionIdArguments | [
99
+ self: RawTransactionArgument<string>
100
+ ];
101
+ }
102
+ export declare function positionId(options: PositionIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
103
+ export interface PnlAmountArguments {
104
+ self: RawTransactionArgument<string>;
105
+ }
106
+ export interface PnlAmountOptions {
107
+ package?: string;
108
+ arguments: PnlAmountArguments | [
109
+ self: RawTransactionArgument<string>
110
+ ];
111
+ }
112
+ export declare function pnlAmount(options: PnlAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
113
+ export interface PnlIsProfitArguments {
114
+ self: RawTransactionArgument<string>;
115
+ }
116
+ export interface PnlIsProfitOptions {
117
+ package?: string;
118
+ arguments: PnlIsProfitArguments | [
119
+ self: RawTransactionArgument<string>
120
+ ];
121
+ }
122
+ export declare function pnlIsProfit(options: PnlIsProfitOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
123
+ export interface FeeAmountArguments {
124
+ self: RawTransactionArgument<string>;
125
+ }
126
+ export interface FeeAmountOptions {
127
+ package?: string;
128
+ arguments: FeeAmountArguments | [
129
+ self: RawTransactionArgument<string>
130
+ ];
131
+ }
132
+ export declare function feeAmount(options: FeeAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
133
+ export interface ReturnedCollateralAmountArguments {
134
+ self: RawTransactionArgument<string>;
135
+ }
136
+ export interface ReturnedCollateralAmountOptions {
137
+ package?: string;
138
+ arguments: ReturnedCollateralAmountArguments | [
139
+ self: RawTransactionArgument<string>
140
+ ];
141
+ }
142
+ export declare function returnedCollateralAmount(options: ReturnedCollateralAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
143
+ export interface InputCollateralAmountArguments {
144
+ self: RawTransactionArgument<string>;
145
+ }
146
+ export interface InputCollateralAmountOptions {
147
+ package?: string;
148
+ arguments: InputCollateralAmountArguments | [
149
+ self: RawTransactionArgument<string>
150
+ ];
151
+ }
152
+ /**
153
+ * Collateral newly provided by this execution. This is zero for close, cancel,
154
+ * decrease, withdraw, and liquidation paths.
155
+ */
156
+ export declare function inputCollateralAmount(options: InputCollateralAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
157
+ export interface PositionCollateralAmountArguments {
158
+ self: RawTransactionArgument<string>;
159
+ }
160
+ export interface PositionCollateralAmountOptions {
161
+ package?: string;
162
+ arguments: PositionCollateralAmountArguments | [
163
+ self: RawTransactionArgument<string>
164
+ ];
165
+ }
166
+ /**
167
+ * Position collateral after this execution, when a position remains or was opened.
168
+ * This is zero when no position state exists after the action.
169
+ */
170
+ export declare function positionCollateralAmount(options: PositionCollateralAmountOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
171
+ export interface IsLongArguments {
172
+ self: RawTransactionArgument<string>;
173
+ }
174
+ export interface IsLongOptions {
175
+ package?: string;
176
+ arguments: IsLongArguments | [
177
+ self: RawTransactionArgument<string>
178
+ ];
179
+ }
180
+ export declare function isLong(options: IsLongOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
181
+ export interface SizeArguments {
182
+ self: RawTransactionArgument<string>;
183
+ }
184
+ export interface SizeOptions {
185
+ package?: string;
186
+ arguments: SizeArguments | [
187
+ self: RawTransactionArgument<string>
188
+ ];
189
+ }
190
+ export declare function size(options: SizeOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
191
+ export interface ExecutionPriceArguments {
192
+ self: RawTransactionArgument<string>;
193
+ }
194
+ export interface ExecutionPriceOptions {
195
+ package?: string;
196
+ arguments: ExecutionPriceArguments | [
197
+ self: RawTransactionArgument<string>
198
+ ];
199
+ }
200
+ export declare function executionPrice(options: ExecutionPriceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
201
+ export interface NewArguments {
202
+ marketId: RawTransactionArgument<string>;
203
+ accountId: RawTransactionArgument<string>;
204
+ action: RawTransactionArgument<number>;
205
+ sender: RawTransactionArgument<string>;
206
+ orderId: RawTransactionArgument<number | bigint | null>;
207
+ positionId: RawTransactionArgument<number | bigint | null>;
208
+ pnlAmount: RawTransactionArgument<number | bigint>;
209
+ pnlIsProfit: RawTransactionArgument<boolean>;
210
+ feeAmount: RawTransactionArgument<number | bigint>;
211
+ returnedCollateralAmount: RawTransactionArgument<number | bigint>;
212
+ inputCollateralAmount: RawTransactionArgument<number | bigint>;
213
+ positionCollateralAmount: RawTransactionArgument<number | bigint>;
214
+ isLong: RawTransactionArgument<boolean>;
215
+ size: RawTransactionArgument<string>;
216
+ executionPrice: RawTransactionArgument<string>;
217
+ }
218
+ export interface NewOptions {
219
+ package?: string;
220
+ arguments: NewArguments | [
221
+ marketId: RawTransactionArgument<string>,
222
+ accountId: RawTransactionArgument<string>,
223
+ action: RawTransactionArgument<number>,
224
+ sender: RawTransactionArgument<string>,
225
+ orderId: RawTransactionArgument<number | bigint | null>,
226
+ positionId: RawTransactionArgument<number | bigint | null>,
227
+ pnlAmount: RawTransactionArgument<number | bigint>,
228
+ pnlIsProfit: RawTransactionArgument<boolean>,
229
+ feeAmount: RawTransactionArgument<number | bigint>,
230
+ returnedCollateralAmount: RawTransactionArgument<number | bigint>,
231
+ inputCollateralAmount: RawTransactionArgument<number | bigint>,
232
+ positionCollateralAmount: RawTransactionArgument<number | bigint>,
233
+ isLong: RawTransactionArgument<boolean>,
234
+ size: RawTransactionArgument<string>,
235
+ executionPrice: RawTransactionArgument<string>
236
+ ];
237
+ }
238
+ /**
239
+ * Construct a `TradingResponse` receipt. Each dispatch arm in
240
+ * `waterx_perp::trading` builds exactly one receipt at the tail of the action;
241
+ * fields not surfaced by a given path are passed as zero / `option::none()` per
242
+ * the per-field doc comments on the struct. `public(package)` so only this package
243
+ * can mint receipts — external consumers receive them via the
244
+ * `vector<TradingResponse>` returns of `trading::execute` and the keeper
245
+ * entrypoints.
246
+ */
247
+ export declare function _new(options: NewOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
@@ -0,0 +1,280 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ /** Droppable response returned by WaterX Perp trading execution. */
5
+ import { MoveStruct, normalizeMoveArguments } from "../utils/index.js";
6
+ import { bcs } from '@mysten/sui/bcs';
7
+ import * as float from "./deps/bucket_v2_framework/float.js";
8
+ import * as float_1 from "./deps/bucket_v2_framework/float.js";
9
+ const $moduleName = '@waterx/perp::response';
10
+ export const TradingResponse = new MoveStruct({ name: `${$moduleName}::TradingResponse`, fields: {
11
+ /** Trading market object id. */
12
+ market_id: bcs.Address,
13
+ /** Affected wxa account id. Use this for ownership attribution. */
14
+ account_id: bcs.Address,
15
+ /** One of the `waterx_perp::trading::action_*` values. */
16
+ action: bcs.u8(),
17
+ /** Execution caller. This can be a keeper or risk manager. */
18
+ sender: bcs.Address,
19
+ /** Order id touched or created by the execution, when applicable. */
20
+ order_id: bcs.option(bcs.u64()),
21
+ /** Position id touched or created by the execution, when applicable. */
22
+ position_id: bcs.option(bcs.u64()),
23
+ /** Raw collateral-token PnL amount. Direction is `pnl_is_profit`. */
24
+ pnl_amount: bcs.u64(),
25
+ /** Meaningful only when `pnl_amount > 0`. */
26
+ pnl_is_profit: bcs.bool(),
27
+ /** Raw collateral-token fees recorded or realized by this execution. */
28
+ fee_amount: bcs.u64(),
29
+ /** Raw collateral amount credited back to the affected wxa account. */
30
+ returned_collateral_amount: bcs.u64(),
31
+ /** Raw collateral newly provided by this execution. */
32
+ input_collateral_amount: bcs.u64(),
33
+ /** Post-action position collateral, or zero when no position remains. */
34
+ position_collateral_amount: bcs.u64(),
35
+ /** Order or position direction for the executed action. */
36
+ is_long: bcs.bool(),
37
+ /** Executed or requested size when surfaced by the path; zero if not applicable. */
38
+ size: float.Float,
39
+ /** Execution or trigger price when surfaced by the path; zero if not applicable. */
40
+ execution_price: float_1.Float
41
+ } });
42
+ export function marketId(options) {
43
+ const packageAddress = options.package ?? '@waterx/perp';
44
+ const argumentsTypes = [
45
+ null
46
+ ];
47
+ const parameterNames = ["self"];
48
+ return (tx) => tx.moveCall({
49
+ package: packageAddress,
50
+ module: 'response',
51
+ function: 'market_id',
52
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
53
+ });
54
+ }
55
+ export function accountId(options) {
56
+ const packageAddress = options.package ?? '@waterx/perp';
57
+ const argumentsTypes = [
58
+ null
59
+ ];
60
+ const parameterNames = ["self"];
61
+ return (tx) => tx.moveCall({
62
+ package: packageAddress,
63
+ module: 'response',
64
+ function: 'account_id',
65
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
66
+ });
67
+ }
68
+ export function action(options) {
69
+ const packageAddress = options.package ?? '@waterx/perp';
70
+ const argumentsTypes = [
71
+ null
72
+ ];
73
+ const parameterNames = ["self"];
74
+ return (tx) => tx.moveCall({
75
+ package: packageAddress,
76
+ module: 'response',
77
+ function: 'action',
78
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
79
+ });
80
+ }
81
+ export function sender(options) {
82
+ const packageAddress = options.package ?? '@waterx/perp';
83
+ const argumentsTypes = [
84
+ null
85
+ ];
86
+ const parameterNames = ["self"];
87
+ return (tx) => tx.moveCall({
88
+ package: packageAddress,
89
+ module: 'response',
90
+ function: 'sender',
91
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
92
+ });
93
+ }
94
+ export function orderId(options) {
95
+ const packageAddress = options.package ?? '@waterx/perp';
96
+ const argumentsTypes = [
97
+ null
98
+ ];
99
+ const parameterNames = ["self"];
100
+ return (tx) => tx.moveCall({
101
+ package: packageAddress,
102
+ module: 'response',
103
+ function: 'order_id',
104
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
105
+ });
106
+ }
107
+ export function positionId(options) {
108
+ const packageAddress = options.package ?? '@waterx/perp';
109
+ const argumentsTypes = [
110
+ null
111
+ ];
112
+ const parameterNames = ["self"];
113
+ return (tx) => tx.moveCall({
114
+ package: packageAddress,
115
+ module: 'response',
116
+ function: 'position_id',
117
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
118
+ });
119
+ }
120
+ export function pnlAmount(options) {
121
+ const packageAddress = options.package ?? '@waterx/perp';
122
+ const argumentsTypes = [
123
+ null
124
+ ];
125
+ const parameterNames = ["self"];
126
+ return (tx) => tx.moveCall({
127
+ package: packageAddress,
128
+ module: 'response',
129
+ function: 'pnl_amount',
130
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
131
+ });
132
+ }
133
+ export function pnlIsProfit(options) {
134
+ const packageAddress = options.package ?? '@waterx/perp';
135
+ const argumentsTypes = [
136
+ null
137
+ ];
138
+ const parameterNames = ["self"];
139
+ return (tx) => tx.moveCall({
140
+ package: packageAddress,
141
+ module: 'response',
142
+ function: 'pnl_is_profit',
143
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
144
+ });
145
+ }
146
+ export function feeAmount(options) {
147
+ const packageAddress = options.package ?? '@waterx/perp';
148
+ const argumentsTypes = [
149
+ null
150
+ ];
151
+ const parameterNames = ["self"];
152
+ return (tx) => tx.moveCall({
153
+ package: packageAddress,
154
+ module: 'response',
155
+ function: 'fee_amount',
156
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
157
+ });
158
+ }
159
+ export function returnedCollateralAmount(options) {
160
+ const packageAddress = options.package ?? '@waterx/perp';
161
+ const argumentsTypes = [
162
+ null
163
+ ];
164
+ const parameterNames = ["self"];
165
+ return (tx) => tx.moveCall({
166
+ package: packageAddress,
167
+ module: 'response',
168
+ function: 'returned_collateral_amount',
169
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
170
+ });
171
+ }
172
+ /**
173
+ * Collateral newly provided by this execution. This is zero for close, cancel,
174
+ * decrease, withdraw, and liquidation paths.
175
+ */
176
+ export function inputCollateralAmount(options) {
177
+ const packageAddress = options.package ?? '@waterx/perp';
178
+ const argumentsTypes = [
179
+ null
180
+ ];
181
+ const parameterNames = ["self"];
182
+ return (tx) => tx.moveCall({
183
+ package: packageAddress,
184
+ module: 'response',
185
+ function: 'input_collateral_amount',
186
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
187
+ });
188
+ }
189
+ /**
190
+ * Position collateral after this execution, when a position remains or was opened.
191
+ * This is zero when no position state exists after the action.
192
+ */
193
+ export function positionCollateralAmount(options) {
194
+ const packageAddress = options.package ?? '@waterx/perp';
195
+ const argumentsTypes = [
196
+ null
197
+ ];
198
+ const parameterNames = ["self"];
199
+ return (tx) => tx.moveCall({
200
+ package: packageAddress,
201
+ module: 'response',
202
+ function: 'position_collateral_amount',
203
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
204
+ });
205
+ }
206
+ export function isLong(options) {
207
+ const packageAddress = options.package ?? '@waterx/perp';
208
+ const argumentsTypes = [
209
+ null
210
+ ];
211
+ const parameterNames = ["self"];
212
+ return (tx) => tx.moveCall({
213
+ package: packageAddress,
214
+ module: 'response',
215
+ function: 'is_long',
216
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
217
+ });
218
+ }
219
+ export function size(options) {
220
+ const packageAddress = options.package ?? '@waterx/perp';
221
+ const argumentsTypes = [
222
+ null
223
+ ];
224
+ const parameterNames = ["self"];
225
+ return (tx) => tx.moveCall({
226
+ package: packageAddress,
227
+ module: 'response',
228
+ function: 'size',
229
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
230
+ });
231
+ }
232
+ export function executionPrice(options) {
233
+ const packageAddress = options.package ?? '@waterx/perp';
234
+ const argumentsTypes = [
235
+ null
236
+ ];
237
+ const parameterNames = ["self"];
238
+ return (tx) => tx.moveCall({
239
+ package: packageAddress,
240
+ module: 'response',
241
+ function: 'execution_price',
242
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
243
+ });
244
+ }
245
+ /**
246
+ * Construct a `TradingResponse` receipt. Each dispatch arm in
247
+ * `waterx_perp::trading` builds exactly one receipt at the tail of the action;
248
+ * fields not surfaced by a given path are passed as zero / `option::none()` per
249
+ * the per-field doc comments on the struct. `public(package)` so only this package
250
+ * can mint receipts — external consumers receive them via the
251
+ * `vector<TradingResponse>` returns of `trading::execute` and the keeper
252
+ * entrypoints.
253
+ */
254
+ export function _new(options) {
255
+ const packageAddress = options.package ?? '@waterx/perp';
256
+ const argumentsTypes = [
257
+ '0x2::object::ID',
258
+ '0x2::object::ID',
259
+ 'u8',
260
+ 'address',
261
+ '0x1::option::Option<u64>',
262
+ '0x1::option::Option<u64>',
263
+ 'u64',
264
+ 'bool',
265
+ 'u64',
266
+ 'u64',
267
+ 'u64',
268
+ 'u64',
269
+ 'bool',
270
+ null,
271
+ null
272
+ ];
273
+ const parameterNames = ["marketId", "accountId", "action", "sender", "orderId", "positionId", "pnlAmount", "pnlIsProfit", "feeAmount", "returnedCollateralAmount", "inputCollateralAmount", "positionCollateralAmount", "isLong", "size", "executionPrice"];
274
+ return (tx) => tx.moveCall({
275
+ package: packageAddress,
276
+ module: 'response',
277
+ function: 'new',
278
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
279
+ });
280
+ }