@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
@@ -27,6 +27,7 @@ export type MarketStateStruct = {
27
27
  totalScy: BigNumberish;
28
28
  totalLp: BigNumberish;
29
29
  oracleRate: BigNumberish;
30
+ treasury: string;
30
31
  scalarRoot: BigNumberish;
31
32
  feeRateRoot: BigNumberish;
32
33
  rateOracleTimeWindow: BigNumberish;
@@ -41,6 +42,7 @@ export type MarketStateStructOutput = [
41
42
  BigNumber,
42
43
  BigNumber,
43
44
  BigNumber,
45
+ string,
44
46
  BigNumber,
45
47
  BigNumber,
46
48
  BigNumber,
@@ -53,6 +55,7 @@ export type MarketStateStructOutput = [
53
55
  totalScy: BigNumber;
54
56
  totalLp: BigNumber;
55
57
  oracleRate: BigNumber;
58
+ treasury: string;
56
59
  scalarRoot: BigNumber;
57
60
  feeRateRoot: BigNumber;
58
61
  rateOracleTimeWindow: BigNumber;
@@ -76,18 +79,15 @@ export interface PendleMarketInterface extends utils.Interface {
76
79
  "decreaseAllowance(address,uint256)": FunctionFragment;
77
80
  "expiry()": FunctionFragment;
78
81
  "factory()": FunctionFragment;
79
- "feeRateRoot()": FunctionFragment;
80
82
  "increaseAllowance(address,uint256)": FunctionFragment;
81
83
  "initialAnchor()": FunctionFragment;
82
84
  "isExpired()": FunctionFragment;
83
85
  "marketStorage()": FunctionFragment;
84
86
  "name()": FunctionFragment;
85
- "rateOracleTimeWindow()": FunctionFragment;
86
87
  "readState(bool)": FunctionFragment;
87
88
  "readTokens()": FunctionFragment;
88
89
  "redeemScyReward()": FunctionFragment;
89
90
  "removeLiquidity(address,uint256,bytes)": FunctionFragment;
90
- "reserveFeePercent()": FunctionFragment;
91
91
  "scalarRoot()": FunctionFragment;
92
92
  "swapExactOtForScy(address,uint256,uint256,bytes)": FunctionFragment;
93
93
  "swapScyForExactOt(address,uint256,uint256,bytes)": FunctionFragment;
@@ -121,10 +121,6 @@ export interface PendleMarketInterface extends utils.Interface {
121
121
  ): string;
122
122
  encodeFunctionData(functionFragment: "expiry", values?: undefined): string;
123
123
  encodeFunctionData(functionFragment: "factory", values?: undefined): string;
124
- encodeFunctionData(
125
- functionFragment: "feeRateRoot",
126
- values?: undefined
127
- ): string;
128
124
  encodeFunctionData(
129
125
  functionFragment: "increaseAllowance",
130
126
  values: [string, BigNumberish]
@@ -139,10 +135,6 @@ export interface PendleMarketInterface extends utils.Interface {
139
135
  values?: undefined
140
136
  ): string;
141
137
  encodeFunctionData(functionFragment: "name", values?: undefined): string;
142
- encodeFunctionData(
143
- functionFragment: "rateOracleTimeWindow",
144
- values?: undefined
145
- ): string;
146
138
  encodeFunctionData(functionFragment: "readState", values: [boolean]): string;
147
139
  encodeFunctionData(
148
140
  functionFragment: "readTokens",
@@ -156,10 +148,6 @@ export interface PendleMarketInterface extends utils.Interface {
156
148
  functionFragment: "removeLiquidity",
157
149
  values: [string, BigNumberish, BytesLike]
158
150
  ): string;
159
- encodeFunctionData(
160
- functionFragment: "reserveFeePercent",
161
- values?: undefined
162
- ): string;
163
151
  encodeFunctionData(
164
152
  functionFragment: "scalarRoot",
165
153
  values?: undefined
@@ -207,10 +195,6 @@ export interface PendleMarketInterface extends utils.Interface {
207
195
  ): Result;
208
196
  decodeFunctionResult(functionFragment: "expiry", data: BytesLike): Result;
209
197
  decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result;
210
- decodeFunctionResult(
211
- functionFragment: "feeRateRoot",
212
- data: BytesLike
213
- ): Result;
214
198
  decodeFunctionResult(
215
199
  functionFragment: "increaseAllowance",
216
200
  data: BytesLike
@@ -225,10 +209,6 @@ export interface PendleMarketInterface extends utils.Interface {
225
209
  data: BytesLike
226
210
  ): Result;
227
211
  decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
228
- decodeFunctionResult(
229
- functionFragment: "rateOracleTimeWindow",
230
- data: BytesLike
231
- ): Result;
232
212
  decodeFunctionResult(functionFragment: "readState", data: BytesLike): Result;
233
213
  decodeFunctionResult(functionFragment: "readTokens", data: BytesLike): Result;
234
214
  decodeFunctionResult(
@@ -239,10 +219,6 @@ export interface PendleMarketInterface extends utils.Interface {
239
219
  functionFragment: "removeLiquidity",
240
220
  data: BytesLike
241
221
  ): Result;
242
- decodeFunctionResult(
243
- functionFragment: "reserveFeePercent",
244
- data: BytesLike
245
- ): Result;
246
222
  decodeFunctionResult(functionFragment: "scalarRoot", data: BytesLike): Result;
247
223
  decodeFunctionResult(
248
224
  functionFragment: "swapExactOtForScy",
@@ -358,8 +334,6 @@ export interface PendleMarket extends BaseContract {
358
334
 
359
335
  factory(overrides?: CallOverrides): Promise<[string]>;
360
336
 
361
- feeRateRoot(overrides?: CallOverrides): Promise<[BigNumber]>;
362
-
363
337
  increaseAllowance(
364
338
  spender: string,
365
339
  addedValue: BigNumberish,
@@ -384,8 +358,6 @@ export interface PendleMarket extends BaseContract {
384
358
 
385
359
  name(overrides?: CallOverrides): Promise<[string]>;
386
360
 
387
- rateOracleTimeWindow(overrides?: CallOverrides): Promise<[BigNumber]>;
388
-
389
361
  readState(
390
362
  updateRateOracle: boolean,
391
363
  overrides?: CallOverrides
@@ -408,8 +380,6 @@ export interface PendleMarket extends BaseContract {
408
380
  overrides?: Overrides & { from?: string | Promise<string> }
409
381
  ): Promise<ContractTransaction>;
410
382
 
411
- reserveFeePercent(overrides?: CallOverrides): Promise<[number]>;
412
-
413
383
  scalarRoot(overrides?: CallOverrides): Promise<[BigNumber]>;
414
384
 
415
385
  swapExactOtForScy(
@@ -488,8 +458,6 @@ export interface PendleMarket extends BaseContract {
488
458
 
489
459
  factory(overrides?: CallOverrides): Promise<string>;
490
460
 
491
- feeRateRoot(overrides?: CallOverrides): Promise<BigNumber>;
492
-
493
461
  increaseAllowance(
494
462
  spender: string,
495
463
  addedValue: BigNumberish,
@@ -514,8 +482,6 @@ export interface PendleMarket extends BaseContract {
514
482
 
515
483
  name(overrides?: CallOverrides): Promise<string>;
516
484
 
517
- rateOracleTimeWindow(overrides?: CallOverrides): Promise<BigNumber>;
518
-
519
485
  readState(
520
486
  updateRateOracle: boolean,
521
487
  overrides?: CallOverrides
@@ -538,8 +504,6 @@ export interface PendleMarket extends BaseContract {
538
504
  overrides?: Overrides & { from?: string | Promise<string> }
539
505
  ): Promise<ContractTransaction>;
540
506
 
541
- reserveFeePercent(overrides?: CallOverrides): Promise<number>;
542
-
543
507
  scalarRoot(overrides?: CallOverrides): Promise<BigNumber>;
544
508
 
545
509
  swapExactOtForScy(
@@ -624,8 +588,6 @@ export interface PendleMarket extends BaseContract {
624
588
 
625
589
  factory(overrides?: CallOverrides): Promise<string>;
626
590
 
627
- feeRateRoot(overrides?: CallOverrides): Promise<BigNumber>;
628
-
629
591
  increaseAllowance(
630
592
  spender: string,
631
593
  addedValue: BigNumberish,
@@ -650,8 +612,6 @@ export interface PendleMarket extends BaseContract {
650
612
 
651
613
  name(overrides?: CallOverrides): Promise<string>;
652
614
 
653
- rateOracleTimeWindow(overrides?: CallOverrides): Promise<BigNumber>;
654
-
655
615
  readState(
656
616
  updateRateOracle: boolean,
657
617
  overrides?: CallOverrides
@@ -677,8 +637,6 @@ export interface PendleMarket extends BaseContract {
677
637
  }
678
638
  >;
679
639
 
680
- reserveFeePercent(overrides?: CallOverrides): Promise<number>;
681
-
682
640
  scalarRoot(overrides?: CallOverrides): Promise<BigNumber>;
683
641
 
684
642
  swapExactOtForScy(
@@ -792,8 +750,6 @@ export interface PendleMarket extends BaseContract {
792
750
 
793
751
  factory(overrides?: CallOverrides): Promise<BigNumber>;
794
752
 
795
- feeRateRoot(overrides?: CallOverrides): Promise<BigNumber>;
796
-
797
753
  increaseAllowance(
798
754
  spender: string,
799
755
  addedValue: BigNumberish,
@@ -808,8 +764,6 @@ export interface PendleMarket extends BaseContract {
808
764
 
809
765
  name(overrides?: CallOverrides): Promise<BigNumber>;
810
766
 
811
- rateOracleTimeWindow(overrides?: CallOverrides): Promise<BigNumber>;
812
-
813
767
  readState(
814
768
  updateRateOracle: boolean,
815
769
  overrides?: CallOverrides
@@ -828,8 +782,6 @@ export interface PendleMarket extends BaseContract {
828
782
  overrides?: Overrides & { from?: string | Promise<string> }
829
783
  ): Promise<BigNumber>;
830
784
 
831
- reserveFeePercent(overrides?: CallOverrides): Promise<BigNumber>;
832
-
833
785
  scalarRoot(overrides?: CallOverrides): Promise<BigNumber>;
834
786
 
835
787
  swapExactOtForScy(
@@ -912,8 +864,6 @@ export interface PendleMarket extends BaseContract {
912
864
 
913
865
  factory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
914
866
 
915
- feeRateRoot(overrides?: CallOverrides): Promise<PopulatedTransaction>;
916
-
917
867
  increaseAllowance(
918
868
  spender: string,
919
869
  addedValue: BigNumberish,
@@ -928,10 +878,6 @@ export interface PendleMarket extends BaseContract {
928
878
 
929
879
  name(overrides?: CallOverrides): Promise<PopulatedTransaction>;
930
880
 
931
- rateOracleTimeWindow(
932
- overrides?: CallOverrides
933
- ): Promise<PopulatedTransaction>;
934
-
935
881
  readState(
936
882
  updateRateOracle: boolean,
937
883
  overrides?: CallOverrides
@@ -950,8 +896,6 @@ export interface PendleMarket extends BaseContract {
950
896
  overrides?: Overrides & { from?: string | Promise<string> }
951
897
  ): Promise<PopulatedTransaction>;
952
898
 
953
- reserveFeePercent(overrides?: CallOverrides): Promise<PopulatedTransaction>;
954
-
955
899
  scalarRoot(overrides?: CallOverrides): Promise<PopulatedTransaction>;
956
900
 
957
901
  swapExactOtForScy(
@@ -25,9 +25,13 @@ import type {
25
25
  export interface PendleMarketFactoryInterface extends utils.Interface {
26
26
  contractName: "PendleMarketFactory";
27
27
  functions: {
28
- "createNewMarket(address,uint256,int256,int256,uint8,uint256)": FunctionFragment;
28
+ "createNewMarket(address,int256,int256)": FunctionFragment;
29
29
  "governanceManager()": FunctionFragment;
30
30
  "isValidMarket(address)": FunctionFragment;
31
+ "marketConfig()": FunctionFragment;
32
+ "setFeeRateRoot(uint96)": FunctionFragment;
33
+ "setRateOracleTimeWindow(uint32)": FunctionFragment;
34
+ "setReserveFeePercent(uint8)": FunctionFragment;
31
35
  "setTreasury(address)": FunctionFragment;
32
36
  "treasury()": FunctionFragment;
33
37
  "yieldContractFactory()": FunctionFragment;
@@ -35,14 +39,7 @@ export interface PendleMarketFactoryInterface extends utils.Interface {
35
39
 
36
40
  encodeFunctionData(
37
41
  functionFragment: "createNewMarket",
38
- values: [
39
- string,
40
- BigNumberish,
41
- BigNumberish,
42
- BigNumberish,
43
- BigNumberish,
44
- BigNumberish
45
- ]
42
+ values: [string, BigNumberish, BigNumberish]
46
43
  ): string;
47
44
  encodeFunctionData(
48
45
  functionFragment: "governanceManager",
@@ -52,6 +49,22 @@ export interface PendleMarketFactoryInterface extends utils.Interface {
52
49
  functionFragment: "isValidMarket",
53
50
  values: [string]
54
51
  ): string;
52
+ encodeFunctionData(
53
+ functionFragment: "marketConfig",
54
+ values?: undefined
55
+ ): string;
56
+ encodeFunctionData(
57
+ functionFragment: "setFeeRateRoot",
58
+ values: [BigNumberish]
59
+ ): string;
60
+ encodeFunctionData(
61
+ functionFragment: "setRateOracleTimeWindow",
62
+ values: [BigNumberish]
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "setReserveFeePercent",
66
+ values: [BigNumberish]
67
+ ): string;
55
68
  encodeFunctionData(functionFragment: "setTreasury", values: [string]): string;
56
69
  encodeFunctionData(functionFragment: "treasury", values?: undefined): string;
57
70
  encodeFunctionData(
@@ -71,6 +84,22 @@ export interface PendleMarketFactoryInterface extends utils.Interface {
71
84
  functionFragment: "isValidMarket",
72
85
  data: BytesLike
73
86
  ): Result;
87
+ decodeFunctionResult(
88
+ functionFragment: "marketConfig",
89
+ data: BytesLike
90
+ ): Result;
91
+ decodeFunctionResult(
92
+ functionFragment: "setFeeRateRoot",
93
+ data: BytesLike
94
+ ): Result;
95
+ decodeFunctionResult(
96
+ functionFragment: "setRateOracleTimeWindow",
97
+ data: BytesLike
98
+ ): Result;
99
+ decodeFunctionResult(
100
+ functionFragment: "setReserveFeePercent",
101
+ data: BytesLike
102
+ ): Result;
74
103
  decodeFunctionResult(
75
104
  functionFragment: "setTreasury",
76
105
  data: BytesLike
@@ -114,11 +143,8 @@ export interface PendleMarketFactory extends BaseContract {
114
143
  functions: {
115
144
  createNewMarket(
116
145
  OT: string,
117
- feeRateRoot: BigNumberish,
118
146
  scalarRoot: BigNumberish,
119
147
  initialAnchor: BigNumberish,
120
- reserveFeePercent: BigNumberish,
121
- rateOracleTimeWindow: BigNumberish,
122
148
  overrides?: Overrides & { from?: string | Promise<string> }
123
149
  ): Promise<ContractTransaction>;
124
150
 
@@ -129,6 +155,32 @@ export interface PendleMarketFactory extends BaseContract {
129
155
  overrides?: CallOverrides
130
156
  ): Promise<[boolean]>;
131
157
 
158
+ marketConfig(
159
+ overrides?: CallOverrides
160
+ ): Promise<
161
+ [string, BigNumber, number, number] & {
162
+ treasury: string;
163
+ feeRateRoot: BigNumber;
164
+ rateOracleTimeWindow: number;
165
+ reserveFeePercent: number;
166
+ }
167
+ >;
168
+
169
+ setFeeRateRoot(
170
+ newFeeRateRoot: BigNumberish,
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): Promise<ContractTransaction>;
173
+
174
+ setRateOracleTimeWindow(
175
+ newRateOracleTimeWindow: BigNumberish,
176
+ overrides?: Overrides & { from?: string | Promise<string> }
177
+ ): Promise<ContractTransaction>;
178
+
179
+ setReserveFeePercent(
180
+ newReserveFeePercent: BigNumberish,
181
+ overrides?: Overrides & { from?: string | Promise<string> }
182
+ ): Promise<ContractTransaction>;
183
+
132
184
  setTreasury(
133
185
  newTreasury: string,
134
186
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -141,11 +193,8 @@ export interface PendleMarketFactory extends BaseContract {
141
193
 
142
194
  createNewMarket(
143
195
  OT: string,
144
- feeRateRoot: BigNumberish,
145
196
  scalarRoot: BigNumberish,
146
197
  initialAnchor: BigNumberish,
147
- reserveFeePercent: BigNumberish,
148
- rateOracleTimeWindow: BigNumberish,
149
198
  overrides?: Overrides & { from?: string | Promise<string> }
150
199
  ): Promise<ContractTransaction>;
151
200
 
@@ -153,6 +202,32 @@ export interface PendleMarketFactory extends BaseContract {
153
202
 
154
203
  isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
155
204
 
205
+ marketConfig(
206
+ overrides?: CallOverrides
207
+ ): Promise<
208
+ [string, BigNumber, number, number] & {
209
+ treasury: string;
210
+ feeRateRoot: BigNumber;
211
+ rateOracleTimeWindow: number;
212
+ reserveFeePercent: number;
213
+ }
214
+ >;
215
+
216
+ setFeeRateRoot(
217
+ newFeeRateRoot: BigNumberish,
218
+ overrides?: Overrides & { from?: string | Promise<string> }
219
+ ): Promise<ContractTransaction>;
220
+
221
+ setRateOracleTimeWindow(
222
+ newRateOracleTimeWindow: BigNumberish,
223
+ overrides?: Overrides & { from?: string | Promise<string> }
224
+ ): Promise<ContractTransaction>;
225
+
226
+ setReserveFeePercent(
227
+ newReserveFeePercent: BigNumberish,
228
+ overrides?: Overrides & { from?: string | Promise<string> }
229
+ ): Promise<ContractTransaction>;
230
+
156
231
  setTreasury(
157
232
  newTreasury: string,
158
233
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -165,11 +240,8 @@ export interface PendleMarketFactory extends BaseContract {
165
240
  callStatic: {
166
241
  createNewMarket(
167
242
  OT: string,
168
- feeRateRoot: BigNumberish,
169
243
  scalarRoot: BigNumberish,
170
244
  initialAnchor: BigNumberish,
171
- reserveFeePercent: BigNumberish,
172
- rateOracleTimeWindow: BigNumberish,
173
245
  overrides?: CallOverrides
174
246
  ): Promise<string>;
175
247
 
@@ -177,6 +249,32 @@ export interface PendleMarketFactory extends BaseContract {
177
249
 
178
250
  isValidMarket(market: string, overrides?: CallOverrides): Promise<boolean>;
179
251
 
252
+ marketConfig(
253
+ overrides?: CallOverrides
254
+ ): Promise<
255
+ [string, BigNumber, number, number] & {
256
+ treasury: string;
257
+ feeRateRoot: BigNumber;
258
+ rateOracleTimeWindow: number;
259
+ reserveFeePercent: number;
260
+ }
261
+ >;
262
+
263
+ setFeeRateRoot(
264
+ newFeeRateRoot: BigNumberish,
265
+ overrides?: CallOverrides
266
+ ): Promise<void>;
267
+
268
+ setRateOracleTimeWindow(
269
+ newRateOracleTimeWindow: BigNumberish,
270
+ overrides?: CallOverrides
271
+ ): Promise<void>;
272
+
273
+ setReserveFeePercent(
274
+ newReserveFeePercent: BigNumberish,
275
+ overrides?: CallOverrides
276
+ ): Promise<void>;
277
+
180
278
  setTreasury(newTreasury: string, overrides?: CallOverrides): Promise<void>;
181
279
 
182
280
  treasury(overrides?: CallOverrides): Promise<string>;
@@ -189,11 +287,8 @@ export interface PendleMarketFactory extends BaseContract {
189
287
  estimateGas: {
190
288
  createNewMarket(
191
289
  OT: string,
192
- feeRateRoot: BigNumberish,
193
290
  scalarRoot: BigNumberish,
194
291
  initialAnchor: BigNumberish,
195
- reserveFeePercent: BigNumberish,
196
- rateOracleTimeWindow: BigNumberish,
197
292
  overrides?: Overrides & { from?: string | Promise<string> }
198
293
  ): Promise<BigNumber>;
199
294
 
@@ -204,6 +299,23 @@ export interface PendleMarketFactory extends BaseContract {
204
299
  overrides?: CallOverrides
205
300
  ): Promise<BigNumber>;
206
301
 
302
+ marketConfig(overrides?: CallOverrides): Promise<BigNumber>;
303
+
304
+ setFeeRateRoot(
305
+ newFeeRateRoot: BigNumberish,
306
+ overrides?: Overrides & { from?: string | Promise<string> }
307
+ ): Promise<BigNumber>;
308
+
309
+ setRateOracleTimeWindow(
310
+ newRateOracleTimeWindow: BigNumberish,
311
+ overrides?: Overrides & { from?: string | Promise<string> }
312
+ ): Promise<BigNumber>;
313
+
314
+ setReserveFeePercent(
315
+ newReserveFeePercent: BigNumberish,
316
+ overrides?: Overrides & { from?: string | Promise<string> }
317
+ ): Promise<BigNumber>;
318
+
207
319
  setTreasury(
208
320
  newTreasury: string,
209
321
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -217,11 +329,8 @@ export interface PendleMarketFactory extends BaseContract {
217
329
  populateTransaction: {
218
330
  createNewMarket(
219
331
  OT: string,
220
- feeRateRoot: BigNumberish,
221
332
  scalarRoot: BigNumberish,
222
333
  initialAnchor: BigNumberish,
223
- reserveFeePercent: BigNumberish,
224
- rateOracleTimeWindow: BigNumberish,
225
334
  overrides?: Overrides & { from?: string | Promise<string> }
226
335
  ): Promise<PopulatedTransaction>;
227
336
 
@@ -232,6 +341,23 @@ export interface PendleMarketFactory extends BaseContract {
232
341
  overrides?: CallOverrides
233
342
  ): Promise<PopulatedTransaction>;
234
343
 
344
+ marketConfig(overrides?: CallOverrides): Promise<PopulatedTransaction>;
345
+
346
+ setFeeRateRoot(
347
+ newFeeRateRoot: BigNumberish,
348
+ overrides?: Overrides & { from?: string | Promise<string> }
349
+ ): Promise<PopulatedTransaction>;
350
+
351
+ setRateOracleTimeWindow(
352
+ newRateOracleTimeWindow: BigNumberish,
353
+ overrides?: Overrides & { from?: string | Promise<string> }
354
+ ): Promise<PopulatedTransaction>;
355
+
356
+ setReserveFeePercent(
357
+ newReserveFeePercent: BigNumberish,
358
+ overrides?: Overrides & { from?: string | Promise<string> }
359
+ ): Promise<PopulatedTransaction>;
360
+
235
361
  setTreasury(
236
362
  newTreasury: string,
237
363
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -22,12 +22,12 @@ import type {
22
22
  OnEvent,
23
23
  } from "./common";
24
24
 
25
- export interface PendleRouterProxyInterface extends utils.Interface {
26
- contractName: "PendleRouterProxy";
25
+ export interface PendleRouterInterface extends utils.Interface {
26
+ contractName: "PendleRouter";
27
27
  functions: {
28
- "PENDLE_ROUTER_CORE()": FunctionFragment;
29
- "PENDLE_ROUTER_STATIC()": FunctionFragment;
30
- "PENDLE_ROUTER_YT()": FunctionFragment;
28
+ "ACTION_CALLBACK()": FunctionFragment;
29
+ "ACTION_CORE()": FunctionFragment;
30
+ "ACTION_YT()": FunctionFragment;
31
31
  "getRouterImplementation(bytes4)": FunctionFragment;
32
32
  "governanceManager()": FunctionFragment;
33
33
  "initialize()": FunctionFragment;
@@ -37,17 +37,14 @@ export interface PendleRouterProxyInterface extends utils.Interface {
37
37
  };
38
38
 
39
39
  encodeFunctionData(
40
- functionFragment: "PENDLE_ROUTER_CORE",
40
+ functionFragment: "ACTION_CALLBACK",
41
41
  values?: undefined
42
42
  ): string;
43
43
  encodeFunctionData(
44
- functionFragment: "PENDLE_ROUTER_STATIC",
45
- values?: undefined
46
- ): string;
47
- encodeFunctionData(
48
- functionFragment: "PENDLE_ROUTER_YT",
44
+ functionFragment: "ACTION_CORE",
49
45
  values?: undefined
50
46
  ): string;
47
+ encodeFunctionData(functionFragment: "ACTION_YT", values?: undefined): string;
51
48
  encodeFunctionData(
52
49
  functionFragment: "getRouterImplementation",
53
50
  values: [BytesLike]
@@ -71,17 +68,14 @@ export interface PendleRouterProxyInterface extends utils.Interface {
71
68
  ): string;
72
69
 
73
70
  decodeFunctionResult(
74
- functionFragment: "PENDLE_ROUTER_CORE",
75
- data: BytesLike
76
- ): Result;
77
- decodeFunctionResult(
78
- functionFragment: "PENDLE_ROUTER_STATIC",
71
+ functionFragment: "ACTION_CALLBACK",
79
72
  data: BytesLike
80
73
  ): Result;
81
74
  decodeFunctionResult(
82
- functionFragment: "PENDLE_ROUTER_YT",
75
+ functionFragment: "ACTION_CORE",
83
76
  data: BytesLike
84
77
  ): Result;
78
+ decodeFunctionResult(functionFragment: "ACTION_YT", data: BytesLike): Result;
85
79
  decodeFunctionResult(
86
80
  functionFragment: "getRouterImplementation",
87
81
  data: BytesLike
@@ -127,13 +121,13 @@ export type UpgradedEvent = TypedEvent<[string], { implementation: string }>;
127
121
 
128
122
  export type UpgradedEventFilter = TypedEventFilter<UpgradedEvent>;
129
123
 
130
- export interface PendleRouterProxy extends BaseContract {
131
- contractName: "PendleRouterProxy";
124
+ export interface PendleRouter extends BaseContract {
125
+ contractName: "PendleRouter";
132
126
  connect(signerOrProvider: Signer | Provider | string): this;
133
127
  attach(addressOrName: string): this;
134
128
  deployed(): Promise<this>;
135
129
 
136
- interface: PendleRouterProxyInterface;
130
+ interface: PendleRouterInterface;
137
131
 
138
132
  queryFilter<TEvent extends TypedEvent>(
139
133
  event: TypedEventFilter<TEvent>,
@@ -155,11 +149,11 @@ export interface PendleRouterProxy extends BaseContract {
155
149
  removeListener: OnEvent<this>;
156
150
 
157
151
  functions: {
158
- PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<[string]>;
152
+ ACTION_CALLBACK(overrides?: CallOverrides): Promise<[string]>;
159
153
 
160
- PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<[string]>;
154
+ ACTION_CORE(overrides?: CallOverrides): Promise<[string]>;
161
155
 
162
- PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<[string]>;
156
+ ACTION_YT(overrides?: CallOverrides): Promise<[string]>;
163
157
 
164
158
  getRouterImplementation(
165
159
  sig: BytesLike,
@@ -186,11 +180,11 @@ export interface PendleRouterProxy extends BaseContract {
186
180
  ): Promise<ContractTransaction>;
187
181
  };
188
182
 
189
- PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<string>;
183
+ ACTION_CALLBACK(overrides?: CallOverrides): Promise<string>;
190
184
 
191
- PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<string>;
185
+ ACTION_CORE(overrides?: CallOverrides): Promise<string>;
192
186
 
193
- PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<string>;
187
+ ACTION_YT(overrides?: CallOverrides): Promise<string>;
194
188
 
195
189
  getRouterImplementation(
196
190
  sig: BytesLike,
@@ -217,11 +211,11 @@ export interface PendleRouterProxy extends BaseContract {
217
211
  ): Promise<ContractTransaction>;
218
212
 
219
213
  callStatic: {
220
- PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<string>;
214
+ ACTION_CALLBACK(overrides?: CallOverrides): Promise<string>;
221
215
 
222
- PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<string>;
216
+ ACTION_CORE(overrides?: CallOverrides): Promise<string>;
223
217
 
224
- PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<string>;
218
+ ACTION_YT(overrides?: CallOverrides): Promise<string>;
225
219
 
226
220
  getRouterImplementation(
227
221
  sig: BytesLike,
@@ -266,11 +260,11 @@ export interface PendleRouterProxy extends BaseContract {
266
260
  };
267
261
 
268
262
  estimateGas: {
269
- PENDLE_ROUTER_CORE(overrides?: CallOverrides): Promise<BigNumber>;
263
+ ACTION_CALLBACK(overrides?: CallOverrides): Promise<BigNumber>;
270
264
 
271
- PENDLE_ROUTER_STATIC(overrides?: CallOverrides): Promise<BigNumber>;
265
+ ACTION_CORE(overrides?: CallOverrides): Promise<BigNumber>;
272
266
 
273
- PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<BigNumber>;
267
+ ACTION_YT(overrides?: CallOverrides): Promise<BigNumber>;
274
268
 
275
269
  getRouterImplementation(
276
270
  sig: BytesLike,
@@ -298,15 +292,11 @@ export interface PendleRouterProxy extends BaseContract {
298
292
  };
299
293
 
300
294
  populateTransaction: {
301
- PENDLE_ROUTER_CORE(
302
- overrides?: CallOverrides
303
- ): Promise<PopulatedTransaction>;
295
+ ACTION_CALLBACK(overrides?: CallOverrides): Promise<PopulatedTransaction>;
304
296
 
305
- PENDLE_ROUTER_STATIC(
306
- overrides?: CallOverrides
307
- ): Promise<PopulatedTransaction>;
297
+ ACTION_CORE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
308
298
 
309
- PENDLE_ROUTER_YT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
299
+ ACTION_YT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
310
300
 
311
301
  getRouterImplementation(
312
302
  sig: BytesLike,