@pendle/core-v2 0.5.1-beta-4 → 0.6.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 (126) hide show
  1. package/contracts/SuperComposableYield/ISuperComposableYield.sol +2 -0
  2. package/contracts/SuperComposableYield/implementations/RewardManager.sol +35 -20
  3. package/contracts/SuperComposableYield/implementations/SCYBase.sol +39 -19
  4. package/contracts/SuperComposableYield/implementations/SCYBaseWithRewards.sol +26 -14
  5. package/contracts/core/PendleBaseToken.sol +2 -2
  6. package/contracts/core/PendleMarket.sol +145 -61
  7. package/contracts/core/PendleMarketFactory.sol +30 -19
  8. package/contracts/core/{PendleOwnershipToken.sol → PendlePrincipalToken.sol} +14 -2
  9. package/contracts/core/PendleRouter.sol +23 -9
  10. package/contracts/core/PendleSCYImpl/AaveV3/PendleAaveV3SCY.sol +21 -20
  11. package/contracts/core/PendleSCYImpl/PendleBenQiErc20SCY.sol +22 -16
  12. package/contracts/core/PendleSCYImpl/PendleBtrflySCY.sol +13 -13
  13. package/contracts/core/PendleSCYImpl/PendleStETHSCY.sol +107 -0
  14. package/contracts/core/PendleSCYImpl/PendleYearnVaultSCY.sol +14 -15
  15. package/contracts/core/PendleYieldContractFactory.sol +29 -14
  16. package/contracts/core/PendleYieldToken.sol +130 -76
  17. package/contracts/core/RouterStatic.sol +16 -157
  18. package/contracts/core/actions/ActionCallback.sol +36 -18
  19. package/contracts/core/actions/ActionCore.sol +41 -88
  20. package/contracts/core/actions/ActionRedeem.sol +36 -0
  21. package/contracts/core/actions/ActionYT.sol +41 -59
  22. package/contracts/core/actions/base/{ActionSCYAndOTBase.sol → ActionSCYAndPTBase.sol} +59 -45
  23. package/contracts/core/actions/base/{ActionSCYAndYOBase.sol → ActionSCYAndPYBase.sol} +57 -19
  24. package/contracts/core/actions/base/ActionSCYAndYTBase.sol +31 -21
  25. package/contracts/interfaces/IPActionCore.sol +21 -28
  26. package/contracts/interfaces/IPActionRedeem.sol +17 -0
  27. package/contracts/interfaces/IPActionYT.sol +5 -12
  28. package/contracts/interfaces/IPAllAction.sol +2 -2
  29. package/contracts/interfaces/IPMarket.sol +33 -10
  30. package/contracts/interfaces/IPMarketAddRemoveCallback.sol +2 -2
  31. package/contracts/interfaces/IPMarketFactory.sol +3 -1
  32. package/contracts/interfaces/IPMarketSwapCallback.sol +1 -1
  33. package/contracts/interfaces/{IPOwnershipToken.sol → IPPrincipalToken.sol} +1 -1
  34. package/contracts/interfaces/IPRouterStatic.sol +7 -82
  35. package/contracts/interfaces/IPYieldContractFactory.sol +10 -2
  36. package/contracts/interfaces/IPYieldToken.sol +14 -5
  37. package/contracts/interfaces/IWstETH.sol +10 -0
  38. package/contracts/libraries/JoeLibrary.sol +1 -1
  39. package/contracts/libraries/math/LogExpMath.sol +1 -1
  40. package/contracts/libraries/math/MarketApproxLib.sol +128 -88
  41. package/contracts/libraries/math/MarketMathAux.sol +13 -13
  42. package/contracts/libraries/math/MarketMathCore.sol +62 -93
  43. package/contracts/libraries/math/Math.sol +14 -2
  44. package/contracts/periphery/PendleGovernanceManager.sol +5 -3
  45. package/package.json +3 -2
  46. package/typechain-types/ActionCallback.ts +5 -5
  47. package/typechain-types/ActionCore.ts +312 -234
  48. package/typechain-types/ActionRedeem.ts +125 -0
  49. package/typechain-types/ActionSCYAndPYBase.ts +223 -0
  50. package/typechain-types/ActionSCYAndYOBase.ts +129 -3
  51. package/typechain-types/ActionSCYAndYTBase.ts +149 -3
  52. package/typechain-types/ActionYT.ts +192 -94
  53. package/typechain-types/IPActionCore.ts +183 -231
  54. package/typechain-types/IPActionRedeem.ts +125 -0
  55. package/typechain-types/IPActionYT.ts +43 -91
  56. package/typechain-types/IPAllAction.ts +258 -321
  57. package/typechain-types/IPMarket.ts +150 -50
  58. package/typechain-types/IPMarketAddRemoveCallback.ts +10 -10
  59. package/typechain-types/IPMarketFactory.ts +28 -6
  60. package/typechain-types/IPMarketSwapCallback.ts +5 -5
  61. package/typechain-types/{IPOwnershipToken.ts → IPPrincipalToken.ts} +5 -5
  62. package/typechain-types/IPRouterStatic.ts +50 -530
  63. package/typechain-types/IPYieldContractFactory.ts +85 -19
  64. package/typechain-types/IPYieldToken.ts +138 -37
  65. package/typechain-types/ISuperComposableYield.ts +13 -0
  66. package/typechain-types/IWstETH.ts +149 -0
  67. package/typechain-types/PendleAaveV3SCY.ts +110 -0
  68. package/typechain-types/PendleBaseToken.ts +1 -1
  69. package/typechain-types/PendleBenQiErc20SCY.ts +55 -12
  70. package/typechain-types/PendleBtrflyScy.ts +27 -23
  71. package/typechain-types/PendleGovernanceManager.ts +5 -5
  72. package/typechain-types/PendleMarket.ts +197 -100
  73. package/typechain-types/PendleMarketFactory.ts +96 -34
  74. package/typechain-types/{PendleOwnershipToken.ts → PendlePrincipalToken.ts} +15 -6
  75. package/typechain-types/PendleRouter.ts +19 -0
  76. package/typechain-types/PendleRouterRedeemUpg.ts +125 -0
  77. package/typechain-types/PendleStEthSCY.ts +872 -0
  78. package/typechain-types/PendleYearnVaultScy.ts +27 -23
  79. package/typechain-types/PendleYieldContractFactory.ts +94 -28
  80. package/typechain-types/PendleYieldToken.ts +142 -57
  81. package/typechain-types/RewardManager.ts +21 -0
  82. package/typechain-types/RouterStatic.ts +50 -530
  83. package/typechain-types/SCYBase.ts +25 -0
  84. package/typechain-types/SCYBaseWithRewards.ts +64 -0
  85. package/typechain-types/factories/ActionCallback__factory.ts +2 -2
  86. package/typechain-types/factories/ActionCore__factory.ts +263 -79
  87. package/typechain-types/factories/ActionRedeem__factory.ts +105 -0
  88. package/typechain-types/factories/ActionSCYAndPYBase__factory.ts +200 -0
  89. package/typechain-types/factories/ActionSCYAndYOBase__factory.ts +148 -0
  90. package/typechain-types/factories/ActionSCYAndYTBase__factory.ts +173 -0
  91. package/typechain-types/factories/ActionYT__factory.ts +265 -56
  92. package/typechain-types/factories/IPActionCore__factory.ts +114 -78
  93. package/typechain-types/factories/IPActionRedeem__factory.ts +70 -0
  94. package/typechain-types/factories/IPActionYT__factory.ts +90 -54
  95. package/typechain-types/factories/IPAllAction__factory.ts +254 -138
  96. package/typechain-types/factories/IPMarketAddRemoveCallback__factory.ts +2 -2
  97. package/typechain-types/factories/IPMarketFactory__factory.ts +26 -1
  98. package/typechain-types/factories/IPMarketSwapCallback__factory.ts +1 -1
  99. package/typechain-types/factories/IPMarket__factory.ts +125 -13
  100. package/typechain-types/factories/{IPOwnershipToken__factory.ts → IPPrincipalToken__factory.ts} +8 -8
  101. package/typechain-types/factories/IPRouterStatic__factory.ts +12 -628
  102. package/typechain-types/factories/IPYieldContractFactory__factory.ts +72 -2
  103. package/typechain-types/factories/IPYieldToken__factory.ts +93 -7
  104. package/typechain-types/factories/ISuperComposableYield__factory.ts +13 -0
  105. package/typechain-types/factories/IWstETH__factory.ts +74 -0
  106. package/typechain-types/factories/PendleAaveV3SCY__factory.ts +97 -3
  107. package/typechain-types/factories/PendleBaseToken__factory.ts +1 -1
  108. package/typechain-types/factories/PendleBenQiErc20SCY__factory.ts +62 -7
  109. package/typechain-types/factories/PendleBtrflyScy__factory.ts +42 -19
  110. package/typechain-types/factories/PendleGovernanceManager__factory.ts +2 -2
  111. package/typechain-types/factories/PendleMarketFactory__factory.ts +66 -15
  112. package/typechain-types/factories/PendleMarket__factory.ts +170 -53
  113. package/typechain-types/factories/PendlePrincipalToken__factory.ts +540 -0
  114. package/typechain-types/factories/PendleRouterRedeemUpg__factory.ts +112 -0
  115. package/typechain-types/factories/PendleRouter__factory.ts +23 -1
  116. package/typechain-types/factories/PendleStEthSCY__factory.ts +716 -0
  117. package/typechain-types/factories/PendleYearnVaultScy__factory.ts +41 -18
  118. package/typechain-types/factories/PendleYieldContractFactory__factory.ts +75 -5
  119. package/typechain-types/factories/PendleYieldToken__factory.ts +102 -33
  120. package/typechain-types/factories/RewardManager__factory.ts +13 -0
  121. package/typechain-types/factories/RouterStatic__factory.ts +13 -629
  122. package/typechain-types/factories/SCYBaseWithRewards__factory.ts +60 -2
  123. package/typechain-types/factories/SCYBase__factory.ts +28 -2
  124. package/typechain-types/hardhat.d.ts +52 -16
  125. package/typechain-types/index.ts +14 -6
  126. package/typechain-types/factories/PendleOwnershipToken__factory.ts +0 -527
@@ -0,0 +1,125 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BytesLike,
8
+ CallOverrides,
9
+ ContractTransaction,
10
+ Overrides,
11
+ PopulatedTransaction,
12
+ Signer,
13
+ utils,
14
+ } from "ethers";
15
+ import { FunctionFragment, Result } from "@ethersproject/abi";
16
+ import { Listener, Provider } from "@ethersproject/providers";
17
+ import type {
18
+ TypedEventFilter,
19
+ TypedEvent,
20
+ TypedListener,
21
+ OnEvent,
22
+ } from "./common";
23
+
24
+ export interface ActionRedeemInterface extends utils.Interface {
25
+ contractName: "ActionRedeem";
26
+ functions: {
27
+ "redeemDueIncome(address,address[],address[],address[])": FunctionFragment;
28
+ };
29
+
30
+ encodeFunctionData(
31
+ functionFragment: "redeemDueIncome",
32
+ values: [string, string[], string[], string[]]
33
+ ): string;
34
+
35
+ decodeFunctionResult(
36
+ functionFragment: "redeemDueIncome",
37
+ data: BytesLike
38
+ ): Result;
39
+
40
+ events: {};
41
+ }
42
+
43
+ export interface ActionRedeem extends BaseContract {
44
+ contractName: "ActionRedeem";
45
+ connect(signerOrProvider: Signer | Provider | string): this;
46
+ attach(addressOrName: string): this;
47
+ deployed(): Promise<this>;
48
+
49
+ interface: ActionRedeemInterface;
50
+
51
+ queryFilter<TEvent extends TypedEvent>(
52
+ event: TypedEventFilter<TEvent>,
53
+ fromBlockOrBlockhash?: string | number | undefined,
54
+ toBlock?: string | number | undefined
55
+ ): Promise<Array<TEvent>>;
56
+
57
+ listeners<TEvent extends TypedEvent>(
58
+ eventFilter?: TypedEventFilter<TEvent>
59
+ ): Array<TypedListener<TEvent>>;
60
+ listeners(eventName?: string): Array<Listener>;
61
+ removeAllListeners<TEvent extends TypedEvent>(
62
+ eventFilter: TypedEventFilter<TEvent>
63
+ ): this;
64
+ removeAllListeners(eventName?: string): this;
65
+ off: OnEvent<this>;
66
+ on: OnEvent<this>;
67
+ once: OnEvent<this>;
68
+ removeListener: OnEvent<this>;
69
+
70
+ functions: {
71
+ redeemDueIncome(
72
+ user: string,
73
+ scys: string[],
74
+ yieldTokens: string[],
75
+ arg3: string[],
76
+ overrides?: Overrides & { from?: string | Promise<string> }
77
+ ): Promise<ContractTransaction>;
78
+ };
79
+
80
+ redeemDueIncome(
81
+ user: string,
82
+ scys: string[],
83
+ yieldTokens: string[],
84
+ arg3: string[],
85
+ overrides?: Overrides & { from?: string | Promise<string> }
86
+ ): Promise<ContractTransaction>;
87
+
88
+ callStatic: {
89
+ redeemDueIncome(
90
+ user: string,
91
+ scys: string[],
92
+ yieldTokens: string[],
93
+ arg3: string[],
94
+ overrides?: CallOverrides
95
+ ): Promise<
96
+ [BigNumber[][], BigNumber[], BigNumber[][]] & {
97
+ scyRewards: BigNumber[][];
98
+ ytInterests: BigNumber[];
99
+ ytRewards: BigNumber[][];
100
+ }
101
+ >;
102
+ };
103
+
104
+ filters: {};
105
+
106
+ estimateGas: {
107
+ redeemDueIncome(
108
+ user: string,
109
+ scys: string[],
110
+ yieldTokens: string[],
111
+ arg3: string[],
112
+ overrides?: Overrides & { from?: string | Promise<string> }
113
+ ): Promise<BigNumber>;
114
+ };
115
+
116
+ populateTransaction: {
117
+ redeemDueIncome(
118
+ user: string,
119
+ scys: string[],
120
+ yieldTokens: string[],
121
+ arg3: string[],
122
+ overrides?: Overrides & { from?: string | Promise<string> }
123
+ ): Promise<PopulatedTransaction>;
124
+ };
125
+ }
@@ -0,0 +1,223 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BytesLike,
8
+ CallOverrides,
9
+ PopulatedTransaction,
10
+ Signer,
11
+ utils,
12
+ } from "ethers";
13
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
14
+ import { Listener, Provider } from "@ethersproject/providers";
15
+ import type {
16
+ TypedEventFilter,
17
+ TypedEvent,
18
+ TypedListener,
19
+ OnEvent,
20
+ } from "./common";
21
+
22
+ export interface ActionSCYAndPYBaseInterface extends utils.Interface {
23
+ contractName: "ActionSCYAndPYBase";
24
+ functions: {
25
+ "joeFactory()": FunctionFragment;
26
+ "joeRouter()": FunctionFragment;
27
+ };
28
+
29
+ encodeFunctionData(
30
+ functionFragment: "joeFactory",
31
+ values?: undefined
32
+ ): string;
33
+ encodeFunctionData(functionFragment: "joeRouter", values?: undefined): string;
34
+
35
+ decodeFunctionResult(functionFragment: "joeFactory", data: BytesLike): Result;
36
+ decodeFunctionResult(functionFragment: "joeRouter", data: BytesLike): Result;
37
+
38
+ events: {
39
+ "MintPyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
40
+ "MintScyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
41
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)": EventFragment;
42
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)": EventFragment;
43
+ };
44
+
45
+ getEvent(nameOrSignatureOrTopic: "MintPyFromRawToken"): EventFragment;
46
+ getEvent(nameOrSignatureOrTopic: "MintScyFromRawToken"): EventFragment;
47
+ getEvent(nameOrSignatureOrTopic: "RedeemPyToRawToken"): EventFragment;
48
+ getEvent(nameOrSignatureOrTopic: "RedeemScyToRawToken"): EventFragment;
49
+ }
50
+
51
+ export type MintPyFromRawTokenEvent = TypedEvent<
52
+ [string, string, BigNumber, string, BigNumber],
53
+ {
54
+ user: string;
55
+ rawTokenIn: string;
56
+ netRawTokenIn: BigNumber;
57
+ YT: string;
58
+ netPyOut: BigNumber;
59
+ }
60
+ >;
61
+
62
+ export type MintPyFromRawTokenEventFilter =
63
+ TypedEventFilter<MintPyFromRawTokenEvent>;
64
+
65
+ export type MintScyFromRawTokenEvent = TypedEvent<
66
+ [string, string, BigNumber, string, BigNumber],
67
+ {
68
+ user: string;
69
+ rawTokenIn: string;
70
+ netRawTokenIn: BigNumber;
71
+ SCY: string;
72
+ netScyOut: BigNumber;
73
+ }
74
+ >;
75
+
76
+ export type MintScyFromRawTokenEventFilter =
77
+ TypedEventFilter<MintScyFromRawTokenEvent>;
78
+
79
+ export type RedeemPyToRawTokenEvent = TypedEvent<
80
+ [string, string, BigNumber, string, BigNumber],
81
+ {
82
+ user: string;
83
+ YT: string;
84
+ netPyIn: BigNumber;
85
+ rawTokenOut: string;
86
+ netRawTokenOut: BigNumber;
87
+ }
88
+ >;
89
+
90
+ export type RedeemPyToRawTokenEventFilter =
91
+ TypedEventFilter<RedeemPyToRawTokenEvent>;
92
+
93
+ export type RedeemScyToRawTokenEvent = TypedEvent<
94
+ [string, string, BigNumber, string, BigNumber],
95
+ {
96
+ user: string;
97
+ SCY: string;
98
+ netScyIn: BigNumber;
99
+ rawTokenOut: string;
100
+ netRawTokenOut: BigNumber;
101
+ }
102
+ >;
103
+
104
+ export type RedeemScyToRawTokenEventFilter =
105
+ TypedEventFilter<RedeemScyToRawTokenEvent>;
106
+
107
+ export interface ActionSCYAndPYBase extends BaseContract {
108
+ contractName: "ActionSCYAndPYBase";
109
+ connect(signerOrProvider: Signer | Provider | string): this;
110
+ attach(addressOrName: string): this;
111
+ deployed(): Promise<this>;
112
+
113
+ interface: ActionSCYAndPYBaseInterface;
114
+
115
+ queryFilter<TEvent extends TypedEvent>(
116
+ event: TypedEventFilter<TEvent>,
117
+ fromBlockOrBlockhash?: string | number | undefined,
118
+ toBlock?: string | number | undefined
119
+ ): Promise<Array<TEvent>>;
120
+
121
+ listeners<TEvent extends TypedEvent>(
122
+ eventFilter?: TypedEventFilter<TEvent>
123
+ ): Array<TypedListener<TEvent>>;
124
+ listeners(eventName?: string): Array<Listener>;
125
+ removeAllListeners<TEvent extends TypedEvent>(
126
+ eventFilter: TypedEventFilter<TEvent>
127
+ ): this;
128
+ removeAllListeners(eventName?: string): this;
129
+ off: OnEvent<this>;
130
+ on: OnEvent<this>;
131
+ once: OnEvent<this>;
132
+ removeListener: OnEvent<this>;
133
+
134
+ functions: {
135
+ joeFactory(overrides?: CallOverrides): Promise<[string]>;
136
+
137
+ joeRouter(overrides?: CallOverrides): Promise<[string]>;
138
+ };
139
+
140
+ joeFactory(overrides?: CallOverrides): Promise<string>;
141
+
142
+ joeRouter(overrides?: CallOverrides): Promise<string>;
143
+
144
+ callStatic: {
145
+ joeFactory(overrides?: CallOverrides): Promise<string>;
146
+
147
+ joeRouter(overrides?: CallOverrides): Promise<string>;
148
+ };
149
+
150
+ filters: {
151
+ "MintPyFromRawToken(address,address,uint256,address,uint256)"(
152
+ user?: string | null,
153
+ rawTokenIn?: string | null,
154
+ netRawTokenIn?: null,
155
+ YT?: string | null,
156
+ netPyOut?: null
157
+ ): MintPyFromRawTokenEventFilter;
158
+ MintPyFromRawToken(
159
+ user?: string | null,
160
+ rawTokenIn?: string | null,
161
+ netRawTokenIn?: null,
162
+ YT?: string | null,
163
+ netPyOut?: null
164
+ ): MintPyFromRawTokenEventFilter;
165
+
166
+ "MintScyFromRawToken(address,address,uint256,address,uint256)"(
167
+ user?: string | null,
168
+ rawTokenIn?: string | null,
169
+ netRawTokenIn?: null,
170
+ SCY?: string | null,
171
+ netScyOut?: null
172
+ ): MintScyFromRawTokenEventFilter;
173
+ MintScyFromRawToken(
174
+ user?: string | null,
175
+ rawTokenIn?: string | null,
176
+ netRawTokenIn?: null,
177
+ SCY?: string | null,
178
+ netScyOut?: null
179
+ ): MintScyFromRawTokenEventFilter;
180
+
181
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)"(
182
+ user?: string | null,
183
+ YT?: string | null,
184
+ netPyIn?: null,
185
+ rawTokenOut?: string | null,
186
+ netRawTokenOut?: null
187
+ ): RedeemPyToRawTokenEventFilter;
188
+ RedeemPyToRawToken(
189
+ user?: string | null,
190
+ YT?: string | null,
191
+ netPyIn?: null,
192
+ rawTokenOut?: string | null,
193
+ netRawTokenOut?: null
194
+ ): RedeemPyToRawTokenEventFilter;
195
+
196
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)"(
197
+ user?: string | null,
198
+ SCY?: string | null,
199
+ netScyIn?: null,
200
+ rawTokenOut?: string | null,
201
+ netRawTokenOut?: null
202
+ ): RedeemScyToRawTokenEventFilter;
203
+ RedeemScyToRawToken(
204
+ user?: string | null,
205
+ SCY?: string | null,
206
+ netScyIn?: null,
207
+ rawTokenOut?: string | null,
208
+ netRawTokenOut?: null
209
+ ): RedeemScyToRawTokenEventFilter;
210
+ };
211
+
212
+ estimateGas: {
213
+ joeFactory(overrides?: CallOverrides): Promise<BigNumber>;
214
+
215
+ joeRouter(overrides?: CallOverrides): Promise<BigNumber>;
216
+ };
217
+
218
+ populateTransaction: {
219
+ joeFactory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
220
+
221
+ joeRouter(overrides?: CallOverrides): Promise<PopulatedTransaction>;
222
+ };
223
+ }
@@ -10,7 +10,7 @@ import {
10
10
  Signer,
11
11
  utils,
12
12
  } from "ethers";
13
- import { FunctionFragment, Result } from "@ethersproject/abi";
13
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
14
14
  import { Listener, Provider } from "@ethersproject/providers";
15
15
  import type {
16
16
  TypedEventFilter,
@@ -35,9 +35,75 @@ export interface ActionSCYAndYOBaseInterface extends utils.Interface {
35
35
  decodeFunctionResult(functionFragment: "joeFactory", data: BytesLike): Result;
36
36
  decodeFunctionResult(functionFragment: "joeRouter", data: BytesLike): Result;
37
37
 
38
- events: {};
38
+ events: {
39
+ "MintPyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
40
+ "MintScyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
41
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)": EventFragment;
42
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)": EventFragment;
43
+ };
44
+
45
+ getEvent(nameOrSignatureOrTopic: "MintPyFromRawToken"): EventFragment;
46
+ getEvent(nameOrSignatureOrTopic: "MintScyFromRawToken"): EventFragment;
47
+ getEvent(nameOrSignatureOrTopic: "RedeemPyToRawToken"): EventFragment;
48
+ getEvent(nameOrSignatureOrTopic: "RedeemScyToRawToken"): EventFragment;
39
49
  }
40
50
 
51
+ export type MintPyFromRawTokenEvent = TypedEvent<
52
+ [string, string, BigNumber, string, BigNumber],
53
+ {
54
+ user: string;
55
+ rawTokenIn: string;
56
+ netRawTokenIn: BigNumber;
57
+ YT: string;
58
+ netPyOut: BigNumber;
59
+ }
60
+ >;
61
+
62
+ export type MintPyFromRawTokenEventFilter =
63
+ TypedEventFilter<MintPyFromRawTokenEvent>;
64
+
65
+ export type MintScyFromRawTokenEvent = TypedEvent<
66
+ [string, string, BigNumber, string, BigNumber],
67
+ {
68
+ user: string;
69
+ rawTokenIn: string;
70
+ netRawTokenIn: BigNumber;
71
+ SCY: string;
72
+ netScyOut: BigNumber;
73
+ }
74
+ >;
75
+
76
+ export type MintScyFromRawTokenEventFilter =
77
+ TypedEventFilter<MintScyFromRawTokenEvent>;
78
+
79
+ export type RedeemPyToRawTokenEvent = TypedEvent<
80
+ [string, string, BigNumber, string, BigNumber],
81
+ {
82
+ user: string;
83
+ YT: string;
84
+ netPyIn: BigNumber;
85
+ rawTokenOut: string;
86
+ netRawTokenOut: BigNumber;
87
+ }
88
+ >;
89
+
90
+ export type RedeemPyToRawTokenEventFilter =
91
+ TypedEventFilter<RedeemPyToRawTokenEvent>;
92
+
93
+ export type RedeemScyToRawTokenEvent = TypedEvent<
94
+ [string, string, BigNumber, string, BigNumber],
95
+ {
96
+ user: string;
97
+ SCY: string;
98
+ netScyIn: BigNumber;
99
+ rawTokenOut: string;
100
+ netRawTokenOut: BigNumber;
101
+ }
102
+ >;
103
+
104
+ export type RedeemScyToRawTokenEventFilter =
105
+ TypedEventFilter<RedeemScyToRawTokenEvent>;
106
+
41
107
  export interface ActionSCYAndYOBase extends BaseContract {
42
108
  contractName: "ActionSCYAndYOBase";
43
109
  connect(signerOrProvider: Signer | Provider | string): this;
@@ -81,7 +147,67 @@ export interface ActionSCYAndYOBase extends BaseContract {
81
147
  joeRouter(overrides?: CallOverrides): Promise<string>;
82
148
  };
83
149
 
84
- filters: {};
150
+ filters: {
151
+ "MintPyFromRawToken(address,address,uint256,address,uint256)"(
152
+ user?: string | null,
153
+ rawTokenIn?: string | null,
154
+ netRawTokenIn?: null,
155
+ YT?: string | null,
156
+ netPyOut?: null
157
+ ): MintPyFromRawTokenEventFilter;
158
+ MintPyFromRawToken(
159
+ user?: string | null,
160
+ rawTokenIn?: string | null,
161
+ netRawTokenIn?: null,
162
+ YT?: string | null,
163
+ netPyOut?: null
164
+ ): MintPyFromRawTokenEventFilter;
165
+
166
+ "MintScyFromRawToken(address,address,uint256,address,uint256)"(
167
+ user?: string | null,
168
+ rawTokenIn?: string | null,
169
+ netRawTokenIn?: null,
170
+ SCY?: string | null,
171
+ netScyOut?: null
172
+ ): MintScyFromRawTokenEventFilter;
173
+ MintScyFromRawToken(
174
+ user?: string | null,
175
+ rawTokenIn?: string | null,
176
+ netRawTokenIn?: null,
177
+ SCY?: string | null,
178
+ netScyOut?: null
179
+ ): MintScyFromRawTokenEventFilter;
180
+
181
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)"(
182
+ user?: string | null,
183
+ YT?: string | null,
184
+ netPyIn?: null,
185
+ rawTokenOut?: string | null,
186
+ netRawTokenOut?: null
187
+ ): RedeemPyToRawTokenEventFilter;
188
+ RedeemPyToRawToken(
189
+ user?: string | null,
190
+ YT?: string | null,
191
+ netPyIn?: null,
192
+ rawTokenOut?: string | null,
193
+ netRawTokenOut?: null
194
+ ): RedeemPyToRawTokenEventFilter;
195
+
196
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)"(
197
+ user?: string | null,
198
+ SCY?: string | null,
199
+ netScyIn?: null,
200
+ rawTokenOut?: string | null,
201
+ netRawTokenOut?: null
202
+ ): RedeemScyToRawTokenEventFilter;
203
+ RedeemScyToRawToken(
204
+ user?: string | null,
205
+ SCY?: string | null,
206
+ netScyIn?: null,
207
+ rawTokenOut?: string | null,
208
+ netRawTokenOut?: null
209
+ ): RedeemScyToRawTokenEventFilter;
210
+ };
85
211
 
86
212
  estimateGas: {
87
213
  joeFactory(overrides?: CallOverrides): Promise<BigNumber>;
@@ -10,7 +10,7 @@ import {
10
10
  Signer,
11
11
  utils,
12
12
  } from "ethers";
13
- import { FunctionFragment, Result } from "@ethersproject/abi";
13
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
14
14
  import { Listener, Provider } from "@ethersproject/providers";
15
15
  import type {
16
16
  TypedEventFilter,
@@ -35,9 +35,84 @@ export interface ActionSCYAndYTBaseInterface extends utils.Interface {
35
35
  decodeFunctionResult(functionFragment: "joeFactory", data: BytesLike): Result;
36
36
  decodeFunctionResult(functionFragment: "joeRouter", data: BytesLike): Result;
37
37
 
38
- events: {};
38
+ events: {
39
+ "MintPyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
40
+ "MintScyFromRawToken(address,address,uint256,address,uint256)": EventFragment;
41
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)": EventFragment;
42
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)": EventFragment;
43
+ "SwapYT(address,int256,int256)": EventFragment;
44
+ };
45
+
46
+ getEvent(nameOrSignatureOrTopic: "MintPyFromRawToken"): EventFragment;
47
+ getEvent(nameOrSignatureOrTopic: "MintScyFromRawToken"): EventFragment;
48
+ getEvent(nameOrSignatureOrTopic: "RedeemPyToRawToken"): EventFragment;
49
+ getEvent(nameOrSignatureOrTopic: "RedeemScyToRawToken"): EventFragment;
50
+ getEvent(nameOrSignatureOrTopic: "SwapYT"): EventFragment;
39
51
  }
40
52
 
53
+ export type MintPyFromRawTokenEvent = TypedEvent<
54
+ [string, string, BigNumber, string, BigNumber],
55
+ {
56
+ user: string;
57
+ rawTokenIn: string;
58
+ netRawTokenIn: BigNumber;
59
+ YT: string;
60
+ netPyOut: BigNumber;
61
+ }
62
+ >;
63
+
64
+ export type MintPyFromRawTokenEventFilter =
65
+ TypedEventFilter<MintPyFromRawTokenEvent>;
66
+
67
+ export type MintScyFromRawTokenEvent = TypedEvent<
68
+ [string, string, BigNumber, string, BigNumber],
69
+ {
70
+ user: string;
71
+ rawTokenIn: string;
72
+ netRawTokenIn: BigNumber;
73
+ SCY: string;
74
+ netScyOut: BigNumber;
75
+ }
76
+ >;
77
+
78
+ export type MintScyFromRawTokenEventFilter =
79
+ TypedEventFilter<MintScyFromRawTokenEvent>;
80
+
81
+ export type RedeemPyToRawTokenEvent = TypedEvent<
82
+ [string, string, BigNumber, string, BigNumber],
83
+ {
84
+ user: string;
85
+ YT: string;
86
+ netPyIn: BigNumber;
87
+ rawTokenOut: string;
88
+ netRawTokenOut: BigNumber;
89
+ }
90
+ >;
91
+
92
+ export type RedeemPyToRawTokenEventFilter =
93
+ TypedEventFilter<RedeemPyToRawTokenEvent>;
94
+
95
+ export type RedeemScyToRawTokenEvent = TypedEvent<
96
+ [string, string, BigNumber, string, BigNumber],
97
+ {
98
+ user: string;
99
+ SCY: string;
100
+ netScyIn: BigNumber;
101
+ rawTokenOut: string;
102
+ netRawTokenOut: BigNumber;
103
+ }
104
+ >;
105
+
106
+ export type RedeemScyToRawTokenEventFilter =
107
+ TypedEventFilter<RedeemScyToRawTokenEvent>;
108
+
109
+ export type SwapYTEvent = TypedEvent<
110
+ [string, BigNumber, BigNumber],
111
+ { user: string; ytToAccount: BigNumber; scyToAccount: BigNumber }
112
+ >;
113
+
114
+ export type SwapYTEventFilter = TypedEventFilter<SwapYTEvent>;
115
+
41
116
  export interface ActionSCYAndYTBase extends BaseContract {
42
117
  contractName: "ActionSCYAndYTBase";
43
118
  connect(signerOrProvider: Signer | Provider | string): this;
@@ -81,7 +156,78 @@ export interface ActionSCYAndYTBase extends BaseContract {
81
156
  joeRouter(overrides?: CallOverrides): Promise<string>;
82
157
  };
83
158
 
84
- filters: {};
159
+ filters: {
160
+ "MintPyFromRawToken(address,address,uint256,address,uint256)"(
161
+ user?: string | null,
162
+ rawTokenIn?: string | null,
163
+ netRawTokenIn?: null,
164
+ YT?: string | null,
165
+ netPyOut?: null
166
+ ): MintPyFromRawTokenEventFilter;
167
+ MintPyFromRawToken(
168
+ user?: string | null,
169
+ rawTokenIn?: string | null,
170
+ netRawTokenIn?: null,
171
+ YT?: string | null,
172
+ netPyOut?: null
173
+ ): MintPyFromRawTokenEventFilter;
174
+
175
+ "MintScyFromRawToken(address,address,uint256,address,uint256)"(
176
+ user?: string | null,
177
+ rawTokenIn?: string | null,
178
+ netRawTokenIn?: null,
179
+ SCY?: string | null,
180
+ netScyOut?: null
181
+ ): MintScyFromRawTokenEventFilter;
182
+ MintScyFromRawToken(
183
+ user?: string | null,
184
+ rawTokenIn?: string | null,
185
+ netRawTokenIn?: null,
186
+ SCY?: string | null,
187
+ netScyOut?: null
188
+ ): MintScyFromRawTokenEventFilter;
189
+
190
+ "RedeemPyToRawToken(address,address,uint256,address,uint256)"(
191
+ user?: string | null,
192
+ YT?: string | null,
193
+ netPyIn?: null,
194
+ rawTokenOut?: string | null,
195
+ netRawTokenOut?: null
196
+ ): RedeemPyToRawTokenEventFilter;
197
+ RedeemPyToRawToken(
198
+ user?: string | null,
199
+ YT?: string | null,
200
+ netPyIn?: null,
201
+ rawTokenOut?: string | null,
202
+ netRawTokenOut?: null
203
+ ): RedeemPyToRawTokenEventFilter;
204
+
205
+ "RedeemScyToRawToken(address,address,uint256,address,uint256)"(
206
+ user?: string | null,
207
+ SCY?: string | null,
208
+ netScyIn?: null,
209
+ rawTokenOut?: string | null,
210
+ netRawTokenOut?: null
211
+ ): RedeemScyToRawTokenEventFilter;
212
+ RedeemScyToRawToken(
213
+ user?: string | null,
214
+ SCY?: string | null,
215
+ netScyIn?: null,
216
+ rawTokenOut?: string | null,
217
+ netRawTokenOut?: null
218
+ ): RedeemScyToRawTokenEventFilter;
219
+
220
+ "SwapYT(address,int256,int256)"(
221
+ user?: string | null,
222
+ ytToAccount?: null,
223
+ scyToAccount?: null
224
+ ): SwapYTEventFilter;
225
+ SwapYT(
226
+ user?: string | null,
227
+ ytToAccount?: null,
228
+ scyToAccount?: null
229
+ ): SwapYTEventFilter;
230
+ };
85
231
 
86
232
  estimateGas: {
87
233
  joeFactory(overrides?: CallOverrides): Promise<BigNumber>;