@waterx/sdk 2.1.0 → 2.4.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 (231) hide show
  1. package/README.md +75 -169
  2. package/dist/src/client.d.ts +40 -2
  3. package/dist/src/client.js +55 -6
  4. package/dist/src/config.d.ts +66 -3
  5. package/dist/src/config.js +10 -4
  6. package/dist/src/constants.d.ts +6 -0
  7. package/dist/src/constants.js +6 -0
  8. package/dist/src/core/waterx-account.d.ts +31 -0
  9. package/dist/src/core/waterx-account.js +26 -0
  10. package/dist/src/fetch.d.ts +110 -0
  11. package/dist/src/fetch.js +149 -4
  12. package/dist/src/generated/bucket_v2_framework/account.d.ts +5 -5
  13. package/dist/src/generated/bucket_v2_framework/double.d.ts +77 -77
  14. package/dist/src/generated/bucket_v2_framework/float.d.ts +73 -73
  15. package/dist/src/generated/bucket_v2_framework/liability.d.ts +33 -33
  16. package/dist/src/generated/bucket_v2_framework/linked_table.d.ts +5 -5
  17. package/dist/src/generated/bucket_v2_framework/linked_table.js +2 -2
  18. package/dist/src/generated/bucket_v2_framework/sheet.d.ts +57 -57
  19. package/dist/src/generated/bucket_v2_framework/sheet.js +5 -11
  20. package/dist/src/generated/native_custody/custody_vault.d.ts +46 -32
  21. package/dist/src/generated/native_custody/custody_vault.js +19 -10
  22. package/dist/src/generated/native_custody/deps/bucket_v2_framework/sheet.js +1 -3
  23. package/dist/src/generated/native_custody/events.js +1 -2
  24. package/dist/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.d.ts +7 -7
  25. package/dist/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.js +1 -2
  26. package/dist/src/generated/utils/index.d.ts +7 -7
  27. package/dist/src/generated/utils/index.js +9 -6
  28. package/dist/src/generated/waterx_account/account.d.ts +124 -71
  29. package/dist/src/generated/waterx_account/account.js +64 -29
  30. package/dist/src/generated/waterx_account/deps/bucket_v2_framework/sheet.js +1 -3
  31. package/dist/src/generated/waterx_account/direct_rule.d.ts +5 -5
  32. package/dist/src/generated/waterx_account/events.d.ts +10 -0
  33. package/dist/src/generated/waterx_account/events.js +31 -50
  34. package/dist/src/generated/waterx_constant_rule/constant_rule.d.ts +68 -0
  35. package/dist/src/generated/waterx_constant_rule/constant_rule.js +59 -0
  36. package/dist/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.d.ts +8 -0
  37. package/dist/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.js +10 -0
  38. package/dist/src/generated/waterx_constant_rule/deps/sui/vec_map.d.ts +36 -0
  39. package/dist/src/generated/waterx_constant_rule/deps/sui/vec_map.js +27 -0
  40. package/dist/src/generated/waterx_credit/credit_registry.d.ts +9 -9
  41. package/dist/src/generated/waterx_credit/credit_registry.js +1 -2
  42. package/dist/src/generated/waterx_credit/limited_supply.d.ts +17 -17
  43. package/dist/src/generated/waterx_oracle/aggregator.js +1 -2
  44. package/dist/src/generated/waterx_oracle/collector.d.ts +17 -17
  45. package/dist/src/generated/waterx_oracle/collector.js +1 -1
  46. package/dist/src/generated/waterx_oracle/oracle.d.ts +5 -5
  47. package/dist/src/generated/waterx_perp/account_data.d.ts +5 -5
  48. package/dist/src/generated/waterx_perp/account_data.js +1 -2
  49. package/dist/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.js +1 -3
  50. package/dist/src/generated/waterx_perp/events.d.ts +181 -181
  51. package/dist/src/generated/waterx_perp/events.js +87 -173
  52. package/dist/src/generated/waterx_perp/global_config.d.ts +3 -3
  53. package/dist/src/generated/waterx_perp/global_config.js +6 -12
  54. package/dist/src/generated/waterx_perp/keyed_big_vector.d.ts +9 -9
  55. package/dist/src/generated/waterx_perp/keyed_big_vector.js +1 -2
  56. package/dist/src/generated/waterx_perp/lp_pool.d.ts +115 -115
  57. package/dist/src/generated/waterx_perp/lp_pool.js +11 -22
  58. package/dist/src/generated/waterx_perp/market_config.d.ts +61 -43
  59. package/dist/src/generated/waterx_perp/market_config.js +29 -22
  60. package/dist/src/generated/waterx_perp/math.d.ts +7 -7
  61. package/dist/src/generated/waterx_perp/order_book.d.ts +47 -47
  62. package/dist/src/generated/waterx_perp/position.d.ts +99 -99
  63. package/dist/src/generated/waterx_perp/position.js +6 -12
  64. package/dist/src/generated/waterx_perp/request.d.ts +67 -67
  65. package/dist/src/generated/waterx_perp/request.js +2 -3
  66. package/dist/src/generated/waterx_perp/response.d.ts +35 -35
  67. package/dist/src/generated/waterx_perp/response.js +1 -2
  68. package/dist/src/generated/waterx_perp/trading.d.ts +303 -179
  69. package/dist/src/generated/waterx_perp/trading.js +99 -14
  70. package/dist/src/generated/waterx_perp_view/view.js +5 -10
  71. package/dist/src/generated/waterx_pyth_rule/pyth_rule.d.ts +5 -5
  72. package/dist/src/generated/waterx_pyth_rule/pyth_rule.js +1 -2
  73. package/dist/src/generated/waterx_referral/referral_table.d.ts +5 -5
  74. package/dist/src/generated/waterx_referral/referral_table.js +1 -2
  75. package/dist/src/generated/waterx_staking/waterx_staking.d.ts +19 -19
  76. package/dist/src/generated/waterx_staking/waterx_staking.js +10 -20
  77. package/dist/src/generated/waterx_supra_rule/deps/sui/vec_map.d.ts +36 -0
  78. package/dist/src/generated/waterx_supra_rule/deps/sui/vec_map.js +27 -0
  79. package/dist/src/generated/waterx_supra_rule/supra_rule.d.ts +158 -0
  80. package/dist/src/generated/waterx_supra_rule/supra_rule.js +148 -0
  81. package/dist/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.d.ts +8 -0
  82. package/dist/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.js +10 -0
  83. package/dist/src/generated/withdrawal_queue/deps/sui/vec_map.d.ts +36 -0
  84. package/dist/src/generated/withdrawal_queue/deps/sui/vec_map.js +27 -0
  85. package/dist/src/generated/withdrawal_queue/withdrawal_queue.d.ts +444 -4
  86. package/dist/src/generated/withdrawal_queue/withdrawal_queue.js +417 -4
  87. package/dist/src/generated/wormhole_bridge/wormhole_bridge.d.ts +214 -74
  88. package/dist/src/generated/wormhole_bridge/wormhole_bridge.js +158 -29
  89. package/dist/src/index.d.ts +4 -3
  90. package/dist/src/index.js +3 -2
  91. package/dist/src/prediction/account.d.ts +96 -0
  92. package/dist/src/prediction/account.js +230 -0
  93. package/dist/src/prediction/admin.d.ts +47 -0
  94. package/dist/src/prediction/admin.js +105 -0
  95. package/dist/src/prediction/bcs.d.ts +22 -0
  96. package/dist/src/prediction/bcs.js +240 -0
  97. package/dist/src/prediction/client.d.ts +75 -0
  98. package/dist/src/prediction/client.js +164 -0
  99. package/dist/src/prediction/config.d.ts +60 -0
  100. package/dist/src/prediction/config.js +75 -0
  101. package/dist/src/prediction/constants.d.ts +44 -0
  102. package/dist/src/prediction/constants.js +46 -0
  103. package/dist/src/prediction/fetch.d.ts +82 -0
  104. package/dist/src/prediction/fetch.js +270 -0
  105. package/dist/src/prediction/generated/bucket_v2_framework/account.d.ts +100 -0
  106. package/dist/src/prediction/generated/bucket_v2_framework/account.js +129 -0
  107. package/dist/src/prediction/generated/bucket_v2_framework/deps/std/type_name.d.ts +6 -0
  108. package/dist/src/prediction/generated/bucket_v2_framework/deps/std/type_name.js +19 -0
  109. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/balance.d.ts +10 -0
  110. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/balance.js +14 -0
  111. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/vec_map.d.ts +36 -0
  112. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/vec_map.js +27 -0
  113. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/vec_set.d.ts +16 -0
  114. package/dist/src/prediction/generated/bucket_v2_framework/deps/sui/vec_set.js +19 -0
  115. package/dist/src/prediction/generated/bucket_v2_framework/double.d.ts +382 -0
  116. package/dist/src/prediction/generated/bucket_v2_framework/double.js +466 -0
  117. package/dist/src/prediction/generated/bucket_v2_framework/float.d.ts +362 -0
  118. package/dist/src/prediction/generated/bucket_v2_framework/float.js +440 -0
  119. package/dist/src/prediction/generated/bucket_v2_framework/liability.d.ts +193 -0
  120. package/dist/src/prediction/generated/bucket_v2_framework/liability.js +205 -0
  121. package/dist/src/prediction/generated/bucket_v2_framework/linked_table.d.ts +384 -0
  122. package/dist/src/prediction/generated/bucket_v2_framework/linked_table.js +382 -0
  123. package/dist/src/prediction/generated/bucket_v2_framework/sheet.d.ts +344 -0
  124. package/dist/src/prediction/generated/bucket_v2_framework/sheet.js +338 -0
  125. package/dist/src/prediction/generated/utils/index.d.ts +30 -0
  126. package/dist/src/prediction/generated/utils/index.js +160 -0
  127. package/dist/src/prediction/generated/waterx_account/account.d.ts +1589 -0
  128. package/dist/src/prediction/generated/waterx_account/account.js +1758 -0
  129. package/dist/src/prediction/generated/waterx_account/deps/bucket_v2_framework/liability.d.ts +7 -0
  130. package/dist/src/prediction/generated/waterx_account/deps/bucket_v2_framework/liability.js +13 -0
  131. package/dist/src/prediction/generated/waterx_account/deps/bucket_v2_framework/sheet.d.ts +7 -0
  132. package/dist/src/prediction/generated/waterx_account/deps/bucket_v2_framework/sheet.js +16 -0
  133. package/dist/src/prediction/generated/waterx_account/deps/std/type_name.d.ts +6 -0
  134. package/dist/src/prediction/generated/waterx_account/deps/std/type_name.js +19 -0
  135. package/dist/src/prediction/generated/waterx_account/deps/sui/balance.d.ts +10 -0
  136. package/dist/src/prediction/generated/waterx_account/deps/sui/balance.js +14 -0
  137. package/dist/src/prediction/generated/waterx_account/deps/sui/object_table.d.ts +12 -0
  138. package/dist/src/prediction/generated/waterx_account/deps/sui/object_table.js +19 -0
  139. package/dist/src/prediction/generated/waterx_account/deps/sui/table.d.ts +24 -0
  140. package/dist/src/prediction/generated/waterx_account/deps/sui/table.js +31 -0
  141. package/dist/src/prediction/generated/waterx_account/deps/sui/vec_map.d.ts +36 -0
  142. package/dist/src/prediction/generated/waterx_account/deps/sui/vec_map.js +27 -0
  143. package/dist/src/prediction/generated/waterx_account/deps/sui/vec_set.d.ts +16 -0
  144. package/dist/src/prediction/generated/waterx_account/deps/sui/vec_set.js +19 -0
  145. package/dist/src/prediction/generated/waterx_account/direct_rule.d.ts +75 -0
  146. package/dist/src/prediction/generated/waterx_account/direct_rule.js +78 -0
  147. package/dist/src/prediction/generated/waterx_account/events.d.ts +33 -0
  148. package/dist/src/prediction/generated/waterx_account/events.js +137 -0
  149. package/dist/src/prediction/generated/waterx_account/version.d.ts +10 -0
  150. package/dist/src/prediction/generated/waterx_account/version.js +8 -0
  151. package/dist/src/prediction/generated/waterx_prediction/account_data.d.ts +327 -0
  152. package/dist/src/prediction/generated/waterx_prediction/account_data.js +405 -0
  153. package/dist/src/prediction/generated/waterx_prediction/admin.d.ts +5 -0
  154. package/dist/src/prediction/generated/waterx_prediction/admin.js +9 -0
  155. package/dist/src/prediction/generated/waterx_prediction/bet_sharing.d.ts +60 -0
  156. package/dist/src/prediction/generated/waterx_prediction/bet_sharing.js +83 -0
  157. package/dist/src/prediction/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.d.ts +8 -0
  158. package/dist/src/prediction/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.js +18 -0
  159. package/dist/src/prediction/generated/waterx_prediction/deps/sui/balance.d.ts +10 -0
  160. package/dist/src/prediction/generated/waterx_prediction/deps/sui/balance.js +14 -0
  161. package/dist/src/prediction/generated/waterx_prediction/deps/sui/table.d.ts +24 -0
  162. package/dist/src/prediction/generated/waterx_prediction/deps/sui/table.js +31 -0
  163. package/dist/src/prediction/generated/waterx_prediction/deps/sui/vec_set.d.ts +16 -0
  164. package/dist/src/prediction/generated/waterx_prediction/deps/sui/vec_set.js +19 -0
  165. package/dist/src/prediction/generated/waterx_prediction/events.d.ts +22 -0
  166. package/dist/src/prediction/generated/waterx_prediction/events.js +179 -0
  167. package/dist/src/prediction/generated/waterx_prediction/global_config.d.ts +116 -0
  168. package/dist/src/prediction/generated/waterx_prediction/global_config.js +141 -0
  169. package/dist/src/prediction/generated/waterx_prediction/order.d.ts +200 -0
  170. package/dist/src/prediction/generated/waterx_prediction/order.js +284 -0
  171. package/dist/src/prediction/generated/waterx_prediction/outcome.d.ts +58 -0
  172. package/dist/src/prediction/generated/waterx_prediction/outcome.js +73 -0
  173. package/dist/src/prediction/generated/waterx_prediction/position.d.ts +160 -0
  174. package/dist/src/prediction/generated/waterx_prediction/position.js +214 -0
  175. package/dist/src/prediction/generated/waterx_prediction/version.d.ts +10 -0
  176. package/dist/src/prediction/generated/waterx_prediction/version.js +8 -0
  177. package/dist/src/prediction/generated/waterx_prediction/view.d.ts +353 -0
  178. package/dist/src/prediction/generated/waterx_prediction/view.js +432 -0
  179. package/dist/src/prediction/generated/waterx_prediction/waterx_prediction.d.ts +1698 -0
  180. package/dist/src/prediction/generated/waterx_prediction/waterx_prediction.js +1733 -0
  181. package/dist/src/prediction/gift-link.d.ts +6 -0
  182. package/dist/src/prediction/gift-link.js +5 -0
  183. package/dist/src/prediction/gift.d.ts +223 -0
  184. package/dist/src/prediction/gift.js +451 -0
  185. package/dist/src/prediction/index.d.ts +29 -0
  186. package/dist/src/prediction/index.js +21 -0
  187. package/dist/src/prediction/prediction.d.ts +104 -0
  188. package/dist/src/prediction/prediction.js +317 -0
  189. package/dist/src/prediction/tx-builders.d.ts +44 -0
  190. package/dist/src/prediction/tx-builders.js +52 -0
  191. package/dist/src/prediction/types.d.ts +93 -0
  192. package/dist/src/prediction/types.js +1 -0
  193. package/dist/src/prediction/user/account.d.ts +2 -0
  194. package/dist/src/prediction/user/account.js +1 -0
  195. package/dist/src/prediction/user/admin.d.ts +6 -0
  196. package/dist/src/prediction/user/admin.js +3 -0
  197. package/dist/src/prediction/user/gift.d.ts +2 -0
  198. package/dist/src/prediction/user/gift.js +1 -0
  199. package/dist/src/prediction/user/index.d.ts +5 -0
  200. package/dist/src/prediction/user/index.js +3 -0
  201. package/dist/src/prediction/user/keeper.d.ts +2 -0
  202. package/dist/src/prediction/user/keeper.js +1 -0
  203. package/dist/src/prediction/user/order.d.ts +2 -0
  204. package/dist/src/prediction/user/order.js +1 -0
  205. package/dist/src/prediction/user/position.d.ts +2 -0
  206. package/dist/src/prediction/user/position.js +1 -0
  207. package/dist/src/prediction/utils/bcs.d.ts +1 -0
  208. package/dist/src/prediction/utils/bcs.js +1 -0
  209. package/dist/src/prediction/utils/index.d.ts +1 -0
  210. package/dist/src/prediction/utils/index.js +1 -0
  211. package/dist/src/prediction/utils.d.ts +30 -0
  212. package/dist/src/prediction/utils.js +177 -0
  213. package/dist/src/sdk.d.ts +18 -0
  214. package/dist/src/sdk.js +17 -0
  215. package/dist/src/tx-builders.d.ts +54 -0
  216. package/dist/src/tx-builders.js +141 -0
  217. package/dist/src/unified-client.d.ts +407 -0
  218. package/dist/src/unified-client.js +123 -0
  219. package/dist/src/user/account.d.ts +27 -0
  220. package/dist/src/user/account.js +34 -8
  221. package/dist/src/user/credit.d.ts +8 -14
  222. package/dist/src/user/credit.js +9 -23
  223. package/dist/src/user/custody.d.ts +4 -18
  224. package/dist/src/user/custody.js +14 -25
  225. package/dist/src/utils/consolidate-balance.d.ts +37 -0
  226. package/dist/src/utils/consolidate-balance.js +89 -0
  227. package/dist/src/utils/math.d.ts +86 -0
  228. package/dist/src/utils/math.js +100 -0
  229. package/dist/src/utils/pyth.d.ts +42 -7
  230. package/dist/src/utils/pyth.js +107 -31
  231. package/package.json +129 -34
@@ -0,0 +1,1733 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ import { MoveStruct, normalizeMoveArguments } from "../utils/index.js";
5
+ import { bcs } from '@mysten/sui/bcs';
6
+ import * as balance from "./deps/sui/balance.js";
7
+ import * as table from "./deps/sui/table.js";
8
+ import * as linked_table from "./deps/bucket_v2_framework/linked_table.js";
9
+ import * as outcome from "./outcome.js";
10
+ const $moduleName = '@waterx/prediction::waterx_prediction';
11
+ export const MarketRegistry = new MoveStruct({ name: `${$moduleName}::MarketRegistry<phantom T>`, fields: {
12
+ id: bcs.Address,
13
+ /** One shared settlement pool for all markets using coin type `T`. */
14
+ balance: balance.Balance,
15
+ /** Exact market lookup: external market id bytes -> linked-table key. */
16
+ market_id_map: table.Table,
17
+ unresolved_markets: linked_table.LinkedTable(bcs.u64()),
18
+ resolved_markets: linked_table.LinkedTable(bcs.u64()),
19
+ /** Set of market keys where new opens are blocked. Presence = paused. */
20
+ paused_markets: table.Table,
21
+ /** Pending open and close orders waiting for broker/keeper execution. */
22
+ orders: linked_table.LinkedTable(bcs.u64()),
23
+ /** Filled positions with active Polymarket exposure. */
24
+ positions: linked_table.LinkedTable(bcs.u64()),
25
+ /**
26
+ * Filled order id -> filled position id. Split positions are independent positions
27
+ * and are not indexed here.
28
+ */
29
+ position_id_by_order: table.Table,
30
+ /**
31
+ * Reverse index for cleaning `position_id_by_order` when the filled position is
32
+ * claimed or closed.
33
+ */
34
+ order_id_by_position: table.Table,
35
+ next_order_id: bcs.u64(),
36
+ next_position_id: bcs.u64(),
37
+ next_market_key: bcs.u64(),
38
+ /** Minimum time after order placement before user self-cancel is allowed. */
39
+ order_cancel_cooldown_ms: bcs.u64(),
40
+ /** Floor balance that `admin_withdraw` must respect. */
41
+ min_reserve: bcs.u64()
42
+ } });
43
+ export const Market = new MoveStruct({ name: `${$moduleName}::Market`, fields: {
44
+ market_id: bcs.vector(bcs.u8()),
45
+ outcome: bcs.option(outcome.Outcome),
46
+ /**
47
+ * Number of `Open` positions referencing this market. Incremented on `fill_order`;
48
+ * decremented on `claim` / `confirm_close`. The market entry remains queryable
49
+ * even after this reaches zero.
50
+ */
51
+ unclaimed_count: bcs.u64(),
52
+ /** Active YES-side exposure still open in broker custody. */
53
+ yes_shares: bcs.u64(),
54
+ yes_cost: bcs.u64(),
55
+ /** Active NO-side exposure still open in broker custody. */
56
+ no_shares: bcs.u64(),
57
+ no_cost: bcs.u64()
58
+ } });
59
+ export const MarketPointer = new MoveStruct({ name: `${$moduleName}::MarketPointer`, fields: {
60
+ key: bcs.u64(),
61
+ resolved: bcs.bool()
62
+ } });
63
+ /**
64
+ * Admin-only: spin up the shared market registry object for coin type `T`. All
65
+ * markets for this coin type should settle through this object.
66
+ */
67
+ export function createMarketRegistry(options) {
68
+ const packageAddress = options.package ?? '@waterx/prediction';
69
+ const argumentsTypes = [
70
+ null
71
+ ];
72
+ const parameterNames = ["_"];
73
+ return (tx) => tx.moveCall({
74
+ package: packageAddress,
75
+ module: 'waterx_prediction',
76
+ function: 'create_market_registry',
77
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
78
+ typeArguments: options.typeArguments
79
+ });
80
+ }
81
+ /**
82
+ * Account-backed variant: debits `max_spend` from `account_id` in
83
+ * `waterx_account`, records pending-order/refunds against that payer, and gives
84
+ * the filled position to `receiver_account_id`.
85
+ */
86
+ export function placeOrder(options) {
87
+ const packageAddress = options.package ?? '@waterx/prediction';
88
+ const argumentsTypes = [
89
+ null,
90
+ null,
91
+ null,
92
+ null,
93
+ '0x2::object::ID',
94
+ '0x2::object::ID',
95
+ 'u64',
96
+ 'vector<u8>',
97
+ null,
98
+ 'u64',
99
+ 'u64',
100
+ 'u64',
101
+ '0x2::clock::Clock'
102
+ ];
103
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "accountId", "receiverAccountId", "maxSpend", "marketId", "selection", "minShares", "priceCap", "expiryTs"];
104
+ return (tx) => tx.moveCall({
105
+ package: packageAddress,
106
+ module: 'waterx_prediction',
107
+ function: 'place_order',
108
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
109
+ typeArguments: options.typeArguments
110
+ });
111
+ }
112
+ /**
113
+ * Account-backed rescue for a stuck open order. Refunds go back into the
114
+ * waterx_account stored balance.
115
+ */
116
+ export function selfCancelOrder(options) {
117
+ const packageAddress = options.package ?? '@waterx/prediction';
118
+ const argumentsTypes = [
119
+ null,
120
+ null,
121
+ null,
122
+ null,
123
+ 'u64',
124
+ '0x2::clock::Clock'
125
+ ];
126
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "orderId"];
127
+ return (tx) => tx.moveCall({
128
+ package: packageAddress,
129
+ module: 'waterx_prediction',
130
+ function: 'self_cancel_order',
131
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
132
+ typeArguments: options.typeArguments
133
+ });
134
+ }
135
+ /** Account-backed claim. Payout is credited to the owning waterx_account balance. */
136
+ export function claim(options) {
137
+ const packageAddress = options.package ?? '@waterx/prediction';
138
+ const argumentsTypes = [
139
+ null,
140
+ null,
141
+ null,
142
+ null,
143
+ 'u64',
144
+ '0x2::clock::Clock'
145
+ ];
146
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "positionId"];
147
+ return (tx) => tx.moveCall({
148
+ package: packageAddress,
149
+ module: 'waterx_prediction',
150
+ function: 'claim',
151
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
152
+ typeArguments: options.typeArguments
153
+ });
154
+ }
155
+ /**
156
+ * Account-backed close request. Auth is checked against the owning waterx_account.
157
+ * The position is locked in PendingClose until a keeper confirms the sell, a
158
+ * keeper cancels it, or the user self-cancels past `self_cancel_after_ts`. Aborts
159
+ * if the market has already resolved.
160
+ */
161
+ export function requestClose(options) {
162
+ const packageAddress = options.package ?? '@waterx/prediction';
163
+ const argumentsTypes = [
164
+ null,
165
+ null,
166
+ null,
167
+ null,
168
+ 'u64',
169
+ 'u64',
170
+ 'u64',
171
+ '0x2::clock::Clock'
172
+ ];
173
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "positionId", "minProceeds", "expiryTs"];
174
+ return (tx) => tx.moveCall({
175
+ package: packageAddress,
176
+ module: 'waterx_prediction',
177
+ function: 'request_close',
178
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
179
+ typeArguments: options.typeArguments
180
+ });
181
+ }
182
+ /** Account-backed PendingClose rescue. Reverts the position to Open. */
183
+ export function selfCancelClose(options) {
184
+ const packageAddress = options.package ?? '@waterx/prediction';
185
+ const argumentsTypes = [
186
+ null,
187
+ null,
188
+ null,
189
+ null,
190
+ 'u64',
191
+ '0x2::clock::Clock'
192
+ ];
193
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "positionId"];
194
+ return (tx) => tx.moveCall({
195
+ package: packageAddress,
196
+ module: 'waterx_prediction',
197
+ function: 'self_cancel_close',
198
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
199
+ typeArguments: options.typeArguments
200
+ });
201
+ }
202
+ /**
203
+ * Account-backed position transfer. The source account owner moves an open
204
+ * prediction position to another WXA account; future close/claim proceeds go to
205
+ * the recipient account.
206
+ */
207
+ export function transferPosition(options) {
208
+ const packageAddress = options.package ?? '@waterx/prediction';
209
+ const argumentsTypes = [
210
+ null,
211
+ null,
212
+ null,
213
+ null,
214
+ 'u64',
215
+ '0x2::object::ID',
216
+ '0x2::clock::Clock'
217
+ ];
218
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "positionId", "recipientAccountId"];
219
+ return (tx) => tx.moveCall({
220
+ package: packageAddress,
221
+ module: 'waterx_prediction',
222
+ function: 'transfer_position',
223
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
224
+ typeArguments: options.typeArguments
225
+ });
226
+ }
227
+ /**
228
+ * Account-backed partial transfer. Splits an open position into two normal
229
+ * positions: the source keeps the remainder and the recipient receives a new
230
+ * independent position with proportional cost basis.
231
+ */
232
+ export function splitPosition(options) {
233
+ const packageAddress = options.package ?? '@waterx/prediction';
234
+ const argumentsTypes = [
235
+ null,
236
+ null,
237
+ null,
238
+ null,
239
+ 'u64',
240
+ '0x2::object::ID',
241
+ 'u64',
242
+ '0x2::clock::Clock'
243
+ ];
244
+ const parameterNames = ["globalConfig", "marketRegistry", "wxaRegistry", "senderRequest", "positionId", "recipientAccountId", "splitShares"];
245
+ return (tx) => tx.moveCall({
246
+ package: packageAddress,
247
+ module: 'waterx_prediction',
248
+ function: 'split_position',
249
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
250
+ typeArguments: options.typeArguments
251
+ });
252
+ }
253
+ /**
254
+ * Admin-funded account position. The admin supplies the payment coin, while future
255
+ * user exits and admin refunds/claims return value to `account_id` in
256
+ * `waterx_account`.
257
+ */
258
+ export function adminPlaceOrderFor(options) {
259
+ const packageAddress = options.package ?? '@waterx/prediction';
260
+ const argumentsTypes = [
261
+ null,
262
+ null,
263
+ null,
264
+ null,
265
+ '0x2::object::ID',
266
+ 'vector<u8>',
267
+ null,
268
+ 'u64',
269
+ 'u64',
270
+ 'u64',
271
+ '0x2::clock::Clock'
272
+ ];
273
+ const parameterNames = ["_", "marketRegistry", "wxaRegistry", "payment", "accountId", "marketId", "selection", "minShares", "priceCap", "expiryTs"];
274
+ return (tx) => tx.moveCall({
275
+ package: packageAddress,
276
+ module: 'waterx_prediction',
277
+ function: 'admin_place_order_for',
278
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
279
+ typeArguments: options.typeArguments
280
+ });
281
+ }
282
+ /**
283
+ * Keeper reports the Polymarket fill back to chain. Account-backed fill
284
+ * confirmation. Any unspent max_spend is credited back to the payer account, then
285
+ * a new independent position id is allocated.
286
+ */
287
+ export function fillOrder(options) {
288
+ const packageAddress = options.package ?? '@waterx/prediction';
289
+ const argumentsTypes = [
290
+ null,
291
+ null,
292
+ null,
293
+ null,
294
+ 'u64',
295
+ 'u64',
296
+ 'u64',
297
+ '0x2::clock::Clock'
298
+ ];
299
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "wxaRegistry", "orderId", "filledShares", "filledCost"];
300
+ return (tx) => tx.moveCall({
301
+ package: packageAddress,
302
+ module: 'waterx_prediction',
303
+ function: 'fill_order',
304
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
305
+ typeArguments: options.typeArguments
306
+ });
307
+ }
308
+ /**
309
+ * Keeper-initiated cancel. Used when Polymarket couldn't fill at all.
310
+ * Account-backed keeper cancel. Full refund is credited to the owning
311
+ * waterx_account.
312
+ */
313
+ export function cancelOrder(options) {
314
+ const packageAddress = options.package ?? '@waterx/prediction';
315
+ const argumentsTypes = [
316
+ null,
317
+ null,
318
+ null,
319
+ null,
320
+ 'u64',
321
+ '0x2::clock::Clock'
322
+ ];
323
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "wxaRegistry", "orderId"];
324
+ return (tx) => tx.moveCall({
325
+ package: packageAddress,
326
+ module: 'waterx_prediction',
327
+ function: 'cancel_order',
328
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
329
+ typeArguments: options.typeArguments
330
+ });
331
+ }
332
+ /**
333
+ * Keeper reports the Polymarket sell back to chain. Pays user `proceeds` and
334
+ * closes the position. Aborts if `proceeds < close_min_proceeds`. Account-backed
335
+ * close confirmation. Proceeds are credited to the owning waterx_account.
336
+ */
337
+ export function confirmClose(options) {
338
+ const packageAddress = options.package ?? '@waterx/prediction';
339
+ const argumentsTypes = [
340
+ null,
341
+ null,
342
+ null,
343
+ null,
344
+ 'u64',
345
+ 'u64',
346
+ '0x2::clock::Clock'
347
+ ];
348
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "wxaRegistry", "positionId", "proceeds"];
349
+ return (tx) => tx.moveCall({
350
+ package: packageAddress,
351
+ module: 'waterx_prediction',
352
+ function: 'confirm_close',
353
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
354
+ typeArguments: options.typeArguments
355
+ });
356
+ }
357
+ /**
358
+ * Keeper-initiated cancel of a PendingClose request. Used when the
359
+ * waterx_prediction couldn't sell on Polymarket. Reverts position to Open — shares
360
+ * are intact.
361
+ */
362
+ export function cancelClose(options) {
363
+ const packageAddress = options.package ?? '@waterx/prediction';
364
+ const argumentsTypes = [
365
+ null,
366
+ null,
367
+ null,
368
+ null,
369
+ 'u64',
370
+ '0x2::clock::Clock'
371
+ ];
372
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "wxaRegistry", "positionId"];
373
+ return (tx) => tx.moveCall({
374
+ package: packageAddress,
375
+ module: 'waterx_prediction',
376
+ function: 'cancel_close',
377
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
378
+ typeArguments: options.typeArguments
379
+ });
380
+ }
381
+ /**
382
+ * Keeper settles a position for the owning waterx_account. Same payout math as
383
+ * `claim`; keeper just pays the gas.
384
+ *
385
+ * Two main use cases:
386
+ *
387
+ * 1. **Batch payout distribution** — after `resolve_market`, chain multiple
388
+ * `force_claim` calls in one PTB to settle every position on that market in a
389
+ * single tx. Users get paid without spending gas.
390
+ * 2. **Zombie cleanup** - losing-side positions where payout = 0 give the account
391
+ * no incentive to call `claim`. Force-claim removes the position while leaving
392
+ * market metadata available for indexed queries.
393
+ *
394
+ * Only operates on open positions. Pending open orders and pending close orders
395
+ * have their own resolution paths (`fill_order` / `confirm_close`). Account-backed
396
+ * keeper claim. Used for gas-sponsored settlement and zombie cleanup when the
397
+ * position belongs to a waterx_account.
398
+ */
399
+ export function forceClaim(options) {
400
+ const packageAddress = options.package ?? '@waterx/prediction';
401
+ const argumentsTypes = [
402
+ null,
403
+ null,
404
+ null,
405
+ null,
406
+ 'u64',
407
+ '0x2::clock::Clock'
408
+ ];
409
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "wxaRegistry", "positionId"];
410
+ return (tx) => tx.moveCall({
411
+ package: packageAddress,
412
+ module: 'waterx_prediction',
413
+ function: 'force_claim',
414
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
415
+ typeArguments: options.typeArguments
416
+ });
417
+ }
418
+ export function depositSettlement(options) {
419
+ const packageAddress = options.package ?? '@waterx/prediction';
420
+ const argumentsTypes = [
421
+ null,
422
+ null,
423
+ null
424
+ ];
425
+ const parameterNames = ["_", "marketRegistry", "payment"];
426
+ return (tx) => tx.moveCall({
427
+ package: packageAddress,
428
+ module: 'waterx_prediction',
429
+ function: 'deposit_settlement',
430
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
431
+ typeArguments: options.typeArguments
432
+ });
433
+ }
434
+ /**
435
+ * Admin pulls capital out of the market_registry — used to realise
436
+ * waterx_prediction spread/profit or rebalance working capital. Aborts if the
437
+ * post-balance would dip below `min_reserve`, providing a kill-switch against
438
+ * accidental drains.
439
+ */
440
+ export function adminWithdraw(options) {
441
+ const packageAddress = options.package ?? '@waterx/prediction';
442
+ const argumentsTypes = [
443
+ null,
444
+ null,
445
+ 'u64',
446
+ 'address'
447
+ ];
448
+ const parameterNames = ["_", "marketRegistry", "amount", "recipient"];
449
+ return (tx) => tx.moveCall({
450
+ package: packageAddress,
451
+ module: 'waterx_prediction',
452
+ function: 'admin_withdraw',
453
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
454
+ typeArguments: options.typeArguments
455
+ });
456
+ }
457
+ /**
458
+ * Admin sets the minimum reserve floor. Future `admin_withdraw` calls abort if
459
+ * they would leave `market_registry.balance` below this. Does NOT block user
460
+ * payouts — `claim` and refunds bypass `min_reserve` entirely (those are user
461
+ * funds).
462
+ */
463
+ export function setMinReserve(options) {
464
+ const packageAddress = options.package ?? '@waterx/prediction';
465
+ const argumentsTypes = [
466
+ null,
467
+ null,
468
+ 'u64'
469
+ ];
470
+ const parameterNames = ["_", "marketRegistry", "newReserve"];
471
+ return (tx) => tx.moveCall({
472
+ package: packageAddress,
473
+ module: 'waterx_prediction',
474
+ function: 'set_min_reserve',
475
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
476
+ typeArguments: options.typeArguments
477
+ });
478
+ }
479
+ /**
480
+ * Admin sets the minimum account-owner self-cancel cooldown for newly created open
481
+ * and close orders. Existing orders keep their stored self-cancel time.
482
+ */
483
+ export function setOrderCancelCooldownMs(options) {
484
+ const packageAddress = options.package ?? '@waterx/prediction';
485
+ const argumentsTypes = [
486
+ null,
487
+ null,
488
+ 'u64'
489
+ ];
490
+ const parameterNames = ["_", "marketRegistry", "newCooldownMs"];
491
+ return (tx) => tx.moveCall({
492
+ package: packageAddress,
493
+ module: 'waterx_prediction',
494
+ function: 'set_order_cancel_cooldown_ms',
495
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
496
+ typeArguments: options.typeArguments
497
+ });
498
+ }
499
+ /** Keeper records the market outcome. Aborts if already resolved. */
500
+ export function resolveMarket(options) {
501
+ const packageAddress = options.package ?? '@waterx/prediction';
502
+ const argumentsTypes = [
503
+ null,
504
+ null,
505
+ null,
506
+ 'vector<u8>',
507
+ null,
508
+ '0x2::clock::Clock'
509
+ ];
510
+ const parameterNames = ["globalConfig", "keeperRequest", "marketRegistry", "marketId", "outcome"];
511
+ return (tx) => tx.moveCall({
512
+ package: packageAddress,
513
+ module: 'waterx_prediction',
514
+ function: 'resolve_market',
515
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
516
+ typeArguments: options.typeArguments
517
+ });
518
+ }
519
+ /**
520
+ * Admin pauses new opens for a specific market. Existing positions unaffected. If
521
+ * the market does not exist yet, this creates market metadata and emits
522
+ * `MarketCreated { by_admin: true }` before `MarketPaused`.
523
+ */
524
+ export function pauseMarket(options) {
525
+ const packageAddress = options.package ?? '@waterx/prediction';
526
+ const argumentsTypes = [
527
+ null,
528
+ null,
529
+ 'vector<u8>',
530
+ '0x2::clock::Clock'
531
+ ];
532
+ const parameterNames = ["_", "marketRegistry", "marketId"];
533
+ return (tx) => tx.moveCall({
534
+ package: packageAddress,
535
+ module: 'waterx_prediction',
536
+ function: 'pause_market',
537
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
538
+ typeArguments: options.typeArguments
539
+ });
540
+ }
541
+ /** Admin re-enables opens for a previously paused market. */
542
+ export function unpauseMarket(options) {
543
+ const packageAddress = options.package ?? '@waterx/prediction';
544
+ const argumentsTypes = [
545
+ null,
546
+ null,
547
+ 'vector<u8>'
548
+ ];
549
+ const parameterNames = ["_", "marketRegistry", "marketId"];
550
+ return (tx) => tx.moveCall({
551
+ package: packageAddress,
552
+ module: 'waterx_prediction',
553
+ function: 'unpause_market',
554
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
555
+ typeArguments: options.typeArguments
556
+ });
557
+ }
558
+ export function positionStatus(options) {
559
+ const packageAddress = options.package ?? '@waterx/prediction';
560
+ const argumentsTypes = [
561
+ null,
562
+ 'u64'
563
+ ];
564
+ const parameterNames = ["marketRegistry", "positionId"];
565
+ return (tx) => tx.moveCall({
566
+ package: packageAddress,
567
+ module: 'waterx_prediction',
568
+ function: 'position_status',
569
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
570
+ typeArguments: options.typeArguments
571
+ });
572
+ }
573
+ export function positionAccountId(options) {
574
+ const packageAddress = options.package ?? '@waterx/prediction';
575
+ const argumentsTypes = [
576
+ null,
577
+ 'u64'
578
+ ];
579
+ const parameterNames = ["marketRegistry", "positionId"];
580
+ return (tx) => tx.moveCall({
581
+ package: packageAddress,
582
+ module: 'waterx_prediction',
583
+ function: 'position_account_id',
584
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
585
+ typeArguments: options.typeArguments
586
+ });
587
+ }
588
+ export function positionMarketId(options) {
589
+ const packageAddress = options.package ?? '@waterx/prediction';
590
+ const argumentsTypes = [
591
+ null,
592
+ 'u64'
593
+ ];
594
+ const parameterNames = ["marketRegistry", "positionId"];
595
+ return (tx) => tx.moveCall({
596
+ package: packageAddress,
597
+ module: 'waterx_prediction',
598
+ function: 'position_market_id',
599
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
600
+ typeArguments: options.typeArguments
601
+ });
602
+ }
603
+ export function positionSelection(options) {
604
+ const packageAddress = options.package ?? '@waterx/prediction';
605
+ const argumentsTypes = [
606
+ null,
607
+ 'u64'
608
+ ];
609
+ const parameterNames = ["marketRegistry", "positionId"];
610
+ return (tx) => tx.moveCall({
611
+ package: packageAddress,
612
+ module: 'waterx_prediction',
613
+ function: 'position_selection',
614
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
615
+ typeArguments: options.typeArguments
616
+ });
617
+ }
618
+ export function positionPayout(options) {
619
+ const packageAddress = options.package ?? '@waterx/prediction';
620
+ const argumentsTypes = [
621
+ null,
622
+ 'u64'
623
+ ];
624
+ const parameterNames = ["marketRegistry", "positionId"];
625
+ return (tx) => tx.moveCall({
626
+ package: packageAddress,
627
+ module: 'waterx_prediction',
628
+ function: 'position_payout',
629
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
630
+ typeArguments: options.typeArguments
631
+ });
632
+ }
633
+ export function positionFilled(options) {
634
+ const packageAddress = options.package ?? '@waterx/prediction';
635
+ const argumentsTypes = [
636
+ null,
637
+ 'u64'
638
+ ];
639
+ const parameterNames = ["marketRegistry", "positionId"];
640
+ return (tx) => tx.moveCall({
641
+ package: packageAddress,
642
+ module: 'waterx_prediction',
643
+ function: 'position_filled',
644
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
645
+ typeArguments: options.typeArguments
646
+ });
647
+ }
648
+ export function positionOpenedTs(options) {
649
+ const packageAddress = options.package ?? '@waterx/prediction';
650
+ const argumentsTypes = [
651
+ null,
652
+ 'u64'
653
+ ];
654
+ const parameterNames = ["marketRegistry", "positionId"];
655
+ return (tx) => tx.moveCall({
656
+ package: packageAddress,
657
+ module: 'waterx_prediction',
658
+ function: 'position_opened_ts',
659
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
660
+ typeArguments: options.typeArguments
661
+ });
662
+ }
663
+ export function positionCloseExpiry(options) {
664
+ const packageAddress = options.package ?? '@waterx/prediction';
665
+ const argumentsTypes = [
666
+ null,
667
+ 'u64'
668
+ ];
669
+ const parameterNames = ["marketRegistry", "positionId"];
670
+ return (tx) => tx.moveCall({
671
+ package: packageAddress,
672
+ module: 'waterx_prediction',
673
+ function: 'position_close_expiry',
674
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
675
+ typeArguments: options.typeArguments
676
+ });
677
+ }
678
+ export function positionCloseOrderId(options) {
679
+ const packageAddress = options.package ?? '@waterx/prediction';
680
+ const argumentsTypes = [
681
+ null,
682
+ 'u64'
683
+ ];
684
+ const parameterNames = ["marketRegistry", "positionId"];
685
+ return (tx) => tx.moveCall({
686
+ package: packageAddress,
687
+ module: 'waterx_prediction',
688
+ function: 'position_close_order_id',
689
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
690
+ typeArguments: options.typeArguments
691
+ });
692
+ }
693
+ export function positionCloseSelfCancelAfterTs(options) {
694
+ const packageAddress = options.package ?? '@waterx/prediction';
695
+ const argumentsTypes = [
696
+ null,
697
+ 'u64'
698
+ ];
699
+ const parameterNames = ["marketRegistry", "positionId"];
700
+ return (tx) => tx.moveCall({
701
+ package: packageAddress,
702
+ module: 'waterx_prediction',
703
+ function: 'position_close_self_cancel_after_ts',
704
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
705
+ typeArguments: options.typeArguments
706
+ });
707
+ }
708
+ export function positionCloseMinProceeds(options) {
709
+ const packageAddress = options.package ?? '@waterx/prediction';
710
+ const argumentsTypes = [
711
+ null,
712
+ 'u64'
713
+ ];
714
+ const parameterNames = ["marketRegistry", "positionId"];
715
+ return (tx) => tx.moveCall({
716
+ package: packageAddress,
717
+ module: 'waterx_prediction',
718
+ function: 'position_close_min_proceeds',
719
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
720
+ typeArguments: options.typeArguments
721
+ });
722
+ }
723
+ export function positionExists(options) {
724
+ const packageAddress = options.package ?? '@waterx/prediction';
725
+ const argumentsTypes = [
726
+ null,
727
+ 'u64'
728
+ ];
729
+ const parameterNames = ["marketRegistry", "positionId"];
730
+ return (tx) => tx.moveCall({
731
+ package: packageAddress,
732
+ module: 'waterx_prediction',
733
+ function: 'position_exists',
734
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
735
+ typeArguments: options.typeArguments
736
+ });
737
+ }
738
+ export function marketRegistryBalance(options) {
739
+ const packageAddress = options.package ?? '@waterx/prediction';
740
+ const argumentsTypes = [
741
+ null
742
+ ];
743
+ const parameterNames = ["marketRegistry"];
744
+ return (tx) => tx.moveCall({
745
+ package: packageAddress,
746
+ module: 'waterx_prediction',
747
+ function: 'market_registry_balance',
748
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
749
+ typeArguments: options.typeArguments
750
+ });
751
+ }
752
+ export function marketRegistryMinReserve(options) {
753
+ const packageAddress = options.package ?? '@waterx/prediction';
754
+ const argumentsTypes = [
755
+ null
756
+ ];
757
+ const parameterNames = ["marketRegistry"];
758
+ return (tx) => tx.moveCall({
759
+ package: packageAddress,
760
+ module: 'waterx_prediction',
761
+ function: 'market_registry_min_reserve',
762
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
763
+ typeArguments: options.typeArguments
764
+ });
765
+ }
766
+ export function marketRegistryOrderCancelCooldownMs(options) {
767
+ const packageAddress = options.package ?? '@waterx/prediction';
768
+ const argumentsTypes = [
769
+ null
770
+ ];
771
+ const parameterNames = ["marketRegistry"];
772
+ return (tx) => tx.moveCall({
773
+ package: packageAddress,
774
+ module: 'waterx_prediction',
775
+ function: 'market_registry_order_cancel_cooldown_ms',
776
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
777
+ typeArguments: options.typeArguments
778
+ });
779
+ }
780
+ export function nextOrderId(options) {
781
+ const packageAddress = options.package ?? '@waterx/prediction';
782
+ const argumentsTypes = [
783
+ null
784
+ ];
785
+ const parameterNames = ["marketRegistry"];
786
+ return (tx) => tx.moveCall({
787
+ package: packageAddress,
788
+ module: 'waterx_prediction',
789
+ function: 'next_order_id',
790
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
791
+ typeArguments: options.typeArguments
792
+ });
793
+ }
794
+ export function nextPositionId(options) {
795
+ const packageAddress = options.package ?? '@waterx/prediction';
796
+ const argumentsTypes = [
797
+ null
798
+ ];
799
+ const parameterNames = ["marketRegistry"];
800
+ return (tx) => tx.moveCall({
801
+ package: packageAddress,
802
+ module: 'waterx_prediction',
803
+ function: 'next_position_id',
804
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
805
+ typeArguments: options.typeArguments
806
+ });
807
+ }
808
+ export function positionIdForOrder(options) {
809
+ const packageAddress = options.package ?? '@waterx/prediction';
810
+ const argumentsTypes = [
811
+ null,
812
+ 'u64'
813
+ ];
814
+ const parameterNames = ["marketRegistry", "orderId"];
815
+ return (tx) => tx.moveCall({
816
+ package: packageAddress,
817
+ module: 'waterx_prediction',
818
+ function: 'position_id_for_order',
819
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
820
+ typeArguments: options.typeArguments
821
+ });
822
+ }
823
+ export function isMarketResolved(options) {
824
+ const packageAddress = options.package ?? '@waterx/prediction';
825
+ const argumentsTypes = [
826
+ null,
827
+ 'vector<u8>'
828
+ ];
829
+ const parameterNames = ["marketRegistry", "marketId"];
830
+ return (tx) => tx.moveCall({
831
+ package: packageAddress,
832
+ module: 'waterx_prediction',
833
+ function: 'is_market_resolved',
834
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
835
+ typeArguments: options.typeArguments
836
+ });
837
+ }
838
+ export function isMarketPaused(options) {
839
+ const packageAddress = options.package ?? '@waterx/prediction';
840
+ const argumentsTypes = [
841
+ null,
842
+ 'vector<u8>'
843
+ ];
844
+ const parameterNames = ["marketRegistry", "marketId"];
845
+ return (tx) => tx.moveCall({
846
+ package: packageAddress,
847
+ module: 'waterx_prediction',
848
+ function: 'is_market_paused',
849
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
850
+ typeArguments: options.typeArguments
851
+ });
852
+ }
853
+ export function isMarketPausedByKey(options) {
854
+ const packageAddress = options.package ?? '@waterx/prediction';
855
+ const argumentsTypes = [
856
+ null,
857
+ 'u64'
858
+ ];
859
+ const parameterNames = ["marketRegistry", "marketKey"];
860
+ return (tx) => tx.moveCall({
861
+ package: packageAddress,
862
+ module: 'waterx_prediction',
863
+ function: 'is_market_paused_by_key',
864
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
865
+ typeArguments: options.typeArguments
866
+ });
867
+ }
868
+ export function marketExists(options) {
869
+ const packageAddress = options.package ?? '@waterx/prediction';
870
+ const argumentsTypes = [
871
+ null,
872
+ 'vector<u8>'
873
+ ];
874
+ const parameterNames = ["marketRegistry", "marketId"];
875
+ return (tx) => tx.moveCall({
876
+ package: packageAddress,
877
+ module: 'waterx_prediction',
878
+ function: 'market_exists',
879
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
880
+ typeArguments: options.typeArguments
881
+ });
882
+ }
883
+ /** Aborts if the market is unresolved or doesn't exist. */
884
+ export function marketOutcome(options) {
885
+ const packageAddress = options.package ?? '@waterx/prediction';
886
+ const argumentsTypes = [
887
+ null,
888
+ 'vector<u8>'
889
+ ];
890
+ const parameterNames = ["marketRegistry", "marketId"];
891
+ return (tx) => tx.moveCall({
892
+ package: packageAddress,
893
+ module: 'waterx_prediction',
894
+ function: 'market_outcome',
895
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
896
+ typeArguments: options.typeArguments
897
+ });
898
+ }
899
+ export function marketOutcomeByKey(options) {
900
+ const packageAddress = options.package ?? '@waterx/prediction';
901
+ const argumentsTypes = [
902
+ null,
903
+ 'u64'
904
+ ];
905
+ const parameterNames = ["marketRegistry", "marketKey"];
906
+ return (tx) => tx.moveCall({
907
+ package: packageAddress,
908
+ module: 'waterx_prediction',
909
+ function: 'market_outcome_by_key',
910
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
911
+ typeArguments: options.typeArguments
912
+ });
913
+ }
914
+ export function marketUnclaimedCount(options) {
915
+ const packageAddress = options.package ?? '@waterx/prediction';
916
+ const argumentsTypes = [
917
+ null,
918
+ 'vector<u8>'
919
+ ];
920
+ const parameterNames = ["marketRegistry", "marketId"];
921
+ return (tx) => tx.moveCall({
922
+ package: packageAddress,
923
+ module: 'waterx_prediction',
924
+ function: 'market_unclaimed_count',
925
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
926
+ typeArguments: options.typeArguments
927
+ });
928
+ }
929
+ export function marketExposure(options) {
930
+ const packageAddress = options.package ?? '@waterx/prediction';
931
+ const argumentsTypes = [
932
+ null,
933
+ 'vector<u8>'
934
+ ];
935
+ const parameterNames = ["marketRegistry", "marketId"];
936
+ return (tx) => tx.moveCall({
937
+ package: packageAddress,
938
+ module: 'waterx_prediction',
939
+ function: 'market_exposure',
940
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
941
+ typeArguments: options.typeArguments
942
+ });
943
+ }
944
+ export function orders(options) {
945
+ const packageAddress = options.package ?? '@waterx/prediction';
946
+ const argumentsTypes = [
947
+ null
948
+ ];
949
+ const parameterNames = ["marketRegistry"];
950
+ return (tx) => tx.moveCall({
951
+ package: packageAddress,
952
+ module: 'waterx_prediction',
953
+ function: 'orders',
954
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
955
+ typeArguments: options.typeArguments
956
+ });
957
+ }
958
+ export function orderCount(options) {
959
+ const packageAddress = options.package ?? '@waterx/prediction';
960
+ const argumentsTypes = [
961
+ null
962
+ ];
963
+ const parameterNames = ["marketRegistry"];
964
+ return (tx) => tx.moveCall({
965
+ package: packageAddress,
966
+ module: 'waterx_prediction',
967
+ function: 'order_count',
968
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
969
+ typeArguments: options.typeArguments
970
+ });
971
+ }
972
+ export function orderKeyAt(options) {
973
+ const packageAddress = options.package ?? '@waterx/prediction';
974
+ const argumentsTypes = [
975
+ null,
976
+ 'u64'
977
+ ];
978
+ const parameterNames = ["marketRegistry", "index"];
979
+ return (tx) => tx.moveCall({
980
+ package: packageAddress,
981
+ module: 'waterx_prediction',
982
+ function: 'order_key_at',
983
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
984
+ typeArguments: options.typeArguments
985
+ });
986
+ }
987
+ export function orderFront(options) {
988
+ const packageAddress = options.package ?? '@waterx/prediction';
989
+ const argumentsTypes = [
990
+ null
991
+ ];
992
+ const parameterNames = ["marketRegistry"];
993
+ return (tx) => tx.moveCall({
994
+ package: packageAddress,
995
+ module: 'waterx_prediction',
996
+ function: 'order_front',
997
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
998
+ typeArguments: options.typeArguments
999
+ });
1000
+ }
1001
+ export function orderBack(options) {
1002
+ const packageAddress = options.package ?? '@waterx/prediction';
1003
+ const argumentsTypes = [
1004
+ null
1005
+ ];
1006
+ const parameterNames = ["marketRegistry"];
1007
+ return (tx) => tx.moveCall({
1008
+ package: packageAddress,
1009
+ module: 'waterx_prediction',
1010
+ function: 'order_back',
1011
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1012
+ typeArguments: options.typeArguments
1013
+ });
1014
+ }
1015
+ export function orderNext(options) {
1016
+ const packageAddress = options.package ?? '@waterx/prediction';
1017
+ const argumentsTypes = [
1018
+ null,
1019
+ 'u64'
1020
+ ];
1021
+ const parameterNames = ["marketRegistry", "orderId"];
1022
+ return (tx) => tx.moveCall({
1023
+ package: packageAddress,
1024
+ module: 'waterx_prediction',
1025
+ function: 'order_next',
1026
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1027
+ typeArguments: options.typeArguments
1028
+ });
1029
+ }
1030
+ export function orderPrev(options) {
1031
+ const packageAddress = options.package ?? '@waterx/prediction';
1032
+ const argumentsTypes = [
1033
+ null,
1034
+ 'u64'
1035
+ ];
1036
+ const parameterNames = ["marketRegistry", "orderId"];
1037
+ return (tx) => tx.moveCall({
1038
+ package: packageAddress,
1039
+ module: 'waterx_prediction',
1040
+ function: 'order_prev',
1041
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1042
+ typeArguments: options.typeArguments
1043
+ });
1044
+ }
1045
+ export function orderExists(options) {
1046
+ const packageAddress = options.package ?? '@waterx/prediction';
1047
+ const argumentsTypes = [
1048
+ null,
1049
+ 'u64'
1050
+ ];
1051
+ const parameterNames = ["marketRegistry", "orderId"];
1052
+ return (tx) => tx.moveCall({
1053
+ package: packageAddress,
1054
+ module: 'waterx_prediction',
1055
+ function: 'order_exists',
1056
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1057
+ typeArguments: options.typeArguments
1058
+ });
1059
+ }
1060
+ export function orderId(options) {
1061
+ const packageAddress = options.package ?? '@waterx/prediction';
1062
+ const argumentsTypes = [
1063
+ null,
1064
+ 'u64'
1065
+ ];
1066
+ const parameterNames = ["marketRegistry", "lookupOrderId"];
1067
+ return (tx) => tx.moveCall({
1068
+ package: packageAddress,
1069
+ module: 'waterx_prediction',
1070
+ function: 'order_id',
1071
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1072
+ typeArguments: options.typeArguments
1073
+ });
1074
+ }
1075
+ export function orderKind(options) {
1076
+ const packageAddress = options.package ?? '@waterx/prediction';
1077
+ const argumentsTypes = [
1078
+ null,
1079
+ 'u64'
1080
+ ];
1081
+ const parameterNames = ["marketRegistry", "orderId"];
1082
+ return (tx) => tx.moveCall({
1083
+ package: packageAddress,
1084
+ module: 'waterx_prediction',
1085
+ function: 'order_kind',
1086
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1087
+ typeArguments: options.typeArguments
1088
+ });
1089
+ }
1090
+ export function orderAccountId(options) {
1091
+ const packageAddress = options.package ?? '@waterx/prediction';
1092
+ const argumentsTypes = [
1093
+ null,
1094
+ 'u64'
1095
+ ];
1096
+ const parameterNames = ["marketRegistry", "orderId"];
1097
+ return (tx) => tx.moveCall({
1098
+ package: packageAddress,
1099
+ module: 'waterx_prediction',
1100
+ function: 'order_account_id',
1101
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1102
+ typeArguments: options.typeArguments
1103
+ });
1104
+ }
1105
+ export function orderReceiverAccountId(options) {
1106
+ const packageAddress = options.package ?? '@waterx/prediction';
1107
+ const argumentsTypes = [
1108
+ null,
1109
+ 'u64'
1110
+ ];
1111
+ const parameterNames = ["marketRegistry", "orderId"];
1112
+ return (tx) => tx.moveCall({
1113
+ package: packageAddress,
1114
+ module: 'waterx_prediction',
1115
+ function: 'order_receiver_account_id',
1116
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1117
+ typeArguments: options.typeArguments
1118
+ });
1119
+ }
1120
+ export function orderMarketId(options) {
1121
+ const packageAddress = options.package ?? '@waterx/prediction';
1122
+ const argumentsTypes = [
1123
+ null,
1124
+ 'u64'
1125
+ ];
1126
+ const parameterNames = ["marketRegistry", "orderId"];
1127
+ return (tx) => tx.moveCall({
1128
+ package: packageAddress,
1129
+ module: 'waterx_prediction',
1130
+ function: 'order_market_id',
1131
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1132
+ typeArguments: options.typeArguments
1133
+ });
1134
+ }
1135
+ export function orderSelection(options) {
1136
+ const packageAddress = options.package ?? '@waterx/prediction';
1137
+ const argumentsTypes = [
1138
+ null,
1139
+ 'u64'
1140
+ ];
1141
+ const parameterNames = ["marketRegistry", "orderId"];
1142
+ return (tx) => tx.moveCall({
1143
+ package: packageAddress,
1144
+ module: 'waterx_prediction',
1145
+ function: 'order_selection',
1146
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1147
+ typeArguments: options.typeArguments
1148
+ });
1149
+ }
1150
+ export function orderPositionId(options) {
1151
+ const packageAddress = options.package ?? '@waterx/prediction';
1152
+ const argumentsTypes = [
1153
+ null,
1154
+ 'u64'
1155
+ ];
1156
+ const parameterNames = ["marketRegistry", "orderId"];
1157
+ return (tx) => tx.moveCall({
1158
+ package: packageAddress,
1159
+ module: 'waterx_prediction',
1160
+ function: 'order_position_id',
1161
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1162
+ typeArguments: options.typeArguments
1163
+ });
1164
+ }
1165
+ export function orderMaxSpend(options) {
1166
+ const packageAddress = options.package ?? '@waterx/prediction';
1167
+ const argumentsTypes = [
1168
+ null,
1169
+ 'u64'
1170
+ ];
1171
+ const parameterNames = ["marketRegistry", "orderId"];
1172
+ return (tx) => tx.moveCall({
1173
+ package: packageAddress,
1174
+ module: 'waterx_prediction',
1175
+ function: 'order_max_spend',
1176
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1177
+ typeArguments: options.typeArguments
1178
+ });
1179
+ }
1180
+ export function orderMinShares(options) {
1181
+ const packageAddress = options.package ?? '@waterx/prediction';
1182
+ const argumentsTypes = [
1183
+ null,
1184
+ 'u64'
1185
+ ];
1186
+ const parameterNames = ["marketRegistry", "orderId"];
1187
+ return (tx) => tx.moveCall({
1188
+ package: packageAddress,
1189
+ module: 'waterx_prediction',
1190
+ function: 'order_min_shares',
1191
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1192
+ typeArguments: options.typeArguments
1193
+ });
1194
+ }
1195
+ export function orderPriceCap(options) {
1196
+ const packageAddress = options.package ?? '@waterx/prediction';
1197
+ const argumentsTypes = [
1198
+ null,
1199
+ 'u64'
1200
+ ];
1201
+ const parameterNames = ["marketRegistry", "orderId"];
1202
+ return (tx) => tx.moveCall({
1203
+ package: packageAddress,
1204
+ module: 'waterx_prediction',
1205
+ function: 'order_price_cap',
1206
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1207
+ typeArguments: options.typeArguments
1208
+ });
1209
+ }
1210
+ export function orderMinProceeds(options) {
1211
+ const packageAddress = options.package ?? '@waterx/prediction';
1212
+ const argumentsTypes = [
1213
+ null,
1214
+ 'u64'
1215
+ ];
1216
+ const parameterNames = ["marketRegistry", "orderId"];
1217
+ return (tx) => tx.moveCall({
1218
+ package: packageAddress,
1219
+ module: 'waterx_prediction',
1220
+ function: 'order_min_proceeds',
1221
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1222
+ typeArguments: options.typeArguments
1223
+ });
1224
+ }
1225
+ export function orderExpiry(options) {
1226
+ const packageAddress = options.package ?? '@waterx/prediction';
1227
+ const argumentsTypes = [
1228
+ null,
1229
+ 'u64'
1230
+ ];
1231
+ const parameterNames = ["marketRegistry", "orderId"];
1232
+ return (tx) => tx.moveCall({
1233
+ package: packageAddress,
1234
+ module: 'waterx_prediction',
1235
+ function: 'order_expiry',
1236
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1237
+ typeArguments: options.typeArguments
1238
+ });
1239
+ }
1240
+ export function orderSelfCancelAfterTs(options) {
1241
+ const packageAddress = options.package ?? '@waterx/prediction';
1242
+ const argumentsTypes = [
1243
+ null,
1244
+ 'u64'
1245
+ ];
1246
+ const parameterNames = ["marketRegistry", "orderId"];
1247
+ return (tx) => tx.moveCall({
1248
+ package: packageAddress,
1249
+ module: 'waterx_prediction',
1250
+ function: 'order_self_cancel_after_ts',
1251
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1252
+ typeArguments: options.typeArguments
1253
+ });
1254
+ }
1255
+ export function orderCreatedTs(options) {
1256
+ const packageAddress = options.package ?? '@waterx/prediction';
1257
+ const argumentsTypes = [
1258
+ null,
1259
+ 'u64'
1260
+ ];
1261
+ const parameterNames = ["marketRegistry", "orderId"];
1262
+ return (tx) => tx.moveCall({
1263
+ package: packageAddress,
1264
+ module: 'waterx_prediction',
1265
+ function: 'order_created_ts',
1266
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1267
+ typeArguments: options.typeArguments
1268
+ });
1269
+ }
1270
+ export function orderIsByAdmin(options) {
1271
+ const packageAddress = options.package ?? '@waterx/prediction';
1272
+ const argumentsTypes = [
1273
+ null,
1274
+ 'u64'
1275
+ ];
1276
+ const parameterNames = ["marketRegistry", "orderId"];
1277
+ return (tx) => tx.moveCall({
1278
+ package: packageAddress,
1279
+ module: 'waterx_prediction',
1280
+ function: 'order_is_by_admin',
1281
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1282
+ typeArguments: options.typeArguments
1283
+ });
1284
+ }
1285
+ export function positions(options) {
1286
+ const packageAddress = options.package ?? '@waterx/prediction';
1287
+ const argumentsTypes = [
1288
+ null
1289
+ ];
1290
+ const parameterNames = ["marketRegistry"];
1291
+ return (tx) => tx.moveCall({
1292
+ package: packageAddress,
1293
+ module: 'waterx_prediction',
1294
+ function: 'positions',
1295
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1296
+ typeArguments: options.typeArguments
1297
+ });
1298
+ }
1299
+ export function positionCount(options) {
1300
+ const packageAddress = options.package ?? '@waterx/prediction';
1301
+ const argumentsTypes = [
1302
+ null
1303
+ ];
1304
+ const parameterNames = ["marketRegistry"];
1305
+ return (tx) => tx.moveCall({
1306
+ package: packageAddress,
1307
+ module: 'waterx_prediction',
1308
+ function: 'position_count',
1309
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1310
+ typeArguments: options.typeArguments
1311
+ });
1312
+ }
1313
+ export function positionKeyAt(options) {
1314
+ const packageAddress = options.package ?? '@waterx/prediction';
1315
+ const argumentsTypes = [
1316
+ null,
1317
+ 'u64'
1318
+ ];
1319
+ const parameterNames = ["marketRegistry", "index"];
1320
+ return (tx) => tx.moveCall({
1321
+ package: packageAddress,
1322
+ module: 'waterx_prediction',
1323
+ function: 'position_key_at',
1324
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1325
+ typeArguments: options.typeArguments
1326
+ });
1327
+ }
1328
+ export function positionFront(options) {
1329
+ const packageAddress = options.package ?? '@waterx/prediction';
1330
+ const argumentsTypes = [
1331
+ null
1332
+ ];
1333
+ const parameterNames = ["marketRegistry"];
1334
+ return (tx) => tx.moveCall({
1335
+ package: packageAddress,
1336
+ module: 'waterx_prediction',
1337
+ function: 'position_front',
1338
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1339
+ typeArguments: options.typeArguments
1340
+ });
1341
+ }
1342
+ export function positionBack(options) {
1343
+ const packageAddress = options.package ?? '@waterx/prediction';
1344
+ const argumentsTypes = [
1345
+ null
1346
+ ];
1347
+ const parameterNames = ["marketRegistry"];
1348
+ return (tx) => tx.moveCall({
1349
+ package: packageAddress,
1350
+ module: 'waterx_prediction',
1351
+ function: 'position_back',
1352
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1353
+ typeArguments: options.typeArguments
1354
+ });
1355
+ }
1356
+ export function positionNext(options) {
1357
+ const packageAddress = options.package ?? '@waterx/prediction';
1358
+ const argumentsTypes = [
1359
+ null,
1360
+ 'u64'
1361
+ ];
1362
+ const parameterNames = ["marketRegistry", "positionId"];
1363
+ return (tx) => tx.moveCall({
1364
+ package: packageAddress,
1365
+ module: 'waterx_prediction',
1366
+ function: 'position_next',
1367
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1368
+ typeArguments: options.typeArguments
1369
+ });
1370
+ }
1371
+ export function positionPrev(options) {
1372
+ const packageAddress = options.package ?? '@waterx/prediction';
1373
+ const argumentsTypes = [
1374
+ null,
1375
+ 'u64'
1376
+ ];
1377
+ const parameterNames = ["marketRegistry", "positionId"];
1378
+ return (tx) => tx.moveCall({
1379
+ package: packageAddress,
1380
+ module: 'waterx_prediction',
1381
+ function: 'position_prev',
1382
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1383
+ typeArguments: options.typeArguments
1384
+ });
1385
+ }
1386
+ export function marketCount(options) {
1387
+ const packageAddress = options.package ?? '@waterx/prediction';
1388
+ const argumentsTypes = [
1389
+ null
1390
+ ];
1391
+ const parameterNames = ["marketRegistry"];
1392
+ return (tx) => tx.moveCall({
1393
+ package: packageAddress,
1394
+ module: 'waterx_prediction',
1395
+ function: 'market_count',
1396
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1397
+ typeArguments: options.typeArguments
1398
+ });
1399
+ }
1400
+ export function marketKey(options) {
1401
+ const packageAddress = options.package ?? '@waterx/prediction';
1402
+ const argumentsTypes = [
1403
+ null,
1404
+ 'vector<u8>'
1405
+ ];
1406
+ const parameterNames = ["marketRegistry", "marketId"];
1407
+ return (tx) => tx.moveCall({
1408
+ package: packageAddress,
1409
+ module: 'waterx_prediction',
1410
+ function: 'market_key',
1411
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1412
+ typeArguments: options.typeArguments
1413
+ });
1414
+ }
1415
+ /**
1416
+ * Compatibility helper for indexed reads. Returns unresolved market keys first,
1417
+ * then resolved market keys. Prefer the linked-table cursor helpers for canonical
1418
+ * traversal.
1419
+ */
1420
+ export function marketKeyAt(options) {
1421
+ const packageAddress = options.package ?? '@waterx/prediction';
1422
+ const argumentsTypes = [
1423
+ null,
1424
+ 'u64'
1425
+ ];
1426
+ const parameterNames = ["marketRegistry", "index"];
1427
+ return (tx) => tx.moveCall({
1428
+ package: packageAddress,
1429
+ module: 'waterx_prediction',
1430
+ function: 'market_key_at',
1431
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1432
+ typeArguments: options.typeArguments
1433
+ });
1434
+ }
1435
+ export function marketIdByKey(options) {
1436
+ const packageAddress = options.package ?? '@waterx/prediction';
1437
+ const argumentsTypes = [
1438
+ null,
1439
+ 'u64'
1440
+ ];
1441
+ const parameterNames = ["marketRegistry", "marketKey"];
1442
+ return (tx) => tx.moveCall({
1443
+ package: packageAddress,
1444
+ module: 'waterx_prediction',
1445
+ function: 'market_id_by_key',
1446
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1447
+ typeArguments: options.typeArguments
1448
+ });
1449
+ }
1450
+ export function marketExistsByKey(options) {
1451
+ const packageAddress = options.package ?? '@waterx/prediction';
1452
+ const argumentsTypes = [
1453
+ null,
1454
+ 'u64'
1455
+ ];
1456
+ const parameterNames = ["marketRegistry", "marketKey"];
1457
+ return (tx) => tx.moveCall({
1458
+ package: packageAddress,
1459
+ module: 'waterx_prediction',
1460
+ function: 'market_exists_by_key',
1461
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1462
+ typeArguments: options.typeArguments
1463
+ });
1464
+ }
1465
+ export function marketIsResolvedByKey(options) {
1466
+ const packageAddress = options.package ?? '@waterx/prediction';
1467
+ const argumentsTypes = [
1468
+ null,
1469
+ 'u64'
1470
+ ];
1471
+ const parameterNames = ["marketRegistry", "marketKey"];
1472
+ return (tx) => tx.moveCall({
1473
+ package: packageAddress,
1474
+ module: 'waterx_prediction',
1475
+ function: 'market_is_resolved_by_key',
1476
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1477
+ typeArguments: options.typeArguments
1478
+ });
1479
+ }
1480
+ export function marketUnclaimedCountByKey(options) {
1481
+ const packageAddress = options.package ?? '@waterx/prediction';
1482
+ const argumentsTypes = [
1483
+ null,
1484
+ 'u64'
1485
+ ];
1486
+ const parameterNames = ["marketRegistry", "marketKey"];
1487
+ return (tx) => tx.moveCall({
1488
+ package: packageAddress,
1489
+ module: 'waterx_prediction',
1490
+ function: 'market_unclaimed_count_by_key',
1491
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1492
+ typeArguments: options.typeArguments
1493
+ });
1494
+ }
1495
+ export function marketExposureByKey(options) {
1496
+ const packageAddress = options.package ?? '@waterx/prediction';
1497
+ const argumentsTypes = [
1498
+ null,
1499
+ 'u64'
1500
+ ];
1501
+ const parameterNames = ["marketRegistry", "marketKey"];
1502
+ return (tx) => tx.moveCall({
1503
+ package: packageAddress,
1504
+ module: 'waterx_prediction',
1505
+ function: 'market_exposure_by_key',
1506
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1507
+ typeArguments: options.typeArguments
1508
+ });
1509
+ }
1510
+ export function unresolvedMarkets(options) {
1511
+ const packageAddress = options.package ?? '@waterx/prediction';
1512
+ const argumentsTypes = [
1513
+ null
1514
+ ];
1515
+ const parameterNames = ["marketRegistry"];
1516
+ return (tx) => tx.moveCall({
1517
+ package: packageAddress,
1518
+ module: 'waterx_prediction',
1519
+ function: 'unresolved_markets',
1520
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1521
+ typeArguments: options.typeArguments
1522
+ });
1523
+ }
1524
+ export function resolvedMarkets(options) {
1525
+ const packageAddress = options.package ?? '@waterx/prediction';
1526
+ const argumentsTypes = [
1527
+ null
1528
+ ];
1529
+ const parameterNames = ["marketRegistry"];
1530
+ return (tx) => tx.moveCall({
1531
+ package: packageAddress,
1532
+ module: 'waterx_prediction',
1533
+ function: 'resolved_markets',
1534
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1535
+ typeArguments: options.typeArguments
1536
+ });
1537
+ }
1538
+ export function unresolvedMarketCount(options) {
1539
+ const packageAddress = options.package ?? '@waterx/prediction';
1540
+ const argumentsTypes = [
1541
+ null
1542
+ ];
1543
+ const parameterNames = ["marketRegistry"];
1544
+ return (tx) => tx.moveCall({
1545
+ package: packageAddress,
1546
+ module: 'waterx_prediction',
1547
+ function: 'unresolved_market_count',
1548
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1549
+ typeArguments: options.typeArguments
1550
+ });
1551
+ }
1552
+ export function resolvedMarketCount(options) {
1553
+ const packageAddress = options.package ?? '@waterx/prediction';
1554
+ const argumentsTypes = [
1555
+ null
1556
+ ];
1557
+ const parameterNames = ["marketRegistry"];
1558
+ return (tx) => tx.moveCall({
1559
+ package: packageAddress,
1560
+ module: 'waterx_prediction',
1561
+ function: 'resolved_market_count',
1562
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1563
+ typeArguments: options.typeArguments
1564
+ });
1565
+ }
1566
+ export function unresolvedMarketFront(options) {
1567
+ const packageAddress = options.package ?? '@waterx/prediction';
1568
+ const argumentsTypes = [
1569
+ null
1570
+ ];
1571
+ const parameterNames = ["marketRegistry"];
1572
+ return (tx) => tx.moveCall({
1573
+ package: packageAddress,
1574
+ module: 'waterx_prediction',
1575
+ function: 'unresolved_market_front',
1576
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1577
+ typeArguments: options.typeArguments
1578
+ });
1579
+ }
1580
+ export function unresolvedMarketBack(options) {
1581
+ const packageAddress = options.package ?? '@waterx/prediction';
1582
+ const argumentsTypes = [
1583
+ null
1584
+ ];
1585
+ const parameterNames = ["marketRegistry"];
1586
+ return (tx) => tx.moveCall({
1587
+ package: packageAddress,
1588
+ module: 'waterx_prediction',
1589
+ function: 'unresolved_market_back',
1590
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1591
+ typeArguments: options.typeArguments
1592
+ });
1593
+ }
1594
+ export function resolvedMarketFront(options) {
1595
+ const packageAddress = options.package ?? '@waterx/prediction';
1596
+ const argumentsTypes = [
1597
+ null
1598
+ ];
1599
+ const parameterNames = ["marketRegistry"];
1600
+ return (tx) => tx.moveCall({
1601
+ package: packageAddress,
1602
+ module: 'waterx_prediction',
1603
+ function: 'resolved_market_front',
1604
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1605
+ typeArguments: options.typeArguments
1606
+ });
1607
+ }
1608
+ export function resolvedMarketBack(options) {
1609
+ const packageAddress = options.package ?? '@waterx/prediction';
1610
+ const argumentsTypes = [
1611
+ null
1612
+ ];
1613
+ const parameterNames = ["marketRegistry"];
1614
+ return (tx) => tx.moveCall({
1615
+ package: packageAddress,
1616
+ module: 'waterx_prediction',
1617
+ function: 'resolved_market_back',
1618
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1619
+ typeArguments: options.typeArguments
1620
+ });
1621
+ }
1622
+ export function unresolvedMarketNext(options) {
1623
+ const packageAddress = options.package ?? '@waterx/prediction';
1624
+ const argumentsTypes = [
1625
+ null,
1626
+ 'u64'
1627
+ ];
1628
+ const parameterNames = ["marketRegistry", "marketKey"];
1629
+ return (tx) => tx.moveCall({
1630
+ package: packageAddress,
1631
+ module: 'waterx_prediction',
1632
+ function: 'unresolved_market_next',
1633
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1634
+ typeArguments: options.typeArguments
1635
+ });
1636
+ }
1637
+ export function unresolvedMarketPrev(options) {
1638
+ const packageAddress = options.package ?? '@waterx/prediction';
1639
+ const argumentsTypes = [
1640
+ null,
1641
+ 'u64'
1642
+ ];
1643
+ const parameterNames = ["marketRegistry", "marketKey"];
1644
+ return (tx) => tx.moveCall({
1645
+ package: packageAddress,
1646
+ module: 'waterx_prediction',
1647
+ function: 'unresolved_market_prev',
1648
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1649
+ typeArguments: options.typeArguments
1650
+ });
1651
+ }
1652
+ export function resolvedMarketNext(options) {
1653
+ const packageAddress = options.package ?? '@waterx/prediction';
1654
+ const argumentsTypes = [
1655
+ null,
1656
+ 'u64'
1657
+ ];
1658
+ const parameterNames = ["marketRegistry", "marketKey"];
1659
+ return (tx) => tx.moveCall({
1660
+ package: packageAddress,
1661
+ module: 'waterx_prediction',
1662
+ function: 'resolved_market_next',
1663
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1664
+ typeArguments: options.typeArguments
1665
+ });
1666
+ }
1667
+ export function resolvedMarketPrev(options) {
1668
+ const packageAddress = options.package ?? '@waterx/prediction';
1669
+ const argumentsTypes = [
1670
+ null,
1671
+ 'u64'
1672
+ ];
1673
+ const parameterNames = ["marketRegistry", "marketKey"];
1674
+ return (tx) => tx.moveCall({
1675
+ package: packageAddress,
1676
+ module: 'waterx_prediction',
1677
+ function: 'resolved_market_prev',
1678
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1679
+ typeArguments: options.typeArguments
1680
+ });
1681
+ }
1682
+ export function statusIsOpen(options) {
1683
+ const packageAddress = options.package ?? '@waterx/prediction';
1684
+ const argumentsTypes = [
1685
+ null
1686
+ ];
1687
+ const parameterNames = ["s"];
1688
+ return (tx) => tx.moveCall({
1689
+ package: packageAddress,
1690
+ module: 'waterx_prediction',
1691
+ function: 'status_is_open',
1692
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1693
+ });
1694
+ }
1695
+ export function statusIsPendingClose(options) {
1696
+ const packageAddress = options.package ?? '@waterx/prediction';
1697
+ const argumentsTypes = [
1698
+ null
1699
+ ];
1700
+ const parameterNames = ["s"];
1701
+ return (tx) => tx.moveCall({
1702
+ package: packageAddress,
1703
+ module: 'waterx_prediction',
1704
+ function: 'status_is_pending_close',
1705
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1706
+ });
1707
+ }
1708
+ export function orderKindIsOpen(options) {
1709
+ const packageAddress = options.package ?? '@waterx/prediction';
1710
+ const argumentsTypes = [
1711
+ null
1712
+ ];
1713
+ const parameterNames = ["kind"];
1714
+ return (tx) => tx.moveCall({
1715
+ package: packageAddress,
1716
+ module: 'waterx_prediction',
1717
+ function: 'order_kind_is_open',
1718
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1719
+ });
1720
+ }
1721
+ export function orderKindIsClose(options) {
1722
+ const packageAddress = options.package ?? '@waterx/prediction';
1723
+ const argumentsTypes = [
1724
+ null
1725
+ ];
1726
+ const parameterNames = ["kind"];
1727
+ return (tx) => tx.moveCall({
1728
+ package: packageAddress,
1729
+ module: 'waterx_prediction',
1730
+ function: 'order_kind_is_close',
1731
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
1732
+ });
1733
+ }