@pendle/core-v2 6.8.1 → 6.10.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 (119) hide show
  1. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooper.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooper.json +244 -249
  3. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooperEIP712Types.dbg.json +1 -1
  4. package/build/artifacts/contracts/pt-looping/PTLooperBase.sol/PTLooperBase.dbg.json +1 -1
  5. package/build/artifacts/contracts/pt-looping/PTLooperBase.sol/PTLooperBase.json +244 -249
  6. package/build/artifacts/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol/PTLooperEIP712TypesEncodeDataLib.dbg.json +1 -1
  7. package/build/artifacts/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol/PTLooperEIP712TypesEncodeDataLib.json +2 -2
  8. package/build/artifacts/contracts/pt-looping/PendlePTLooper.sol/PendlePTLooper.dbg.json +1 -1
  9. package/build/artifacts/contracts/pt-looping/PendlePTLooper.sol/PendlePTLooper.json +246 -251
  10. package/build/artifacts/contracts/pt-looping/money-market/BaseMoneyMarket.sol/BaseMoneyMarket.dbg.json +1 -1
  11. package/build/artifacts/contracts/pt-looping/money-market/BaseMoneyMarketView.sol/BaseMoneyMarketView.dbg.json +1 -1
  12. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarket.sol/AaveMoneyMarket.dbg.json +1 -1
  13. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarket.sol/AaveMoneyMarket.json +2 -2
  14. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarketView.sol/AaveMoneyMarketView.dbg.json +1 -1
  15. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarketView.sol/AaveMoneyMarketView.json +2 -2
  16. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol/AaveV4MMPayloadLib.dbg.json +4 -0
  17. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol/AaveV4MMPayloadLib.json +10 -0
  18. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol/AaveV4MoneyMarket.dbg.json +4 -0
  19. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol/AaveV4MoneyMarket.json +615 -0
  20. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol/AaveV4MoneyMarketView.dbg.json +4 -0
  21. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol/AaveV4MoneyMarketView.json +280 -0
  22. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol/IAaveOracle.dbg.json +4 -0
  23. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol/IAaveOracle.json +30 -0
  24. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol/IHubBase.dbg.json +4 -0
  25. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol/IHubBase.json +322 -0
  26. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol/ISpoke.dbg.json +4 -0
  27. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol/ISpoke.json +398 -0
  28. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol/EulerMMPayloadLib.dbg.json +4 -0
  29. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol/EulerMMPayloadLib.json +10 -0
  30. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol/EulerMoneyMarket.dbg.json +4 -0
  31. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol/EulerMoneyMarket.json +651 -0
  32. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol/EulerMoneyMarketView.dbg.json +4 -0
  33. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol/EulerMoneyMarketView.json +298 -0
  34. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol/IEVC.dbg.json +4 -0
  35. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol/IEVC.json +959 -0
  36. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol/IEulerFactory.dbg.json +4 -0
  37. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol/IEulerFactory.json +30 -0
  38. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol/IEulerPriceOracle.dbg.json +4 -0
  39. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol/IEulerPriceOracle.json +53 -0
  40. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/AmountCapLib.dbg.json +4 -0
  41. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/AmountCapLib.json +10 -0
  42. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/IEulerVault.dbg.json +4 -0
  43. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/IEulerVault.json +933 -0
  44. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarket.sol/MorphoBlueMoneyMarket.dbg.json +1 -1
  45. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarket.sol/MorphoBlueMoneyMarket.json +2 -2
  46. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarketView.sol/MorphoBlueMoneyMarketView.dbg.json +1 -1
  47. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarketView.sol/MorphoBlueMoneyMarketView.json +2 -2
  48. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +1 -1
  49. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +1 -1
  50. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  51. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  52. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  53. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  54. package/contracts/interfaces/IPPTLooper.sol +2 -4
  55. package/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol +6 -6
  56. package/contracts/pt-looping/PendlePTLooper.sol +4 -2
  57. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol +20 -0
  58. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol +85 -0
  59. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol +180 -0
  60. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol +12 -0
  61. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol +72 -0
  62. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol +88 -0
  63. package/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol +25 -0
  64. package/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol +104 -0
  65. package/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol +105 -0
  66. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol +432 -0
  67. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol +10 -0
  68. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol +26 -0
  69. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol +149 -0
  70. package/contracts/router/swap-aggregator/OKXScaleHelper.sol +6 -0
  71. package/deployments/1-offchain-helper.json +2 -1
  72. package/deployments/143-core.json +7 -1
  73. package/deployments/143-offchain-helper.json +2 -1
  74. package/deployments/196-core.json +49 -0
  75. package/deployments/196-offchain-helper.json +12 -0
  76. package/deployments/42161-core.json +4 -1
  77. package/deployments/42161-offchain-helper.json +2 -1
  78. package/deployments/4663-core.json +48 -0
  79. package/deployments/4663-offchain-helper.json +12 -0
  80. package/deployments/56-offchain-helper.json +2 -1
  81. package/deployments/8453-offchain-helper.json +2 -1
  82. package/deployments/9745-offchain-helper.json +2 -1
  83. package/deployments/999-offchain-helper.json +2 -1
  84. package/package.json +1 -1
  85. package/typechain-types/AaveV4MoneyMarket.ts +573 -0
  86. package/typechain-types/AaveV4MoneyMarketView.ts +362 -0
  87. package/typechain-types/EulerMoneyMarket.ts +599 -0
  88. package/typechain-types/EulerMoneyMarketView.ts +375 -0
  89. package/typechain-types/IAaveOracle.ts +17 -149
  90. package/typechain-types/IEVC.ts +1647 -0
  91. package/typechain-types/IEulerFactory.ts +94 -0
  92. package/typechain-types/IEulerPriceOracle.ts +123 -0
  93. package/typechain-types/IEulerVault.ts +1298 -0
  94. package/typechain-types/IHubBase.ts +452 -0
  95. package/typechain-types/IPPTLooper.ts +68 -68
  96. package/typechain-types/ISpoke.ts +577 -0
  97. package/typechain-types/PTLooperBase.ts +68 -68
  98. package/typechain-types/PendlePTLooper.ts +68 -68
  99. package/typechain-types/factories/AaveMoneyMarketView__factory.ts +1 -1
  100. package/typechain-types/factories/AaveMoneyMarket__factory.ts +1 -1
  101. package/typechain-types/factories/AaveV4MoneyMarketView__factory.ts +349 -0
  102. package/typechain-types/factories/AaveV4MoneyMarket__factory.ts +673 -0
  103. package/typechain-types/factories/EulerMoneyMarketView__factory.ts +371 -0
  104. package/typechain-types/factories/EulerMoneyMarket__factory.ts +720 -0
  105. package/typechain-types/factories/IAaveOracle__factory.ts +3 -93
  106. package/typechain-types/factories/IEVC__factory.ts +968 -0
  107. package/typechain-types/factories/IEulerFactory__factory.ts +42 -0
  108. package/typechain-types/factories/IEulerPriceOracle__factory.ts +68 -0
  109. package/typechain-types/factories/IEulerVault__factory.ts +945 -0
  110. package/typechain-types/factories/IHubBase__factory.ts +334 -0
  111. package/typechain-types/factories/IPPTLooper__factory.ts +243 -248
  112. package/typechain-types/factories/ISpoke__factory.ts +407 -0
  113. package/typechain-types/factories/MorphoBlueMoneyMarketView__factory.ts +1 -1
  114. package/typechain-types/factories/MorphoBlueMoneyMarket__factory.ts +1 -1
  115. package/typechain-types/factories/PTLooperBase__factory.ts +243 -248
  116. package/typechain-types/factories/PendlePTLooper__factory.ts +244 -249
  117. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  118. package/typechain-types/hardhat.d.ts +99 -45
  119. package/typechain-types/index.ts +22 -12
@@ -0,0 +1,573 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
17
+ import { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "./common";
24
+
25
+ export type MarketCtxStruct = {
26
+ box: string;
27
+ mmPayload: BytesLike;
28
+ collateral: string;
29
+ debtAsset: string;
30
+ };
31
+
32
+ export type MarketCtxStructOutput = [string, string, string, string] & {
33
+ box: string;
34
+ mmPayload: string;
35
+ collateral: string;
36
+ debtAsset: string;
37
+ };
38
+
39
+ export interface AaveV4MoneyMarketInterface extends utils.Interface {
40
+ contractName: "AaveV4MoneyMarket";
41
+ functions: {
42
+ "POSITION_BOX_FACTORY()": FunctionFragment;
43
+ "PT_LOOPER()": FunctionFragment;
44
+ "borrow((address,bytes32,address,address),uint256)": FunctionFragment;
45
+ "claimRewards((address,bytes32,address,address),address,bytes,address[])": FunctionFragment;
46
+ "collateralBalance((address,bytes32,address,address))": FunctionFragment;
47
+ "debtBalance((address,bytes32,address,address))": FunctionFragment;
48
+ "initialize((address,bytes32,address,address))": FunctionFragment;
49
+ "lend((address,bytes32,address,address),uint256)": FunctionFragment;
50
+ "oraclePtDebtRate((address,bytes32,address,address))": FunctionFragment;
51
+ "repay((address,bytes32,address,address),uint256)": FunctionFragment;
52
+ "withdraw((address,bytes32,address,address),uint256)": FunctionFragment;
53
+ };
54
+
55
+ encodeFunctionData(
56
+ functionFragment: "POSITION_BOX_FACTORY",
57
+ values?: undefined
58
+ ): string;
59
+ encodeFunctionData(functionFragment: "PT_LOOPER", values?: undefined): string;
60
+ encodeFunctionData(
61
+ functionFragment: "borrow",
62
+ values: [MarketCtxStruct, BigNumberish]
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "claimRewards",
66
+ values: [MarketCtxStruct, string, BytesLike, string[]]
67
+ ): string;
68
+ encodeFunctionData(
69
+ functionFragment: "collateralBalance",
70
+ values: [MarketCtxStruct]
71
+ ): string;
72
+ encodeFunctionData(
73
+ functionFragment: "debtBalance",
74
+ values: [MarketCtxStruct]
75
+ ): string;
76
+ encodeFunctionData(
77
+ functionFragment: "initialize",
78
+ values: [MarketCtxStruct]
79
+ ): string;
80
+ encodeFunctionData(
81
+ functionFragment: "lend",
82
+ values: [MarketCtxStruct, BigNumberish]
83
+ ): string;
84
+ encodeFunctionData(
85
+ functionFragment: "oraclePtDebtRate",
86
+ values: [MarketCtxStruct]
87
+ ): string;
88
+ encodeFunctionData(
89
+ functionFragment: "repay",
90
+ values: [MarketCtxStruct, BigNumberish]
91
+ ): string;
92
+ encodeFunctionData(
93
+ functionFragment: "withdraw",
94
+ values: [MarketCtxStruct, BigNumberish]
95
+ ): string;
96
+
97
+ decodeFunctionResult(
98
+ functionFragment: "POSITION_BOX_FACTORY",
99
+ data: BytesLike
100
+ ): Result;
101
+ decodeFunctionResult(functionFragment: "PT_LOOPER", data: BytesLike): Result;
102
+ decodeFunctionResult(functionFragment: "borrow", data: BytesLike): Result;
103
+ decodeFunctionResult(
104
+ functionFragment: "claimRewards",
105
+ data: BytesLike
106
+ ): Result;
107
+ decodeFunctionResult(
108
+ functionFragment: "collateralBalance",
109
+ data: BytesLike
110
+ ): Result;
111
+ decodeFunctionResult(
112
+ functionFragment: "debtBalance",
113
+ data: BytesLike
114
+ ): Result;
115
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
116
+ decodeFunctionResult(functionFragment: "lend", data: BytesLike): Result;
117
+ decodeFunctionResult(
118
+ functionFragment: "oraclePtDebtRate",
119
+ data: BytesLike
120
+ ): Result;
121
+ decodeFunctionResult(functionFragment: "repay", data: BytesLike): Result;
122
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
123
+
124
+ events: {
125
+ "Borrowed(address,address,uint256,uint256)": EventFragment;
126
+ "Lent(address,address,uint256,uint256)": EventFragment;
127
+ "Repaid(address,address,uint256,uint256)": EventFragment;
128
+ "RewardsClaimed(address,address[],uint256[])": EventFragment;
129
+ "Withdrawn(address,address,uint256,uint256)": EventFragment;
130
+ };
131
+
132
+ getEvent(nameOrSignatureOrTopic: "Borrowed"): EventFragment;
133
+ getEvent(nameOrSignatureOrTopic: "Lent"): EventFragment;
134
+ getEvent(nameOrSignatureOrTopic: "Repaid"): EventFragment;
135
+ getEvent(nameOrSignatureOrTopic: "RewardsClaimed"): EventFragment;
136
+ getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment;
137
+ }
138
+
139
+ export type BorrowedEvent = TypedEvent<
140
+ [string, string, BigNumber, BigNumber],
141
+ { box: string; asset: string; amount: BigNumber; balanceBefore: BigNumber }
142
+ >;
143
+
144
+ export type BorrowedEventFilter = TypedEventFilter<BorrowedEvent>;
145
+
146
+ export type LentEvent = TypedEvent<
147
+ [string, string, BigNumber, BigNumber],
148
+ { box: string; asset: string; amount: BigNumber; balanceBefore: BigNumber }
149
+ >;
150
+
151
+ export type LentEventFilter = TypedEventFilter<LentEvent>;
152
+
153
+ export type RepaidEvent = TypedEvent<
154
+ [string, string, BigNumber, BigNumber],
155
+ { box: string; asset: string; amount: BigNumber; balanceBefore: BigNumber }
156
+ >;
157
+
158
+ export type RepaidEventFilter = TypedEventFilter<RepaidEvent>;
159
+
160
+ export type RewardsClaimedEvent = TypedEvent<
161
+ [string, string[], BigNumber[]],
162
+ {
163
+ rewardController: string;
164
+ rewardTokens: string[];
165
+ claimedAmount: BigNumber[];
166
+ }
167
+ >;
168
+
169
+ export type RewardsClaimedEventFilter = TypedEventFilter<RewardsClaimedEvent>;
170
+
171
+ export type WithdrawnEvent = TypedEvent<
172
+ [string, string, BigNumber, BigNumber],
173
+ { box: string; asset: string; amount: BigNumber; balanceBefore: BigNumber }
174
+ >;
175
+
176
+ export type WithdrawnEventFilter = TypedEventFilter<WithdrawnEvent>;
177
+
178
+ export interface AaveV4MoneyMarket extends BaseContract {
179
+ contractName: "AaveV4MoneyMarket";
180
+ connect(signerOrProvider: Signer | Provider | string): this;
181
+ attach(addressOrName: string): this;
182
+ deployed(): Promise<this>;
183
+
184
+ interface: AaveV4MoneyMarketInterface;
185
+
186
+ queryFilter<TEvent extends TypedEvent>(
187
+ event: TypedEventFilter<TEvent>,
188
+ fromBlockOrBlockhash?: string | number | undefined,
189
+ toBlock?: string | number | undefined
190
+ ): Promise<Array<TEvent>>;
191
+
192
+ listeners<TEvent extends TypedEvent>(
193
+ eventFilter?: TypedEventFilter<TEvent>
194
+ ): Array<TypedListener<TEvent>>;
195
+ listeners(eventName?: string): Array<Listener>;
196
+ removeAllListeners<TEvent extends TypedEvent>(
197
+ eventFilter: TypedEventFilter<TEvent>
198
+ ): this;
199
+ removeAllListeners(eventName?: string): this;
200
+ off: OnEvent<this>;
201
+ on: OnEvent<this>;
202
+ once: OnEvent<this>;
203
+ removeListener: OnEvent<this>;
204
+
205
+ functions: {
206
+ POSITION_BOX_FACTORY(overrides?: CallOverrides): Promise<[string]>;
207
+
208
+ PT_LOOPER(overrides?: CallOverrides): Promise<[string]>;
209
+
210
+ borrow(
211
+ ctx: MarketCtxStruct,
212
+ amount: BigNumberish,
213
+ overrides?: Overrides & { from?: string | Promise<string> }
214
+ ): Promise<ContractTransaction>;
215
+
216
+ claimRewards(
217
+ ctx: MarketCtxStruct,
218
+ extRewardController: string,
219
+ data: BytesLike,
220
+ rewardTokens: string[],
221
+ overrides?: Overrides & { from?: string | Promise<string> }
222
+ ): Promise<ContractTransaction>;
223
+
224
+ collateralBalance(
225
+ ctx: MarketCtxStruct,
226
+ overrides?: CallOverrides
227
+ ): Promise<[BigNumber] & { balance: BigNumber }>;
228
+
229
+ debtBalance(
230
+ ctx: MarketCtxStruct,
231
+ overrides?: CallOverrides
232
+ ): Promise<[BigNumber] & { balance: BigNumber }>;
233
+
234
+ initialize(
235
+ ctx: MarketCtxStruct,
236
+ overrides?: Overrides & { from?: string | Promise<string> }
237
+ ): Promise<ContractTransaction>;
238
+
239
+ lend(
240
+ ctx: MarketCtxStruct,
241
+ amount: BigNumberish,
242
+ overrides?: Overrides & { from?: string | Promise<string> }
243
+ ): Promise<ContractTransaction>;
244
+
245
+ oraclePtDebtRate(
246
+ ctx: MarketCtxStruct,
247
+ overrides?: CallOverrides
248
+ ): Promise<[BigNumber]>;
249
+
250
+ repay(
251
+ ctx: MarketCtxStruct,
252
+ amount: BigNumberish,
253
+ overrides?: Overrides & { from?: string | Promise<string> }
254
+ ): Promise<ContractTransaction>;
255
+
256
+ withdraw(
257
+ ctx: MarketCtxStruct,
258
+ amount: BigNumberish,
259
+ overrides?: Overrides & { from?: string | Promise<string> }
260
+ ): Promise<ContractTransaction>;
261
+ };
262
+
263
+ POSITION_BOX_FACTORY(overrides?: CallOverrides): Promise<string>;
264
+
265
+ PT_LOOPER(overrides?: CallOverrides): Promise<string>;
266
+
267
+ borrow(
268
+ ctx: MarketCtxStruct,
269
+ amount: BigNumberish,
270
+ overrides?: Overrides & { from?: string | Promise<string> }
271
+ ): Promise<ContractTransaction>;
272
+
273
+ claimRewards(
274
+ ctx: MarketCtxStruct,
275
+ extRewardController: string,
276
+ data: BytesLike,
277
+ rewardTokens: string[],
278
+ overrides?: Overrides & { from?: string | Promise<string> }
279
+ ): Promise<ContractTransaction>;
280
+
281
+ collateralBalance(
282
+ ctx: MarketCtxStruct,
283
+ overrides?: CallOverrides
284
+ ): Promise<BigNumber>;
285
+
286
+ debtBalance(
287
+ ctx: MarketCtxStruct,
288
+ overrides?: CallOverrides
289
+ ): Promise<BigNumber>;
290
+
291
+ initialize(
292
+ ctx: MarketCtxStruct,
293
+ overrides?: Overrides & { from?: string | Promise<string> }
294
+ ): Promise<ContractTransaction>;
295
+
296
+ lend(
297
+ ctx: MarketCtxStruct,
298
+ amount: BigNumberish,
299
+ overrides?: Overrides & { from?: string | Promise<string> }
300
+ ): Promise<ContractTransaction>;
301
+
302
+ oraclePtDebtRate(
303
+ ctx: MarketCtxStruct,
304
+ overrides?: CallOverrides
305
+ ): Promise<BigNumber>;
306
+
307
+ repay(
308
+ ctx: MarketCtxStruct,
309
+ amount: BigNumberish,
310
+ overrides?: Overrides & { from?: string | Promise<string> }
311
+ ): Promise<ContractTransaction>;
312
+
313
+ withdraw(
314
+ ctx: MarketCtxStruct,
315
+ amount: BigNumberish,
316
+ overrides?: Overrides & { from?: string | Promise<string> }
317
+ ): Promise<ContractTransaction>;
318
+
319
+ callStatic: {
320
+ POSITION_BOX_FACTORY(overrides?: CallOverrides): Promise<string>;
321
+
322
+ PT_LOOPER(overrides?: CallOverrides): Promise<string>;
323
+
324
+ borrow(
325
+ ctx: MarketCtxStruct,
326
+ amount: BigNumberish,
327
+ overrides?: CallOverrides
328
+ ): Promise<
329
+ [BigNumber, BigNumber] & {
330
+ borrowed: BigNumber;
331
+ postDebtBalance: BigNumber;
332
+ }
333
+ >;
334
+
335
+ claimRewards(
336
+ ctx: MarketCtxStruct,
337
+ extRewardController: string,
338
+ data: BytesLike,
339
+ rewardTokens: string[],
340
+ overrides?: CallOverrides
341
+ ): Promise<BigNumber[]>;
342
+
343
+ collateralBalance(
344
+ ctx: MarketCtxStruct,
345
+ overrides?: CallOverrides
346
+ ): Promise<BigNumber>;
347
+
348
+ debtBalance(
349
+ ctx: MarketCtxStruct,
350
+ overrides?: CallOverrides
351
+ ): Promise<BigNumber>;
352
+
353
+ initialize(ctx: MarketCtxStruct, overrides?: CallOverrides): Promise<void>;
354
+
355
+ lend(
356
+ ctx: MarketCtxStruct,
357
+ amount: BigNumberish,
358
+ overrides?: CallOverrides
359
+ ): Promise<
360
+ [BigNumber, BigNumber] & {
361
+ lent: BigNumber;
362
+ postCollateralBalance: BigNumber;
363
+ }
364
+ >;
365
+
366
+ oraclePtDebtRate(
367
+ ctx: MarketCtxStruct,
368
+ overrides?: CallOverrides
369
+ ): Promise<BigNumber>;
370
+
371
+ repay(
372
+ ctx: MarketCtxStruct,
373
+ amount: BigNumberish,
374
+ overrides?: CallOverrides
375
+ ): Promise<
376
+ [BigNumber, BigNumber] & { repaid: BigNumber; postDebtBalance: BigNumber }
377
+ >;
378
+
379
+ withdraw(
380
+ ctx: MarketCtxStruct,
381
+ amount: BigNumberish,
382
+ overrides?: CallOverrides
383
+ ): Promise<
384
+ [BigNumber, BigNumber] & {
385
+ withdrawn: BigNumber;
386
+ postCollateralBalance: BigNumber;
387
+ }
388
+ >;
389
+ };
390
+
391
+ filters: {
392
+ "Borrowed(address,address,uint256,uint256)"(
393
+ box?: string | null,
394
+ asset?: string | null,
395
+ amount?: null,
396
+ balanceBefore?: null
397
+ ): BorrowedEventFilter;
398
+ Borrowed(
399
+ box?: string | null,
400
+ asset?: string | null,
401
+ amount?: null,
402
+ balanceBefore?: null
403
+ ): BorrowedEventFilter;
404
+
405
+ "Lent(address,address,uint256,uint256)"(
406
+ box?: string | null,
407
+ asset?: string | null,
408
+ amount?: null,
409
+ balanceBefore?: null
410
+ ): LentEventFilter;
411
+ Lent(
412
+ box?: string | null,
413
+ asset?: string | null,
414
+ amount?: null,
415
+ balanceBefore?: null
416
+ ): LentEventFilter;
417
+
418
+ "Repaid(address,address,uint256,uint256)"(
419
+ box?: string | null,
420
+ asset?: string | null,
421
+ amount?: null,
422
+ balanceBefore?: null
423
+ ): RepaidEventFilter;
424
+ Repaid(
425
+ box?: string | null,
426
+ asset?: string | null,
427
+ amount?: null,
428
+ balanceBefore?: null
429
+ ): RepaidEventFilter;
430
+
431
+ "RewardsClaimed(address,address[],uint256[])"(
432
+ rewardController?: string | null,
433
+ rewardTokens?: null,
434
+ claimedAmount?: null
435
+ ): RewardsClaimedEventFilter;
436
+ RewardsClaimed(
437
+ rewardController?: string | null,
438
+ rewardTokens?: null,
439
+ claimedAmount?: null
440
+ ): RewardsClaimedEventFilter;
441
+
442
+ "Withdrawn(address,address,uint256,uint256)"(
443
+ box?: string | null,
444
+ asset?: string | null,
445
+ amount?: null,
446
+ balanceBefore?: null
447
+ ): WithdrawnEventFilter;
448
+ Withdrawn(
449
+ box?: string | null,
450
+ asset?: string | null,
451
+ amount?: null,
452
+ balanceBefore?: null
453
+ ): WithdrawnEventFilter;
454
+ };
455
+
456
+ estimateGas: {
457
+ POSITION_BOX_FACTORY(overrides?: CallOverrides): Promise<BigNumber>;
458
+
459
+ PT_LOOPER(overrides?: CallOverrides): Promise<BigNumber>;
460
+
461
+ borrow(
462
+ ctx: MarketCtxStruct,
463
+ amount: BigNumberish,
464
+ overrides?: Overrides & { from?: string | Promise<string> }
465
+ ): Promise<BigNumber>;
466
+
467
+ claimRewards(
468
+ ctx: MarketCtxStruct,
469
+ extRewardController: string,
470
+ data: BytesLike,
471
+ rewardTokens: string[],
472
+ overrides?: Overrides & { from?: string | Promise<string> }
473
+ ): Promise<BigNumber>;
474
+
475
+ collateralBalance(
476
+ ctx: MarketCtxStruct,
477
+ overrides?: CallOverrides
478
+ ): Promise<BigNumber>;
479
+
480
+ debtBalance(
481
+ ctx: MarketCtxStruct,
482
+ overrides?: CallOverrides
483
+ ): Promise<BigNumber>;
484
+
485
+ initialize(
486
+ ctx: MarketCtxStruct,
487
+ overrides?: Overrides & { from?: string | Promise<string> }
488
+ ): Promise<BigNumber>;
489
+
490
+ lend(
491
+ ctx: MarketCtxStruct,
492
+ amount: BigNumberish,
493
+ overrides?: Overrides & { from?: string | Promise<string> }
494
+ ): Promise<BigNumber>;
495
+
496
+ oraclePtDebtRate(
497
+ ctx: MarketCtxStruct,
498
+ overrides?: CallOverrides
499
+ ): Promise<BigNumber>;
500
+
501
+ repay(
502
+ ctx: MarketCtxStruct,
503
+ amount: BigNumberish,
504
+ overrides?: Overrides & { from?: string | Promise<string> }
505
+ ): Promise<BigNumber>;
506
+
507
+ withdraw(
508
+ ctx: MarketCtxStruct,
509
+ amount: BigNumberish,
510
+ overrides?: Overrides & { from?: string | Promise<string> }
511
+ ): Promise<BigNumber>;
512
+ };
513
+
514
+ populateTransaction: {
515
+ POSITION_BOX_FACTORY(
516
+ overrides?: CallOverrides
517
+ ): Promise<PopulatedTransaction>;
518
+
519
+ PT_LOOPER(overrides?: CallOverrides): Promise<PopulatedTransaction>;
520
+
521
+ borrow(
522
+ ctx: MarketCtxStruct,
523
+ amount: BigNumberish,
524
+ overrides?: Overrides & { from?: string | Promise<string> }
525
+ ): Promise<PopulatedTransaction>;
526
+
527
+ claimRewards(
528
+ ctx: MarketCtxStruct,
529
+ extRewardController: string,
530
+ data: BytesLike,
531
+ rewardTokens: string[],
532
+ overrides?: Overrides & { from?: string | Promise<string> }
533
+ ): Promise<PopulatedTransaction>;
534
+
535
+ collateralBalance(
536
+ ctx: MarketCtxStruct,
537
+ overrides?: CallOverrides
538
+ ): Promise<PopulatedTransaction>;
539
+
540
+ debtBalance(
541
+ ctx: MarketCtxStruct,
542
+ overrides?: CallOverrides
543
+ ): Promise<PopulatedTransaction>;
544
+
545
+ initialize(
546
+ ctx: MarketCtxStruct,
547
+ overrides?: Overrides & { from?: string | Promise<string> }
548
+ ): Promise<PopulatedTransaction>;
549
+
550
+ lend(
551
+ ctx: MarketCtxStruct,
552
+ amount: BigNumberish,
553
+ overrides?: Overrides & { from?: string | Promise<string> }
554
+ ): Promise<PopulatedTransaction>;
555
+
556
+ oraclePtDebtRate(
557
+ ctx: MarketCtxStruct,
558
+ overrides?: CallOverrides
559
+ ): Promise<PopulatedTransaction>;
560
+
561
+ repay(
562
+ ctx: MarketCtxStruct,
563
+ amount: BigNumberish,
564
+ overrides?: Overrides & { from?: string | Promise<string> }
565
+ ): Promise<PopulatedTransaction>;
566
+
567
+ withdraw(
568
+ ctx: MarketCtxStruct,
569
+ amount: BigNumberish,
570
+ overrides?: Overrides & { from?: string | Promise<string> }
571
+ ): Promise<PopulatedTransaction>;
572
+ };
573
+ }