@pendle/core-v2 0.2.3 → 0.4.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 (87) hide show
  1. package/contracts/SuperComposableYield/ISuperComposableYield.sol +15 -5
  2. package/contracts/SuperComposableYield/implementations/RewardManager.sol +2 -2
  3. package/contracts/SuperComposableYield/implementations/SCYBase.sol +23 -3
  4. package/contracts/SuperComposableYield/implementations/SCYBaseWithRewards.sol +4 -7
  5. package/contracts/core/PendleMarket.sol +24 -22
  6. package/contracts/core/PendleMarketFactory.sol +7 -6
  7. package/contracts/core/PendleSCYImpl/PendleBenQiErc20SCY.sol +1 -1
  8. package/contracts/core/PendleSCYImpl/PendleBtrflySCY.sol +2 -7
  9. package/contracts/core/PendleSCYImpl/PendleYearnVaultSCY.sol +2 -7
  10. package/contracts/core/PendleYieldContractFactory.sol +12 -7
  11. package/contracts/core/PendleYieldToken.sol +93 -55
  12. package/contracts/core/router/PendleRouterCoreUpg.sol +35 -21
  13. package/contracts/core/router/PendleRouterProxy.sol +12 -6
  14. package/contracts/core/router/PendleRouterStaticUpg.sol +43 -18
  15. package/contracts/core/router/PendleRouterYTUpg.sol +47 -13
  16. package/contracts/core/router/base/PendleRouterOTBaseUpg.sol +22 -32
  17. package/contracts/core/router/base/PendleRouterSCYAndForgeBaseUpg.sol +4 -4
  18. package/contracts/core/router/base/PendleRouterYTBaseUpg.sol +62 -43
  19. package/contracts/interfaces/IPMarket.sol +4 -2
  20. package/contracts/interfaces/{IPPermissionsV2.sol → IPPermissionsV2Upg.sol} +1 -1
  21. package/contracts/interfaces/IPRouterCore.sol +24 -21
  22. package/contracts/interfaces/IPRouterStatic.sol +10 -1
  23. package/contracts/interfaces/IPRouterYT.sol +16 -4
  24. package/contracts/interfaces/IPYieldContractFactory.sol +4 -0
  25. package/contracts/interfaces/IPYieldToken.sol +2 -4
  26. package/contracts/libraries/SCYIndex.sol +3 -3
  27. package/contracts/libraries/math/LogExpMath.sol +1 -90
  28. package/contracts/libraries/math/MarketApproxLib.sol +336 -94
  29. package/contracts/libraries/math/MarketMathAux.sol +101 -0
  30. package/contracts/libraries/math/MarketMathCore.sol +423 -0
  31. package/contracts/libraries/math/Math.sol +144 -0
  32. package/contracts/{core/misc → periphery}/PendleJoeSwapHelperUpg.sol +2 -2
  33. package/contracts/periphery/{PermissionsV2.sol → PermissionsV2Upg.sol} +2 -2
  34. package/package.json +1 -1
  35. package/typechain-types/IPMarket.ts +22 -11
  36. package/typechain-types/IPRouterCore.ts +68 -58
  37. package/typechain-types/IPRouterStatic.ts +52 -0
  38. package/typechain-types/IPRouterYT.ts +96 -12
  39. package/typechain-types/IPYieldContractFactory.ts +32 -0
  40. package/typechain-types/IPYieldToken.ts +14 -48
  41. package/typechain-types/IPermissionsV2Upg.ts +87 -0
  42. package/typechain-types/ISuperComposableYield.ts +98 -11
  43. package/typechain-types/OwnableUpgradeable.ts +165 -0
  44. package/typechain-types/PendleAaveV3SCY.ts +98 -11
  45. package/typechain-types/PendleBenQiErc20SCY.ts +98 -11
  46. package/typechain-types/PendleBtrflyScy.ts +98 -11
  47. package/typechain-types/PendleMarket.ts +22 -11
  48. package/typechain-types/PendleRouterCoreUpg.ts +66 -48
  49. package/typechain-types/PendleRouterProxy.ts +15 -118
  50. package/typechain-types/PendleRouterStaticUpg.ts +92 -0
  51. package/typechain-types/PendleRouterYTUpg.ts +96 -12
  52. package/typechain-types/PendleYearnVaultScy.ts +98 -11
  53. package/typechain-types/PendleYieldContractFactory.ts +40 -113
  54. package/typechain-types/PendleYieldToken.ts +106 -7
  55. package/typechain-types/PermissionsV2Upg.ts +87 -0
  56. package/typechain-types/SCYBase.ts +98 -11
  57. package/typechain-types/SCYBaseWithRewards.ts +98 -11
  58. package/typechain-types/factories/IPMarket__factory.ts +8 -2
  59. package/typechain-types/factories/IPRouterCore__factory.ts +38 -23
  60. package/typechain-types/factories/IPRouterStatic__factory.ts +29 -0
  61. package/typechain-types/factories/IPRouterYT__factory.ts +65 -6
  62. package/typechain-types/factories/IPYieldContractFactory__factory.ts +38 -0
  63. package/typechain-types/factories/IPYieldToken__factory.ts +1 -20
  64. package/typechain-types/factories/IPermissionsV2Upg__factory.ts +39 -0
  65. package/typechain-types/factories/ISuperComposableYield__factory.ts +65 -2
  66. package/typechain-types/factories/OwnableUpgradeable__factory.ts +78 -0
  67. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +66 -3
  68. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +66 -3
  69. package/typechain-types/factories/PendleBtrflyScy__factory.ts +66 -3
  70. package/typechain-types/factories/PendleMarketFactory__factory.ts +1 -1
  71. package/typechain-types/factories/PendleMarket__factory.ts +9 -3
  72. package/typechain-types/factories/PendleRouterCoreUpg__factory.ts +26 -11
  73. package/typechain-types/factories/PendleRouterProxy__factory.ts +14 -67
  74. package/typechain-types/factories/PendleRouterStaticUpg__factory.ts +63 -17
  75. package/typechain-types/factories/PendleRouterYTUpg__factory.ts +66 -7
  76. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +66 -3
  77. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +39 -54
  78. package/typechain-types/factories/PendleYieldToken__factory.ts +53 -2
  79. package/typechain-types/factories/PermissionsV2Upg__factory.ts +39 -0
  80. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +65 -2
  81. package/typechain-types/factories/SCYBase__factory.ts +65 -2
  82. package/typechain-types/hardhat.d.ts +26 -53
  83. package/typechain-types/index.ts +8 -14
  84. package/contracts/core/misc/BoringOwnable.sol +0 -62
  85. package/contracts/core/misc/BoringOwnableUpg.sol +0 -64
  86. package/contracts/libraries/math/FixedPoint.sol +0 -205
  87. package/contracts/libraries/math/MarketMathLib.sol +0 -614
@@ -38,11 +38,13 @@ export interface PendleAaveV3SCYInterface extends utils.Interface {
38
38
  "increaseAllowance(address,uint256)": FunctionFragment;
39
39
  "isValidBaseToken(address)": FunctionFragment;
40
40
  "lastScyIndex()": FunctionFragment;
41
- "mint(address,address,uint256)": FunctionFragment;
41
+ "mint(address,address,uint256,uint256)": FunctionFragment;
42
+ "mintNoPull(address,address,uint256)": FunctionFragment;
42
43
  "name()": FunctionFragment;
43
44
  "pool()": FunctionFragment;
44
- "redeem(address,address,uint256)": FunctionFragment;
45
- "redeemReward(address,address)": FunctionFragment;
45
+ "redeem(address,address,uint256,uint256)": FunctionFragment;
46
+ "redeemNoPull(address,address,uint256)": FunctionFragment;
47
+ "redeemReward(address)": FunctionFragment;
46
48
  "rewardsController()": FunctionFragment;
47
49
  "scyIndexCurrent()": FunctionFragment;
48
50
  "scyIndexStored()": FunctionFragment;
@@ -101,17 +103,25 @@ export interface PendleAaveV3SCYInterface extends utils.Interface {
101
103
  ): string;
102
104
  encodeFunctionData(
103
105
  functionFragment: "mint",
106
+ values: [string, string, BigNumberish, BigNumberish]
107
+ ): string;
108
+ encodeFunctionData(
109
+ functionFragment: "mintNoPull",
104
110
  values: [string, string, BigNumberish]
105
111
  ): string;
106
112
  encodeFunctionData(functionFragment: "name", values?: undefined): string;
107
113
  encodeFunctionData(functionFragment: "pool", values?: undefined): string;
108
114
  encodeFunctionData(
109
115
  functionFragment: "redeem",
116
+ values: [string, string, BigNumberish, BigNumberish]
117
+ ): string;
118
+ encodeFunctionData(
119
+ functionFragment: "redeemNoPull",
110
120
  values: [string, string, BigNumberish]
111
121
  ): string;
112
122
  encodeFunctionData(
113
123
  functionFragment: "redeemReward",
114
- values: [string, string]
124
+ values: [string]
115
125
  ): string;
116
126
  encodeFunctionData(
117
127
  functionFragment: "rewardsController",
@@ -193,9 +203,14 @@ export interface PendleAaveV3SCYInterface extends utils.Interface {
193
203
  data: BytesLike
194
204
  ): Result;
195
205
  decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
206
+ decodeFunctionResult(functionFragment: "mintNoPull", data: BytesLike): Result;
196
207
  decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
197
208
  decodeFunctionResult(functionFragment: "pool", data: BytesLike): Result;
198
209
  decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
210
+ decodeFunctionResult(
211
+ functionFragment: "redeemNoPull",
212
+ data: BytesLike
213
+ ): Result;
199
214
  decodeFunctionResult(
200
215
  functionFragment: "redeemReward",
201
216
  data: BytesLike
@@ -339,6 +354,14 @@ export interface PendleAaveV3SCY extends BaseContract {
339
354
  lastScyIndex(overrides?: CallOverrides): Promise<[BigNumber]>;
340
355
 
341
356
  mint(
357
+ receiver: string,
358
+ baseTokenIn: string,
359
+ amountBaseToPull: BigNumberish,
360
+ minAmountScyOut: BigNumberish,
361
+ overrides?: Overrides & { from?: string | Promise<string> }
362
+ ): Promise<ContractTransaction>;
363
+
364
+ mintNoPull(
342
365
  receiver: string,
343
366
  baseTokenIn: string,
344
367
  minAmountScyOut: BigNumberish,
@@ -350,6 +373,14 @@ export interface PendleAaveV3SCY extends BaseContract {
350
373
  pool(overrides?: CallOverrides): Promise<[string]>;
351
374
 
352
375
  redeem(
376
+ receiver: string,
377
+ baseTokenOut: string,
378
+ amountScyToPull: BigNumberish,
379
+ minAmountBaseOut: BigNumberish,
380
+ overrides?: Overrides & { from?: string | Promise<string> }
381
+ ): Promise<ContractTransaction>;
382
+
383
+ redeemNoPull(
353
384
  receiver: string,
354
385
  baseTokenOut: string,
355
386
  minAmountBaseOut: BigNumberish,
@@ -358,7 +389,6 @@ export interface PendleAaveV3SCY extends BaseContract {
358
389
 
359
390
  redeemReward(
360
391
  user: string,
361
- receiver: string,
362
392
  overrides?: Overrides & { from?: string | Promise<string> }
363
393
  ): Promise<ContractTransaction>;
364
394
 
@@ -460,6 +490,14 @@ export interface PendleAaveV3SCY extends BaseContract {
460
490
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
461
491
 
462
492
  mint(
493
+ receiver: string,
494
+ baseTokenIn: string,
495
+ amountBaseToPull: BigNumberish,
496
+ minAmountScyOut: BigNumberish,
497
+ overrides?: Overrides & { from?: string | Promise<string> }
498
+ ): Promise<ContractTransaction>;
499
+
500
+ mintNoPull(
463
501
  receiver: string,
464
502
  baseTokenIn: string,
465
503
  minAmountScyOut: BigNumberish,
@@ -471,6 +509,14 @@ export interface PendleAaveV3SCY extends BaseContract {
471
509
  pool(overrides?: CallOverrides): Promise<string>;
472
510
 
473
511
  redeem(
512
+ receiver: string,
513
+ baseTokenOut: string,
514
+ amountScyToPull: BigNumberish,
515
+ minAmountBaseOut: BigNumberish,
516
+ overrides?: Overrides & { from?: string | Promise<string> }
517
+ ): Promise<ContractTransaction>;
518
+
519
+ redeemNoPull(
474
520
  receiver: string,
475
521
  baseTokenOut: string,
476
522
  minAmountBaseOut: BigNumberish,
@@ -479,7 +525,6 @@ export interface PendleAaveV3SCY extends BaseContract {
479
525
 
480
526
  redeemReward(
481
527
  user: string,
482
- receiver: string,
483
528
  overrides?: Overrides & { from?: string | Promise<string> }
484
529
  ): Promise<ContractTransaction>;
485
530
 
@@ -579,6 +624,14 @@ export interface PendleAaveV3SCY extends BaseContract {
579
624
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
580
625
 
581
626
  mint(
627
+ receiver: string,
628
+ baseTokenIn: string,
629
+ amountBaseToPull: BigNumberish,
630
+ minAmountScyOut: BigNumberish,
631
+ overrides?: CallOverrides
632
+ ): Promise<BigNumber>;
633
+
634
+ mintNoPull(
582
635
  receiver: string,
583
636
  baseTokenIn: string,
584
637
  minAmountScyOut: BigNumberish,
@@ -592,15 +645,19 @@ export interface PendleAaveV3SCY extends BaseContract {
592
645
  redeem(
593
646
  receiver: string,
594
647
  baseTokenOut: string,
648
+ amountScyToPull: BigNumberish,
595
649
  minAmountBaseOut: BigNumberish,
596
650
  overrides?: CallOverrides
597
651
  ): Promise<BigNumber>;
598
652
 
599
- redeemReward(
600
- user: string,
653
+ redeemNoPull(
601
654
  receiver: string,
655
+ baseTokenOut: string,
656
+ minAmountBaseOut: BigNumberish,
602
657
  overrides?: CallOverrides
603
- ): Promise<BigNumber[]>;
658
+ ): Promise<BigNumber>;
659
+
660
+ redeemReward(user: string, overrides?: CallOverrides): Promise<BigNumber[]>;
604
661
 
605
662
  rewardsController(overrides?: CallOverrides): Promise<string>;
606
663
 
@@ -714,6 +771,14 @@ export interface PendleAaveV3SCY extends BaseContract {
714
771
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
715
772
 
716
773
  mint(
774
+ receiver: string,
775
+ baseTokenIn: string,
776
+ amountBaseToPull: BigNumberish,
777
+ minAmountScyOut: BigNumberish,
778
+ overrides?: Overrides & { from?: string | Promise<string> }
779
+ ): Promise<BigNumber>;
780
+
781
+ mintNoPull(
717
782
  receiver: string,
718
783
  baseTokenIn: string,
719
784
  minAmountScyOut: BigNumberish,
@@ -725,6 +790,14 @@ export interface PendleAaveV3SCY extends BaseContract {
725
790
  pool(overrides?: CallOverrides): Promise<BigNumber>;
726
791
 
727
792
  redeem(
793
+ receiver: string,
794
+ baseTokenOut: string,
795
+ amountScyToPull: BigNumberish,
796
+ minAmountBaseOut: BigNumberish,
797
+ overrides?: Overrides & { from?: string | Promise<string> }
798
+ ): Promise<BigNumber>;
799
+
800
+ redeemNoPull(
728
801
  receiver: string,
729
802
  baseTokenOut: string,
730
803
  minAmountBaseOut: BigNumberish,
@@ -733,7 +806,6 @@ export interface PendleAaveV3SCY extends BaseContract {
733
806
 
734
807
  redeemReward(
735
808
  user: string,
736
- receiver: string,
737
809
  overrides?: Overrides & { from?: string | Promise<string> }
738
810
  ): Promise<BigNumber>;
739
811
 
@@ -833,6 +905,14 @@ export interface PendleAaveV3SCY extends BaseContract {
833
905
  lastScyIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
834
906
 
835
907
  mint(
908
+ receiver: string,
909
+ baseTokenIn: string,
910
+ amountBaseToPull: BigNumberish,
911
+ minAmountScyOut: BigNumberish,
912
+ overrides?: Overrides & { from?: string | Promise<string> }
913
+ ): Promise<PopulatedTransaction>;
914
+
915
+ mintNoPull(
836
916
  receiver: string,
837
917
  baseTokenIn: string,
838
918
  minAmountScyOut: BigNumberish,
@@ -844,6 +924,14 @@ export interface PendleAaveV3SCY extends BaseContract {
844
924
  pool(overrides?: CallOverrides): Promise<PopulatedTransaction>;
845
925
 
846
926
  redeem(
927
+ receiver: string,
928
+ baseTokenOut: string,
929
+ amountScyToPull: BigNumberish,
930
+ minAmountBaseOut: BigNumberish,
931
+ overrides?: Overrides & { from?: string | Promise<string> }
932
+ ): Promise<PopulatedTransaction>;
933
+
934
+ redeemNoPull(
847
935
  receiver: string,
848
936
  baseTokenOut: string,
849
937
  minAmountBaseOut: BigNumberish,
@@ -852,7 +940,6 @@ export interface PendleAaveV3SCY extends BaseContract {
852
940
 
853
941
  redeemReward(
854
942
  user: string,
855
- receiver: string,
856
943
  overrides?: Overrides & { from?: string | Promise<string> }
857
944
  ): Promise<PopulatedTransaction>;
858
945
 
@@ -40,11 +40,13 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
40
40
  "increaseAllowance(address,uint256)": FunctionFragment;
41
41
  "isValidBaseToken(address)": FunctionFragment;
42
42
  "lastScyIndex()": FunctionFragment;
43
- "mint(address,address,uint256)": FunctionFragment;
43
+ "mint(address,address,uint256,uint256)": FunctionFragment;
44
+ "mintNoPull(address,address,uint256)": FunctionFragment;
44
45
  "name()": FunctionFragment;
45
46
  "qiToken()": FunctionFragment;
46
- "redeem(address,address,uint256)": FunctionFragment;
47
- "redeemReward(address,address)": FunctionFragment;
47
+ "redeem(address,address,uint256,uint256)": FunctionFragment;
48
+ "redeemNoPull(address,address,uint256)": FunctionFragment;
49
+ "redeemReward(address)": FunctionFragment;
48
50
  "scyIndexCurrent()": FunctionFragment;
49
51
  "scyIndexStored()": FunctionFragment;
50
52
  "symbol()": FunctionFragment;
@@ -107,17 +109,25 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
107
109
  ): string;
108
110
  encodeFunctionData(
109
111
  functionFragment: "mint",
112
+ values: [string, string, BigNumberish, BigNumberish]
113
+ ): string;
114
+ encodeFunctionData(
115
+ functionFragment: "mintNoPull",
110
116
  values: [string, string, BigNumberish]
111
117
  ): string;
112
118
  encodeFunctionData(functionFragment: "name", values?: undefined): string;
113
119
  encodeFunctionData(functionFragment: "qiToken", values?: undefined): string;
114
120
  encodeFunctionData(
115
121
  functionFragment: "redeem",
122
+ values: [string, string, BigNumberish, BigNumberish]
123
+ ): string;
124
+ encodeFunctionData(
125
+ functionFragment: "redeemNoPull",
116
126
  values: [string, string, BigNumberish]
117
127
  ): string;
118
128
  encodeFunctionData(
119
129
  functionFragment: "redeemReward",
120
- values: [string, string]
130
+ values: [string]
121
131
  ): string;
122
132
  encodeFunctionData(
123
133
  functionFragment: "scyIndexCurrent",
@@ -200,9 +210,14 @@ export interface PendleBenQiErc20SCYInterface extends utils.Interface {
200
210
  data: BytesLike
201
211
  ): Result;
202
212
  decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
213
+ decodeFunctionResult(functionFragment: "mintNoPull", data: BytesLike): Result;
203
214
  decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
204
215
  decodeFunctionResult(functionFragment: "qiToken", data: BytesLike): Result;
205
216
  decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result;
217
+ decodeFunctionResult(
218
+ functionFragment: "redeemNoPull",
219
+ data: BytesLike
220
+ ): Result;
206
221
  decodeFunctionResult(
207
222
  functionFragment: "redeemReward",
208
223
  data: BytesLike
@@ -346,6 +361,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
346
361
  lastScyIndex(overrides?: CallOverrides): Promise<[BigNumber]>;
347
362
 
348
363
  mint(
364
+ receiver: string,
365
+ baseTokenIn: string,
366
+ amountBaseToPull: BigNumberish,
367
+ minAmountScyOut: BigNumberish,
368
+ overrides?: Overrides & { from?: string | Promise<string> }
369
+ ): Promise<ContractTransaction>;
370
+
371
+ mintNoPull(
349
372
  receiver: string,
350
373
  baseTokenIn: string,
351
374
  minAmountScyOut: BigNumberish,
@@ -357,6 +380,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
357
380
  qiToken(overrides?: CallOverrides): Promise<[string]>;
358
381
 
359
382
  redeem(
383
+ receiver: string,
384
+ baseTokenOut: string,
385
+ amountScyToPull: BigNumberish,
386
+ minAmountBaseOut: BigNumberish,
387
+ overrides?: Overrides & { from?: string | Promise<string> }
388
+ ): Promise<ContractTransaction>;
389
+
390
+ redeemNoPull(
360
391
  receiver: string,
361
392
  baseTokenOut: string,
362
393
  minAmountBaseOut: BigNumberish,
@@ -365,7 +396,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
365
396
 
366
397
  redeemReward(
367
398
  user: string,
368
- receiver: string,
369
399
  overrides?: Overrides & { from?: string | Promise<string> }
370
400
  ): Promise<ContractTransaction>;
371
401
 
@@ -469,6 +499,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
469
499
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
470
500
 
471
501
  mint(
502
+ receiver: string,
503
+ baseTokenIn: string,
504
+ amountBaseToPull: BigNumberish,
505
+ minAmountScyOut: BigNumberish,
506
+ overrides?: Overrides & { from?: string | Promise<string> }
507
+ ): Promise<ContractTransaction>;
508
+
509
+ mintNoPull(
472
510
  receiver: string,
473
511
  baseTokenIn: string,
474
512
  minAmountScyOut: BigNumberish,
@@ -480,6 +518,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
480
518
  qiToken(overrides?: CallOverrides): Promise<string>;
481
519
 
482
520
  redeem(
521
+ receiver: string,
522
+ baseTokenOut: string,
523
+ amountScyToPull: BigNumberish,
524
+ minAmountBaseOut: BigNumberish,
525
+ overrides?: Overrides & { from?: string | Promise<string> }
526
+ ): Promise<ContractTransaction>;
527
+
528
+ redeemNoPull(
483
529
  receiver: string,
484
530
  baseTokenOut: string,
485
531
  minAmountBaseOut: BigNumberish,
@@ -488,7 +534,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
488
534
 
489
535
  redeemReward(
490
536
  user: string,
491
- receiver: string,
492
537
  overrides?: Overrides & { from?: string | Promise<string> }
493
538
  ): Promise<ContractTransaction>;
494
539
 
@@ -590,6 +635,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
590
635
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
591
636
 
592
637
  mint(
638
+ receiver: string,
639
+ baseTokenIn: string,
640
+ amountBaseToPull: BigNumberish,
641
+ minAmountScyOut: BigNumberish,
642
+ overrides?: CallOverrides
643
+ ): Promise<BigNumber>;
644
+
645
+ mintNoPull(
593
646
  receiver: string,
594
647
  baseTokenIn: string,
595
648
  minAmountScyOut: BigNumberish,
@@ -603,15 +656,19 @@ export interface PendleBenQiErc20SCY extends BaseContract {
603
656
  redeem(
604
657
  receiver: string,
605
658
  baseTokenOut: string,
659
+ amountScyToPull: BigNumberish,
606
660
  minAmountBaseOut: BigNumberish,
607
661
  overrides?: CallOverrides
608
662
  ): Promise<BigNumber>;
609
663
 
610
- redeemReward(
611
- user: string,
664
+ redeemNoPull(
612
665
  receiver: string,
666
+ baseTokenOut: string,
667
+ minAmountBaseOut: BigNumberish,
613
668
  overrides?: CallOverrides
614
- ): Promise<BigNumber[]>;
669
+ ): Promise<BigNumber>;
670
+
671
+ redeemReward(user: string, overrides?: CallOverrides): Promise<BigNumber[]>;
615
672
 
616
673
  scyIndexCurrent(overrides?: CallOverrides): Promise<BigNumber>;
617
674
 
@@ -727,6 +784,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
727
784
  lastScyIndex(overrides?: CallOverrides): Promise<BigNumber>;
728
785
 
729
786
  mint(
787
+ receiver: string,
788
+ baseTokenIn: string,
789
+ amountBaseToPull: BigNumberish,
790
+ minAmountScyOut: BigNumberish,
791
+ overrides?: Overrides & { from?: string | Promise<string> }
792
+ ): Promise<BigNumber>;
793
+
794
+ mintNoPull(
730
795
  receiver: string,
731
796
  baseTokenIn: string,
732
797
  minAmountScyOut: BigNumberish,
@@ -738,6 +803,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
738
803
  qiToken(overrides?: CallOverrides): Promise<BigNumber>;
739
804
 
740
805
  redeem(
806
+ receiver: string,
807
+ baseTokenOut: string,
808
+ amountScyToPull: BigNumberish,
809
+ minAmountBaseOut: BigNumberish,
810
+ overrides?: Overrides & { from?: string | Promise<string> }
811
+ ): Promise<BigNumber>;
812
+
813
+ redeemNoPull(
741
814
  receiver: string,
742
815
  baseTokenOut: string,
743
816
  minAmountBaseOut: BigNumberish,
@@ -746,7 +819,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
746
819
 
747
820
  redeemReward(
748
821
  user: string,
749
- receiver: string,
750
822
  overrides?: Overrides & { from?: string | Promise<string> }
751
823
  ): Promise<BigNumber>;
752
824
 
@@ -848,6 +920,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
848
920
  lastScyIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
849
921
 
850
922
  mint(
923
+ receiver: string,
924
+ baseTokenIn: string,
925
+ amountBaseToPull: BigNumberish,
926
+ minAmountScyOut: BigNumberish,
927
+ overrides?: Overrides & { from?: string | Promise<string> }
928
+ ): Promise<PopulatedTransaction>;
929
+
930
+ mintNoPull(
851
931
  receiver: string,
852
932
  baseTokenIn: string,
853
933
  minAmountScyOut: BigNumberish,
@@ -859,6 +939,14 @@ export interface PendleBenQiErc20SCY extends BaseContract {
859
939
  qiToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
860
940
 
861
941
  redeem(
942
+ receiver: string,
943
+ baseTokenOut: string,
944
+ amountScyToPull: BigNumberish,
945
+ minAmountBaseOut: BigNumberish,
946
+ overrides?: Overrides & { from?: string | Promise<string> }
947
+ ): Promise<PopulatedTransaction>;
948
+
949
+ redeemNoPull(
862
950
  receiver: string,
863
951
  baseTokenOut: string,
864
952
  minAmountBaseOut: BigNumberish,
@@ -867,7 +955,6 @@ export interface PendleBenQiErc20SCY extends BaseContract {
867
955
 
868
956
  redeemReward(
869
957
  user: string,
870
- receiver: string,
871
958
  overrides?: Overrides & { from?: string | Promise<string> }
872
959
  ): Promise<PopulatedTransaction>;
873
960