@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.
- package/README.md +41 -0
- package/dist/deployments.d.ts +7 -0
- package/dist/deployments.d.ts.map +1 -0
- package/dist/deployments.js +8 -0
- package/dist/deployments.js.map +1 -0
- package/dist/generated/reiy/auction.d.ts +566 -0
- package/dist/generated/reiy/auction.d.ts.map +1 -0
- package/dist/generated/reiy/auction.js +266 -0
- package/dist/generated/reiy/auction.js.map +1 -0
- package/dist/generated/reiy/config.d.ts +739 -0
- package/dist/generated/reiy/config.d.ts.map +1 -0
- package/dist/generated/reiy/config.js +793 -0
- package/dist/generated/reiy/config.js.map +1 -0
- package/dist/generated/reiy/deps/std/type_name.d.ts +18 -0
- package/dist/generated/reiy/deps/std/type_name.d.ts.map +1 -0
- package/dist/generated/reiy/deps/std/type_name.js +20 -0
- package/dist/generated/reiy/deps/std/type_name.js.map +1 -0
- package/dist/generated/reiy/deps/sui/balance.d.ts +13 -0
- package/dist/generated/reiy/deps/sui/balance.d.ts.map +1 -0
- package/dist/generated/reiy/deps/sui/balance.js +15 -0
- package/dist/generated/reiy/deps/sui/balance.js.map +1 -0
- package/dist/generated/reiy/deps/sui/table.d.ts +30 -0
- package/dist/generated/reiy/deps/sui/table.d.ts.map +1 -0
- package/dist/generated/reiy/deps/sui/table.js +32 -0
- package/dist/generated/reiy/deps/sui/table.js.map +1 -0
- package/dist/generated/reiy/deps/sui/vec_map.d.ts +37 -0
- package/dist/generated/reiy/deps/sui/vec_map.d.ts.map +1 -0
- package/dist/generated/reiy/deps/sui/vec_map.js +28 -0
- package/dist/generated/reiy/deps/sui/vec_map.js.map +1 -0
- package/dist/generated/reiy/deps/sui/vec_set.d.ts +21 -0
- package/dist/generated/reiy/deps/sui/vec_set.d.ts.map +1 -0
- package/dist/generated/reiy/deps/sui/vec_set.js +20 -0
- package/dist/generated/reiy/deps/sui/vec_set.js.map +1 -0
- package/dist/generated/reiy/events.d.ts +156 -0
- package/dist/generated/reiy/events.d.ts.map +1 -0
- package/dist/generated/reiy/events.js +154 -0
- package/dist/generated/reiy/events.js.map +1 -0
- package/dist/generated/reiy/intent_book.d.ts +267 -0
- package/dist/generated/reiy/intent_book.d.ts.map +1 -0
- package/dist/generated/reiy/intent_book.js +263 -0
- package/dist/generated/reiy/intent_book.js.map +1 -0
- package/dist/generated/reiy/math.d.ts +120 -0
- package/dist/generated/reiy/math.d.ts.map +1 -0
- package/dist/generated/reiy/math.js +133 -0
- package/dist/generated/reiy/math.js.map +1 -0
- package/dist/generated/reiy/price_adapter.d.ts +131 -0
- package/dist/generated/reiy/price_adapter.d.ts.map +1 -0
- package/dist/generated/reiy/price_adapter.js +145 -0
- package/dist/generated/reiy/price_adapter.js.map +1 -0
- package/dist/generated/reiy/settlement.d.ts +167 -0
- package/dist/generated/reiy/settlement.d.ts.map +1 -0
- package/dist/generated/reiy/settlement.js +153 -0
- package/dist/generated/reiy/settlement.js.map +1 -0
- package/dist/generated/reiy/solver_registry.d.ts +142 -0
- package/dist/generated/reiy/solver_registry.d.ts.map +1 -0
- package/dist/generated/reiy/solver_registry.js +150 -0
- package/dist/generated/reiy/solver_registry.js.map +1 -0
- package/dist/generated/reiy/treasury.d.ts +59 -0
- package/dist/generated/reiy/treasury.d.ts.map +1 -0
- package/dist/generated/reiy/treasury.js +62 -0
- package/dist/generated/reiy/treasury.js.map +1 -0
- package/dist/generated/reiy/types.d.ts +67 -0
- package/dist/generated/reiy/types.d.ts.map +1 -0
- package/dist/generated/reiy/types.js +76 -0
- package/dist/generated/reiy/types.js.map +1 -0
- package/dist/generated/utils/index.d.ts +31 -0
- package/dist/generated/utils/index.d.ts.map +1 -0
- package/dist/generated/utils/index.js +159 -0
- package/dist/generated/utils/index.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/** DeepBook price reader and pure SBBO / normalization helpers. */
|
|
5
|
+
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
import { type RawTransactionArgument } from '../utils/index.js';
|
|
7
|
+
export interface FloatScalingOptions {
|
|
8
|
+
package?: string;
|
|
9
|
+
arguments?: [
|
|
10
|
+
];
|
|
11
|
+
}
|
|
12
|
+
export declare function floatScaling(options?: FloatScalingOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
13
|
+
export interface ExpectedOutBaseToQuoteArguments {
|
|
14
|
+
baseAmount: RawTransactionArgument<number | bigint>;
|
|
15
|
+
midPrice: RawTransactionArgument<number | bigint>;
|
|
16
|
+
}
|
|
17
|
+
export interface ExpectedOutBaseToQuoteOptions {
|
|
18
|
+
package?: string;
|
|
19
|
+
arguments: ExpectedOutBaseToQuoteArguments | [
|
|
20
|
+
baseAmount: RawTransactionArgument<number | bigint>,
|
|
21
|
+
midPrice: RawTransactionArgument<number | bigint>
|
|
22
|
+
];
|
|
23
|
+
}
|
|
24
|
+
/** Expected quote out for `base_amount`: `base * mid / 1e9`. */
|
|
25
|
+
export declare function expectedOutBaseToQuote(options: ExpectedOutBaseToQuoteOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
26
|
+
export interface ExpectedOutQuoteToBaseArguments {
|
|
27
|
+
quoteAmount: RawTransactionArgument<number | bigint>;
|
|
28
|
+
midPrice: RawTransactionArgument<number | bigint>;
|
|
29
|
+
}
|
|
30
|
+
export interface ExpectedOutQuoteToBaseOptions {
|
|
31
|
+
package?: string;
|
|
32
|
+
arguments: ExpectedOutQuoteToBaseArguments | [
|
|
33
|
+
quoteAmount: RawTransactionArgument<number | bigint>,
|
|
34
|
+
midPrice: RawTransactionArgument<number | bigint>
|
|
35
|
+
];
|
|
36
|
+
}
|
|
37
|
+
/** Expected base out for `quote_amount`: `quote * 1e9 / mid`. */
|
|
38
|
+
export declare function expectedOutQuoteToBase(options: ExpectedOutQuoteToBaseOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
39
|
+
export interface ApplySlippageFloorArguments {
|
|
40
|
+
expectedOut: RawTransactionArgument<number | bigint>;
|
|
41
|
+
sigmaBps: RawTransactionArgument<number | bigint>;
|
|
42
|
+
}
|
|
43
|
+
export interface ApplySlippageFloorOptions {
|
|
44
|
+
package?: string;
|
|
45
|
+
arguments: ApplySlippageFloorArguments | [
|
|
46
|
+
expectedOut: RawTransactionArgument<number | bigint>,
|
|
47
|
+
sigmaBps: RawTransactionArgument<number | bigint>
|
|
48
|
+
];
|
|
49
|
+
}
|
|
50
|
+
/** Apply slippage bps to an expected output (ceil — never rounds below floor). */
|
|
51
|
+
export declare function applySlippageFloor(options: ApplySlippageFloorOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
52
|
+
export interface SbboFloorBaseToQuoteArguments {
|
|
53
|
+
sellAmount: RawTransactionArgument<number | bigint>;
|
|
54
|
+
midPrice: RawTransactionArgument<number | bigint>;
|
|
55
|
+
sigmaBps: RawTransactionArgument<number | bigint>;
|
|
56
|
+
}
|
|
57
|
+
export interface SbboFloorBaseToQuoteOptions {
|
|
58
|
+
package?: string;
|
|
59
|
+
arguments: SbboFloorBaseToQuoteArguments | [
|
|
60
|
+
sellAmount: RawTransactionArgument<number | bigint>,
|
|
61
|
+
midPrice: RawTransactionArgument<number | bigint>,
|
|
62
|
+
sigmaBps: RawTransactionArgument<number | bigint>
|
|
63
|
+
];
|
|
64
|
+
}
|
|
65
|
+
/** SBBO floor when the sold token is the pool's BASE. */
|
|
66
|
+
export declare function sbboFloorBaseToQuote(options: SbboFloorBaseToQuoteOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
67
|
+
export interface SbboFloorQuoteToBaseArguments {
|
|
68
|
+
sellAmount: RawTransactionArgument<number | bigint>;
|
|
69
|
+
midPrice: RawTransactionArgument<number | bigint>;
|
|
70
|
+
sigmaBps: RawTransactionArgument<number | bigint>;
|
|
71
|
+
}
|
|
72
|
+
export interface SbboFloorQuoteToBaseOptions {
|
|
73
|
+
package?: string;
|
|
74
|
+
arguments: SbboFloorQuoteToBaseArguments | [
|
|
75
|
+
sellAmount: RawTransactionArgument<number | bigint>,
|
|
76
|
+
midPrice: RawTransactionArgument<number | bigint>,
|
|
77
|
+
sigmaBps: RawTransactionArgument<number | bigint>
|
|
78
|
+
];
|
|
79
|
+
}
|
|
80
|
+
/** SBBO floor when the sold token is the pool's QUOTE. */
|
|
81
|
+
export declare function sbboFloorQuoteToBase(options: SbboFloorQuoteToBaseOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
82
|
+
export interface NormalizeBaseToQuoteArguments {
|
|
83
|
+
amount: RawTransactionArgument<number | bigint>;
|
|
84
|
+
price: RawTransactionArgument<number | bigint>;
|
|
85
|
+
}
|
|
86
|
+
export interface NormalizeBaseToQuoteOptions {
|
|
87
|
+
package?: string;
|
|
88
|
+
arguments: NormalizeBaseToQuoteArguments | [
|
|
89
|
+
amount: RawTransactionArgument<number | bigint>,
|
|
90
|
+
price: RawTransactionArgument<number | bigint>
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Convert an amount of the numeraire-pool's BASE token into quote (numeraire)
|
|
95
|
+
* units.
|
|
96
|
+
*/
|
|
97
|
+
export declare function normalizeBaseToQuote(options: NormalizeBaseToQuoteOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
98
|
+
export interface NormalizeQuoteToBaseArguments {
|
|
99
|
+
amount: RawTransactionArgument<number | bigint>;
|
|
100
|
+
price: RawTransactionArgument<number | bigint>;
|
|
101
|
+
}
|
|
102
|
+
export interface NormalizeQuoteToBaseOptions {
|
|
103
|
+
package?: string;
|
|
104
|
+
arguments: NormalizeQuoteToBaseArguments | [
|
|
105
|
+
amount: RawTransactionArgument<number | bigint>,
|
|
106
|
+
price: RawTransactionArgument<number | bigint>
|
|
107
|
+
];
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Convert an amount of the numeraire-pool's QUOTE token into base (numeraire)
|
|
111
|
+
* units.
|
|
112
|
+
*/
|
|
113
|
+
export declare function normalizeQuoteToBase(options: NormalizeQuoteToBaseOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
114
|
+
export interface ReadMidPriceArguments {
|
|
115
|
+
pool: RawTransactionArgument<string>;
|
|
116
|
+
config: RawTransactionArgument<string>;
|
|
117
|
+
}
|
|
118
|
+
export interface ReadMidPriceOptions {
|
|
119
|
+
package?: string;
|
|
120
|
+
arguments: ReadMidPriceArguments | [
|
|
121
|
+
pool: RawTransactionArgument<string>,
|
|
122
|
+
config: RawTransactionArgument<string>
|
|
123
|
+
];
|
|
124
|
+
typeArguments: [
|
|
125
|
+
string,
|
|
126
|
+
string
|
|
127
|
+
];
|
|
128
|
+
}
|
|
129
|
+
/** Read DeepBook mid price and assert it meets the configured minimum. */
|
|
130
|
+
export declare function readMidPrice(options: ReadMidPriceOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
131
|
+
//# sourceMappingURL=price_adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"price_adapter.d.ts","sourceRoot":"","sources":["../../../src/generated/reiy/price_adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/** DeepBook price reader and pure SBBO / normalization helpers. */
|
|
5
|
+
import {} from '@mysten/sui/transactions';
|
|
6
|
+
import { normalizeMoveArguments } from '../utils/index.js';
|
|
7
|
+
export function floatScaling(options = {}) {
|
|
8
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
9
|
+
return (tx) => tx.moveCall({
|
|
10
|
+
package: packageAddress,
|
|
11
|
+
module: 'price_adapter',
|
|
12
|
+
function: 'float_scaling',
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
/** Expected quote out for `base_amount`: `base * mid / 1e9`. */
|
|
16
|
+
export function expectedOutBaseToQuote(options) {
|
|
17
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
18
|
+
const argumentsTypes = [
|
|
19
|
+
'u64',
|
|
20
|
+
'u64'
|
|
21
|
+
];
|
|
22
|
+
const parameterNames = ["baseAmount", "midPrice"];
|
|
23
|
+
return (tx) => tx.moveCall({
|
|
24
|
+
package: packageAddress,
|
|
25
|
+
module: 'price_adapter',
|
|
26
|
+
function: 'expected_out_base_to_quote',
|
|
27
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/** Expected base out for `quote_amount`: `quote * 1e9 / mid`. */
|
|
31
|
+
export function expectedOutQuoteToBase(options) {
|
|
32
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
33
|
+
const argumentsTypes = [
|
|
34
|
+
'u64',
|
|
35
|
+
'u64'
|
|
36
|
+
];
|
|
37
|
+
const parameterNames = ["quoteAmount", "midPrice"];
|
|
38
|
+
return (tx) => tx.moveCall({
|
|
39
|
+
package: packageAddress,
|
|
40
|
+
module: 'price_adapter',
|
|
41
|
+
function: 'expected_out_quote_to_base',
|
|
42
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/** Apply slippage bps to an expected output (ceil — never rounds below floor). */
|
|
46
|
+
export function applySlippageFloor(options) {
|
|
47
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
48
|
+
const argumentsTypes = [
|
|
49
|
+
'u64',
|
|
50
|
+
'u64'
|
|
51
|
+
];
|
|
52
|
+
const parameterNames = ["expectedOut", "sigmaBps"];
|
|
53
|
+
return (tx) => tx.moveCall({
|
|
54
|
+
package: packageAddress,
|
|
55
|
+
module: 'price_adapter',
|
|
56
|
+
function: 'apply_slippage_floor',
|
|
57
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/** SBBO floor when the sold token is the pool's BASE. */
|
|
61
|
+
export function sbboFloorBaseToQuote(options) {
|
|
62
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
63
|
+
const argumentsTypes = [
|
|
64
|
+
'u64',
|
|
65
|
+
'u64',
|
|
66
|
+
'u64'
|
|
67
|
+
];
|
|
68
|
+
const parameterNames = ["sellAmount", "midPrice", "sigmaBps"];
|
|
69
|
+
return (tx) => tx.moveCall({
|
|
70
|
+
package: packageAddress,
|
|
71
|
+
module: 'price_adapter',
|
|
72
|
+
function: 'sbbo_floor_base_to_quote',
|
|
73
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/** SBBO floor when the sold token is the pool's QUOTE. */
|
|
77
|
+
export function sbboFloorQuoteToBase(options) {
|
|
78
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
79
|
+
const argumentsTypes = [
|
|
80
|
+
'u64',
|
|
81
|
+
'u64',
|
|
82
|
+
'u64'
|
|
83
|
+
];
|
|
84
|
+
const parameterNames = ["sellAmount", "midPrice", "sigmaBps"];
|
|
85
|
+
return (tx) => tx.moveCall({
|
|
86
|
+
package: packageAddress,
|
|
87
|
+
module: 'price_adapter',
|
|
88
|
+
function: 'sbbo_floor_quote_to_base',
|
|
89
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Convert an amount of the numeraire-pool's BASE token into quote (numeraire)
|
|
94
|
+
* units.
|
|
95
|
+
*/
|
|
96
|
+
export function normalizeBaseToQuote(options) {
|
|
97
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
98
|
+
const argumentsTypes = [
|
|
99
|
+
'u64',
|
|
100
|
+
'u64'
|
|
101
|
+
];
|
|
102
|
+
const parameterNames = ["amount", "price"];
|
|
103
|
+
return (tx) => tx.moveCall({
|
|
104
|
+
package: packageAddress,
|
|
105
|
+
module: 'price_adapter',
|
|
106
|
+
function: 'normalize_base_to_quote',
|
|
107
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Convert an amount of the numeraire-pool's QUOTE token into base (numeraire)
|
|
112
|
+
* units.
|
|
113
|
+
*/
|
|
114
|
+
export function normalizeQuoteToBase(options) {
|
|
115
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
116
|
+
const argumentsTypes = [
|
|
117
|
+
'u64',
|
|
118
|
+
'u64'
|
|
119
|
+
];
|
|
120
|
+
const parameterNames = ["amount", "price"];
|
|
121
|
+
return (tx) => tx.moveCall({
|
|
122
|
+
package: packageAddress,
|
|
123
|
+
module: 'price_adapter',
|
|
124
|
+
function: 'normalize_quote_to_base',
|
|
125
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
/** Read DeepBook mid price and assert it meets the configured minimum. */
|
|
129
|
+
export function readMidPrice(options) {
|
|
130
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
131
|
+
const argumentsTypes = [
|
|
132
|
+
null,
|
|
133
|
+
null,
|
|
134
|
+
'0x2::clock::Clock'
|
|
135
|
+
];
|
|
136
|
+
const parameterNames = ["pool", "config"];
|
|
137
|
+
return (tx) => tx.moveCall({
|
|
138
|
+
package: packageAddress,
|
|
139
|
+
module: 'price_adapter',
|
|
140
|
+
function: 'read_mid_price',
|
|
141
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
142
|
+
typeArguments: options.typeArguments
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=price_adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"price_adapter.js","sourceRoot":"","sources":["../../../src/generated/reiy/price_adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/**
|
|
5
|
+
* Intent settlement, EPSR verification, dual close, net-safe rewards, and fallback
|
|
6
|
+
* slashing.
|
|
7
|
+
*/
|
|
8
|
+
import { MoveStruct, type RawTransactionArgument } from '../utils/index.js';
|
|
9
|
+
import { type Transaction } from '@mysten/sui/transactions';
|
|
10
|
+
export declare const SettlementReceipt: MoveStruct<{
|
|
11
|
+
intent_id: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
12
|
+
owner: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
13
|
+
solver: import("@mysten/sui/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
14
|
+
pair: MoveStruct<{
|
|
15
|
+
sell: MoveStruct<{
|
|
16
|
+
name: import("@mysten/sui/bcs").BcsType<string, string, "string">;
|
|
17
|
+
}, "std::type_name::TypeName">;
|
|
18
|
+
buy: MoveStruct<{
|
|
19
|
+
name: import("@mysten/sui/bcs").BcsType<string, string, "string">;
|
|
20
|
+
}, "std::type_name::TypeName">;
|
|
21
|
+
}, "@local-pkg/reiy::types::PairKey">;
|
|
22
|
+
m_eff: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
23
|
+
floor: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
24
|
+
sell_amount: import("@mysten/sui/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
25
|
+
}, "@local-pkg/reiy::settlement::SettlementReceipt<phantom Sell, phantom Buy>">;
|
|
26
|
+
export interface TakeIntentFullArguments {
|
|
27
|
+
state: RawTransactionArgument<string>;
|
|
28
|
+
intent: RawTransactionArgument<string>;
|
|
29
|
+
}
|
|
30
|
+
export interface TakeIntentFullOptions {
|
|
31
|
+
package?: string;
|
|
32
|
+
arguments: TakeIntentFullArguments | [
|
|
33
|
+
state: RawTransactionArgument<string>,
|
|
34
|
+
intent: RawTransactionArgument<string>
|
|
35
|
+
];
|
|
36
|
+
typeArguments: [
|
|
37
|
+
string,
|
|
38
|
+
string
|
|
39
|
+
];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Take a fully-filled winning intent. Consumes the intent, hands the solver the
|
|
43
|
+
* locked sell asset, and returns a hot-potato receipt that MUST be consumed by a
|
|
44
|
+
* `settle_*` call in the same PTB.
|
|
45
|
+
*/
|
|
46
|
+
export declare function takeIntentFull(options: TakeIntentFullOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
47
|
+
export interface TakeIntentPartialArguments {
|
|
48
|
+
state: RawTransactionArgument<string>;
|
|
49
|
+
intent: RawTransactionArgument<string>;
|
|
50
|
+
fillAmount: RawTransactionArgument<number | bigint>;
|
|
51
|
+
}
|
|
52
|
+
export interface TakeIntentPartialOptions {
|
|
53
|
+
package?: string;
|
|
54
|
+
arguments: TakeIntentPartialArguments | [
|
|
55
|
+
state: RawTransactionArgument<string>,
|
|
56
|
+
intent: RawTransactionArgument<string>,
|
|
57
|
+
fillAmount: RawTransactionArgument<number | bigint>
|
|
58
|
+
];
|
|
59
|
+
typeArguments: [
|
|
60
|
+
string,
|
|
61
|
+
string
|
|
62
|
+
];
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Take a partially-filled winning intent. Splits `fill_amount` off the locked
|
|
66
|
+
* balance, advances the intent to the next epoch, and re-queues its residual so it
|
|
67
|
+
* re-enters the next batch.
|
|
68
|
+
*/
|
|
69
|
+
export declare function takeIntentPartial(options: TakeIntentPartialOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
70
|
+
export interface SettleIntentNumeraireArguments {
|
|
71
|
+
state: RawTransactionArgument<string>;
|
|
72
|
+
registry: RawTransactionArgument<string>;
|
|
73
|
+
config: RawTransactionArgument<string>;
|
|
74
|
+
receipt: RawTransactionArgument<string>;
|
|
75
|
+
payout: RawTransactionArgument<string>;
|
|
76
|
+
}
|
|
77
|
+
export interface SettleIntentNumeraireOptions {
|
|
78
|
+
package?: string;
|
|
79
|
+
arguments: SettleIntentNumeraireArguments | [
|
|
80
|
+
state: RawTransactionArgument<string>,
|
|
81
|
+
registry: RawTransactionArgument<string>,
|
|
82
|
+
config: RawTransactionArgument<string>,
|
|
83
|
+
receipt: RawTransactionArgument<string>,
|
|
84
|
+
payout: RawTransactionArgument<string>
|
|
85
|
+
];
|
|
86
|
+
typeArguments: [
|
|
87
|
+
string,
|
|
88
|
+
string
|
|
89
|
+
];
|
|
90
|
+
}
|
|
91
|
+
/** Settle a winning intent whose BUY token IS the protocol numeraire. */
|
|
92
|
+
export declare function settleIntentNumeraire(options: SettleIntentNumeraireOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
93
|
+
export interface SettleIntentArguments {
|
|
94
|
+
state: RawTransactionArgument<string>;
|
|
95
|
+
registry: RawTransactionArgument<string>;
|
|
96
|
+
config: RawTransactionArgument<string>;
|
|
97
|
+
receipt: RawTransactionArgument<string>;
|
|
98
|
+
payout: RawTransactionArgument<string>;
|
|
99
|
+
numPool: RawTransactionArgument<string>;
|
|
100
|
+
}
|
|
101
|
+
export interface SettleIntentOptions {
|
|
102
|
+
package?: string;
|
|
103
|
+
arguments: SettleIntentArguments | [
|
|
104
|
+
state: RawTransactionArgument<string>,
|
|
105
|
+
registry: RawTransactionArgument<string>,
|
|
106
|
+
config: RawTransactionArgument<string>,
|
|
107
|
+
receipt: RawTransactionArgument<string>,
|
|
108
|
+
payout: RawTransactionArgument<string>,
|
|
109
|
+
numPool: RawTransactionArgument<string>
|
|
110
|
+
];
|
|
111
|
+
typeArguments: [
|
|
112
|
+
string,
|
|
113
|
+
string,
|
|
114
|
+
string,
|
|
115
|
+
string
|
|
116
|
+
];
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Settle a winning intent, normalizing its surplus into numeraire units using the
|
|
120
|
+
* allowlisted `Buy/Numeraire` DeepBook pool.
|
|
121
|
+
*/
|
|
122
|
+
export declare function settleIntent(options: SettleIntentOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
123
|
+
export interface CloseBatchArguments {
|
|
124
|
+
state: RawTransactionArgument<string>;
|
|
125
|
+
config: RawTransactionArgument<string>;
|
|
126
|
+
treasury: RawTransactionArgument<string>;
|
|
127
|
+
fee: RawTransactionArgument<string>;
|
|
128
|
+
}
|
|
129
|
+
export interface CloseBatchOptions {
|
|
130
|
+
package?: string;
|
|
131
|
+
arguments: CloseBatchArguments | [
|
|
132
|
+
state: RawTransactionArgument<string>,
|
|
133
|
+
config: RawTransactionArgument<string>,
|
|
134
|
+
treasury: RawTransactionArgument<string>,
|
|
135
|
+
fee: RawTransactionArgument<string>
|
|
136
|
+
];
|
|
137
|
+
typeArguments: [
|
|
138
|
+
string
|
|
139
|
+
];
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Close the batch: dual verification (score + per-pair k), fee collection, and
|
|
143
|
+
* reward distribution. All winning intents must be settled before calling.
|
|
144
|
+
*/
|
|
145
|
+
export declare function closeBatch(options: CloseBatchOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
146
|
+
export interface TriggerFallbackArguments {
|
|
147
|
+
state: RawTransactionArgument<string>;
|
|
148
|
+
registry: RawTransactionArgument<string>;
|
|
149
|
+
config: RawTransactionArgument<string>;
|
|
150
|
+
}
|
|
151
|
+
export interface TriggerFallbackOptions {
|
|
152
|
+
package?: string;
|
|
153
|
+
arguments: TriggerFallbackArguments | [
|
|
154
|
+
state: RawTransactionArgument<string>,
|
|
155
|
+
registry: RawTransactionArgument<string>,
|
|
156
|
+
config: RawTransactionArgument<string>
|
|
157
|
+
];
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Permissionless fallback after the settlement deadline. A solver is slashed only
|
|
161
|
+
* for intents that were still settleable (not expired) yet left unsettled — i.e.
|
|
162
|
+
* genuine solver fault. Intents that expired before settlement are neither slashed
|
|
163
|
+
* nor re-queued; the owner reclaims them via cancel. Still-valid unsettled intents
|
|
164
|
+
* are re-queued for the next epoch. The epoch moves to Failed.
|
|
165
|
+
*/
|
|
166
|
+
export declare function triggerFallback(options: TriggerFallbackOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
167
|
+
//# sourceMappingURL=settlement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.d.ts","sourceRoot":"","sources":["../../../src/generated/reiy/settlement.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/**
|
|
5
|
+
* Intent settlement, EPSR verification, dual close, net-safe rewards, and fallback
|
|
6
|
+
* slashing.
|
|
7
|
+
*/
|
|
8
|
+
import { MoveStruct, 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
|
+
const $moduleName = '@local-pkg/reiy::settlement';
|
|
13
|
+
export const SettlementReceipt = new MoveStruct({ name: `${$moduleName}::SettlementReceipt<phantom Sell, phantom Buy>`, fields: {
|
|
14
|
+
intent_id: bcs.Address,
|
|
15
|
+
owner: bcs.Address,
|
|
16
|
+
solver: bcs.Address,
|
|
17
|
+
pair: types.PairKey,
|
|
18
|
+
m_eff: bcs.u64(),
|
|
19
|
+
floor: bcs.u64(),
|
|
20
|
+
sell_amount: bcs.u64()
|
|
21
|
+
} });
|
|
22
|
+
/**
|
|
23
|
+
* Take a fully-filled winning intent. Consumes the intent, hands the solver the
|
|
24
|
+
* locked sell asset, and returns a hot-potato receipt that MUST be consumed by a
|
|
25
|
+
* `settle_*` call in the same PTB.
|
|
26
|
+
*/
|
|
27
|
+
export function takeIntentFull(options) {
|
|
28
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
29
|
+
const argumentsTypes = [
|
|
30
|
+
null,
|
|
31
|
+
null,
|
|
32
|
+
'0x2::clock::Clock'
|
|
33
|
+
];
|
|
34
|
+
const parameterNames = ["state", "intent"];
|
|
35
|
+
return (tx) => tx.moveCall({
|
|
36
|
+
package: packageAddress,
|
|
37
|
+
module: 'settlement',
|
|
38
|
+
function: 'take_intent_full',
|
|
39
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
40
|
+
typeArguments: options.typeArguments
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Take a partially-filled winning intent. Splits `fill_amount` off the locked
|
|
45
|
+
* balance, advances the intent to the next epoch, and re-queues its residual so it
|
|
46
|
+
* re-enters the next batch.
|
|
47
|
+
*/
|
|
48
|
+
export function takeIntentPartial(options) {
|
|
49
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
50
|
+
const argumentsTypes = [
|
|
51
|
+
null,
|
|
52
|
+
null,
|
|
53
|
+
'u64',
|
|
54
|
+
'0x2::clock::Clock'
|
|
55
|
+
];
|
|
56
|
+
const parameterNames = ["state", "intent", "fillAmount"];
|
|
57
|
+
return (tx) => tx.moveCall({
|
|
58
|
+
package: packageAddress,
|
|
59
|
+
module: 'settlement',
|
|
60
|
+
function: 'take_intent_partial',
|
|
61
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
62
|
+
typeArguments: options.typeArguments
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
/** Settle a winning intent whose BUY token IS the protocol numeraire. */
|
|
66
|
+
export function settleIntentNumeraire(options) {
|
|
67
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
68
|
+
const argumentsTypes = [
|
|
69
|
+
null,
|
|
70
|
+
null,
|
|
71
|
+
null,
|
|
72
|
+
null,
|
|
73
|
+
null
|
|
74
|
+
];
|
|
75
|
+
const parameterNames = ["state", "registry", "config", "receipt", "payout"];
|
|
76
|
+
return (tx) => tx.moveCall({
|
|
77
|
+
package: packageAddress,
|
|
78
|
+
module: 'settlement',
|
|
79
|
+
function: 'settle_intent_numeraire',
|
|
80
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
81
|
+
typeArguments: options.typeArguments
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Settle a winning intent, normalizing its surplus into numeraire units using the
|
|
86
|
+
* allowlisted `Buy/Numeraire` DeepBook pool.
|
|
87
|
+
*/
|
|
88
|
+
export function settleIntent(options) {
|
|
89
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
90
|
+
const argumentsTypes = [
|
|
91
|
+
null,
|
|
92
|
+
null,
|
|
93
|
+
null,
|
|
94
|
+
null,
|
|
95
|
+
null,
|
|
96
|
+
null,
|
|
97
|
+
'0x2::clock::Clock'
|
|
98
|
+
];
|
|
99
|
+
const parameterNames = ["state", "registry", "config", "receipt", "payout", "numPool"];
|
|
100
|
+
return (tx) => tx.moveCall({
|
|
101
|
+
package: packageAddress,
|
|
102
|
+
module: 'settlement',
|
|
103
|
+
function: 'settle_intent',
|
|
104
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
105
|
+
typeArguments: options.typeArguments
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Close the batch: dual verification (score + per-pair k), fee collection, and
|
|
110
|
+
* reward distribution. All winning intents must be settled before calling.
|
|
111
|
+
*/
|
|
112
|
+
export function closeBatch(options) {
|
|
113
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
114
|
+
const argumentsTypes = [
|
|
115
|
+
null,
|
|
116
|
+
null,
|
|
117
|
+
null,
|
|
118
|
+
null,
|
|
119
|
+
'0x2::clock::Clock'
|
|
120
|
+
];
|
|
121
|
+
const parameterNames = ["state", "config", "treasury", "fee"];
|
|
122
|
+
return (tx) => tx.moveCall({
|
|
123
|
+
package: packageAddress,
|
|
124
|
+
module: 'settlement',
|
|
125
|
+
function: 'close_batch',
|
|
126
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
127
|
+
typeArguments: options.typeArguments
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Permissionless fallback after the settlement deadline. A solver is slashed only
|
|
132
|
+
* for intents that were still settleable (not expired) yet left unsettled — i.e.
|
|
133
|
+
* genuine solver fault. Intents that expired before settlement are neither slashed
|
|
134
|
+
* nor re-queued; the owner reclaims them via cancel. Still-valid unsettled intents
|
|
135
|
+
* are re-queued for the next epoch. The epoch moves to Failed.
|
|
136
|
+
*/
|
|
137
|
+
export function triggerFallback(options) {
|
|
138
|
+
const packageAddress = options.package ?? '@local-pkg/reiy';
|
|
139
|
+
const argumentsTypes = [
|
|
140
|
+
null,
|
|
141
|
+
null,
|
|
142
|
+
null,
|
|
143
|
+
'0x2::clock::Clock'
|
|
144
|
+
];
|
|
145
|
+
const parameterNames = ["state", "registry", "config"];
|
|
146
|
+
return (tx) => tx.moveCall({
|
|
147
|
+
package: packageAddress,
|
|
148
|
+
module: 'settlement',
|
|
149
|
+
function: 'trigger_fallback',
|
|
150
|
+
arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=settlement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.js","sourceRoot":"","sources":["../../../src/generated/reiy/settlement.ts"],"names":[],"mappings":"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"}
|