@pendle/core-v2 0.3.0 → 0.5.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 (104) hide show
  1. package/contracts/SuperComposableYield/ISuperComposableYield.sol +14 -0
  2. package/contracts/SuperComposableYield/implementations/IRewardManager.sol +16 -0
  3. package/contracts/SuperComposableYield/implementations/RewardManager.sol +24 -5
  4. package/contracts/SuperComposableYield/implementations/SCYBase.sol +21 -1
  5. package/contracts/core/PendleMarket.sol +10 -18
  6. package/contracts/core/PendleMarketFactory.sol +49 -22
  7. package/contracts/core/PendleRouter.sol +74 -0
  8. package/contracts/core/PendleYieldToken.sol +20 -12
  9. package/contracts/core/{router/PendleRouterStaticUpg.sol → RouterStatic.sol} +6 -6
  10. package/contracts/core/actions/ActionCallback.sol +101 -0
  11. package/contracts/core/{router/PendleRouterCoreUpg.sol → actions/ActionCore.sol} +6 -10
  12. package/contracts/core/{router/PendleRouterYTUpg.sol → actions/ActionYT.sol} +6 -11
  13. package/contracts/core/{router/base/PendleRouterOTBaseUpg.sol → actions/base/ActionSCYAndOTBase.sol} +1 -5
  14. package/contracts/core/{router/base/PendleRouterSCYAndForgeBaseUpg.sol → actions/base/ActionSCYAndYOBase.sol} +6 -8
  15. package/contracts/core/{router/base/PendleRouterYTBaseUpg.sol → actions/base/ActionSCYAndYTBase.sol} +7 -99
  16. package/contracts/core/actions/base/ActionType.sol +11 -0
  17. package/contracts/interfaces/{IPRouterCore.sol → IPActionCore.sol} +1 -1
  18. package/contracts/interfaces/{IPRouterYT.sol → IPActionYT.sol} +1 -3
  19. package/contracts/interfaces/IPAllAction.sol +9 -0
  20. package/contracts/interfaces/IPMarketFactory.sol +11 -0
  21. package/contracts/interfaces/IPYieldToken.sol +21 -3
  22. package/contracts/libraries/math/MarketMathCore.sol +3 -2
  23. package/package.json +1 -1
  24. package/typechain-types/{PendleRouterYTBaseUpg.ts → ActionCallback.ts} +5 -5
  25. package/typechain-types/{PendleRouterCoreUpg.ts → ActionCore.ts} +5 -5
  26. package/typechain-types/{PendleRouterSCYAndForgeBaseUpg.ts → ActionSCYAndYOBase.ts} +5 -6
  27. package/typechain-types/{BoringOwnableData.ts → ActionSCYAndYTBase.ts} +21 -24
  28. package/typechain-types/{PendleRouterStaticUpg.ts → ActionStatic.ts} +5 -5
  29. package/typechain-types/{IPRouterYT.ts → ActionYT.ts} +27 -42
  30. package/typechain-types/IPActionAll.ts +1431 -0
  31. package/typechain-types/{IPRouterCore.ts → IPActionCore.ts} +5 -5
  32. package/typechain-types/{IPRouterView.ts → IPActionStatic.ts} +57 -5
  33. package/typechain-types/{PendleRouterYTUpg.ts → IPActionYT.ts} +5 -97
  34. package/typechain-types/IPAllAction.ts +1431 -0
  35. package/typechain-types/IPMarket.ts +3 -0
  36. package/typechain-types/IPMarketFactory.ts +46 -0
  37. package/typechain-types/IPYieldToken.ts +342 -14
  38. package/typechain-types/IRewardManager.ts +178 -0
  39. package/typechain-types/ISuperComposableYield.ts +97 -2
  40. package/typechain-types/PendleAaveV3SCY.ts +167 -66
  41. package/typechain-types/PendleBenQiErc20SCY.ts +167 -66
  42. package/typechain-types/PendleBtrflyScy.ts +97 -2
  43. package/typechain-types/PendleMarket.ts +3 -59
  44. package/typechain-types/PendleMarketFactory.ts +150 -24
  45. package/typechain-types/{PendleRouterProxy.ts → PendleRouter.ts} +29 -39
  46. package/typechain-types/PendleYearnVaultScy.ts +97 -2
  47. package/typechain-types/PendleYieldToken.ts +116 -101
  48. package/typechain-types/RewardManager.ts +48 -42
  49. package/typechain-types/RouterStatic.ts +828 -0
  50. package/typechain-types/SCYBase.ts +97 -2
  51. package/typechain-types/SCYBaseWithRewards.ts +167 -66
  52. package/typechain-types/factories/ActionCallback__factory.ts +116 -0
  53. package/typechain-types/factories/ActionCore__factory.ts +632 -0
  54. package/typechain-types/factories/{PendleRouterSCYAndForgeBaseUpg__factory.ts → ActionSCYAndYOBase__factory.ts} +8 -12
  55. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +52 -0
  56. package/typechain-types/factories/ActionStatic__factory.ts +308 -0
  57. package/typechain-types/factories/ActionYT__factory.ts +370 -0
  58. package/typechain-types/factories/IPActionAll__factory.ts +983 -0
  59. package/typechain-types/factories/{IPRouterCore__factory.ts → IPActionCore__factory.ts} +6 -6
  60. package/typechain-types/factories/{IPRouterView__factory.ts → IPActionStatic__factory.ts} +38 -6
  61. package/typechain-types/factories/{IPRouterYT__factory.ts → IPActionYT__factory.ts} +6 -29
  62. package/typechain-types/factories/IPAllAction__factory.ts +983 -0
  63. package/typechain-types/factories/IPMarketFactory__factory.ts +28 -0
  64. package/typechain-types/factories/IPMarket__factory.ts +7 -2
  65. package/typechain-types/factories/IPYieldToken__factory.ts +158 -1
  66. package/typechain-types/factories/IRewardManager__factory.ts +92 -0
  67. package/typechain-types/factories/ISuperComposableYield__factory.ts +68 -0
  68. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +102 -34
  69. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +102 -34
  70. package/typechain-types/factories/PendleBtrflyScy__factory.ts +69 -1
  71. package/typechain-types/factories/PendleMarketFactory__factory.ts +112 -17
  72. package/typechain-types/factories/PendleMarket__factory.ts +8 -69
  73. package/typechain-types/factories/PendleRouter__factory.ts +282 -0
  74. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +69 -1
  75. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +1 -1
  76. package/typechain-types/factories/PendleYieldToken__factory.ts +58 -58
  77. package/typechain-types/factories/RewardManager__factory.ts +18 -18
  78. package/typechain-types/factories/RouterStatic__factory.ts +883 -0
  79. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +101 -33
  80. package/typechain-types/factories/SCYBase__factory.ts +68 -0
  81. package/typechain-types/hardhat.d.ts +93 -75
  82. package/typechain-types/index.ts +22 -18
  83. package/contracts/core/router/PendleRouterProxy.sol +0 -84
  84. package/contracts/interfaces/IPFlashCallBack.sol +0 -10
  85. package/typechain-types/BoringOwnable.ts +0 -194
  86. package/typechain-types/BoringOwnableUpg.ts +0 -194
  87. package/typechain-types/BoringOwnableUpgData.ts +0 -100
  88. package/typechain-types/IPFlashCallback.ts +0 -115
  89. package/typechain-types/IPermissionsV2.ts +0 -87
  90. package/typechain-types/PendleRouterViewUpg.ts +0 -307
  91. package/typechain-types/PermissionsV2.ts +0 -87
  92. package/typechain-types/factories/BoringOwnableData__factory.ts +0 -90
  93. package/typechain-types/factories/BoringOwnableUpgData__factory.ts +0 -94
  94. package/typechain-types/factories/BoringOwnableUpg__factory.ts +0 -139
  95. package/typechain-types/factories/BoringOwnable__factory.ts +0 -149
  96. package/typechain-types/factories/IPFlashCallback__factory.ts +0 -49
  97. package/typechain-types/factories/IPermissionsV2__factory.ts +0 -39
  98. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +0 -635
  99. package/typechain-types/factories/PendleRouterProxy__factory.ts +0 -285
  100. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +0 -315
  101. package/typechain-types/factories/PendleRouterViewUpg__factory.ts +0 -265
  102. package/typechain-types/factories/PendleRouterYTBaseUpg__factory.ts +0 -66
  103. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +0 -422
  104. package/typechain-types/factories/PermissionsV2__factory.ts +0 -36
@@ -35,15 +35,18 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
35
35
  "decimals()": FunctionFragment;
36
36
  "decreaseAllowance(address,uint256)": FunctionFragment;
37
37
  "getBaseTokens()": FunctionFragment;
38
+ "getGlobalReward(address)": FunctionFragment;
38
39
  "getRewardTokens()": FunctionFragment;
39
- "globalReward(address)": FunctionFragment;
40
+ "getUserReward(address,address)": FunctionFragment;
40
41
  "increaseAllowance(address,uint256)": FunctionFragment;
41
42
  "isValidBaseToken(address)": FunctionFragment;
42
43
  "lastScyIndex()": FunctionFragment;
43
- "mint(address,address,uint256)": FunctionFragment;
44
+ "mint(address,address,uint256,uint256)": FunctionFragment;
45
+ "mintNoPull(address,address,uint256)": FunctionFragment;
44
46
  "name()": FunctionFragment;
45
47
  "qiToken()": FunctionFragment;
46
- "redeem(address,address,uint256)": FunctionFragment;
48
+ "redeem(address,address,uint256,uint256)": FunctionFragment;
49
+ "redeemNoPull(address,address,uint256)": FunctionFragment;
47
50
  "redeemReward(address)": FunctionFragment;
48
51
  "scyIndexCurrent()": FunctionFragment;
49
52
  "scyIndexStored()": FunctionFragment;
@@ -54,7 +57,6 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
54
57
  "underlying()": FunctionFragment;
55
58
  "updateGlobalReward()": FunctionFragment;
56
59
  "updateUserReward(address)": FunctionFragment;
57
- "userReward(address,address)": FunctionFragment;
58
60
  };
59
61
 
60
62
  encodeFunctionData(functionFragment: "QI", values?: undefined): string;
@@ -85,13 +87,17 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
85
87
  functionFragment: "getBaseTokens",
86
88
  values?: undefined
87
89
  ): string;
90
+ encodeFunctionData(
91
+ functionFragment: "getGlobalReward",
92
+ values: [string]
93
+ ): string;
88
94
  encodeFunctionData(
89
95
  functionFragment: "getRewardTokens",
90
96
  values?: undefined
91
97
  ): string;
92
98
  encodeFunctionData(
93
- functionFragment: "globalReward",
94
- values: [string]
99
+ functionFragment: "getUserReward",
100
+ values: [string, string]
95
101
  ): string;
96
102
  encodeFunctionData(
97
103
  functionFragment: "increaseAllowance",
@@ -107,12 +113,20 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
107
113
  ): string;
108
114
  encodeFunctionData(
109
115
  functionFragment: "mint",
116
+ values: [string, string, BigNumberish, BigNumberish]
117
+ ): string;
118
+ encodeFunctionData(
119
+ functionFragment: "mintNoPull",
110
120
  values: [string, string, BigNumberish]
111
121
  ): string;
112
122
  encodeFunctionData(functionFragment: "name", values?: undefined): string;
113
123
  encodeFunctionData(functionFragment: "qiToken", values?: undefined): string;
114
124
  encodeFunctionData(
115
125
  functionFragment: "redeem",
126
+ values: [string, string, BigNumberish, BigNumberish]
127
+ ): string;
128
+ encodeFunctionData(
129
+ functionFragment: "redeemNoPull",
116
130
  values: [string, string, BigNumberish]
117
131
  ): string;
118
132
  encodeFunctionData(
@@ -152,10 +166,6 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
152
166
  functionFragment: "updateUserReward",
153
167
  values: [string]
154
168
  ): string;
155
- encodeFunctionData(
156
- functionFragment: "userReward",
157
- values: [string, string]
158
- ): string;
159
169
 
160
170
  decodeFunctionResult(functionFragment: "QI", data: BytesLike): Result;
161
171
  decodeFunctionResult(functionFragment: "WAVAX", data: BytesLike): Result;
@@ -179,12 +189,16 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
179
189
  functionFragment: "getBaseTokens",
180
190
  data: BytesLike
181
191
  ): Result;
192
+ decodeFunctionResult(
193
+ functionFragment: "getGlobalReward",
194
+ data: BytesLike
195
+ ): Result;
182
196
  decodeFunctionResult(
183
197
  functionFragment: "getRewardTokens",
184
198
  data: BytesLike
185
199
  ): Result;
186
200
  decodeFunctionResult(
187
- functionFragment: "globalReward",
201
+ functionFragment: "getUserReward",
188
202
  data: BytesLike
189
203
  ): Result;
190
204
  decodeFunctionResult(
@@ -200,9 +214,14 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
200
214
  data: BytesLike
201
215
  ): Result;
202
216
  decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
217
+ decodeFunctionResult(functionFragment: "mintNoPull", data: BytesLike): Result;
203
218
  decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
204
219
  decodeFunctionResult(functionFragment: "qiToken", data: BytesLike): Result;
205
220
  decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
221
+ decodeFunctionResult(
222
+ functionFragment: "redeemNoPull",
223
+ data: BytesLike
224
+ ): Result;
206
225
  decodeFunctionResult(
207
226
  functionFragment: "redeemReward",
208
227
  data: BytesLike
@@ -234,7 +253,6 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
234
253
  functionFragment: "updateUserReward",
235
254
  data: BytesLike
236
255
  ): Result;
237
- decodeFunctionResult(functionFragment: "userReward", data: BytesLike): Result;
238
256
 
239
257
  events: {
240
258
  "Approval(address,address,uint256)": EventFragment;
@@ -321,15 +339,26 @@ export interface PendleBenQiErc20SCY extends BaseContract {
321
339
  overrides?: CallOverrides
322
340
  ): Promise<[string[]] & { res: string[] }>;
323
341
 
342
+ getGlobalReward(
343
+ rewardToken: string,
344
+ overrides?: CallOverrides
345
+ ): Promise<
346
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
347
+ >;
348
+
324
349
  getRewardTokens(
325
350
  overrides?: CallOverrides
326
351
  ): Promise<[string[]] & { res: string[] }>;
327
352
 
328
- globalReward(
329
- arg0: string,
353
+ getUserReward(
354
+ user: string,
355
+ rewardToken: string,
330
356
  overrides?: CallOverrides
331
357
  ): Promise<
332
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
358
+ [BigNumber, BigNumber] & {
359
+ lastIndex: BigNumber;
360
+ accruedReward: BigNumber;
361
+ }
333
362
  >;
334
363
 
335
364
  increaseAllowance(
@@ -346,6 +375,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
346
375
  lastScyIndex(overrides?: CallOverrides): Promise<[BigNumber]>;
347
376
 
348
377
  mint(
378
+ receiver: string,
379
+ baseTokenIn: string,
380
+ amountBaseToPull: BigNumberish,
381
+ minAmountScyOut: BigNumberish,
382
+ overrides?: Overrides & { from?: string | Promise<string> }
383
+ ): Promise<ContractTransaction>;
384
+
385
+ mintNoPull(
349
386
  receiver: string,
350
387
  baseTokenIn: string,
351
388
  minAmountScyOut: BigNumberish,
@@ -357,6 +394,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
357
394
  qiToken(overrides?: CallOverrides): Promise<[string]>;
358
395
 
359
396
  redeem(
397
+ receiver: string,
398
+ baseTokenOut: string,
399
+ amountScyToPull: BigNumberish,
400
+ minAmountBaseOut: BigNumberish,
401
+ overrides?: Overrides & { from?: string | Promise<string> }
402
+ ): Promise<ContractTransaction>;
403
+
404
+ redeemNoPull(
360
405
  receiver: string,
361
406
  baseTokenOut: string,
362
407
  minAmountBaseOut: BigNumberish,
@@ -403,17 +448,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
403
448
  user: string,
404
449
  overrides?: Overrides & { from?: string | Promise<string> }
405
450
  ): Promise<ContractTransaction>;
406
-
407
- userReward(
408
- arg0: string,
409
- arg1: string,
410
- overrides?: CallOverrides
411
- ): Promise<
412
- [BigNumber, BigNumber] & {
413
- lastIndex: BigNumber;
414
- accruedReward: BigNumber;
415
- }
416
- >;
417
451
  };
418
452
 
419
453
  QI(overrides?: CallOverrides): Promise<string>;
@@ -448,13 +482,21 @@ export interface PendleBenQiErc20SCY extends BaseContract {
448
482
 
449
483
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
450
484
 
485
+ getGlobalReward(
486
+ rewardToken: string,
487
+ overrides?: CallOverrides
488
+ ): Promise<
489
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
490
+ >;
491
+
451
492
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
452
493
 
453
- globalReward(
454
- arg0: string,
494
+ getUserReward(
495
+ user: string,
496
+ rewardToken: string,
455
497
  overrides?: CallOverrides
456
498
  ): Promise<
457
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
499
+ [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
458
500
  >;
459
501
 
460
502
  increaseAllowance(
@@ -468,6 +510,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
468
510
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
469
511
 
470
512
  mint(
513
+ receiver: string,
514
+ baseTokenIn: string,
515
+ amountBaseToPull: BigNumberish,
516
+ minAmountScyOut: BigNumberish,
517
+ overrides?: Overrides & { from?: string | Promise<string> }
518
+ ): Promise<ContractTransaction>;
519
+
520
+ mintNoPull(
471
521
  receiver: string,
472
522
  baseTokenIn: string,
473
523
  minAmountScyOut: BigNumberish,
@@ -479,6 +529,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
479
529
  qiToken(overrides?: CallOverrides): Promise<string>;
480
530
 
481
531
  redeem(
532
+ receiver: string,
533
+ baseTokenOut: string,
534
+ amountScyToPull: BigNumberish,
535
+ minAmountBaseOut: BigNumberish,
536
+ overrides?: Overrides & { from?: string | Promise<string> }
537
+ ): Promise<ContractTransaction>;
538
+
539
+ redeemNoPull(
482
540
  receiver: string,
483
541
  baseTokenOut: string,
484
542
  minAmountBaseOut: BigNumberish,
@@ -524,14 +582,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
524
582
  overrides?: Overrides & { from?: string | Promise<string> }
525
583
  ): Promise<ContractTransaction>;
526
584
 
527
- userReward(
528
- arg0: string,
529
- arg1: string,
530
- overrides?: CallOverrides
531
- ): Promise<
532
- [BigNumber, BigNumber] & { lastIndex: BigNumber; accruedReward: BigNumber }
533
- >;
534
-
535
585
  callStatic: {
536
586
  QI(overrides?: CallOverrides): Promise<string>;
537
587
 
@@ -565,13 +615,24 @@ export interface PendleBenQiErc20SCY extends BaseContract {
565
615
 
566
616
  getBaseTokens(overrides?: CallOverrides): Promise<string[]>;
567
617
 
618
+ getGlobalReward(
619
+ rewardToken: string,
620
+ overrides?: CallOverrides
621
+ ): Promise<
622
+ [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
623
+ >;
624
+
568
625
  getRewardTokens(overrides?: CallOverrides): Promise<string[]>;
569
626
 
570
- globalReward(
571
- arg0: string,
627
+ getUserReward(
628
+ user: string,
629
+ rewardToken: string,
572
630
  overrides?: CallOverrides
573
631
  ): Promise<
574
- [BigNumber, BigNumber] & { index: BigNumber; lastBalance: BigNumber }
632
+ [BigNumber, BigNumber] & {
633
+ lastIndex: BigNumber;
634
+ accruedReward: BigNumber;
635
+ }
575
636
  >;
576
637
 
577
638
  increaseAllowance(
@@ -588,6 +649,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
588
649
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
589
650
 
590
651
  mint(
652
+ receiver: string,
653
+ baseTokenIn: string,
654
+ amountBaseToPull: BigNumberish,
655
+ minAmountScyOut: BigNumberish,
656
+ overrides?: CallOverrides
657
+ ): Promise<BigNumber>;
658
+
659
+ mintNoPull(
591
660
  receiver: string,
592
661
  baseTokenIn: string,
593
662
  minAmountScyOut: BigNumberish,
@@ -599,6 +668,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
599
668
  qiToken(overrides?: CallOverrides): Promise<string>;
600
669
 
601
670
  redeem(
671
+ receiver: string,
672
+ baseTokenOut: string,
673
+ amountScyToPull: BigNumberish,
674
+ minAmountBaseOut: BigNumberish,
675
+ overrides?: CallOverrides
676
+ ): Promise<BigNumber>;
677
+
678
+ redeemNoPull(
602
679
  receiver: string,
603
680
  baseTokenOut: string,
604
681
  minAmountBaseOut: BigNumberish,
@@ -633,17 +710,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
633
710
  updateGlobalReward(overrides?: CallOverrides): Promise<void>;
634
711
 
635
712
  updateUserReward(user: string, overrides?: CallOverrides): Promise<void>;
636
-
637
- userReward(
638
- arg0: string,
639
- arg1: string,
640
- overrides?: CallOverrides
641
- ): Promise<
642
- [BigNumber, BigNumber] & {
643
- lastIndex: BigNumber;
644
- accruedReward: BigNumber;
645
- }
646
- >;
647
713
  };
648
714
 
649
715
  filters: {
@@ -703,9 +769,18 @@ export interface PendleBenQiErc20SCY extends BaseContract {
703
769
 
704
770
  getBaseTokens(overrides?: CallOverrides): Promise<BigNumber>;
705
771
 
772
+ getGlobalReward(
773
+ rewardToken: string,
774
+ overrides?: CallOverrides
775
+ ): Promise<BigNumber>;
776
+
706
777
  getRewardTokens(overrides?: CallOverrides): Promise<BigNumber>;
707
778
 
708
- globalReward(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
779
+ getUserReward(
780
+ user: string,
781
+ rewardToken: string,
782
+ overrides?: CallOverrides
783
+ ): Promise<BigNumber>;
709
784
 
710
785
  increaseAllowance(
711
786
  spender: string,
@@ -721,6 +796,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
721
796
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
722
797
 
723
798
  mint(
799
+ receiver: string,
800
+ baseTokenIn: string,
801
+ amountBaseToPull: BigNumberish,
802
+ minAmountScyOut: BigNumberish,
803
+ overrides?: Overrides & { from?: string | Promise<string> }
804
+ ): Promise<BigNumber>;
805
+
806
+ mintNoPull(
724
807
  receiver: string,
725
808
  baseTokenIn: string,
726
809
  minAmountScyOut: BigNumberish,
@@ -732,6 +815,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
732
815
  qiToken(overrides?: CallOverrides): Promise<BigNumber>;
733
816
 
734
817
  redeem(
818
+ receiver: string,
819
+ baseTokenOut: string,
820
+ amountScyToPull: BigNumberish,
821
+ minAmountBaseOut: BigNumberish,
822
+ overrides?: Overrides & { from?: string | Promise<string> }
823
+ ): Promise<BigNumber>;
824
+
825
+ redeemNoPull(
735
826
  receiver: string,
736
827
  baseTokenOut: string,
737
828
  minAmountBaseOut: BigNumberish,
@@ -776,12 +867,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
776
867
  user: string,
777
868
  overrides?: Overrides & { from?: string | Promise<string> }
778
869
  ): Promise<BigNumber>;
779
-
780
- userReward(
781
- arg0: string,
782
- arg1: string,
783
- overrides?: CallOverrides
784
- ): Promise<BigNumber>;
785
870
  };
786
871
 
787
872
  populateTransaction: {
@@ -820,10 +905,16 @@ export interface PendleBenQiErc20SCY extends BaseContract {
820
905
 
821
906
  getBaseTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
822
907
 
908
+ getGlobalReward(
909
+ rewardToken: string,
910
+ overrides?: CallOverrides
911
+ ): Promise<PopulatedTransaction>;
912
+
823
913
  getRewardTokens(overrides?: CallOverrides): Promise<PopulatedTransaction>;
824
914
 
825
- globalReward(
826
- arg0: string,
915
+ getUserReward(
916
+ user: string,
917
+ rewardToken: string,
827
918
  overrides?: CallOverrides
828
919
  ): Promise<PopulatedTransaction>;
829
920
 
@@ -841,6 +932,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
841
932
  lastScyIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
842
933
 
843
934
  mint(
935
+ receiver: string,
936
+ baseTokenIn: string,
937
+ amountBaseToPull: BigNumberish,
938
+ minAmountScyOut: BigNumberish,
939
+ overrides?: Overrides & { from?: string | Promise<string> }
940
+ ): Promise<PopulatedTransaction>;
941
+
942
+ mintNoPull(
844
943
  receiver: string,
845
944
  baseTokenIn: string,
846
945
  minAmountScyOut: BigNumberish,
@@ -852,6 +951,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
852
951
  qiToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
853
952
 
854
953
  redeem(
954
+ receiver: string,
955
+ baseTokenOut: string,
956
+ amountScyToPull: BigNumberish,
957
+ minAmountBaseOut: BigNumberish,
958
+ overrides?: Overrides & { from?: string | Promise<string> }
959
+ ): Promise<PopulatedTransaction>;
960
+
961
+ redeemNoPull(
855
962
  receiver: string,
856
963
  baseTokenOut: string,
857
964
  minAmountBaseOut: BigNumberish,
@@ -896,11 +1003,5 @@ export interface PendleBenQiErc20SCY extends BaseContract {
896
1003
  user: string,
897
1004
  overrides?: Overrides & { from?: string | Promise<string> }
898
1005
  ): Promise<PopulatedTransaction>;
899
-
900
- userReward(
901
- arg0: string,
902
- arg1: string,
903
- overrides?: CallOverrides
904
- ): Promise<PopulatedTransaction>;
905
1006
  };
906
1007
  }
@@ -37,9 +37,11 @@ export interface PendleBtrflyScyInterface extends utils.Interface {
37
37
  "increaseAllowance(address,uint256)": FunctionFragment;
38
38
  "isValidBaseToken(address)": FunctionFragment;
39
39
  "lastScyIndex()": FunctionFragment;
40
- "mint(address,address,uint256)": FunctionFragment;
40
+ "mint(address,address,uint256,uint256)": FunctionFragment;
41
+ "mintNoPull(address,address,uint256)": FunctionFragment;
41
42
  "name()": FunctionFragment;
42
- "redeem(address,address,uint256)": FunctionFragment;
43
+ "redeem(address,address,uint256,uint256)": FunctionFragment;
44
+ "redeemNoPull(address,address,uint256)": FunctionFragment;
43
45
  "redeemReward(address)": FunctionFragment;
44
46
  "scyIndexCurrent()": FunctionFragment;
45
47
  "scyIndexStored()": FunctionFragment;
@@ -94,11 +96,19 @@ export interface PendleBtrflyScyInterface extends utils.Interface {
94
96
  ): string;
95
97
  encodeFunctionData(
96
98
  functionFragment: "mint",
99
+ values: [string, string, BigNumberish, BigNumberish]
100
+ ): string;
101
+ encodeFunctionData(
102
+ functionFragment: "mintNoPull",
97
103
  values: [string, string, BigNumberish]
98
104
  ): string;
99
105
  encodeFunctionData(functionFragment: "name", values?: undefined): string;
100
106
  encodeFunctionData(
101
107
  functionFragment: "redeem",
108
+ values: [string, string, BigNumberish, BigNumberish]
109
+ ): string;
110
+ encodeFunctionData(
111
+ functionFragment: "redeemNoPull",
102
112
  values: [string, string, BigNumberish]
103
113
  ): string;
104
114
  encodeFunctionData(
@@ -171,8 +181,13 @@ export interface PendleBtrflyScyInterface extends utils.Interface {
171
181
  data: BytesLike
172
182
  ): Result;
173
183
  decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
184
+ decodeFunctionResult(functionFragment: "mintNoPull", data: BytesLike): Result;
174
185
  decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
175
186
  decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
187
+ decodeFunctionResult(
188
+ functionFragment: "redeemNoPull",
189
+ data: BytesLike
190
+ ): Result;
176
191
  decodeFunctionResult(
177
192
  functionFragment: "redeemReward",
178
193
  data: BytesLike
@@ -305,6 +320,14 @@ export interface PendleBtrflyScy extends BaseContract {
305
320
  lastScyIndex(overrides?: CallOverrides): Promise<[BigNumber]>;
306
321
 
307
322
  mint(
323
+ receiver: string,
324
+ baseTokenIn: string,
325
+ amountBaseToPull: BigNumberish,
326
+ minAmountScyOut: BigNumberish,
327
+ overrides?: Overrides & { from?: string | Promise<string> }
328
+ ): Promise<ContractTransaction>;
329
+
330
+ mintNoPull(
308
331
  receiver: string,
309
332
  baseTokenIn: string,
310
333
  minAmountScyOut: BigNumberish,
@@ -314,6 +337,14 @@ export interface PendleBtrflyScy extends BaseContract {
314
337
  name(overrides?: CallOverrides): Promise<[string]>;
315
338
 
316
339
  redeem(
340
+ receiver: string,
341
+ baseTokenOut: string,
342
+ amountScyToPull: BigNumberish,
343
+ minAmountBaseOut: BigNumberish,
344
+ overrides?: Overrides & { from?: string | Promise<string> }
345
+ ): Promise<ContractTransaction>;
346
+
347
+ redeemNoPull(
317
348
  receiver: string,
318
349
  baseTokenOut: string,
319
350
  minAmountBaseOut: BigNumberish,
@@ -405,6 +436,14 @@ export interface PendleBtrflyScy extends BaseContract {
405
436
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
406
437
 
407
438
  mint(
439
+ receiver: string,
440
+ baseTokenIn: string,
441
+ amountBaseToPull: BigNumberish,
442
+ minAmountScyOut: BigNumberish,
443
+ overrides?: Overrides & { from?: string | Promise<string> }
444
+ ): Promise<ContractTransaction>;
445
+
446
+ mintNoPull(
408
447
  receiver: string,
409
448
  baseTokenIn: string,
410
449
  minAmountScyOut: BigNumberish,
@@ -414,6 +453,14 @@ export interface PendleBtrflyScy extends BaseContract {
414
453
  name(overrides?: CallOverrides): Promise<string>;
415
454
 
416
455
  redeem(
456
+ receiver: string,
457
+ baseTokenOut: string,
458
+ amountScyToPull: BigNumberish,
459
+ minAmountBaseOut: BigNumberish,
460
+ overrides?: Overrides & { from?: string | Promise<string> }
461
+ ): Promise<ContractTransaction>;
462
+
463
+ redeemNoPull(
417
464
  receiver: string,
418
465
  baseTokenOut: string,
419
466
  minAmountBaseOut: BigNumberish,
@@ -506,6 +553,14 @@ export interface PendleBtrflyScy extends BaseContract {
506
553
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
507
554
 
508
555
  mint(
556
+ receiver: string,
557
+ baseTokenIn: string,
558
+ amountBaseToPull: BigNumberish,
559
+ minAmountScyOut: BigNumberish,
560
+ overrides?: CallOverrides
561
+ ): Promise<BigNumber>;
562
+
563
+ mintNoPull(
509
564
  receiver: string,
510
565
  baseTokenIn: string,
511
566
  minAmountScyOut: BigNumberish,
@@ -515,6 +570,14 @@ export interface PendleBtrflyScy extends BaseContract {
515
570
  name(overrides?: CallOverrides): Promise<string>;
516
571
 
517
572
  redeem(
573
+ receiver: string,
574
+ baseTokenOut: string,
575
+ amountScyToPull: BigNumberish,
576
+ minAmountBaseOut: BigNumberish,
577
+ overrides?: CallOverrides
578
+ ): Promise<BigNumber>;
579
+
580
+ redeemNoPull(
518
581
  receiver: string,
519
582
  baseTokenOut: string,
520
583
  minAmountBaseOut: BigNumberish,
@@ -622,6 +685,14 @@ export interface PendleBtrflyScy extends BaseContract {
622
685
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
623
686
 
624
687
  mint(
688
+ receiver: string,
689
+ baseTokenIn: string,
690
+ amountBaseToPull: BigNumberish,
691
+ minAmountScyOut: BigNumberish,
692
+ overrides?: Overrides & { from?: string | Promise<string> }
693
+ ): Promise<BigNumber>;
694
+
695
+ mintNoPull(
625
696
  receiver: string,
626
697
  baseTokenIn: string,
627
698
  minAmountScyOut: BigNumberish,
@@ -631,6 +702,14 @@ export interface PendleBtrflyScy extends BaseContract {
631
702
  name(overrides?: CallOverrides): Promise<BigNumber>;
632
703
 
633
704
  redeem(
705
+ receiver: string,
706
+ baseTokenOut: string,
707
+ amountScyToPull: BigNumberish,
708
+ minAmountBaseOut: BigNumberish,
709
+ overrides?: Overrides & { from?: string | Promise<string> }
710
+ ): Promise<BigNumber>;
711
+
712
+ redeemNoPull(
634
713
  receiver: string,
635
714
  baseTokenOut: string,
636
715
  minAmountBaseOut: BigNumberish,
@@ -727,6 +806,14 @@ export interface PendleBtrflyScy extends BaseContract {
727
806
  lastScyIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
728
807
 
729
808
  mint(
809
+ receiver: string,
810
+ baseTokenIn: string,
811
+ amountBaseToPull: BigNumberish,
812
+ minAmountScyOut: BigNumberish,
813
+ overrides?: Overrides & { from?: string | Promise<string> }
814
+ ): Promise<PopulatedTransaction>;
815
+
816
+ mintNoPull(
730
817
  receiver: string,
731
818
  baseTokenIn: string,
732
819
  minAmountScyOut: BigNumberish,
@@ -736,6 +823,14 @@ export interface PendleBtrflyScy extends BaseContract {
736
823
  name(overrides?: CallOverrides): Promise<PopulatedTransaction>;
737
824
 
738
825
  redeem(
826
+ receiver: string,
827
+ baseTokenOut: string,
828
+ amountScyToPull: BigNumberish,
829
+ minAmountBaseOut: BigNumberish,
830
+ overrides?: Overrides & { from?: string | Promise<string> }
831
+ ): Promise<PopulatedTransaction>;
832
+
833
+ redeemNoPull(
739
834
  receiver: string,
740
835
  baseTokenOut: string,
741
836
  minAmountBaseOut: BigNumberish,