@pendle/core-v2 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/contracts/core/PendleBaseToken.sol +0 -4
  2. package/contracts/core/PendleMarket.sol +4 -7
  3. package/contracts/core/PendleMarketFactory.sol +2 -2
  4. package/contracts/core/PendleOwnershipToken.sol +0 -2
  5. package/contracts/core/router/PendleRouterProxy.sol +15 -1
  6. package/contracts/core/router/PendleRouterStaticUpg.sol +82 -0
  7. package/contracts/interfaces/IPRouterStatic.sol +35 -0
  8. package/contracts/libraries/math/FixedPoint.sol +4 -7
  9. package/contracts/libraries/math/LogExpMath.sol +377 -365
  10. package/contracts/libraries/math/MarketMathLib.sol +25 -17
  11. package/package.json +1 -1
  12. package/typechain-types/IPRouterStatic.ts +307 -0
  13. package/typechain-types/IPRouterView.ts +307 -0
  14. package/typechain-types/PendleBaseToken.ts +0 -30
  15. package/typechain-types/PendleMarket.ts +19 -46
  16. package/typechain-types/PendleMarketFactory.ts +5 -5
  17. package/typechain-types/PendleOwnershipToken.ts +0 -30
  18. package/typechain-types/PendleRouterProxy.ts +21 -0
  19. package/typechain-types/PendleRouterStaticUpg.ts +307 -0
  20. package/typechain-types/PendleRouterViewUpg.ts +307 -0
  21. package/typechain-types/PendleYieldToken.ts +0 -30
  22. package/typechain-types/factories/IPRouterStatic__factory.ts +190 -0
  23. package/typechain-types/factories/IPRouterView__factory.ts +187 -0
  24. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +1 -1
  25. package/typechain-types/factories/PendleBaseToken__factory.ts +0 -38
  26. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +1 -1
  27. package/typechain-types/factories/PendleBtrflyScy__factory.ts +1 -1
  28. package/typechain-types/factories/PendleMarketFactory__factory.ts +2 -2
  29. package/typechain-types/factories/PendleMarket__factory.ts +19 -57
  30. package/typechain-types/factories/PendleOwnershipToken__factory.ts +1 -39
  31. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +1 -1
  32. package/typechain-types/factories/PendleRouterProxy__factory.ts +23 -1
  33. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +269 -0
  34. package/typechain-types/factories/PendleRouterViewUpg__factory.ts +265 -0
  35. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +1 -1
  36. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +1 -1
  37. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  38. package/typechain-types/factories/PendleYieldToken__factory.ts +1 -39
  39. package/typechain-types/hardhat.d.ts +18 -0
  40. package/typechain-types/index.ts +4 -0
@@ -26,6 +26,7 @@ export interface PendleRouterProxyInterface extends utils.Interface {
26
26
  contractName: "PendleRouterProxy";
27
27
  functions: {
28
28
  "PENDLE_ROUTER_CORE()": FunctionFragment;
29
+ "PENDLE_ROUTER_STATIC()": FunctionFragment;
29
30
  "PENDLE_ROUTER_YT()": FunctionFragment;
30
31
  "claimOwnership()": FunctionFragment;
31
32
  "getRouterImplementation(bytes4)": FunctionFragment;
@@ -42,6 +43,10 @@ export interface PendleRouterProxyInterface extends utils.Interface {
42
43
  functionFragment: "PENDLE_ROUTER_CORE",
43
44
  values?: undefined
44
45
  ): string;
46
+ encodeFunctionData(
47
+ functionFragment: "PENDLE_ROUTER_STATIC",
48
+ values?: undefined
49
+ ): string;
45
50
  encodeFunctionData(
46
51
  functionFragment: "PENDLE_ROUTER_YT",
47
52
  values?: undefined
@@ -81,6 +86,10 @@ export interface PendleRouterProxyInterface extends utils.Interface {
81
86
  functionFragment: "PENDLE_ROUTER_CORE",
82
87
  data: BytesLike
83
88
  ): Result;
89
+ decodeFunctionResult(
90
+ functionFragment: "PENDLE_ROUTER_STATIC",
91
+ data: BytesLike
92
+ ): Result;
84
93
  decodeFunctionResult(
85
94
  functionFragment: "PENDLE_ROUTER_YT",
86
95
  data: BytesLike
@@ -179,6 +188,8 @@ export interface PendleRouterProxy extends BaseContract {
179
188
  functions: {
180
189
  PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<[string]>;
181
190
 
191
+ PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<[string]>;
192
+
182
193
  PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<[string]>;
183
194
 
184
195
  claimOwnership(
@@ -221,6 +232,8 @@ export interface PendleRouterProxy extends BaseContract {
221
232
 
222
233
  PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<string>;
223
234
 
235
+ PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<string>;
236
+
224
237
  PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<string>;
225
238
 
226
239
  claimOwnership(
@@ -263,6 +276,8 @@ export interface PendleRouterProxy extends BaseContract {
263
276
  callStatic: {
264
277
  PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<string>;
265
278
 
279
+ PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<string>;
280
+
266
281
  PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<string>;
267
282
 
268
283
  claimOwnership(overrides?: CallOverrides): Promise<void>;
@@ -330,6 +345,8 @@ export interface PendleRouterProxy extends BaseContract {
330
345
  estimateGas: {
331
346
  PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<BigNumber>;
332
347
 
348
+ PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<BigNumber>;
349
+
333
350
  PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<BigNumber>;
334
351
 
335
352
  claimOwnership(
@@ -375,6 +392,10 @@ export interface PendleRouterProxy extends BaseContract {
375
392
  overrides?: CallOverrides
376
393
  ): Promise<PopulatedTransaction>;
377
394
 
395
+ PENDLE_ROUTER_STATIC(
396
+ overrides?: CallOverrides
397
+ ): Promise<PopulatedTransaction>;
398
+
378
399
  PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
379
400
 
380
401
  claimOwnership(
@@ -0,0 +1,307 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export interface PendleRouterStaticUpgInterface extends utils.Interface {
26
+ contractName: "PendleRouterStaticUpg";
27
+ functions: {
28
+ "addLiquidityStatic(address,uint256,uint256)": FunctionFragment;
29
+ "getOtImpliedYield(address)": FunctionFragment;
30
+ "removeLiquidityStatic(address,uint256)": FunctionFragment;
31
+ "scyIndex(address)": FunctionFragment;
32
+ "swapOtForScyStatic(address,uint256)": FunctionFragment;
33
+ "swapScyForOtStatic(address,uint256)": FunctionFragment;
34
+ };
35
+
36
+ encodeFunctionData(
37
+ functionFragment: "addLiquidityStatic",
38
+ values: [string, BigNumberish, BigNumberish]
39
+ ): string;
40
+ encodeFunctionData(
41
+ functionFragment: "getOtImpliedYield",
42
+ values: [string]
43
+ ): string;
44
+ encodeFunctionData(
45
+ functionFragment: "removeLiquidityStatic",
46
+ values: [string, BigNumberish]
47
+ ): string;
48
+ encodeFunctionData(functionFragment: "scyIndex", values: [string]): string;
49
+ encodeFunctionData(
50
+ functionFragment: "swapOtForScyStatic",
51
+ values: [string, BigNumberish]
52
+ ): string;
53
+ encodeFunctionData(
54
+ functionFragment: "swapScyForOtStatic",
55
+ values: [string, BigNumberish]
56
+ ): string;
57
+
58
+ decodeFunctionResult(
59
+ functionFragment: "addLiquidityStatic",
60
+ data: BytesLike
61
+ ): Result;
62
+ decodeFunctionResult(
63
+ functionFragment: "getOtImpliedYield",
64
+ data: BytesLike
65
+ ): Result;
66
+ decodeFunctionResult(
67
+ functionFragment: "removeLiquidityStatic",
68
+ data: BytesLike
69
+ ): Result;
70
+ decodeFunctionResult(functionFragment: "scyIndex", data: BytesLike): Result;
71
+ decodeFunctionResult(
72
+ functionFragment: "swapOtForScyStatic",
73
+ data: BytesLike
74
+ ): Result;
75
+ decodeFunctionResult(
76
+ functionFragment: "swapScyForOtStatic",
77
+ data: BytesLike
78
+ ): Result;
79
+
80
+ events: {};
81
+ }
82
+
83
+ export interface PendleRouterStaticUpg extends BaseContract {
84
+ contractName: "PendleRouterStaticUpg";
85
+ connect(signerOrProvider: Signer | Provider | string): this;
86
+ attach(addressOrName: string): this;
87
+ deployed(): Promise<this>;
88
+
89
+ interface: PendleRouterStaticUpgInterface;
90
+
91
+ queryFilter<TEvent extends TypedEvent>(
92
+ event: TypedEventFilter<TEvent>,
93
+ fromBlockOrBlockhash?: string | number | undefined,
94
+ toBlock?: string | number | undefined
95
+ ): Promise<Array<TEvent>>;
96
+
97
+ listeners<TEvent extends TypedEvent>(
98
+ eventFilter?: TypedEventFilter<TEvent>
99
+ ): Array<TypedListener<TEvent>>;
100
+ listeners(eventName?: string): Array<Listener>;
101
+ removeAllListeners<TEvent extends TypedEvent>(
102
+ eventFilter: TypedEventFilter<TEvent>
103
+ ): this;
104
+ removeAllListeners(eventName?: string): this;
105
+ off: OnEvent<this>;
106
+ on: OnEvent<this>;
107
+ once: OnEvent<this>;
108
+ removeListener: OnEvent<this>;
109
+
110
+ functions: {
111
+ addLiquidityStatic(
112
+ market: string,
113
+ scyDesired: BigNumberish,
114
+ otDesired: BigNumberish,
115
+ overrides?: Overrides & { from?: string | Promise<string> }
116
+ ): Promise<ContractTransaction>;
117
+
118
+ getOtImpliedYield(
119
+ market: string,
120
+ overrides?: CallOverrides
121
+ ): Promise<[BigNumber]>;
122
+
123
+ removeLiquidityStatic(
124
+ market: string,
125
+ lpToRemove: BigNumberish,
126
+ overrides?: CallOverrides
127
+ ): Promise<
128
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
129
+ >;
130
+
131
+ scyIndex(
132
+ market: string,
133
+ overrides?: Overrides & { from?: string | Promise<string> }
134
+ ): Promise<ContractTransaction>;
135
+
136
+ swapOtForScyStatic(
137
+ market: string,
138
+ exactOtIn: BigNumberish,
139
+ overrides?: Overrides & { from?: string | Promise<string> }
140
+ ): Promise<ContractTransaction>;
141
+
142
+ swapScyForOtStatic(
143
+ market: string,
144
+ exactOtOut: BigNumberish,
145
+ overrides?: Overrides & { from?: string | Promise<string> }
146
+ ): Promise<ContractTransaction>;
147
+ };
148
+
149
+ addLiquidityStatic(
150
+ market: string,
151
+ scyDesired: BigNumberish,
152
+ otDesired: BigNumberish,
153
+ overrides?: Overrides & { from?: string | Promise<string> }
154
+ ): Promise<ContractTransaction>;
155
+
156
+ getOtImpliedYield(
157
+ market: string,
158
+ overrides?: CallOverrides
159
+ ): Promise<BigNumber>;
160
+
161
+ removeLiquidityStatic(
162
+ market: string,
163
+ lpToRemove: BigNumberish,
164
+ overrides?: CallOverrides
165
+ ): Promise<
166
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
167
+ >;
168
+
169
+ scyIndex(
170
+ market: string,
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): Promise<ContractTransaction>;
173
+
174
+ swapOtForScyStatic(
175
+ market: string,
176
+ exactOtIn: BigNumberish,
177
+ overrides?: Overrides & { from?: string | Promise<string> }
178
+ ): Promise<ContractTransaction>;
179
+
180
+ swapScyForOtStatic(
181
+ market: string,
182
+ exactOtOut: BigNumberish,
183
+ overrides?: Overrides & { from?: string | Promise<string> }
184
+ ): Promise<ContractTransaction>;
185
+
186
+ callStatic: {
187
+ addLiquidityStatic(
188
+ market: string,
189
+ scyDesired: BigNumberish,
190
+ otDesired: BigNumberish,
191
+ overrides?: CallOverrides
192
+ ): Promise<
193
+ [BigNumber, BigNumber, BigNumber] & {
194
+ netLpOut: BigNumber;
195
+ scyUsed: BigNumber;
196
+ otUsed: BigNumber;
197
+ }
198
+ >;
199
+
200
+ getOtImpliedYield(
201
+ market: string,
202
+ overrides?: CallOverrides
203
+ ): Promise<BigNumber>;
204
+
205
+ removeLiquidityStatic(
206
+ market: string,
207
+ lpToRemove: BigNumberish,
208
+ overrides?: CallOverrides
209
+ ): Promise<
210
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
211
+ >;
212
+
213
+ scyIndex(market: string, overrides?: CallOverrides): Promise<BigNumber>;
214
+
215
+ swapOtForScyStatic(
216
+ market: string,
217
+ exactOtIn: BigNumberish,
218
+ overrides?: CallOverrides
219
+ ): Promise<
220
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netScyFee: BigNumber }
221
+ >;
222
+
223
+ swapScyForOtStatic(
224
+ market: string,
225
+ exactOtOut: BigNumberish,
226
+ overrides?: CallOverrides
227
+ ): Promise<
228
+ [BigNumber, BigNumber] & { netScyIn: BigNumber; netScyFee: BigNumber }
229
+ >;
230
+ };
231
+
232
+ filters: {};
233
+
234
+ estimateGas: {
235
+ addLiquidityStatic(
236
+ market: string,
237
+ scyDesired: BigNumberish,
238
+ otDesired: BigNumberish,
239
+ overrides?: Overrides & { from?: string | Promise<string> }
240
+ ): Promise<BigNumber>;
241
+
242
+ getOtImpliedYield(
243
+ market: string,
244
+ overrides?: CallOverrides
245
+ ): Promise<BigNumber>;
246
+
247
+ removeLiquidityStatic(
248
+ market: string,
249
+ lpToRemove: BigNumberish,
250
+ overrides?: CallOverrides
251
+ ): Promise<BigNumber>;
252
+
253
+ scyIndex(
254
+ market: string,
255
+ overrides?: Overrides & { from?: string | Promise<string> }
256
+ ): Promise<BigNumber>;
257
+
258
+ swapOtForScyStatic(
259
+ market: string,
260
+ exactOtIn: BigNumberish,
261
+ overrides?: Overrides & { from?: string | Promise<string> }
262
+ ): Promise<BigNumber>;
263
+
264
+ swapScyForOtStatic(
265
+ market: string,
266
+ exactOtOut: BigNumberish,
267
+ overrides?: Overrides & { from?: string | Promise<string> }
268
+ ): Promise<BigNumber>;
269
+ };
270
+
271
+ populateTransaction: {
272
+ addLiquidityStatic(
273
+ market: string,
274
+ scyDesired: BigNumberish,
275
+ otDesired: BigNumberish,
276
+ overrides?: Overrides & { from?: string | Promise<string> }
277
+ ): Promise<PopulatedTransaction>;
278
+
279
+ getOtImpliedYield(
280
+ market: string,
281
+ overrides?: CallOverrides
282
+ ): Promise<PopulatedTransaction>;
283
+
284
+ removeLiquidityStatic(
285
+ market: string,
286
+ lpToRemove: BigNumberish,
287
+ overrides?: CallOverrides
288
+ ): Promise<PopulatedTransaction>;
289
+
290
+ scyIndex(
291
+ market: string,
292
+ overrides?: Overrides & { from?: string | Promise<string> }
293
+ ): Promise<PopulatedTransaction>;
294
+
295
+ swapOtForScyStatic(
296
+ market: string,
297
+ exactOtIn: BigNumberish,
298
+ overrides?: Overrides & { from?: string | Promise<string> }
299
+ ): Promise<PopulatedTransaction>;
300
+
301
+ swapScyForOtStatic(
302
+ market: string,
303
+ exactOtOut: BigNumberish,
304
+ overrides?: Overrides & { from?: string | Promise<string> }
305
+ ): Promise<PopulatedTransaction>;
306
+ };
307
+ }
@@ -0,0 +1,307 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export interface PendleRouterViewUpgInterface extends utils.Interface {
26
+ contractName: "PendleRouterViewUpg";
27
+ functions: {
28
+ "addLiquidityStatic(address,uint256,uint256)": FunctionFragment;
29
+ "getOtImpliedYield(address)": FunctionFragment;
30
+ "removeLiquidityStatic(address,uint256)": FunctionFragment;
31
+ "scyIndex(address)": FunctionFragment;
32
+ "swapOtForScyStatic(address,uint256)": FunctionFragment;
33
+ "swapScyForOtStatic(address,uint256)": FunctionFragment;
34
+ };
35
+
36
+ encodeFunctionData(
37
+ functionFragment: "addLiquidityStatic",
38
+ values: [string, BigNumberish, BigNumberish]
39
+ ): string;
40
+ encodeFunctionData(
41
+ functionFragment: "getOtImpliedYield",
42
+ values: [string]
43
+ ): string;
44
+ encodeFunctionData(
45
+ functionFragment: "removeLiquidityStatic",
46
+ values: [string, BigNumberish]
47
+ ): string;
48
+ encodeFunctionData(functionFragment: "scyIndex", values: [string]): string;
49
+ encodeFunctionData(
50
+ functionFragment: "swapOtForScyStatic",
51
+ values: [string, BigNumberish]
52
+ ): string;
53
+ encodeFunctionData(
54
+ functionFragment: "swapScyForOtStatic",
55
+ values: [string, BigNumberish]
56
+ ): string;
57
+
58
+ decodeFunctionResult(
59
+ functionFragment: "addLiquidityStatic",
60
+ data: BytesLike
61
+ ): Result;
62
+ decodeFunctionResult(
63
+ functionFragment: "getOtImpliedYield",
64
+ data: BytesLike
65
+ ): Result;
66
+ decodeFunctionResult(
67
+ functionFragment: "removeLiquidityStatic",
68
+ data: BytesLike
69
+ ): Result;
70
+ decodeFunctionResult(functionFragment: "scyIndex", data: BytesLike): Result;
71
+ decodeFunctionResult(
72
+ functionFragment: "swapOtForScyStatic",
73
+ data: BytesLike
74
+ ): Result;
75
+ decodeFunctionResult(
76
+ functionFragment: "swapScyForOtStatic",
77
+ data: BytesLike
78
+ ): Result;
79
+
80
+ events: {};
81
+ }
82
+
83
+ export interface PendleRouterViewUpg extends BaseContract {
84
+ contractName: "PendleRouterViewUpg";
85
+ connect(signerOrProvider: Signer | Provider | string): this;
86
+ attach(addressOrName: string): this;
87
+ deployed(): Promise<this>;
88
+
89
+ interface: PendleRouterViewUpgInterface;
90
+
91
+ queryFilter<TEvent extends TypedEvent>(
92
+ event: TypedEventFilter<TEvent>,
93
+ fromBlockOrBlockhash?: string | number | undefined,
94
+ toBlock?: string | number | undefined
95
+ ): Promise<Array<TEvent>>;
96
+
97
+ listeners<TEvent extends TypedEvent>(
98
+ eventFilter?: TypedEventFilter<TEvent>
99
+ ): Array<TypedListener<TEvent>>;
100
+ listeners(eventName?: string): Array<Listener>;
101
+ removeAllListeners<TEvent extends TypedEvent>(
102
+ eventFilter: TypedEventFilter<TEvent>
103
+ ): this;
104
+ removeAllListeners(eventName?: string): this;
105
+ off: OnEvent<this>;
106
+ on: OnEvent<this>;
107
+ once: OnEvent<this>;
108
+ removeListener: OnEvent<this>;
109
+
110
+ functions: {
111
+ addLiquidityStatic(
112
+ market: string,
113
+ scyDesired: BigNumberish,
114
+ otDesired: BigNumberish,
115
+ overrides?: Overrides & { from?: string | Promise<string> }
116
+ ): Promise<ContractTransaction>;
117
+
118
+ getOtImpliedYield(
119
+ market: string,
120
+ overrides?: CallOverrides
121
+ ): Promise<[BigNumber]>;
122
+
123
+ removeLiquidityStatic(
124
+ market: string,
125
+ lpToRemove: BigNumberish,
126
+ overrides?: CallOverrides
127
+ ): Promise<
128
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
129
+ >;
130
+
131
+ scyIndex(
132
+ market: string,
133
+ overrides?: Overrides & { from?: string | Promise<string> }
134
+ ): Promise<ContractTransaction>;
135
+
136
+ swapOtForScyStatic(
137
+ market: string,
138
+ exactOtIn: BigNumberish,
139
+ overrides?: Overrides & { from?: string | Promise<string> }
140
+ ): Promise<ContractTransaction>;
141
+
142
+ swapScyForOtStatic(
143
+ market: string,
144
+ exactOtOut: BigNumberish,
145
+ overrides?: Overrides & { from?: string | Promise<string> }
146
+ ): Promise<ContractTransaction>;
147
+ };
148
+
149
+ addLiquidityStatic(
150
+ market: string,
151
+ scyDesired: BigNumberish,
152
+ otDesired: BigNumberish,
153
+ overrides?: Overrides & { from?: string | Promise<string> }
154
+ ): Promise<ContractTransaction>;
155
+
156
+ getOtImpliedYield(
157
+ market: string,
158
+ overrides?: CallOverrides
159
+ ): Promise<BigNumber>;
160
+
161
+ removeLiquidityStatic(
162
+ market: string,
163
+ lpToRemove: BigNumberish,
164
+ overrides?: CallOverrides
165
+ ): Promise<
166
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
167
+ >;
168
+
169
+ scyIndex(
170
+ market: string,
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): Promise<ContractTransaction>;
173
+
174
+ swapOtForScyStatic(
175
+ market: string,
176
+ exactOtIn: BigNumberish,
177
+ overrides?: Overrides & { from?: string | Promise<string> }
178
+ ): Promise<ContractTransaction>;
179
+
180
+ swapScyForOtStatic(
181
+ market: string,
182
+ exactOtOut: BigNumberish,
183
+ overrides?: Overrides & { from?: string | Promise<string> }
184
+ ): Promise<ContractTransaction>;
185
+
186
+ callStatic: {
187
+ addLiquidityStatic(
188
+ market: string,
189
+ scyDesired: BigNumberish,
190
+ otDesired: BigNumberish,
191
+ overrides?: CallOverrides
192
+ ): Promise<
193
+ [BigNumber, BigNumber, BigNumber] & {
194
+ netLpOut: BigNumber;
195
+ scyUsed: BigNumber;
196
+ otUsed: BigNumber;
197
+ }
198
+ >;
199
+
200
+ getOtImpliedYield(
201
+ market: string,
202
+ overrides?: CallOverrides
203
+ ): Promise<BigNumber>;
204
+
205
+ removeLiquidityStatic(
206
+ market: string,
207
+ lpToRemove: BigNumberish,
208
+ overrides?: CallOverrides
209
+ ): Promise<
210
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netOtOut: BigNumber }
211
+ >;
212
+
213
+ scyIndex(market: string, overrides?: CallOverrides): Promise<BigNumber>;
214
+
215
+ swapOtForScyStatic(
216
+ market: string,
217
+ exactOtIn: BigNumberish,
218
+ overrides?: CallOverrides
219
+ ): Promise<
220
+ [BigNumber, BigNumber] & { netScyOut: BigNumber; netScyFee: BigNumber }
221
+ >;
222
+
223
+ swapScyForOtStatic(
224
+ market: string,
225
+ exactOtOut: BigNumberish,
226
+ overrides?: CallOverrides
227
+ ): Promise<
228
+ [BigNumber, BigNumber] & { netScyIn: BigNumber; netScyFee: BigNumber }
229
+ >;
230
+ };
231
+
232
+ filters: {};
233
+
234
+ estimateGas: {
235
+ addLiquidityStatic(
236
+ market: string,
237
+ scyDesired: BigNumberish,
238
+ otDesired: BigNumberish,
239
+ overrides?: Overrides & { from?: string | Promise<string> }
240
+ ): Promise<BigNumber>;
241
+
242
+ getOtImpliedYield(
243
+ market: string,
244
+ overrides?: CallOverrides
245
+ ): Promise<BigNumber>;
246
+
247
+ removeLiquidityStatic(
248
+ market: string,
249
+ lpToRemove: BigNumberish,
250
+ overrides?: CallOverrides
251
+ ): Promise<BigNumber>;
252
+
253
+ scyIndex(
254
+ market: string,
255
+ overrides?: Overrides & { from?: string | Promise<string> }
256
+ ): Promise<BigNumber>;
257
+
258
+ swapOtForScyStatic(
259
+ market: string,
260
+ exactOtIn: BigNumberish,
261
+ overrides?: Overrides & { from?: string | Promise<string> }
262
+ ): Promise<BigNumber>;
263
+
264
+ swapScyForOtStatic(
265
+ market: string,
266
+ exactOtOut: BigNumberish,
267
+ overrides?: Overrides & { from?: string | Promise<string> }
268
+ ): Promise<BigNumber>;
269
+ };
270
+
271
+ populateTransaction: {
272
+ addLiquidityStatic(
273
+ market: string,
274
+ scyDesired: BigNumberish,
275
+ otDesired: BigNumberish,
276
+ overrides?: Overrides & { from?: string | Promise<string> }
277
+ ): Promise<PopulatedTransaction>;
278
+
279
+ getOtImpliedYield(
280
+ market: string,
281
+ overrides?: CallOverrides
282
+ ): Promise<PopulatedTransaction>;
283
+
284
+ removeLiquidityStatic(
285
+ market: string,
286
+ lpToRemove: BigNumberish,
287
+ overrides?: CallOverrides
288
+ ): Promise<PopulatedTransaction>;
289
+
290
+ scyIndex(
291
+ market: string,
292
+ overrides?: Overrides & { from?: string | Promise<string> }
293
+ ): Promise<PopulatedTransaction>;
294
+
295
+ swapOtForScyStatic(
296
+ market: string,
297
+ exactOtIn: BigNumberish,
298
+ overrides?: Overrides & { from?: string | Promise<string> }
299
+ ): Promise<PopulatedTransaction>;
300
+
301
+ swapScyForOtStatic(
302
+ market: string,
303
+ exactOtOut: BigNumberish,
304
+ overrides?: Overrides & { from?: string | Promise<string> }
305
+ ): Promise<PopulatedTransaction>;
306
+ };
307
+ }