@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,577 @@
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 } 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 declare namespace ISpoke {
26
+ export type DynamicReserveConfigStruct = {
27
+ collateralFactor: BigNumberish;
28
+ maxLiquidationBonus: BigNumberish;
29
+ liquidationFee: BigNumberish;
30
+ };
31
+
32
+ export type DynamicReserveConfigStructOutput = [number, number, number] & {
33
+ collateralFactor: number;
34
+ maxLiquidationBonus: number;
35
+ liquidationFee: number;
36
+ };
37
+
38
+ export type ReserveStruct = {
39
+ underlying: string;
40
+ hub: string;
41
+ assetId: BigNumberish;
42
+ decimals: BigNumberish;
43
+ collateralRisk: BigNumberish;
44
+ flags: BigNumberish;
45
+ dynamicConfigKey: BigNumberish;
46
+ };
47
+
48
+ export type ReserveStructOutput = [
49
+ string,
50
+ string,
51
+ number,
52
+ number,
53
+ number,
54
+ number,
55
+ number
56
+ ] & {
57
+ underlying: string;
58
+ hub: string;
59
+ assetId: number;
60
+ decimals: number;
61
+ collateralRisk: number;
62
+ flags: number;
63
+ dynamicConfigKey: number;
64
+ };
65
+
66
+ export type UserPositionStruct = {
67
+ drawnShares: BigNumberish;
68
+ premiumShares: BigNumberish;
69
+ premiumOffsetRay: BigNumberish;
70
+ suppliedShares: BigNumberish;
71
+ dynamicConfigKey: BigNumberish;
72
+ };
73
+
74
+ export type UserPositionStructOutput = [
75
+ BigNumber,
76
+ BigNumber,
77
+ BigNumber,
78
+ BigNumber,
79
+ number
80
+ ] & {
81
+ drawnShares: BigNumber;
82
+ premiumShares: BigNumber;
83
+ premiumOffsetRay: BigNumber;
84
+ suppliedShares: BigNumber;
85
+ dynamicConfigKey: number;
86
+ };
87
+ }
88
+
89
+ export interface ISpokeInterface extends utils.Interface {
90
+ contractName: "ISpoke";
91
+ functions: {
92
+ "ORACLE()": FunctionFragment;
93
+ "borrow(uint256,uint256,address)": FunctionFragment;
94
+ "getDynamicReserveConfig(uint256,uint32)": FunctionFragment;
95
+ "getReserve(uint256)": FunctionFragment;
96
+ "getUserLastRiskPremium(address)": FunctionFragment;
97
+ "getUserPosition(uint256,address)": FunctionFragment;
98
+ "getUserSuppliedAssets(uint256,address)": FunctionFragment;
99
+ "getUserTotalDebt(uint256,address)": FunctionFragment;
100
+ "repay(uint256,uint256,address)": FunctionFragment;
101
+ "setUsingAsCollateral(uint256,bool,address)": FunctionFragment;
102
+ "supply(uint256,uint256,address)": FunctionFragment;
103
+ "withdraw(uint256,uint256,address)": FunctionFragment;
104
+ };
105
+
106
+ encodeFunctionData(functionFragment: "ORACLE", values?: undefined): string;
107
+ encodeFunctionData(
108
+ functionFragment: "borrow",
109
+ values: [BigNumberish, BigNumberish, string]
110
+ ): string;
111
+ encodeFunctionData(
112
+ functionFragment: "getDynamicReserveConfig",
113
+ values: [BigNumberish, BigNumberish]
114
+ ): string;
115
+ encodeFunctionData(
116
+ functionFragment: "getReserve",
117
+ values: [BigNumberish]
118
+ ): string;
119
+ encodeFunctionData(
120
+ functionFragment: "getUserLastRiskPremium",
121
+ values: [string]
122
+ ): string;
123
+ encodeFunctionData(
124
+ functionFragment: "getUserPosition",
125
+ values: [BigNumberish, string]
126
+ ): string;
127
+ encodeFunctionData(
128
+ functionFragment: "getUserSuppliedAssets",
129
+ values: [BigNumberish, string]
130
+ ): string;
131
+ encodeFunctionData(
132
+ functionFragment: "getUserTotalDebt",
133
+ values: [BigNumberish, string]
134
+ ): string;
135
+ encodeFunctionData(
136
+ functionFragment: "repay",
137
+ values: [BigNumberish, BigNumberish, string]
138
+ ): string;
139
+ encodeFunctionData(
140
+ functionFragment: "setUsingAsCollateral",
141
+ values: [BigNumberish, boolean, string]
142
+ ): string;
143
+ encodeFunctionData(
144
+ functionFragment: "supply",
145
+ values: [BigNumberish, BigNumberish, string]
146
+ ): string;
147
+ encodeFunctionData(
148
+ functionFragment: "withdraw",
149
+ values: [BigNumberish, BigNumberish, string]
150
+ ): string;
151
+
152
+ decodeFunctionResult(functionFragment: "ORACLE", data: BytesLike): Result;
153
+ decodeFunctionResult(functionFragment: "borrow", data: BytesLike): Result;
154
+ decodeFunctionResult(
155
+ functionFragment: "getDynamicReserveConfig",
156
+ data: BytesLike
157
+ ): Result;
158
+ decodeFunctionResult(functionFragment: "getReserve", data: BytesLike): Result;
159
+ decodeFunctionResult(
160
+ functionFragment: "getUserLastRiskPremium",
161
+ data: BytesLike
162
+ ): Result;
163
+ decodeFunctionResult(
164
+ functionFragment: "getUserPosition",
165
+ data: BytesLike
166
+ ): Result;
167
+ decodeFunctionResult(
168
+ functionFragment: "getUserSuppliedAssets",
169
+ data: BytesLike
170
+ ): Result;
171
+ decodeFunctionResult(
172
+ functionFragment: "getUserTotalDebt",
173
+ data: BytesLike
174
+ ): Result;
175
+ decodeFunctionResult(functionFragment: "repay", data: BytesLike): Result;
176
+ decodeFunctionResult(
177
+ functionFragment: "setUsingAsCollateral",
178
+ data: BytesLike
179
+ ): Result;
180
+ decodeFunctionResult(functionFragment: "supply", data: BytesLike): Result;
181
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
182
+
183
+ events: {};
184
+ }
185
+
186
+ export interface ISpoke extends BaseContract {
187
+ contractName: "ISpoke";
188
+ connect(signerOrProvider: Signer | Provider | string): this;
189
+ attach(addressOrName: string): this;
190
+ deployed(): Promise<this>;
191
+
192
+ interface: ISpokeInterface;
193
+
194
+ queryFilter<TEvent extends TypedEvent>(
195
+ event: TypedEventFilter<TEvent>,
196
+ fromBlockOrBlockhash?: string | number | undefined,
197
+ toBlock?: string | number | undefined
198
+ ): Promise<Array<TEvent>>;
199
+
200
+ listeners<TEvent extends TypedEvent>(
201
+ eventFilter?: TypedEventFilter<TEvent>
202
+ ): Array<TypedListener<TEvent>>;
203
+ listeners(eventName?: string): Array<Listener>;
204
+ removeAllListeners<TEvent extends TypedEvent>(
205
+ eventFilter: TypedEventFilter<TEvent>
206
+ ): this;
207
+ removeAllListeners(eventName?: string): this;
208
+ off: OnEvent<this>;
209
+ on: OnEvent<this>;
210
+ once: OnEvent<this>;
211
+ removeListener: OnEvent<this>;
212
+
213
+ functions: {
214
+ ORACLE(overrides?: CallOverrides): Promise<[string]>;
215
+
216
+ borrow(
217
+ reserveId: BigNumberish,
218
+ amount: BigNumberish,
219
+ onBehalfOf: string,
220
+ overrides?: Overrides & { from?: string | Promise<string> }
221
+ ): Promise<ContractTransaction>;
222
+
223
+ getDynamicReserveConfig(
224
+ reserveId: BigNumberish,
225
+ dynamicConfigKey: BigNumberish,
226
+ overrides?: CallOverrides
227
+ ): Promise<[ISpoke.DynamicReserveConfigStructOutput]>;
228
+
229
+ getReserve(
230
+ reserveId: BigNumberish,
231
+ overrides?: CallOverrides
232
+ ): Promise<[ISpoke.ReserveStructOutput]>;
233
+
234
+ getUserLastRiskPremium(
235
+ user: string,
236
+ overrides?: CallOverrides
237
+ ): Promise<[BigNumber]>;
238
+
239
+ getUserPosition(
240
+ reserveId: BigNumberish,
241
+ user: string,
242
+ overrides?: CallOverrides
243
+ ): Promise<[ISpoke.UserPositionStructOutput]>;
244
+
245
+ getUserSuppliedAssets(
246
+ reserveId: BigNumberish,
247
+ user: string,
248
+ overrides?: CallOverrides
249
+ ): Promise<[BigNumber]>;
250
+
251
+ getUserTotalDebt(
252
+ reserveId: BigNumberish,
253
+ user: string,
254
+ overrides?: CallOverrides
255
+ ): Promise<[BigNumber]>;
256
+
257
+ repay(
258
+ reserveId: BigNumberish,
259
+ amount: BigNumberish,
260
+ onBehalfOf: string,
261
+ overrides?: Overrides & { from?: string | Promise<string> }
262
+ ): Promise<ContractTransaction>;
263
+
264
+ setUsingAsCollateral(
265
+ reserveId: BigNumberish,
266
+ usingAsCollateral: boolean,
267
+ onBehalfOf: string,
268
+ overrides?: Overrides & { from?: string | Promise<string> }
269
+ ): Promise<ContractTransaction>;
270
+
271
+ supply(
272
+ reserveId: BigNumberish,
273
+ amount: BigNumberish,
274
+ onBehalfOf: string,
275
+ overrides?: Overrides & { from?: string | Promise<string> }
276
+ ): Promise<ContractTransaction>;
277
+
278
+ withdraw(
279
+ reserveId: BigNumberish,
280
+ amount: BigNumberish,
281
+ onBehalfOf: string,
282
+ overrides?: Overrides & { from?: string | Promise<string> }
283
+ ): Promise<ContractTransaction>;
284
+ };
285
+
286
+ ORACLE(overrides?: CallOverrides): Promise<string>;
287
+
288
+ borrow(
289
+ reserveId: BigNumberish,
290
+ amount: BigNumberish,
291
+ onBehalfOf: string,
292
+ overrides?: Overrides & { from?: string | Promise<string> }
293
+ ): Promise<ContractTransaction>;
294
+
295
+ getDynamicReserveConfig(
296
+ reserveId: BigNumberish,
297
+ dynamicConfigKey: BigNumberish,
298
+ overrides?: CallOverrides
299
+ ): Promise<ISpoke.DynamicReserveConfigStructOutput>;
300
+
301
+ getReserve(
302
+ reserveId: BigNumberish,
303
+ overrides?: CallOverrides
304
+ ): Promise<ISpoke.ReserveStructOutput>;
305
+
306
+ getUserLastRiskPremium(
307
+ user: string,
308
+ overrides?: CallOverrides
309
+ ): Promise<BigNumber>;
310
+
311
+ getUserPosition(
312
+ reserveId: BigNumberish,
313
+ user: string,
314
+ overrides?: CallOverrides
315
+ ): Promise<ISpoke.UserPositionStructOutput>;
316
+
317
+ getUserSuppliedAssets(
318
+ reserveId: BigNumberish,
319
+ user: string,
320
+ overrides?: CallOverrides
321
+ ): Promise<BigNumber>;
322
+
323
+ getUserTotalDebt(
324
+ reserveId: BigNumberish,
325
+ user: string,
326
+ overrides?: CallOverrides
327
+ ): Promise<BigNumber>;
328
+
329
+ repay(
330
+ reserveId: BigNumberish,
331
+ amount: BigNumberish,
332
+ onBehalfOf: string,
333
+ overrides?: Overrides & { from?: string | Promise<string> }
334
+ ): Promise<ContractTransaction>;
335
+
336
+ setUsingAsCollateral(
337
+ reserveId: BigNumberish,
338
+ usingAsCollateral: boolean,
339
+ onBehalfOf: string,
340
+ overrides?: Overrides & { from?: string | Promise<string> }
341
+ ): Promise<ContractTransaction>;
342
+
343
+ supply(
344
+ reserveId: BigNumberish,
345
+ amount: BigNumberish,
346
+ onBehalfOf: string,
347
+ overrides?: Overrides & { from?: string | Promise<string> }
348
+ ): Promise<ContractTransaction>;
349
+
350
+ withdraw(
351
+ reserveId: BigNumberish,
352
+ amount: BigNumberish,
353
+ onBehalfOf: string,
354
+ overrides?: Overrides & { from?: string | Promise<string> }
355
+ ): Promise<ContractTransaction>;
356
+
357
+ callStatic: {
358
+ ORACLE(overrides?: CallOverrides): Promise<string>;
359
+
360
+ borrow(
361
+ reserveId: BigNumberish,
362
+ amount: BigNumberish,
363
+ onBehalfOf: string,
364
+ overrides?: CallOverrides
365
+ ): Promise<[BigNumber, BigNumber]>;
366
+
367
+ getDynamicReserveConfig(
368
+ reserveId: BigNumberish,
369
+ dynamicConfigKey: BigNumberish,
370
+ overrides?: CallOverrides
371
+ ): Promise<ISpoke.DynamicReserveConfigStructOutput>;
372
+
373
+ getReserve(
374
+ reserveId: BigNumberish,
375
+ overrides?: CallOverrides
376
+ ): Promise<ISpoke.ReserveStructOutput>;
377
+
378
+ getUserLastRiskPremium(
379
+ user: string,
380
+ overrides?: CallOverrides
381
+ ): Promise<BigNumber>;
382
+
383
+ getUserPosition(
384
+ reserveId: BigNumberish,
385
+ user: string,
386
+ overrides?: CallOverrides
387
+ ): Promise<ISpoke.UserPositionStructOutput>;
388
+
389
+ getUserSuppliedAssets(
390
+ reserveId: BigNumberish,
391
+ user: string,
392
+ overrides?: CallOverrides
393
+ ): Promise<BigNumber>;
394
+
395
+ getUserTotalDebt(
396
+ reserveId: BigNumberish,
397
+ user: string,
398
+ overrides?: CallOverrides
399
+ ): Promise<BigNumber>;
400
+
401
+ repay(
402
+ reserveId: BigNumberish,
403
+ amount: BigNumberish,
404
+ onBehalfOf: string,
405
+ overrides?: CallOverrides
406
+ ): Promise<[BigNumber, BigNumber]>;
407
+
408
+ setUsingAsCollateral(
409
+ reserveId: BigNumberish,
410
+ usingAsCollateral: boolean,
411
+ onBehalfOf: string,
412
+ overrides?: CallOverrides
413
+ ): Promise<void>;
414
+
415
+ supply(
416
+ reserveId: BigNumberish,
417
+ amount: BigNumberish,
418
+ onBehalfOf: string,
419
+ overrides?: CallOverrides
420
+ ): Promise<[BigNumber, BigNumber]>;
421
+
422
+ withdraw(
423
+ reserveId: BigNumberish,
424
+ amount: BigNumberish,
425
+ onBehalfOf: string,
426
+ overrides?: CallOverrides
427
+ ): Promise<[BigNumber, BigNumber]>;
428
+ };
429
+
430
+ filters: {};
431
+
432
+ estimateGas: {
433
+ ORACLE(overrides?: CallOverrides): Promise<BigNumber>;
434
+
435
+ borrow(
436
+ reserveId: BigNumberish,
437
+ amount: BigNumberish,
438
+ onBehalfOf: string,
439
+ overrides?: Overrides & { from?: string | Promise<string> }
440
+ ): Promise<BigNumber>;
441
+
442
+ getDynamicReserveConfig(
443
+ reserveId: BigNumberish,
444
+ dynamicConfigKey: BigNumberish,
445
+ overrides?: CallOverrides
446
+ ): Promise<BigNumber>;
447
+
448
+ getReserve(
449
+ reserveId: BigNumberish,
450
+ overrides?: CallOverrides
451
+ ): Promise<BigNumber>;
452
+
453
+ getUserLastRiskPremium(
454
+ user: string,
455
+ overrides?: CallOverrides
456
+ ): Promise<BigNumber>;
457
+
458
+ getUserPosition(
459
+ reserveId: BigNumberish,
460
+ user: string,
461
+ overrides?: CallOverrides
462
+ ): Promise<BigNumber>;
463
+
464
+ getUserSuppliedAssets(
465
+ reserveId: BigNumberish,
466
+ user: string,
467
+ overrides?: CallOverrides
468
+ ): Promise<BigNumber>;
469
+
470
+ getUserTotalDebt(
471
+ reserveId: BigNumberish,
472
+ user: string,
473
+ overrides?: CallOverrides
474
+ ): Promise<BigNumber>;
475
+
476
+ repay(
477
+ reserveId: BigNumberish,
478
+ amount: BigNumberish,
479
+ onBehalfOf: string,
480
+ overrides?: Overrides & { from?: string | Promise<string> }
481
+ ): Promise<BigNumber>;
482
+
483
+ setUsingAsCollateral(
484
+ reserveId: BigNumberish,
485
+ usingAsCollateral: boolean,
486
+ onBehalfOf: string,
487
+ overrides?: Overrides & { from?: string | Promise<string> }
488
+ ): Promise<BigNumber>;
489
+
490
+ supply(
491
+ reserveId: BigNumberish,
492
+ amount: BigNumberish,
493
+ onBehalfOf: string,
494
+ overrides?: Overrides & { from?: string | Promise<string> }
495
+ ): Promise<BigNumber>;
496
+
497
+ withdraw(
498
+ reserveId: BigNumberish,
499
+ amount: BigNumberish,
500
+ onBehalfOf: string,
501
+ overrides?: Overrides & { from?: string | Promise<string> }
502
+ ): Promise<BigNumber>;
503
+ };
504
+
505
+ populateTransaction: {
506
+ ORACLE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
507
+
508
+ borrow(
509
+ reserveId: BigNumberish,
510
+ amount: BigNumberish,
511
+ onBehalfOf: string,
512
+ overrides?: Overrides & { from?: string | Promise<string> }
513
+ ): Promise<PopulatedTransaction>;
514
+
515
+ getDynamicReserveConfig(
516
+ reserveId: BigNumberish,
517
+ dynamicConfigKey: BigNumberish,
518
+ overrides?: CallOverrides
519
+ ): Promise<PopulatedTransaction>;
520
+
521
+ getReserve(
522
+ reserveId: BigNumberish,
523
+ overrides?: CallOverrides
524
+ ): Promise<PopulatedTransaction>;
525
+
526
+ getUserLastRiskPremium(
527
+ user: string,
528
+ overrides?: CallOverrides
529
+ ): Promise<PopulatedTransaction>;
530
+
531
+ getUserPosition(
532
+ reserveId: BigNumberish,
533
+ user: string,
534
+ overrides?: CallOverrides
535
+ ): Promise<PopulatedTransaction>;
536
+
537
+ getUserSuppliedAssets(
538
+ reserveId: BigNumberish,
539
+ user: string,
540
+ overrides?: CallOverrides
541
+ ): Promise<PopulatedTransaction>;
542
+
543
+ getUserTotalDebt(
544
+ reserveId: BigNumberish,
545
+ user: string,
546
+ overrides?: CallOverrides
547
+ ): Promise<PopulatedTransaction>;
548
+
549
+ repay(
550
+ reserveId: BigNumberish,
551
+ amount: BigNumberish,
552
+ onBehalfOf: string,
553
+ overrides?: Overrides & { from?: string | Promise<string> }
554
+ ): Promise<PopulatedTransaction>;
555
+
556
+ setUsingAsCollateral(
557
+ reserveId: BigNumberish,
558
+ usingAsCollateral: boolean,
559
+ onBehalfOf: string,
560
+ overrides?: Overrides & { from?: string | Promise<string> }
561
+ ): Promise<PopulatedTransaction>;
562
+
563
+ supply(
564
+ reserveId: BigNumberish,
565
+ amount: BigNumberish,
566
+ onBehalfOf: string,
567
+ overrides?: Overrides & { from?: string | Promise<string> }
568
+ ): Promise<PopulatedTransaction>;
569
+
570
+ withdraw(
571
+ reserveId: BigNumberish,
572
+ amount: BigNumberish,
573
+ onBehalfOf: string,
574
+ overrides?: Overrides & { from?: string | Promise<string> }
575
+ ): Promise<PopulatedTransaction>;
576
+ };
577
+ }