@reiy-finance/contracts-sdk 0.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 (74) hide show
  1. package/README.md +41 -0
  2. package/dist/deployments.d.ts +7 -0
  3. package/dist/deployments.d.ts.map +1 -0
  4. package/dist/deployments.js +8 -0
  5. package/dist/deployments.js.map +1 -0
  6. package/dist/generated/reiy/auction.d.ts +566 -0
  7. package/dist/generated/reiy/auction.d.ts.map +1 -0
  8. package/dist/generated/reiy/auction.js +266 -0
  9. package/dist/generated/reiy/auction.js.map +1 -0
  10. package/dist/generated/reiy/config.d.ts +739 -0
  11. package/dist/generated/reiy/config.d.ts.map +1 -0
  12. package/dist/generated/reiy/config.js +793 -0
  13. package/dist/generated/reiy/config.js.map +1 -0
  14. package/dist/generated/reiy/deps/std/type_name.d.ts +18 -0
  15. package/dist/generated/reiy/deps/std/type_name.d.ts.map +1 -0
  16. package/dist/generated/reiy/deps/std/type_name.js +20 -0
  17. package/dist/generated/reiy/deps/std/type_name.js.map +1 -0
  18. package/dist/generated/reiy/deps/sui/balance.d.ts +13 -0
  19. package/dist/generated/reiy/deps/sui/balance.d.ts.map +1 -0
  20. package/dist/generated/reiy/deps/sui/balance.js +15 -0
  21. package/dist/generated/reiy/deps/sui/balance.js.map +1 -0
  22. package/dist/generated/reiy/deps/sui/table.d.ts +30 -0
  23. package/dist/generated/reiy/deps/sui/table.d.ts.map +1 -0
  24. package/dist/generated/reiy/deps/sui/table.js +32 -0
  25. package/dist/generated/reiy/deps/sui/table.js.map +1 -0
  26. package/dist/generated/reiy/deps/sui/vec_map.d.ts +37 -0
  27. package/dist/generated/reiy/deps/sui/vec_map.d.ts.map +1 -0
  28. package/dist/generated/reiy/deps/sui/vec_map.js +28 -0
  29. package/dist/generated/reiy/deps/sui/vec_map.js.map +1 -0
  30. package/dist/generated/reiy/deps/sui/vec_set.d.ts +21 -0
  31. package/dist/generated/reiy/deps/sui/vec_set.d.ts.map +1 -0
  32. package/dist/generated/reiy/deps/sui/vec_set.js +20 -0
  33. package/dist/generated/reiy/deps/sui/vec_set.js.map +1 -0
  34. package/dist/generated/reiy/events.d.ts +156 -0
  35. package/dist/generated/reiy/events.d.ts.map +1 -0
  36. package/dist/generated/reiy/events.js +154 -0
  37. package/dist/generated/reiy/events.js.map +1 -0
  38. package/dist/generated/reiy/intent_book.d.ts +267 -0
  39. package/dist/generated/reiy/intent_book.d.ts.map +1 -0
  40. package/dist/generated/reiy/intent_book.js +263 -0
  41. package/dist/generated/reiy/intent_book.js.map +1 -0
  42. package/dist/generated/reiy/math.d.ts +120 -0
  43. package/dist/generated/reiy/math.d.ts.map +1 -0
  44. package/dist/generated/reiy/math.js +133 -0
  45. package/dist/generated/reiy/math.js.map +1 -0
  46. package/dist/generated/reiy/price_adapter.d.ts +131 -0
  47. package/dist/generated/reiy/price_adapter.d.ts.map +1 -0
  48. package/dist/generated/reiy/price_adapter.js +145 -0
  49. package/dist/generated/reiy/price_adapter.js.map +1 -0
  50. package/dist/generated/reiy/settlement.d.ts +167 -0
  51. package/dist/generated/reiy/settlement.d.ts.map +1 -0
  52. package/dist/generated/reiy/settlement.js +153 -0
  53. package/dist/generated/reiy/settlement.js.map +1 -0
  54. package/dist/generated/reiy/solver_registry.d.ts +142 -0
  55. package/dist/generated/reiy/solver_registry.d.ts.map +1 -0
  56. package/dist/generated/reiy/solver_registry.js +150 -0
  57. package/dist/generated/reiy/solver_registry.js.map +1 -0
  58. package/dist/generated/reiy/treasury.d.ts +59 -0
  59. package/dist/generated/reiy/treasury.d.ts.map +1 -0
  60. package/dist/generated/reiy/treasury.js +62 -0
  61. package/dist/generated/reiy/treasury.js.map +1 -0
  62. package/dist/generated/reiy/types.d.ts +67 -0
  63. package/dist/generated/reiy/types.d.ts.map +1 -0
  64. package/dist/generated/reiy/types.js +76 -0
  65. package/dist/generated/reiy/types.js.map +1 -0
  66. package/dist/generated/utils/index.d.ts +31 -0
  67. package/dist/generated/utils/index.d.ts.map +1 -0
  68. package/dist/generated/utils/index.js +159 -0
  69. package/dist/generated/utils/index.js.map +1 -0
  70. package/dist/index.d.ts +12 -0
  71. package/dist/index.d.ts.map +1 -0
  72. package/dist/index.js +12 -0
  73. package/dist/index.js.map +1 -0
  74. package/package.json +45 -0
@@ -0,0 +1,266 @@
1
+ /**************************************************************
2
+ * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
3
+ **************************************************************/
4
+ /**
5
+ * Auction state machine: phases, Bid / PairBenchmark / Allocation registries, and
6
+ * winner selection.
7
+ */
8
+ import { MoveStruct, MoveEnum, normalizeMoveArguments } from '../utils/index.js';
9
+ import { bcs } from '@mysten/sui/bcs';
10
+ import {} from '@mysten/sui/transactions';
11
+ import * as types from './types.js';
12
+ import * as types_1 from './types.js';
13
+ import * as vec_set from './deps/sui/vec_set.js';
14
+ import * as vec_map from './deps/sui/vec_map.js';
15
+ import * as vec_set_1 from './deps/sui/vec_set.js';
16
+ import * as vec_map_1 from './deps/sui/vec_map.js';
17
+ import * as vec_map_2 from './deps/sui/vec_map.js';
18
+ import * as types_2 from './types.js';
19
+ import * as vec_set_2 from './deps/sui/vec_set.js';
20
+ import * as vec_map_3 from './deps/sui/vec_map.js';
21
+ import * as vec_map_4 from './deps/sui/vec_map.js';
22
+ import * as vec_map_5 from './deps/sui/vec_map.js';
23
+ import * as types_3 from './types.js';
24
+ import * as vec_map_6 from './deps/sui/vec_map.js';
25
+ import * as types_4 from './types.js';
26
+ import * as vec_set_3 from './deps/sui/vec_set.js';
27
+ import * as vec_map_7 from './deps/sui/vec_map.js';
28
+ const $moduleName = '@local-pkg/reiy::auction';
29
+ export const IntentMeta = new MoveStruct({ name: `${$moduleName}::IntentMeta`, fields: {
30
+ pair: types.PairKey,
31
+ min_amount_out: bcs.u64(),
32
+ sell_amount: bcs.u64(),
33
+ partial_fillable: bcs.bool(),
34
+ deadline: bcs.u64()
35
+ } });
36
+ export const Bid = new MoveStruct({ name: `${$moduleName}::Bid`, fields: {
37
+ solver: bcs.Address,
38
+ intents: bcs.vector(bcs.Address),
39
+ fills: bcs.vector(bcs.u64()),
40
+ payouts: bcs.vector(bcs.u64()),
41
+ m_effs: bcs.vector(bcs.u64()),
42
+ pairs: bcs.vector(types_1.PairKey),
43
+ is_multi: bcs.bool(),
44
+ score: bcs.u64(),
45
+ bond_locked: bcs.u64()
46
+ } });
47
+ export const BenchmarkEntry = new MoveStruct({ name: `${$moduleName}::BenchmarkEntry`, fields: {
48
+ auctioneer: bcs.Address,
49
+ total_score: bcs.u64(),
50
+ intents: bcs.vector(bcs.Address),
51
+ payouts: bcs.vector(bcs.u64())
52
+ } });
53
+ export const Allocation = new MoveStruct({ name: `${$moduleName}::Allocation`, fields: {
54
+ auctioneer: bcs.Address,
55
+ bid_seqs: bcs.vector(bcs.u64()),
56
+ total_score: bcs.u64(),
57
+ bond_locked: bcs.u64()
58
+ } });
59
+ export const RatioRef = new MoveStruct({ name: `${$moduleName}::RatioRef`, fields: {
60
+ floor_ref: bcs.u64(),
61
+ payout_ref: bcs.u64()
62
+ } });
63
+ export const AuctionPhase = new MoveEnum({ name: `${$moduleName}::AuctionPhase`, fields: {
64
+ IntentCollection: null,
65
+ Bid: null,
66
+ AllocationSelection: null,
67
+ Settlement: null,
68
+ Close: null,
69
+ Aborted: null,
70
+ Failed: null
71
+ } });
72
+ export const AuctionState = new MoveStruct({ name: `${$moduleName}::AuctionState`, fields: {
73
+ id: bcs.Address,
74
+ current_epoch: bcs.u64(),
75
+ phase: AuctionPhase,
76
+ phase_end_ms: bcs.u64(),
77
+ settlement_deadline_ms: bcs.u64(),
78
+ next_epoch_open_after_ms: bcs.u64(),
79
+ batch: vec_set.VecSet(bcs.Address),
80
+ intent_meta: vec_map.VecMap(bcs.Address, IntentMeta),
81
+ requeued: vec_set_1.VecSet(bcs.Address),
82
+ requeue_meta: vec_map_1.VecMap(bcs.Address, IntentMeta),
83
+ bids: bcs.vector(Bid),
84
+ pair_benchmarks: vec_map_2.VecMap(types_2.PairKey, BenchmarkEntry),
85
+ allocations: bcs.vector(Allocation),
86
+ winner_selected: bcs.bool(),
87
+ winner_is_fallback: bcs.bool(),
88
+ winner_intents: vec_set_2.VecSet(bcs.Address),
89
+ winner_solver_of: vec_map_3.VecMap(bcs.Address, bcs.Address),
90
+ intent_floor: vec_map_4.VecMap(bcs.Address, bcs.u64()),
91
+ committed_total_score: bcs.u64(),
92
+ committed_k_by_pair: vec_map_5.VecMap(types_3.PairKey, bcs.u64()),
93
+ current_epoch_score_surplus: bcs.u64(),
94
+ settled_intent_count: bcs.u64(),
95
+ settled_score_value_sum: bcs.u64(),
96
+ pair_ratio_refs: vec_map_6.VecMap(types_4.PairKey, RatioRef),
97
+ intent_settled: vec_set_3.VecSet(bcs.Address),
98
+ solver_actual_score: vec_map_7.VecMap(bcs.Address, bcs.u64())
99
+ } });
100
+ export function currentEpoch(options) {
101
+ const packageAddress = options.package ?? '@local-pkg/reiy';
102
+ const argumentsTypes = [
103
+ null
104
+ ];
105
+ const parameterNames = ["s"];
106
+ return (tx) => tx.moveCall({
107
+ package: packageAddress,
108
+ module: 'auction',
109
+ function: 'current_epoch',
110
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
111
+ });
112
+ }
113
+ export function phaseCode(options) {
114
+ const packageAddress = options.package ?? '@local-pkg/reiy';
115
+ const argumentsTypes = [
116
+ null
117
+ ];
118
+ const parameterNames = ["s"];
119
+ return (tx) => tx.moveCall({
120
+ package: packageAddress,
121
+ module: 'auction',
122
+ function: 'phase_code',
123
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
124
+ });
125
+ }
126
+ export function isSettlement(options) {
127
+ const packageAddress = options.package ?? '@local-pkg/reiy';
128
+ const argumentsTypes = [
129
+ null
130
+ ];
131
+ const parameterNames = ["s"];
132
+ return (tx) => tx.moveCall({
133
+ package: packageAddress,
134
+ module: 'auction',
135
+ function: 'is_settlement',
136
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
137
+ });
138
+ }
139
+ /** Submit an intent selling the pool's BASE token to buy its QUOTE token. */
140
+ export function submitIntentSellBase(options) {
141
+ const packageAddress = options.package ?? '@local-pkg/reiy';
142
+ const argumentsTypes = [
143
+ null,
144
+ null,
145
+ null,
146
+ null,
147
+ 'u64',
148
+ 'u64',
149
+ 'bool',
150
+ 'u64',
151
+ '0x2::clock::Clock'
152
+ ];
153
+ const parameterNames = ["state", "config", "pool", "coin", "minAmountOut", "slippageToleranceBps", "partialFillable", "deadline"];
154
+ return (tx) => tx.moveCall({
155
+ package: packageAddress,
156
+ module: 'auction',
157
+ function: 'submit_intent_sell_base',
158
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
159
+ typeArguments: options.typeArguments
160
+ });
161
+ }
162
+ /** Submit an intent selling the pool's QUOTE token to buy its BASE token. */
163
+ export function submitIntentSellQuote(options) {
164
+ const packageAddress = options.package ?? '@local-pkg/reiy';
165
+ const argumentsTypes = [
166
+ null,
167
+ null,
168
+ null,
169
+ null,
170
+ 'u64',
171
+ 'u64',
172
+ 'bool',
173
+ 'u64',
174
+ '0x2::clock::Clock'
175
+ ];
176
+ const parameterNames = ["state", "config", "pool", "coin", "minAmountOut", "slippageToleranceBps", "partialFillable", "deadline"];
177
+ return (tx) => tx.moveCall({
178
+ package: packageAddress,
179
+ module: 'auction',
180
+ function: 'submit_intent_sell_quote',
181
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
182
+ typeArguments: options.typeArguments
183
+ });
184
+ }
185
+ export function cancelIntent(options) {
186
+ const packageAddress = options.package ?? '@local-pkg/reiy';
187
+ const argumentsTypes = [
188
+ null,
189
+ null
190
+ ];
191
+ const parameterNames = ["state", "intent"];
192
+ return (tx) => tx.moveCall({
193
+ package: packageAddress,
194
+ module: 'auction',
195
+ function: 'cancel_intent',
196
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
197
+ typeArguments: options.typeArguments
198
+ });
199
+ }
200
+ export function advancePhase(options) {
201
+ const packageAddress = options.package ?? '@local-pkg/reiy';
202
+ const argumentsTypes = [
203
+ null,
204
+ null,
205
+ '0x2::clock::Clock'
206
+ ];
207
+ const parameterNames = ["state", "config"];
208
+ return (tx) => tx.moveCall({
209
+ package: packageAddress,
210
+ module: 'auction',
211
+ function: 'advance_phase',
212
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
213
+ });
214
+ }
215
+ export function submitBid(options) {
216
+ const packageAddress = options.package ?? '@local-pkg/reiy';
217
+ const argumentsTypes = [
218
+ null,
219
+ null,
220
+ null,
221
+ 'vector<0x2::object::ID>',
222
+ 'vector<u64>',
223
+ 'vector<u64>',
224
+ 'bool',
225
+ 'u64'
226
+ ];
227
+ const parameterNames = ["state", "registry", "config", "intentIds", "fills", "payouts", "declaredMulti", "score"];
228
+ return (tx) => tx.moveCall({
229
+ package: packageAddress,
230
+ module: 'auction',
231
+ function: 'submit_bid',
232
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
233
+ });
234
+ }
235
+ export function submitPairBenchmark(options) {
236
+ const packageAddress = options.package ?? '@local-pkg/reiy';
237
+ const argumentsTypes = [
238
+ null,
239
+ 'vector<u64>'
240
+ ];
241
+ const parameterNames = ["state", "bidSeqs"];
242
+ return (tx) => tx.moveCall({
243
+ package: packageAddress,
244
+ module: 'auction',
245
+ function: 'submit_pair_benchmark',
246
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
247
+ });
248
+ }
249
+ export function submitAllocation(options) {
250
+ const packageAddress = options.package ?? '@local-pkg/reiy';
251
+ const argumentsTypes = [
252
+ null,
253
+ null,
254
+ 'vector<u64>',
255
+ 'u64',
256
+ 'u64'
257
+ ];
258
+ const parameterNames = ["state", "config", "bidSeqs", "totalScore", "bond"];
259
+ return (tx) => tx.moveCall({
260
+ package: packageAddress,
261
+ module: 'auction',
262
+ function: 'submit_allocation',
263
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
264
+ });
265
+ }
266
+ //# sourceMappingURL=auction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auction.js","sourceRoot":"","sources":["../../../src/generated/reiy/auction.ts"],"names":[],"mappings":"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"}