curvance 1.0.23 → 1.0.25

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 (60) hide show
  1. package/dist/abis/BaseCToken.json +13 -10
  2. package/dist/abis/BorrowableCToken.json +13 -10
  3. package/dist/abis/MarketManagerIsolated.json +43 -123
  4. package/dist/abis/ProtocolReader.json +92 -9
  5. package/dist/abis/RedstoneCoreAdaptor.json +32 -5
  6. package/dist/abis/SimpleZapper.json +411 -0
  7. package/dist/chains/index.d.ts +22 -10
  8. package/dist/chains/index.d.ts.map +1 -1
  9. package/dist/chains/monad-testnet.json +83 -71
  10. package/dist/classes/BorrowableCToken.d.ts +51 -0
  11. package/dist/classes/BorrowableCToken.d.ts.map +1 -0
  12. package/dist/classes/BorrowableCToken.js +113 -0
  13. package/dist/classes/BorrowableCToken.js.map +1 -0
  14. package/dist/classes/CToken.d.ts +46 -74
  15. package/dist/classes/CToken.d.ts.map +1 -1
  16. package/dist/classes/CToken.js +196 -138
  17. package/dist/classes/CToken.js.map +1 -1
  18. package/dist/classes/Calldata.d.ts +12 -0
  19. package/dist/classes/Calldata.d.ts.map +1 -0
  20. package/dist/classes/Calldata.js +19 -0
  21. package/dist/classes/Calldata.js.map +1 -0
  22. package/dist/classes/ERC20.d.ts +3 -3
  23. package/dist/classes/ERC20.d.ts.map +1 -1
  24. package/dist/classes/ERC20.js +5 -2
  25. package/dist/classes/ERC20.js.map +1 -1
  26. package/dist/classes/Faucet.d.ts +2 -1
  27. package/dist/classes/Faucet.d.ts.map +1 -1
  28. package/dist/classes/Faucet.js +11 -1
  29. package/dist/classes/Faucet.js.map +1 -1
  30. package/dist/classes/Market.d.ts +107 -13
  31. package/dist/classes/Market.d.ts.map +1 -1
  32. package/dist/classes/Market.js +122 -16
  33. package/dist/classes/Market.js.map +1 -1
  34. package/dist/classes/OracleManager.d.ts +1 -1
  35. package/dist/classes/OracleManager.d.ts.map +1 -1
  36. package/dist/classes/OracleManager.js +2 -1
  37. package/dist/classes/OracleManager.js.map +1 -1
  38. package/dist/classes/ProtocolReader.d.ts +21 -20
  39. package/dist/classes/ProtocolReader.d.ts.map +1 -1
  40. package/dist/classes/ProtocolReader.js +9 -5
  41. package/dist/classes/ProtocolReader.js.map +1 -1
  42. package/dist/classes/Redstone.d.ts +3 -2
  43. package/dist/classes/Redstone.d.ts.map +1 -1
  44. package/dist/classes/Redstone.js +3 -3
  45. package/dist/classes/Redstone.js.map +1 -1
  46. package/dist/classes/Zapper.d.ts +28 -0
  47. package/dist/classes/Zapper.d.ts.map +1 -0
  48. package/dist/classes/Zapper.js +52 -0
  49. package/dist/classes/Zapper.js.map +1 -0
  50. package/dist/helpers.d.ts +34 -11
  51. package/dist/helpers.d.ts.map +1 -1
  52. package/dist/helpers.js +30 -16
  53. package/dist/helpers.js.map +1 -1
  54. package/dist/setup.d.ts +18 -3
  55. package/dist/setup.d.ts.map +1 -1
  56. package/dist/setup.js +31 -14
  57. package/dist/setup.js.map +1 -1
  58. package/dist/types.d.ts +20 -2
  59. package/dist/types.d.ts.map +1 -1
  60. package/package.json +1 -1
@@ -0,0 +1,51 @@
1
+ import { Contract, TransactionResponse } from "ethers";
2
+ import { address, curvance_provider, TokenInput, USD } from "../types";
3
+ import { CToken, ICToken } from "./CToken";
4
+ import { DynamicMarketToken, StaticMarketToken, UserMarketToken } from "./ProtocolReader";
5
+ import { Market } from "./Market";
6
+ import { ChangeRate } from "../helpers";
7
+ import Decimal from "decimal.js";
8
+ import { ZapperTypes } from "./Zapper";
9
+ export interface IBorrowableCToken extends ICToken {
10
+ borrow(amount: bigint, receiver: address): Promise<TransactionResponse>;
11
+ repay(amount: bigint): Promise<TransactionResponse>;
12
+ interestFee(): Promise<bigint>;
13
+ marketOutstandingDebt(): Promise<bigint>;
14
+ debtBalance(account: address): Promise<bigint>;
15
+ IRM(): Promise<address>;
16
+ }
17
+ export interface IDynamicIRM {
18
+ ADJUSTMENT_RATE(): Promise<bigint>;
19
+ linkedToken(): Promise<address>;
20
+ borrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
21
+ predictedBorrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
22
+ supplyRate(assetsHeld: bigint, debt: bigint, interestFee: bigint): Promise<bigint>;
23
+ adjustedBorrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
24
+ utilizationRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
25
+ }
26
+ export declare class BorrowableCToken extends CToken {
27
+ contract: Contract & IBorrowableCToken;
28
+ constructor(provider: curvance_provider, address: address, cache: StaticMarketToken & DynamicMarketToken & UserMarketToken, market: Market);
29
+ get liquidity(): bigint;
30
+ get borrowRate(): bigint;
31
+ get predictedBorrowRate(): bigint;
32
+ get utilizationRate(): bigint;
33
+ get supplyRate(): bigint;
34
+ borrowChange(amount: USD, rateType: ChangeRate): Decimal;
35
+ depositAsCollateral(amount: TokenInput, zap?: ZapperTypes, receiver?: address | null): Promise<TransactionResponse>;
36
+ postCollateral(amount: TokenInput): Promise<TransactionResponse>;
37
+ fetchDebt(inUSD: true): Promise<USD>;
38
+ fetchDebt(inUSD: false): Promise<bigint>;
39
+ borrow(amount: TokenInput, receiver?: address | null): Promise<TransactionResponse>;
40
+ dynamicIRM(): Promise<Contract & IDynamicIRM>;
41
+ fetchBorrowRate(): Promise<bigint>;
42
+ fetchPredictedBorrowRate(): Promise<bigint>;
43
+ fetchUtilizationRate(): Promise<bigint>;
44
+ fetchSupplyRate(): Promise<bigint>;
45
+ fetchLiquidity(): Promise<bigint>;
46
+ repay(amount: TokenInput): Promise<TransactionResponse>;
47
+ interestFee(): Promise<bigint>;
48
+ marketOutstandingDebt(): Promise<bigint>;
49
+ debtBalance(account: address): Promise<bigint>;
50
+ }
51
+ //# sourceMappingURL=BorrowableCToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BorrowableCToken.d.ts","sourceRoot":"","sources":["../../src/classes/BorrowableCToken.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BorrowableCToken = void 0;
7
+ const CToken_1 = require("./CToken");
8
+ const helpers_1 = require("../helpers");
9
+ const BorrowableCToken_json_1 = __importDefault(require("../abis/BorrowableCToken.json"));
10
+ const IDynamicIRM_json_1 = __importDefault(require("../abis/IDynamicIRM.json"));
11
+ const decimal_js_1 = __importDefault(require("decimal.js"));
12
+ class BorrowableCToken extends CToken_1.CToken {
13
+ contract;
14
+ constructor(provider, address, cache, market) {
15
+ super(provider, address, cache, market);
16
+ this.contract = (0, helpers_1.contractSetup)(provider, address, BorrowableCToken_json_1.default);
17
+ }
18
+ get liquidity() { return this.cache.liquidity; }
19
+ get borrowRate() { return this.cache.borrowRate; }
20
+ get predictedBorrowRate() { return this.cache.predictedBorrowRate; }
21
+ get utilizationRate() { return this.cache.utilizationRate; }
22
+ get supplyRate() { return this.cache.supplyRate; }
23
+ borrowChange(amount, rateType) {
24
+ const rate = this.borrowRate;
25
+ const rate_seconds = (0, helpers_1.getRateSeconds)(rateType);
26
+ const rate_percent = (0, decimal_js_1.default)(rate * rate_seconds).div(helpers_1.BPS);
27
+ return amount.mul(rate_percent);
28
+ }
29
+ async depositAsCollateral(amount, zap = 'none', receiver = null) {
30
+ if (this.cache.userDebt > 0) {
31
+ throw new Error("Cannot deposit as collateral when there is outstanding debt");
32
+ }
33
+ return super.depositAsCollateral(amount, zap, receiver);
34
+ }
35
+ async postCollateral(amount) {
36
+ if (this.cache.userDebt > 0) {
37
+ throw new Error("Cannot post collateral when there is outstanding debt");
38
+ }
39
+ return super.postCollateral(amount);
40
+ }
41
+ async fetchDebt(inUSD = true) {
42
+ const totalDebt = await this.contract.marketOutstandingDebt();
43
+ return inUSD ? this.fetchConvertTokensToUsd(totalDebt) : totalDebt;
44
+ }
45
+ async borrow(amount, receiver = null) {
46
+ const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
47
+ if (receiver == null)
48
+ receiver = signer.address;
49
+ const assets = this.convertTokenInput(amount);
50
+ const calldata = this.getCallData("borrow", [assets, receiver]);
51
+ return this.oracleRoute(calldata);
52
+ }
53
+ async dynamicIRM() {
54
+ const irm_addr = await this.contract.IRM();
55
+ return (0, helpers_1.contractSetup)(this.provider, irm_addr, IDynamicIRM_json_1.default);
56
+ }
57
+ async fetchBorrowRate() {
58
+ const irm = await this.dynamicIRM();
59
+ const assetsHeld = await this.totalAssets();
60
+ const debt = await this.contract.marketOutstandingDebt();
61
+ const borrowRate = (await irm.borrowRate(assetsHeld, debt));
62
+ this.cache.borrowRate = borrowRate;
63
+ return borrowRate;
64
+ }
65
+ async fetchPredictedBorrowRate() {
66
+ const irm = await this.dynamicIRM();
67
+ const assetsHeld = await this.totalAssets();
68
+ const debt = await this.contract.marketOutstandingDebt();
69
+ const predictedBorrowRate = (await irm.predictedBorrowRate(assetsHeld, debt));
70
+ this.cache.predictedBorrowRate = predictedBorrowRate;
71
+ return predictedBorrowRate;
72
+ }
73
+ async fetchUtilizationRate() {
74
+ const irm = await this.dynamicIRM();
75
+ const assetsHeld = await this.totalAssets();
76
+ const debt = await this.contract.marketOutstandingDebt();
77
+ const utilizationRate = (await irm.utilizationRate(assetsHeld, debt));
78
+ this.cache.utilizationRate = utilizationRate;
79
+ return utilizationRate;
80
+ }
81
+ async fetchSupplyRate() {
82
+ const irm = await this.dynamicIRM();
83
+ const assetsHeld = await this.totalAssets();
84
+ const debt = await this.contract.marketOutstandingDebt();
85
+ const fee = await this.contract.interestFee();
86
+ const supplyRate = (await irm.supplyRate(assetsHeld, debt, fee));
87
+ this.cache.supplyRate = supplyRate;
88
+ return supplyRate;
89
+ }
90
+ async fetchLiquidity() {
91
+ const assetsHeld = await this.contract.totalAssets();
92
+ const debt = await this.contract.marketOutstandingDebt();
93
+ const liquidity = assetsHeld - debt;
94
+ this.cache.liquidity = liquidity;
95
+ return liquidity;
96
+ }
97
+ async repay(amount) {
98
+ const assets = this.convertTokenInput(amount);
99
+ const calldata = this.getCallData("repay", [assets]);
100
+ return this.oracleRoute(calldata);
101
+ }
102
+ async interestFee() {
103
+ return this.contract.interestFee();
104
+ }
105
+ async marketOutstandingDebt() {
106
+ return this.contract.marketOutstandingDebt();
107
+ }
108
+ async debtBalance(account) {
109
+ return this.contract.debtBalance(account);
110
+ }
111
+ }
112
+ exports.BorrowableCToken = BorrowableCToken;
113
+ //# sourceMappingURL=BorrowableCToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BorrowableCToken.js","sourceRoot":"","sources":["../../src/classes/BorrowableCToken.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,14 @@ import { ChangeRate } from "../helpers";
3
3
  import { AdaptorTypes, DynamicMarketToken, StaticMarketToken, UserMarketToken } from "./ProtocolReader";
4
4
  import { ERC20 } from "./ERC20";
5
5
  import { Market } from "./Market";
6
+ import { Calldata } from "./Calldata";
6
7
  import Decimal from "decimal.js";
7
- import { address, bytes, curvance_provider, percentage, typeBPS, USD } from "../types";
8
+ import { address, bytes, curvance_provider, Percentage, TokenInput, USD } from "../types";
9
+ import { Zapper, ZapperTypes } from "./Zapper";
8
10
  export interface AccountSnapshot {
9
11
  asset: address;
10
12
  decimals: bigint;
11
13
  isCollateral: boolean;
12
- exchangeRate: bigint;
13
14
  collateralPosted: bigint;
14
15
  debtBalance: bigint;
15
16
  }
@@ -46,31 +47,18 @@ export interface ICToken {
46
47
  transfer(receiver: address, amount: bigint): Promise<TransactionResponse>;
47
48
  approve(spender: address, amount: bigint): Promise<TransactionResponse>;
48
49
  allowance(owner: address, spender: address): Promise<bigint>;
50
+ isDelegate(user: address, delegate: address): Promise<boolean>;
51
+ setDelegateApproval(delegate: address, approved: boolean): Promise<TransactionResponse>;
49
52
  }
50
- export interface IBorrowableCToken extends ICToken {
51
- borrow(amount: bigint, receiver: address): Promise<TransactionResponse>;
52
- repay(amount: bigint): Promise<TransactionResponse>;
53
- interestFee(): Promise<bigint>;
54
- marketOutstandingDebt(): Promise<bigint>;
55
- debtBalance(account: address): Promise<bigint>;
56
- IRM(): Promise<address>;
57
- }
58
- export interface IDynamicIRM {
59
- ADJUSTMENT_RATE(): Promise<bigint>;
60
- linkedToken(): Promise<address>;
61
- borrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
62
- predictedBorrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
63
- supplyRate(assetsHeld: bigint, debt: bigint, interestFee: bigint): Promise<bigint>;
64
- adjustedBorrowRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
65
- utilizationRate(assetsHeld: bigint, debt: bigint): Promise<bigint>;
66
- }
67
- export declare class CToken {
53
+ export declare class CToken extends Calldata<ICToken> {
68
54
  provider: curvance_provider;
69
55
  address: address;
70
56
  contract: Contract & ICToken;
71
57
  abi: any;
72
58
  cache: StaticMarketToken & DynamicMarketToken & UserMarketToken;
73
59
  market: Market;
60
+ zapTypes: ZapperTypes[];
61
+ leverageTypes: string[];
74
62
  constructor(provider: curvance_provider, address: address, cache: StaticMarketToken & DynamicMarketToken & UserMarketToken, market: Market);
75
63
  get adapters(): [AdaptorTypes, AdaptorTypes];
76
64
  get borrowPaused(): boolean;
@@ -84,40 +72,38 @@ export declare class CToken {
84
72
  get remainingDebt(): bigint;
85
73
  get asset(): import("./ProtocolReader").StaticMarketAsset;
86
74
  get isBorrowable(): boolean;
87
- get canZap(): boolean;
88
- get canLeverage(): boolean;
89
75
  /** @returns Collateral Ratio in BPS or bigint */
90
- getCollRatio(inBPS: true): typeBPS;
76
+ getCollRatio(inBPS: true): Percentage;
91
77
  getCollRatio(inBPS: false): bigint;
92
78
  /** @returns Soft Collateral Requirement in BPS or bigint */
93
- getCollReqSoft(inBPS: true): typeBPS;
79
+ getCollReqSoft(inBPS: true): Percentage;
94
80
  getCollReqSoft(inBPS: false): bigint;
95
81
  /** @returns Hard Collateral Requirement in BPS or bigint */
96
- getCollReqHard(inBPS: true): typeBPS;
82
+ getCollReqHard(inBPS: true): Percentage;
97
83
  getCollReqHard(inBPS: false): bigint;
98
84
  /** @returns Liquidation Incentive Base in BPS or bigint */
99
- getLiqIncBase(inBPS: true): typeBPS;
85
+ getLiqIncBase(inBPS: true): Percentage;
100
86
  getLiqIncBase(inBPS: false): bigint;
101
87
  /** @returns Liquidation Incentive Curve in BPS or bigint */
102
- getLiqIncCurve(inBPS: true): typeBPS;
88
+ getLiqIncCurve(inBPS: true): Percentage;
103
89
  getLiqIncCurve(inBPS: false): bigint;
104
90
  /** @returns Liquidation Incentive Min in BPS or bigint */
105
- getLiqIncMin(inBPS: true): typeBPS;
91
+ getLiqIncMin(inBPS: true): Percentage;
106
92
  getLiqIncMin(inBPS: false): bigint;
107
93
  /** @returns Liquidation Incentive Max in BPS or bigint */
108
- getLiqIncMax(inBPS: true): typeBPS;
94
+ getLiqIncMax(inBPS: true): Percentage;
109
95
  getLiqIncMax(inBPS: false): bigint;
110
96
  /** @returns Close Factor Base in BPS or bigint */
111
- getCloseFactorBase(inBPS: true): typeBPS;
97
+ getCloseFactorBase(inBPS: true): Percentage;
112
98
  getCloseFactorBase(inBPS: false): bigint;
113
99
  /** @returns Close Factor Curve in BPS or bigint */
114
- getCloseFactorCurve(inBPS: true): typeBPS;
100
+ getCloseFactorCurve(inBPS: true): Percentage;
115
101
  getCloseFactorCurve(inBPS: false): bigint;
116
102
  /** @returns Close Factor Min in BPS or bigint */
117
- getCloseFactorMin(inBPS: true): typeBPS;
103
+ getCloseFactorMin(inBPS: true): Percentage;
118
104
  getCloseFactorMin(inBPS: false): bigint;
119
105
  /** @returns Close Factor Max in BPS or bigint */
120
- getCloseFactorMax(inBPS: true): typeBPS;
106
+ getCloseFactorMax(inBPS: true): Percentage;
121
107
  getCloseFactorMax(inBPS: false): bigint;
122
108
  /** @returns User assets in USD or token */
123
109
  getUserShareBalance(inUSD: true): USD;
@@ -145,12 +131,13 @@ export declare class CToken {
145
131
  getUserDebt(inUSD: false): bigint;
146
132
  earnChange(amount: USD, rateType: ChangeRate): Decimal;
147
133
  /**
148
- * Grabs the collateralization ratio and converts it to a percentage.
149
- * @returns percentage representation of the LTV (e.g. 0.75 for 75% LTV)
134
+ * Grabs the collateralization ratio and converts it to a Percentage.
135
+ * @returns Percentage representation of the LTV (e.g. 0.75 for 75% LTV)
150
136
  */
151
- ltv(): percentage;
152
- getAsset(asErc20?: boolean): `0x${string}` | ERC20;
153
- getPrice(asset?: boolean, lower?: boolean): Decimal;
137
+ ltv(): Percentage;
138
+ getAsset(asErc20: true): ERC20;
139
+ getAsset(asErc20: false): address;
140
+ getPrice(asset?: boolean, lower?: boolean): USD;
154
141
  getApy(): Decimal;
155
142
  getTvl(inUSD: true): USD;
156
143
  getTvl(inUSD: false): bigint;
@@ -160,6 +147,12 @@ export declare class CToken {
160
147
  getTotalCollateral(inUSD: false): bigint;
161
148
  fetchTotalCollateral(inUSD: true): Promise<USD>;
162
149
  fetchTotalCollateral(inUSD: false): Promise<bigint>;
150
+ getZapper(type: ZapperTypes): Zapper;
151
+ isPluginApproved(plugin: ZapperTypes): Promise<boolean>;
152
+ approvePlugin(plugin: ZapperTypes): Promise<TransactionResponse>;
153
+ getPluginAddress(plugin: ZapperTypes): address;
154
+ getAllowance(check_contract: address): Promise<bigint>;
155
+ approve(amount: TokenInput | null, spender: address): Promise<TransactionResponse>;
163
156
  fetchDecimals(): Promise<bigint>;
164
157
  fetchIsBorrowable(): Promise<boolean>;
165
158
  fetchAsset(): Promise<`0x${string}`>;
@@ -173,54 +166,33 @@ export declare class CToken {
173
166
  marketCollateralPosted(): Promise<bigint>;
174
167
  balanceOf(account: address): Promise<bigint>;
175
168
  maxDeposit(receiver: address): Promise<bigint>;
176
- transfer(receiver: address, amount: bigint): Promise<TransactionResponse>;
177
- redeemCollateral(shares: bigint, receiver: address, owner: address): Promise<TransactionResponse>;
178
- postCollateral(shares: bigint): Promise<TransactionResponse>;
179
- removeCollateral(shares: bigint): Promise<TransactionResponse>;
180
- withdrawCollateral(assets: bigint, receiver: address, owner: address): Promise<TransactionResponse>;
169
+ transfer(receiver: address, amount: TokenInput): Promise<TransactionResponse>;
170
+ redeemCollateral(amount: Decimal, receiver?: address | null, owner?: address | null): Promise<TransactionResponse>;
171
+ postCollateral(amount: TokenInput): Promise<TransactionResponse>;
172
+ removeCollateral(amount: TokenInput): Promise<TransactionResponse>;
173
+ withdrawCollateral(amount: TokenInput, receiver?: address | null, owner?: address | null): Promise<TransactionResponse>;
181
174
  convertToAssets(shares: bigint): Promise<bigint>;
182
175
  convertToShares(assets: bigint): Promise<bigint>;
183
- deposit(assets: bigint, receiver: address): Promise<TransactionResponse>;
184
- depositAsCollateral(assets: bigint, receiver: address): Promise<TransactionResponse>;
185
- redeem(shares: bigint, receiver: address, owner: address): Promise<TransactionResponse>;
176
+ convertTokenInput(amount: TokenInput, inShares?: boolean): bigint;
177
+ deposit(amount: TokenInput, zap?: ZapperTypes, receiver?: address | null): Promise<TransactionResponse>;
178
+ depositAsCollateral(amount: Decimal, zap?: ZapperTypes, receiver?: address | null): Promise<TransactionResponse>;
179
+ redeem(amount: TokenInput, receiver?: address | null, owner?: address | null): Promise<TransactionResponse>;
186
180
  collateralPosted(account: address): Promise<bigint>;
187
181
  multicall(calls: MulticallAction[]): Promise<TransactionResponse>;
188
182
  getSnapshot(account: address): Promise<{
189
183
  asset: `0x${string}`;
190
184
  decimals: bigint;
191
185
  isCollateral: boolean;
192
- exchangeRate: bigint;
193
186
  collateralPosted: bigint;
194
187
  debtBalance: bigint;
195
188
  }>;
196
189
  fetchConvertTokensToUsd(tokenAmount: bigint, asset?: boolean): Promise<Decimal>;
197
190
  convertTokensToUsd(tokenAmount: bigint, asset?: boolean): Decimal;
198
- buildMultiCall(functionName: string, exec_params: any[]): MulticallAction;
199
- oracleRoute<T extends keyof (ICToken & IBorrowableCToken)>(functionName: T, exec_params: Parameters<(ICToken & IBorrowableCToken)[T]>): Promise<TransactionResponse>;
200
- }
201
- export declare class BorrowableCToken extends CToken {
202
- contract: Contract & IBorrowableCToken;
203
- constructor(provider: curvance_provider, address: address, cache: StaticMarketToken & DynamicMarketToken & UserMarketToken, market: Market);
204
- get liquidity(): bigint;
205
- get borrowRate(): bigint;
206
- get predictedBorrowRate(): bigint;
207
- get utilizationRate(): bigint;
208
- get supplyRate(): bigint;
209
- borrowChange(amount: USD, rateType: ChangeRate): Decimal;
210
- depositAsCollateral(assets: bigint, receiver: address): Promise<TransactionResponse>;
211
- postCollateral(shares: bigint): Promise<TransactionResponse>;
212
- fetchDebt(inUSD: true): Promise<USD>;
213
- fetchDebt(inUSD: false): Promise<bigint>;
214
- borrow(amount: bigint, receiver: address): Promise<TransactionResponse>;
215
- dynamicIRM(): Promise<Contract & IDynamicIRM>;
216
- fetchBorrowRate(): Promise<bigint>;
217
- fetchPredictedBorrowRate(): Promise<bigint>;
218
- fetchUtilizationRate(): Promise<bigint>;
219
- fetchSupplyRate(): Promise<bigint>;
220
- fetchLiquidity(): Promise<bigint>;
221
- repay(amount: bigint): Promise<TransactionResponse>;
222
- interestFee(): Promise<bigint>;
223
- marketOutstandingDebt(): Promise<bigint>;
224
- debtBalance(account: address): Promise<bigint>;
191
+ buildMultiCallAction(calldata: bytes): MulticallAction;
192
+ private _checkDepositApprovals;
193
+ oracleRoute(calldata: bytes, override?: {
194
+ [key: string]: any;
195
+ }): Promise<TransactionResponse>;
196
+ getPriceUpdates(): Promise<MulticallAction[]>;
225
197
  }
226
198
  //# sourceMappingURL=CToken.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}