@pendle/core-v2 0.4.0 → 0.5.1-beta

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 (97) hide show
  1. package/contracts/SuperComposableYield/implementations/IRewardManager.sol +16 -0
  2. package/contracts/SuperComposableYield/implementations/RewardManager.sol +24 -5
  3. package/contracts/core/PendleMarket.sol +10 -18
  4. package/contracts/core/PendleMarketFactory.sol +49 -22
  5. package/contracts/core/PendleRouter.sol +74 -0
  6. package/contracts/core/PendleYieldToken.sol +20 -12
  7. package/contracts/core/RouterStatic.sol +234 -0
  8. package/contracts/core/actions/ActionCallback.sol +101 -0
  9. package/contracts/core/{router/PendleRouterCoreUpg.sol → actions/ActionCore.sol} +6 -10
  10. package/contracts/core/{router/PendleRouterYTUpg.sol → actions/ActionYT.sol} +6 -11
  11. package/contracts/core/{router/base/PendleRouterOTBaseUpg.sol → actions/base/ActionSCYAndOTBase.sol} +1 -5
  12. package/contracts/core/{router/base/PendleRouterSCYAndForgeBaseUpg.sol → actions/base/ActionSCYAndYOBase.sol} +3 -5
  13. package/contracts/core/{router/base/PendleRouterYTBaseUpg.sol → actions/base/ActionSCYAndYTBase.sol} +7 -99
  14. package/contracts/core/actions/base/ActionType.sol +11 -0
  15. package/contracts/interfaces/{IPRouterCore.sol → IPActionCore.sol} +1 -1
  16. package/contracts/interfaces/{IPRouterYT.sol → IPActionYT.sol} +1 -3
  17. package/contracts/interfaces/IPAllAction.sol +9 -0
  18. package/contracts/interfaces/IPMarketFactory.sol +11 -0
  19. package/contracts/interfaces/IPRouterStatic.sol +27 -0
  20. package/contracts/interfaces/IPYieldToken.sol +21 -3
  21. package/contracts/libraries/math/MarketMathCore.sol +3 -2
  22. package/package.json +1 -1
  23. package/typechain-types/{PendleRouterYTBaseUpg.ts → ActionCallback.ts} +5 -5
  24. package/typechain-types/{PendleRouterCoreUpg.ts → ActionCore.ts} +5 -5
  25. package/typechain-types/{PendleRouterSCYAndForgeBaseUpg.ts → ActionSCYAndYOBase.ts} +5 -6
  26. package/typechain-types/{BoringOwnableData.ts → ActionSCYAndYTBase.ts} +21 -24
  27. package/typechain-types/{PendleRouterStaticUpg.ts → ActionStatic.ts} +5 -5
  28. package/typechain-types/{IPRouterYT.ts → ActionYT.ts} +27 -42
  29. package/typechain-types/IPActionAll.ts +1431 -0
  30. package/typechain-types/{IPRouterCore.ts → IPActionCore.ts} +5 -5
  31. package/typechain-types/{IPRouterView.ts → IPActionStatic.ts} +57 -5
  32. package/typechain-types/{PendleRouterYTUpg.ts → IPActionYT.ts} +5 -97
  33. package/typechain-types/IPAllAction.ts +1431 -0
  34. package/typechain-types/IPMarket.ts +3 -0
  35. package/typechain-types/IPMarketFactory.ts +46 -0
  36. package/typechain-types/IPYieldToken.ts +342 -14
  37. package/typechain-types/IRewardManager.ts +178 -0
  38. package/typechain-types/PendleAaveV3SCY.ts +70 -64
  39. package/typechain-types/PendleBenQiErc20SCY.ts +70 -64
  40. package/typechain-types/PendleMarket.ts +3 -59
  41. package/typechain-types/PendleMarketFactory.ts +150 -24
  42. package/typechain-types/{PendleRouterProxy.ts → PendleRouter.ts} +29 -39
  43. package/typechain-types/PendleYieldToken.ts +116 -101
  44. package/typechain-types/RewardManager.ts +48 -42
  45. package/typechain-types/{PendleRouterViewUpg.ts → RouterStatic.ts} +97 -5
  46. package/typechain-types/SCYBaseWithRewards.ts +70 -64
  47. package/typechain-types/factories/ActionCallback__factory.ts +116 -0
  48. package/typechain-types/factories/ActionCore__factory.ts +632 -0
  49. package/typechain-types/factories/{PendleRouterSCYAndForgeBaseUpg__factory.ts → ActionSCYAndYOBase__factory.ts} +8 -12
  50. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +52 -0
  51. package/typechain-types/factories/ActionStatic__factory.ts +308 -0
  52. package/typechain-types/factories/ActionYT__factory.ts +370 -0
  53. package/typechain-types/factories/IPActionAll__factory.ts +983 -0
  54. package/typechain-types/factories/{IPRouterCore__factory.ts → IPActionCore__factory.ts} +6 -6
  55. package/typechain-types/factories/{IPRouterView__factory.ts → IPActionStatic__factory.ts} +38 -6
  56. package/typechain-types/factories/{IPRouterYT__factory.ts → IPActionYT__factory.ts} +6 -29
  57. package/typechain-types/factories/IPAllAction__factory.ts +983 -0
  58. package/typechain-types/factories/IPMarketFactory__factory.ts +28 -0
  59. package/typechain-types/factories/IPMarket__factory.ts +7 -2
  60. package/typechain-types/factories/IPYieldToken__factory.ts +158 -1
  61. package/typechain-types/factories/IRewardManager__factory.ts +92 -0
  62. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +34 -34
  63. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +34 -34
  64. package/typechain-types/factories/PendleBtrflyScy__factory.ts +1 -1
  65. package/typechain-types/factories/PendleMarketFactory__factory.ts +112 -17
  66. package/typechain-types/factories/PendleMarket__factory.ts +8 -69
  67. package/typechain-types/factories/PendleRouter__factory.ts +282 -0
  68. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +1 -1
  69. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  70. package/typechain-types/factories/PendleYieldToken__factory.ts +58 -58
  71. package/typechain-types/factories/RewardManager__factory.ts +18 -18
  72. package/typechain-types/factories/RouterStatic__factory.ts +308 -0
  73. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +33 -33
  74. package/typechain-types/hardhat.d.ts +93 -75
  75. package/typechain-types/index.ts +22 -18
  76. package/contracts/core/router/PendleRouterProxy.sol +0 -84
  77. package/contracts/core/router/PendleRouterStaticUpg.sol +0 -107
  78. package/contracts/interfaces/IPFlashCallBack.sol +0 -10
  79. package/typechain-types/BoringOwnable.ts +0 -194
  80. package/typechain-types/BoringOwnableUpg.ts +0 -194
  81. package/typechain-types/BoringOwnableUpgData.ts +0 -100
  82. package/typechain-types/IPFlashCallback.ts +0 -115
  83. package/typechain-types/IPermissionsV2.ts +0 -87
  84. package/typechain-types/PermissionsV2.ts +0 -87
  85. package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
  86. package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
  87. package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
  88. package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
  89. package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
  90. package/typechain-types/factories/IPermissionsV2__factory.ts +0 -39
  91. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
  92. package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
  93. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
  94. package/typechain-types/factories/PendleRouterViewUpg__factory.ts +0 -265
  95. package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
  96. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
  97. package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
@@ -22,15 +22,18 @@ import type {
22
22
  OnEvent,
23
23
  } from "./common";
24
24
 
25
- export interface PendleRouterViewUpgInterface extends utils.Interface {
26
- contractName: "PendleRouterViewUpg";
25
+ export interface RouterStaticInterface extends utils.Interface {
26
+ contractName: "RouterStatic";
27
27
  functions: {
28
28
  "addLiquidityStatic(address,uint256,uint256)": FunctionFragment;
29
29
  "getOtImpliedYield(address)": FunctionFragment;
30
+ "getPendleTokenType(address)": FunctionFragment;
31
+ "marketFactory()": FunctionFragment;
30
32
  "removeLiquidityStatic(address,uint256)": FunctionFragment;
31
33
  "scyIndex(address)": FunctionFragment;
32
34
  "swapOtForScyStatic(address,uint256)": FunctionFragment;
33
35
  "swapScyForOtStatic(address,uint256)": FunctionFragment;
36
+ "yieldContractFactory()": FunctionFragment;
34
37
  };
35
38
 
36
39
  encodeFunctionData(
@@ -41,6 +44,14 @@ export interface PendleRouterViewUpgInterface extends utils.Interface {
41
44
  functionFragment: "getOtImpliedYield",
42
45
  values: [string]
43
46
  ): string;
47
+ encodeFunctionData(
48
+ functionFragment: "getPendleTokenType",
49
+ values: [string]
50
+ ): string;
51
+ encodeFunctionData(
52
+ functionFragment: "marketFactory",
53
+ values?: undefined
54
+ ): string;
44
55
  encodeFunctionData(
45
56
  functionFragment: "removeLiquidityStatic",
46
57
  values: [string, BigNumberish]
@@ -54,6 +65,10 @@ export interface PendleRouterViewUpgInterface extends utils.Interface {
54
65
  functionFragment: "swapScyForOtStatic",
55
66
  values: [string, BigNumberish]
56
67
  ): string;
68
+ encodeFunctionData(
69
+ functionFragment: "yieldContractFactory",
70
+ values?: undefined
71
+ ): string;
57
72
 
58
73
  decodeFunctionResult(
59
74
  functionFragment: "addLiquidityStatic",
@@ -63,6 +78,14 @@ export interface PendleRouterViewUpgInterface extends utils.Interface {
63
78
  functionFragment: "getOtImpliedYield",
64
79
  data: BytesLike
65
80
  ): Result;
81
+ decodeFunctionResult(
82
+ functionFragment: "getPendleTokenType",
83
+ data: BytesLike
84
+ ): Result;
85
+ decodeFunctionResult(
86
+ functionFragment: "marketFactory",
87
+ data: BytesLike
88
+ ): Result;
66
89
  decodeFunctionResult(
67
90
  functionFragment: "removeLiquidityStatic",
68
91
  data: BytesLike
@@ -76,17 +99,21 @@ export interface PendleRouterViewUpgInterface extends utils.Interface {
76
99
  functionFragment: "swapScyForOtStatic",
77
100
  data: BytesLike
78
101
  ): Result;
102
+ decodeFunctionResult(
103
+ functionFragment: "yieldContractFactory",
104
+ data: BytesLike
105
+ ): Result;
79
106
 
80
107
  events: {};
81
108
  }
82
109
 
83
- export interface PendleRouterViewUpg extends BaseContract {
84
- contractName: "PendleRouterViewUpg";
110
+ export interface RouterStatic extends BaseContract {
111
+ contractName: "RouterStatic";
85
112
  connect(signerOrProvider: Signer | Provider | string): this;
86
113
  attach(addressOrName: string): this;
87
114
  deployed(): Promise<this>;
88
115
 
89
- interface: PendleRouterViewUpgInterface;
116
+ interface: RouterStaticInterface;
90
117
 
91
118
  queryFilter<TEvent extends TypedEvent>(
92
119
  event: TypedEventFilter<TEvent>,
@@ -120,6 +147,19 @@ export interface PendleRouterViewUpg extends BaseContract {
120
147
  overrides?: CallOverrides
121
148
  ): Promise<[BigNumber]>;
122
149
 
150
+ getPendleTokenType(
151
+ token: string,
152
+ overrides?: CallOverrides
153
+ ): Promise<
154
+ [boolean, boolean, boolean] & {
155
+ isOT: boolean;
156
+ isYT: boolean;
157
+ isMarket: boolean;
158
+ }
159
+ >;
160
+
161
+ marketFactory(overrides?: CallOverrides): Promise<[string]>;
162
+
123
163
  removeLiquidityStatic(
124
164
  market: string,
125
165
  lpToRemove: BigNumberish,
@@ -144,6 +184,8 @@ export interface PendleRouterViewUpg extends BaseContract {
144
184
  exactOtOut: BigNumberish,
145
185
  overrides?: Overrides & { from?: string | Promise<string> }
146
186
  ): Promise<ContractTransaction>;
187
+
188
+ yieldContractFactory(overrides?: CallOverrides): Promise<[string]>;
147
189
  };
148
190
 
149
191
  addLiquidityStatic(
@@ -158,6 +200,19 @@ export interface PendleRouterViewUpg extends BaseContract {
158
200
  overrides?: CallOverrides
159
201
  ): Promise<BigNumber>;
160
202
 
203
+ getPendleTokenType(
204
+ token: string,
205
+ overrides?: CallOverrides
206
+ ): Promise<
207
+ [boolean, boolean, boolean] & {
208
+ isOT: boolean;
209
+ isYT: boolean;
210
+ isMarket: boolean;
211
+ }
212
+ >;
213
+
214
+ marketFactory(overrides?: CallOverrides): Promise<string>;
215
+
161
216
  removeLiquidityStatic(
162
217
  market: string,
163
218
  lpToRemove: BigNumberish,
@@ -183,6 +238,8 @@ export interface PendleRouterViewUpg extends BaseContract {
183
238
  overrides?: Overrides & { from?: string | Promise<string> }
184
239
  ): Promise<ContractTransaction>;
185
240
 
241
+ yieldContractFactory(overrides?: CallOverrides): Promise<string>;
242
+
186
243
  callStatic: {
187
244
  addLiquidityStatic(
188
245
  market: string,
@@ -202,6 +259,19 @@ export interface PendleRouterViewUpg extends BaseContract {
202
259
  overrides?: CallOverrides
203
260
  ): Promise<BigNumber>;
204
261
 
262
+ getPendleTokenType(
263
+ token: string,
264
+ overrides?: CallOverrides
265
+ ): Promise<
266
+ [boolean, boolean, boolean] & {
267
+ isOT: boolean;
268
+ isYT: boolean;
269
+ isMarket: boolean;
270
+ }
271
+ >;
272
+
273
+ marketFactory(overrides?: CallOverrides): Promise<string>;
274
+
205
275
  removeLiquidityStatic(
206
276
  market: string,
207
277
  lpToRemove: BigNumberish,
@@ -227,6 +297,8 @@ export interface PendleRouterViewUpg extends BaseContract {
227
297
  ): Promise<
228
298
  [BigNumber, BigNumber] & { netScyIn: BigNumber; netScyFee: BigNumber }
229
299
  >;
300
+
301
+ yieldContractFactory(overrides?: CallOverrides): Promise<string>;
230
302
  };
231
303
 
232
304
  filters: {};
@@ -244,6 +316,13 @@ export interface PendleRouterViewUpg extends BaseContract {
244
316
  overrides?: CallOverrides
245
317
  ): Promise<BigNumber>;
246
318
 
319
+ getPendleTokenType(
320
+ token: string,
321
+ overrides?: CallOverrides
322
+ ): Promise<BigNumber>;
323
+
324
+ marketFactory(overrides?: CallOverrides): Promise<BigNumber>;
325
+
247
326
  removeLiquidityStatic(
248
327
  market: string,
249
328
  lpToRemove: BigNumberish,
@@ -266,6 +345,8 @@ export interface PendleRouterViewUpg extends BaseContract {
266
345
  exactOtOut: BigNumberish,
267
346
  overrides?: Overrides & { from?: string | Promise<string> }
268
347
  ): Promise<BigNumber>;
348
+
349
+ yieldContractFactory(overrides?: CallOverrides): Promise<BigNumber>;
269
350
  };
270
351
 
271
352
  populateTransaction: {
@@ -281,6 +362,13 @@ export interface PendleRouterViewUpg extends BaseContract {
281
362
  overrides?: CallOverrides
282
363
  ): Promise<PopulatedTransaction>;
283
364
 
365
+ getPendleTokenType(
366
+ token: string,
367
+ overrides?: CallOverrides
368
+ ): Promise<PopulatedTransaction>;
369
+
370
+ marketFactory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
371
+
284
372
  removeLiquidityStatic(
285
373
  market: string,
286
374
  lpToRemove: BigNumberish,
@@ -303,5 +391,9 @@ export interface PendleRouterViewUpg extends BaseContract {
303
391
  exactOtOut: BigNumberish,
304
392
  overrides?: Overrides & { from?: string | Promise<string> }
305
393
  ): Promise<PopulatedTransaction>;
394
+
395
+ yieldContractFactory(
396
+ overrides?: CallOverrides
397
+ ): Promise<PopulatedTransaction>;
306
398
  };
307
399
  }
@@ -32,8 +32,9 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
32
32
  "decimals()": FunctionFragment;
33
33
  "decreaseAllowance(address,uint256)": FunctionFragment;
34
34
  "getBaseTokens()": FunctionFragment;
35
+ "getGlobalReward(address)": FunctionFragment;
35
36
  "getRewardTokens()": FunctionFragment;
36
- "globalReward(address)": FunctionFragment;
37
+ "getUserReward(address,address)": FunctionFragment;
37
38
  "increaseAllowance(address,uint256)": FunctionFragment;
38
39
  "isValidBaseToken(address)": FunctionFragment;
39
40
  "mint(address,address,uint256,uint256)": FunctionFragment;
@@ -50,7 +51,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
50
51
  "transferFrom(address,address,uint256)": FunctionFragment;
51
52
  "updateGlobalReward()": FunctionFragment;
52
53
  "updateUserReward(address)": FunctionFragment;
53
- "userReward(address,address)": FunctionFragment;
54
54
  };
55
55
 
56
56
  encodeFunctionData(
@@ -75,13 +75,17 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
75
75
  functionFragment: "getBaseTokens",
76
76
  values?: undefined
77
77
  ): string;
78
+ encodeFunctionData(
79
+ functionFragment: "getGlobalReward",
80
+ values: [string]
81
+ ): string;
78
82
  encodeFunctionData(
79
83
  functionFragment: "getRewardTokens",
80
84
  values?: undefined
81
85
  ): string;
82
86
  encodeFunctionData(
83
- functionFragment: "globalReward",
84
- values: [string]
87
+ functionFragment: "getUserReward",
88
+ values: [string, string]
85
89
  ): string;
86
90
  encodeFunctionData(
87
91
  functionFragment: "increaseAllowance",
@@ -141,10 +145,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
141
145
  functionFragment: "updateUserReward",
142
146
  values: [string]
143
147
  ): string;
144
- encodeFunctionData(
145
- functionFragment: "userReward",
146
- values: [string, string]
147
- ): string;
148
148
 
149
149
  decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
150
150
  decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
@@ -162,12 +162,16 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
162
162
  functionFragment: "getBaseTokens",
163
163
  data: BytesLike
164
164
  ): Result;
165
+ decodeFunctionResult(
166
+ functionFragment: "getGlobalReward",
167
+ data: BytesLike
168
+ ): Result;
165
169
  decodeFunctionResult(
166
170
  functionFragment: "getRewardTokens",
167
171
  data: BytesLike
168
172
  ): Result;
169
173
  decodeFunctionResult(
170
- functionFragment: "globalReward",
174
+ functionFragment: "getUserReward",
171
175
  data: BytesLike
172
176
  ): Result;
173
177
  decodeFunctionResult(
@@ -216,7 +220,6 @@ export interface SCYBaseWithRewardsInterface extends utils.Interface {
216
220
  functionFragment: "updateUserReward",
217
221
  data: BytesLike
218
222
  ): Result;
219
- decodeFunctionResult(functionFragment: "userReward", data: BytesLike): Result;
220
223
 
221
224
  events: {
222
225
  "Approval(address,address,uint256)": EventFragment;
@@ -297,13 +300,24 @@ export interface SCYBaseWithRewards extends BaseContract {
297
300
  overrides?: CallOverrides
298
301
  ): Promise<[string[]] & { res: string[] }>;
299
302
 
303
+ getGlobalReward(
304
+ rewardToken: string,
305
+ overrides?: CallOverrides
306
+ ): Promise<
307
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
308
+ >;
309
+
300
310
  getRewardTokens(overrides?: CallOverrides): Promise<[string[]]>;
301
311
 
302
- globalReward(
303
- arg0: string,
312
+ getUserReward(
313
+ user: string,
314
+ rewardToken: string,
304
315
  overrides?: CallOverrides
305
316
  ): Promise<
306
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
317
+ [BigNumber, BigNumber] & {
318
+ lastIndex: BigNumber;
319
+ accruedReward: BigNumber;
320
+ }
307
321
  >;
308
322
 
309
323
  increaseAllowance(
@@ -387,17 +401,6 @@ export interface SCYBaseWithRewards extends BaseContract {
387
401
  user: string,
388
402
  overrides?: Overrides & { from?: string | Promise<string> }
389
403
  ): Promise<ContractTransaction>;
390
-
391
- userReward(
392
- arg0: string,
393
- arg1: string,
394
- overrides?: CallOverrides
395
- ): Promise<
396
- [BigNumber, BigNumber] & {
397
- lastIndex: BigNumber;
398
- accruedReward: BigNumber;
399
- }
400
- >;
401
404
  };
402
405
 
403
406
  allowance(
@@ -426,13 +429,21 @@ export interface SCYBaseWithRewards extends BaseContract {
426
429
 
427
430
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
428
431
 
432
+ getGlobalReward(
433
+ rewardToken: string,
434
+ overrides?: CallOverrides
435
+ ): Promise<
436
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
437
+ >;
438
+
429
439
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
430
440
 
431
- globalReward(
432
- arg0: string,
441
+ getUserReward(
442
+ user: string,
443
+ rewardToken: string,
433
444
  overrides?: CallOverrides
434
445
  ): Promise<
435
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
446
+ [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
436
447
  >;
437
448
 
438
449
  increaseAllowance(
@@ -512,14 +523,6 @@ export interface SCYBaseWithRewards extends BaseContract {
512
523
  overrides?: Overrides & { from?: string | Promise<string> }
513
524
  ): Promise<ContractTransaction>;
514
525
 
515
- userReward(
516
- arg0: string,
517
- arg1: string,
518
- overrides?: CallOverrides
519
- ): Promise<
520
- [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
521
- >;
522
-
523
526
  callStatic: {
524
527
  allowance(
525
528
  owner: string,
@@ -547,13 +550,24 @@ export interface SCYBaseWithRewards extends BaseContract {
547
550
 
548
551
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
549
552
 
553
+ getGlobalReward(
554
+ rewardToken: string,
555
+ overrides?: CallOverrides
556
+ ): Promise<
557
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
558
+ >;
559
+
550
560
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
551
561
 
552
- globalReward(
553
- arg0: string,
562
+ getUserReward(
563
+ user: string,
564
+ rewardToken: string,
554
565
  overrides?: CallOverrides
555
566
  ): Promise<
556
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
567
+ [BigNumber, BigNumber] & {
568
+ lastIndex: BigNumber;
569
+ accruedReward: BigNumber;
570
+ }
557
571
  >;
558
572
 
559
573
  increaseAllowance(
@@ -625,17 +639,6 @@ export interface SCYBaseWithRewards extends BaseContract {
625
639
  updateGlobalReward(overrides?: CallOverrides): Promise<void>;
626
640
 
627
641
  updateUserReward(user: string, overrides?: CallOverrides): Promise<void>;
628
-
629
- userReward(
630
- arg0: string,
631
- arg1: string,
632
- overrides?: CallOverrides
633
- ): Promise<
634
- [BigNumber, BigNumber] & {
635
- lastIndex: BigNumber;
636
- accruedReward: BigNumber;
637
- }
638
- >;
639
642
  };
640
643
 
641
644
  filters: {
@@ -689,9 +692,18 @@ export interface SCYBaseWithRewards extends BaseContract {
689
692
 
690
693
  getBaseTokens(overrides?: CallOverrides): Promise<BigNumber>;
691
694
 
695
+ getGlobalReward(
696
+ rewardToken: string,
697
+ overrides?: CallOverrides
698
+ ): Promise<BigNumber>;
699
+
692
700
  getRewardTokens(overrides?: CallOverrides): Promise<BigNumber>;
693
701
 
694
- globalReward(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
702
+ getUserReward(
703
+ user: string,
704
+ rewardToken: string,
705
+ overrides?: CallOverrides
706
+ ): Promise<BigNumber>;
695
707
 
696
708
  increaseAllowance(
697
709
  spender: string,
@@ -772,12 +784,6 @@ export interface SCYBaseWithRewards extends BaseContract {
772
784
  user: string,
773
785
  overrides?: Overrides & { from?: string | Promise<string> }
774
786
  ): Promise<BigNumber>;
775
-
776
- userReward(
777
- arg0: string,
778
- arg1: string,
779
- overrides?: CallOverrides
780
- ): Promise<BigNumber>;
781
787
  };
782
788
 
783
789
  populateTransaction: {
@@ -810,10 +816,16 @@ export interface SCYBaseWithRewards extends BaseContract {
810
816
 
811
817
  getBaseTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
812
818
 
819
+ getGlobalReward(
820
+ rewardToken: string,
821
+ overrides?: CallOverrides
822
+ ): Promise<PopulatedTransaction>;
823
+
813
824
  getRewardTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
814
825
 
815
- globalReward(
816
- arg0: string,
826
+ getUserReward(
827
+ user: string,
828
+ rewardToken: string,
817
829
  overrides?: CallOverrides
818
830
  ): Promise<PopulatedTransaction>;
819
831
 
@@ -896,11 +908,5 @@ export interface SCYBaseWithRewards extends BaseContract {
896
908
  user: string,
897
909
  overrides?: Overrides & { from?: string | Promise<string> }
898
910
  ): Promise<PopulatedTransaction>;
899
-
900
- userReward(
901
- arg0: string,
902
- arg1: string,
903
- overrides?: CallOverrides
904
- ): Promise<PopulatedTransaction>;
905
911
  };
906
912
  }
@@ -0,0 +1,116 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ ActionCallback,
8
+ ActionCallbackInterface,
9
+ } from "../ActionCallback";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "_marketFactory",
17
+ type: "address",
18
+ },
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "marketFactory",
26
+ outputs: [
27
+ {
28
+ internalType: "address",
29
+ name: "",
30
+ type: "address",
31
+ },
32
+ ],
33
+ stateMutability: "view",
34
+ type: "function",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "int256",
40
+ name: "otToAccount",
41
+ type: "int256",
42
+ },
43
+ {
44
+ internalType: "int256",
45
+ name: "scyToAccount",
46
+ type: "int256",
47
+ },
48
+ {
49
+ internalType: "bytes",
50
+ name: "data",
51
+ type: "bytes",
52
+ },
53
+ ],
54
+ name: "swapCallback",
55
+ outputs: [],
56
+ stateMutability: "nonpayable",
57
+ type: "function",
58
+ },
59
+ ];
60
+
61
+ const _bytecode =
62
+ "0x60a060405234801561001057600080fd5b50604051610e94380380610e9483398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610e04610090600039600081816040015260a60152610e046000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806306ae70951461003b578063fa483e7214610078575b600080fd5b6100627f000000000000000000000000000000000000000000000000000000000000000081565b60405161006f9190610a05565b60405180910390f35b61008b610086366004610a19565b61008d565b005b6040516358e6309f60e01b815233906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358e6309f906100db908490600401610a05565b60206040518083038186803b1580156100f357600080fd5b505afa158015610107573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061012b9190610a98565b61016d5760405162461bcd60e51b815260206004820152600e60248201526d1253959053125117d3505492d15560921b60448201526064015b60405180910390fd5b600061017b83850185610ae4565b509050600281600381111561019257610192610ba5565b14156101a8576101a3338585610254565b61024c565b60018160038111156101bc576101bc610ba5565b14156101cf576101a3338787878761035f565b60038160038111156101e3576101e3610ba5565b1480610200575060008160038111156101fe576101fe610ba5565b145b15610211576101a333868686610541565b60405162461bcd60e51b815260206004820152601060248201526f756e6b6e6f776e20737761705479706560801b6044820152606401610164565b505050505050565b6000836001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561028f57600080fd5b505afa1580156102a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c79190610bd3565b9250600091506102db905083850185610c20565b604051630aa1fb9760e41b81529092506001600160a01b038416915063aa1fb9709061030d9088908590600401610c57565b602060405180830381600087803b15801561032757600080fd5b505af115801561033b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024c9190610c71565b60008061036e83850185610c8a565b9250925050600080886001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b1580156103af57600080fd5b505afa1580156103c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103e79190610bd3565b925050915060006103ff6103fa8a6106ab565b6106bc565b9050600061040c896106bc565b9050600061048c856001600160a01b031663f65d6fc86040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104869190610c71565b846106cf565b9050600061049a82846106f5565b90506104b16001600160a01b03871689878461070c565b846001600160a01b031663aa1fb9708e896040518363ffffffff1660e01b81526004016104df929190610c57565b602060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105319190610c71565b5050505050505050505050505050565b600061054f82840184610c20565b915050600080866001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b815260040160606040518083038186803b15801561058e57600080fd5b505afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c69190610bd3565b925050915060006105d96103fa886106ab565b90506000826001600160a01b03166380a7c9ac306040518263ffffffff1660e01b81526004016106099190610a05565b602060405180830381600087803b15801561062357600080fd5b505af1158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190610c71565b90506106716001600160a01b0385168a8461077d565b6001600160a01b03851630146106a0576106a08561068f8484610cde565b6001600160a01b038716919061077d565b505050505050505050565b60006106b682610cf5565b92915050565b6000808212156106cb57600080fd5b5090565b6000826106e4670de0b6b3a764000084610d12565b6106ee9190610d31565b9392505050565b6000818310156107065760006106ee565b50900390565b6040516001600160a01b03808516602483015283166044820152606481018290526107779085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526107b2565b50505050565b6040516001600160a01b0383166024820152604481018290526107ad90849063a9059cbb60e01b90606401610740565b505050565b6000610807826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166108849092919063ffffffff16565b8051909150156107ad57808060200190518101906108259190610a98565b6107ad5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610164565b6060610893848460008561089b565b949350505050565b6060824710156108fc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610164565b6001600160a01b0385163b6109535760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610164565b600080866001600160a01b0316858760405161096f9190610d7f565b60006040518083038185875af1925050503d80600081146109ac576040519150601f19603f3d011682016040523d82523d6000602084013e6109b1565b606091505b50915091506109c18282866109cc565b979650505050505050565b606083156109db5750816106ee565b8251156109eb5782518084602001fd5b8160405162461bcd60e51b81526004016101649190610d9b565b6001600160a01b0391909116815260200190565b60008060008060608587031215610a2f57600080fd5b843593506020850135925060408501356001600160401b0380821115610a5457600080fd5b818701915087601f830112610a6857600080fd5b813581811115610a7757600080fd5b886020828501011115610a8957600080fd5b95989497505060200194505050565b600060208284031215610aaa57600080fd5b815180151581146106ee57600080fd5b803560048110610ac957600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610af757600080fd5b610b0083610aba565b915060208301356001600160401b0380821115610b1c57600080fd5b818501915085601f830112610b3057600080fd5b813581811115610b4257610b42610ace565b604051601f8201601f19908116603f01168101908382118183101715610b6a57610b6a610ace565b81604052828152886020848701011115610b8357600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b0381168114610bd057600080fd5b50565b600080600060608486031215610be857600080fd5b8351610bf381610bbb565b6020850151909350610c0481610bbb565b6040850151909250610c1581610bbb565b809150509250925092565b60008060408385031215610c3357600080fd5b610c3c83610aba565b91506020830135610c4c81610bbb565b809150509250929050565b6001600160a01b0392831681529116602082015260400190565b600060208284031215610c8357600080fd5b5051919050565b600080600060608486031215610c9f57600080fd5b610ca884610aba565b92506020840135610cb881610bbb565b91506040840135610c1581610bbb565b634e487b7160e01b600052601160045260246000fd5b600082821015610cf057610cf0610cc8565b500390565b6000600160ff1b821415610d0b57610d0b610cc8565b5060000390565b6000816000190483118215151615610d2c57610d2c610cc8565b500290565b600082610d4e57634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015610d6e578181015183820152602001610d56565b838111156107775750506000910152565b60008251610d91818460208701610d53565b9190910192915050565b6020815260008251806020840152610dba816040850160208701610d53565b601f01601f1916919091016040019291505056fea2646970667358221220fad1139516a811a2838b9edbcd07431428fae734a9c56cbe726b57ddd903316f64736f6c63430008090033";
63
+
64
+ type ActionCallbackConstructorParams =
65
+ | [signer?: Signer]
66
+ | ConstructorParameters<typeof ContractFactory>;
67
+
68
+ const isSuperArgs = (
69
+ xs: ActionCallbackConstructorParams
70
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
71
+
72
+ export class ActionCallback__factory extends ContractFactory {
73
+ constructor(...args: ActionCallbackConstructorParams) {
74
+ if (isSuperArgs(args)) {
75
+ super(...args);
76
+ } else {
77
+ super(_abi, _bytecode, args[0]);
78
+ }
79
+ this.contractName = "ActionCallback";
80
+ }
81
+
82
+ deploy(
83
+ _marketFactory: string,
84
+ overrides?: Overrides & { from?: string | Promise<string> }
85
+ ): Promise<ActionCallback> {
86
+ return super.deploy(
87
+ _marketFactory,
88
+ overrides || {}
89
+ ) as Promise<ActionCallback>;
90
+ }
91
+ getDeployTransaction(
92
+ _marketFactory: string,
93
+ overrides?: Overrides & { from?: string | Promise<string> }
94
+ ): TransactionRequest {
95
+ return super.getDeployTransaction(_marketFactory, overrides || {});
96
+ }
97
+ attach(address: string): ActionCallback {
98
+ return super.attach(address) as ActionCallback;
99
+ }
100
+ connect(signer: Signer): ActionCallback__factory {
101
+ return super.connect(signer) as ActionCallback__factory;
102
+ }
103
+ static readonly contractName: "ActionCallback";
104
+ public readonly contractName: "ActionCallback";
105
+ static readonly bytecode = _bytecode;
106
+ static readonly abi = _abi;
107
+ static createInterface(): ActionCallbackInterface {
108
+ return new utils.Interface(_abi) as ActionCallbackInterface;
109
+ }
110
+ static connect(
111
+ address: string,
112
+ signerOrProvider: Signer | Provider
113
+ ): ActionCallback {
114
+ return new Contract(address, _abi, signerOrProvider) as ActionCallback;
115
+ }
116
+ }