@kamino-finance/klend-sdk 5.2.13 → 5.3.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.
- package/dist/classes/action.d.ts.map +1 -1
- package/dist/classes/action.js +1 -2
- package/dist/classes/action.js.map +1 -1
- package/dist/classes/manager.js +22 -5
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/obligation.d.ts +2 -0
- package/dist/classes/obligation.d.ts.map +1 -1
- package/dist/classes/obligation.js +12 -6
- package/dist/classes/obligation.js.map +1 -1
- package/dist/classes/reserve.js +14 -14
- package/dist/classes/reserve.js.map +1 -1
- package/dist/classes/shared.d.ts +2 -2
- package/dist/classes/shared.d.ts.map +1 -1
- package/dist/classes/types.d.ts +1 -1
- package/dist/classes/types.d.ts.map +1 -1
- package/dist/classes/vault.d.ts +1 -1
- package/dist/classes/vault.d.ts.map +1 -1
- package/dist/classes/vault.js +16 -3
- package/dist/classes/vault.js.map +1 -1
- package/dist/client_kamino_manager.d.ts.map +1 -1
- package/dist/client_kamino_manager.js +44 -6
- package/dist/client_kamino_manager.js.map +1 -1
- package/dist/idl.json +310 -48
- package/dist/idl_codegen/accounts/LendingMarket.d.ts +48 -3
- package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -1
- package/dist/idl_codegen/accounts/LendingMarket.js +35 -8
- package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
- package/dist/idl_codegen/accounts/Obligation.d.ts +30 -0
- package/dist/idl_codegen/accounts/Obligation.d.ts.map +1 -1
- package/dist/idl_codegen/accounts/Obligation.js +23 -2
- package/dist/idl_codegen/accounts/Obligation.js.map +1 -1
- package/dist/idl_codegen/accounts/Reserve.js +1 -1
- package/dist/idl_codegen/errors/custom.d.ts +33 -1
- package/dist/idl_codegen/errors/custom.d.ts.map +1 -1
- package/dist/idl_codegen/errors/custom.js +57 -1
- package/dist/idl_codegen/errors/custom.js.map +1 -1
- package/dist/idl_codegen/instructions/index.d.ts +7 -3
- package/dist/idl_codegen/instructions/index.d.ts.map +1 -1
- package/dist/idl_codegen/instructions/index.js +7 -3
- package/dist/idl_codegen/instructions/index.js.map +1 -1
- package/dist/idl_codegen/instructions/initReferrerTokenState.d.ts +2 -5
- package/dist/idl_codegen/instructions/initReferrerTokenState.d.ts.map +1 -1
- package/dist/idl_codegen/instructions/initReferrerTokenState.js +3 -32
- package/dist/idl_codegen/instructions/initReferrerTokenState.js.map +1 -1
- package/dist/idl_codegen/instructions/markObligationForDeleveraging.d.ts +12 -0
- package/dist/idl_codegen/instructions/markObligationForDeleveraging.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/markObligationForDeleveraging.js +47 -0
- package/dist/idl_codegen/instructions/markObligationForDeleveraging.js.map +1 -0
- package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeem.d.ts +38 -0
- package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeem.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeem.js +159 -0
- package/dist/idl_codegen/instructions/repayAndWithdrawAndRedeem.js.map +1 -0
- package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js +1 -1
- package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map +1 -1
- package/dist/idl_codegen/types/ReserveConfig.d.ts +78 -20
- package/dist/idl_codegen/types/ReserveConfig.d.ts.map +1 -1
- package/dist/idl_codegen/types/ReserveConfig.js +45 -14
- package/dist/idl_codegen/types/ReserveConfig.js.map +1 -1
- package/dist/idl_codegen/types/ReserveLiquidity.d.ts +16 -16
- package/dist/idl_codegen/types/ReserveLiquidity.d.ts.map +1 -1
- package/dist/idl_codegen/types/ReserveLiquidity.js +16 -16
- package/dist/idl_codegen/types/ReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts +40 -14
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts.map +1 -1
- package/dist/idl_codegen/types/UpdateConfigMode.js +71 -23
- package/dist/idl_codegen/types/UpdateConfigMode.js.map +1 -1
- package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +37 -11
- package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -1
- package/dist/idl_codegen/types/UpdateLendingMarketMode.js +64 -16
- package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
- package/dist/idl_codegen/types/index.d.ts +4 -4
- package/dist/idl_codegen/types/index.d.ts.map +1 -1
- package/dist/idl_codegen/types/index.js.map +1 -1
- package/dist/idl_codegen/zero_padding/ObligationZP.d.ts +4 -0
- package/dist/idl_codegen/zero_padding/ObligationZP.d.ts.map +1 -1
- package/dist/idl_codegen/zero_padding/ObligationZP.js +10 -0
- package/dist/idl_codegen/zero_padding/ObligationZP.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.d.ts +4 -2
- package/dist/lending_operations/repay_with_collateral_calcs.d.ts.map +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.js +45 -52
- package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_operations.d.ts +7 -0
- package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
- package/dist/lending_operations/repay_with_collateral_operations.js +13 -3
- package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
- package/dist/pyth/accounts/PriceUpdateV2.d.ts +30 -0
- package/dist/pyth/accounts/PriceUpdateV2.d.ts.map +1 -0
- package/dist/pyth/accounts/PriceUpdateV2.js +104 -0
- package/dist/pyth/accounts/PriceUpdateV2.js.map +1 -0
- package/dist/pyth/accounts/index.d.ts +3 -0
- package/dist/pyth/accounts/index.d.ts.map +1 -0
- package/dist/pyth/accounts/index.js +6 -0
- package/dist/pyth/accounts/index.js.map +1 -0
- package/dist/pyth/types/PriceFeedMessage.d.ts +58 -0
- package/dist/pyth/types/PriceFeedMessage.d.ts.map +1 -0
- package/dist/pyth/types/PriceFeedMessage.js +118 -0
- package/dist/pyth/types/PriceFeedMessage.js.map +1 -0
- package/dist/pyth/types/VerificationLevel.d.ts +45 -0
- package/dist/pyth/types/VerificationLevel.d.ts.map +1 -0
- package/dist/pyth/types/VerificationLevel.js +105 -0
- package/dist/pyth/types/VerificationLevel.js.map +1 -0
- package/dist/pyth/types/index.d.ts +7 -0
- package/dist/pyth/types/index.d.ts.map +1 -0
- package/dist/pyth/types/index.js +31 -0
- package/dist/pyth/types/index.js.map +1 -0
- package/dist/referrals/instructions.d.ts.map +1 -1
- package/dist/referrals/instructions.js +1 -2
- package/dist/referrals/instructions.js.map +1 -1
- package/dist/utils/managerTypes.d.ts.map +1 -1
- package/dist/utils/managerTypes.js +5 -4
- package/dist/utils/managerTypes.js.map +1 -1
- package/dist/utils/oracle.d.ts.map +1 -1
- package/dist/utils/oracle.js +9 -14
- package/dist/utils/oracle.js.map +1 -1
- package/package.json +3 -4
- package/src/classes/action.ts +1 -3
- package/src/classes/manager.ts +29 -6
- package/src/classes/obligation.ts +15 -6
- package/src/classes/reserve.ts +16 -16
- package/src/classes/shared.ts +2 -2
- package/src/classes/types.ts +16 -17
- package/src/classes/vault.ts +18 -4
- package/src/client_kamino_manager.ts +61 -6
- package/src/idl_codegen/accounts/LendingMarket.ts +76 -13
- package/src/idl_codegen/accounts/Obligation.ts +47 -2
- package/src/idl_codegen/accounts/Reserve.ts +1 -1
- package/src/idl_codegen/errors/custom.ts +56 -0
- package/src/idl_codegen/instructions/index.ts +13 -6
- package/src/idl_codegen/instructions/initReferrerTokenState.ts +3 -15
- package/src/idl_codegen/instructions/markObligationForDeleveraging.ts +40 -0
- package/src/idl_codegen/instructions/repayAndWithdrawAndRedeem.ts +177 -0
- package/src/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts +1 -1
- package/src/idl_codegen/programId.ts +1 -1
- package/src/idl_codegen/types/ReserveConfig.ts +100 -28
- package/src/idl_codegen/types/ReserveLiquidity.ts +25 -24
- package/src/idl_codegen/types/UpdateConfigMode.ts +86 -26
- package/src/idl_codegen/types/UpdateLendingMarketMode.ts +77 -17
- package/src/idl_codegen/types/index.ts +14 -6
- package/src/idl_codegen/zero_padding/ObligationZP.ts +10 -0
- package/src/lending_operations/repay_with_collateral_calcs.ts +55 -61
- package/src/lending_operations/repay_with_collateral_operations.ts +24 -4
- package/src/leverage/operations.ts +1 -1
- package/src/pyth/accounts/PriceUpdateV2.ts +110 -0
- package/src/pyth/accounts/index.ts +2 -0
- package/src/pyth/types/PriceFeedMessage.ts +120 -0
- package/src/pyth/types/VerificationLevel.ts +98 -0
- package/src/pyth/types/index.ts +9 -0
- package/src/referrals/instructions.ts +1 -3
- package/src/utils/managerTypes.ts +5 -5
- package/src/utils/oracle.ts +9 -15
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.layout = void 0;
|
|
27
|
+
exports.markObligationForDeleveraging = markObligationForDeleveraging;
|
|
28
|
+
const web3_js_1 = require("@solana/web3.js"); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
29
|
+
const borsh = __importStar(require("@coral-xyz/borsh")); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
30
|
+
const programId_1 = require("../programId");
|
|
31
|
+
exports.layout = borsh.struct([borsh.u8("autodeleverageTargetLtvPct")]);
|
|
32
|
+
function markObligationForDeleveraging(args, accounts, programId = programId_1.PROGRAM_ID) {
|
|
33
|
+
const keys = [
|
|
34
|
+
{ pubkey: accounts.riskCouncil, isSigner: true, isWritable: false },
|
|
35
|
+
{ pubkey: accounts.obligation, isSigner: false, isWritable: true },
|
|
36
|
+
{ pubkey: accounts.lendingMarket, isSigner: false, isWritable: false },
|
|
37
|
+
];
|
|
38
|
+
const identifier = Buffer.from([164, 35, 182, 19, 0, 116, 243, 127]);
|
|
39
|
+
const buffer = Buffer.alloc(1000);
|
|
40
|
+
const len = exports.layout.encode({
|
|
41
|
+
autodeleverageTargetLtvPct: args.autodeleverageTargetLtvPct,
|
|
42
|
+
}, buffer);
|
|
43
|
+
const data = Buffer.concat([identifier, buffer]).slice(0, 8 + len);
|
|
44
|
+
const ix = new web3_js_1.TransactionInstruction({ keys, programId, data });
|
|
45
|
+
return ix;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=markObligationForDeleveraging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markObligationForDeleveraging.js","sourceRoot":"","sources":["../../../src/idl_codegen/instructions/markObligationForDeleveraging.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,sEAqBC;AAvCD,6CAAgF,CAAC,wDAAwD;AAEzI,wDAAyC,CAAC,wDAAwD;AAElG,4CAAyC;AAY5B,QAAA,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAA;AAE5E,SAAgB,6BAA6B,CAC3C,IAAuC,EACvC,QAA+C,EAC/C,YAAuB,sBAAU;IAEjC,MAAM,IAAI,GAAuB;QAC/B,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;QACnE,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;QAClE,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;KACvE,CAAA;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;IACpE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,GAAG,GAAG,cAAM,CAAC,MAAM,CACvB;QACE,0BAA0B,EAAE,IAAI,CAAC,0BAA0B;KAC5D,EACD,MAAM,CACP,CAAA;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA;IAClE,MAAM,EAAE,GAAG,IAAI,gCAAsB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAChE,OAAO,EAAE,CAAA;AACX,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { TransactionInstruction, PublicKey } from "@solana/web3.js";
|
|
2
|
+
import BN from "bn.js";
|
|
3
|
+
export interface RepayAndWithdrawAndRedeemArgs {
|
|
4
|
+
repayAmount: BN;
|
|
5
|
+
withdrawCollateralAmount: BN;
|
|
6
|
+
}
|
|
7
|
+
export interface RepayAndWithdrawAndRedeemAccounts {
|
|
8
|
+
repayAccounts: {
|
|
9
|
+
owner: PublicKey;
|
|
10
|
+
obligation: PublicKey;
|
|
11
|
+
lendingMarket: PublicKey;
|
|
12
|
+
repayReserve: PublicKey;
|
|
13
|
+
reserveLiquidityMint: PublicKey;
|
|
14
|
+
reserveDestinationLiquidity: PublicKey;
|
|
15
|
+
userSourceLiquidity: PublicKey;
|
|
16
|
+
tokenProgram: PublicKey;
|
|
17
|
+
instructionSysvarAccount: PublicKey;
|
|
18
|
+
};
|
|
19
|
+
withdrawAccounts: {
|
|
20
|
+
owner: PublicKey;
|
|
21
|
+
obligation: PublicKey;
|
|
22
|
+
lendingMarket: PublicKey;
|
|
23
|
+
lendingMarketAuthority: PublicKey;
|
|
24
|
+
withdrawReserve: PublicKey;
|
|
25
|
+
reserveLiquidityMint: PublicKey;
|
|
26
|
+
reserveSourceCollateral: PublicKey;
|
|
27
|
+
reserveCollateralMint: PublicKey;
|
|
28
|
+
reserveLiquiditySupply: PublicKey;
|
|
29
|
+
userDestinationLiquidity: PublicKey;
|
|
30
|
+
placeholderUserDestinationCollateral: PublicKey;
|
|
31
|
+
collateralTokenProgram: PublicKey;
|
|
32
|
+
liquidityTokenProgram: PublicKey;
|
|
33
|
+
instructionSysvarAccount: PublicKey;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export declare const layout: any;
|
|
37
|
+
export declare function repayAndWithdrawAndRedeem(args: RepayAndWithdrawAndRedeemArgs, accounts: RepayAndWithdrawAndRedeemAccounts, programId?: PublicKey): TransactionInstruction;
|
|
38
|
+
//# sourceMappingURL=repayAndWithdrawAndRedeem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repayAndWithdrawAndRedeem.d.ts","sourceRoot":"","sources":["../../../src/idl_codegen/instructions/repayAndWithdrawAndRedeem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAe,MAAM,iBAAiB,CAAA;AAChF,OAAO,EAAE,MAAM,OAAO,CAAA;AAKtB,MAAM,WAAW,6BAA6B;IAC5C,WAAW,EAAE,EAAE,CAAA;IACf,wBAAwB,EAAE,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,iCAAiC;IAChD,aAAa,EAAE;QACb,KAAK,EAAE,SAAS,CAAA;QAChB,UAAU,EAAE,SAAS,CAAA;QACrB,aAAa,EAAE,SAAS,CAAA;QACxB,YAAY,EAAE,SAAS,CAAA;QACvB,oBAAoB,EAAE,SAAS,CAAA;QAC/B,2BAA2B,EAAE,SAAS,CAAA;QACtC,mBAAmB,EAAE,SAAS,CAAA;QAC9B,YAAY,EAAE,SAAS,CAAA;QACvB,wBAAwB,EAAE,SAAS,CAAA;KACpC,CAAA;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,SAAS,CAAA;QAChB,UAAU,EAAE,SAAS,CAAA;QACrB,aAAa,EAAE,SAAS,CAAA;QACxB,sBAAsB,EAAE,SAAS,CAAA;QACjC,eAAe,EAAE,SAAS,CAAA;QAC1B,oBAAoB,EAAE,SAAS,CAAA;QAC/B,uBAAuB,EAAE,SAAS,CAAA;QAClC,qBAAqB,EAAE,SAAS,CAAA;QAChC,sBAAsB,EAAE,SAAS,CAAA;QACjC,wBAAwB,EAAE,SAAS,CAAA;QACnC,oCAAoC,EAAE,SAAS,CAAA;QAC/C,sBAAsB,EAAE,SAAS,CAAA;QACjC,qBAAqB,EAAE,SAAS,CAAA;QAChC,wBAAwB,EAAE,SAAS,CAAA;KACpC,CAAA;CACF;AAED,eAAO,MAAM,MAAM,KAGjB,CAAA;AAEF,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,6BAA6B,EACnC,QAAQ,EAAE,iCAAiC,EAC3C,SAAS,GAAE,SAAsB,0BA+HlC"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.layout = void 0;
|
|
27
|
+
exports.repayAndWithdrawAndRedeem = repayAndWithdrawAndRedeem;
|
|
28
|
+
const web3_js_1 = require("@solana/web3.js"); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
29
|
+
const borsh = __importStar(require("@coral-xyz/borsh")); // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
30
|
+
const programId_1 = require("../programId");
|
|
31
|
+
exports.layout = borsh.struct([
|
|
32
|
+
borsh.u64("repayAmount"),
|
|
33
|
+
borsh.u64("withdrawCollateralAmount"),
|
|
34
|
+
]);
|
|
35
|
+
function repayAndWithdrawAndRedeem(args, accounts, programId = programId_1.PROGRAM_ID) {
|
|
36
|
+
const keys = [
|
|
37
|
+
{ pubkey: accounts.repayAccounts.owner, isSigner: true, isWritable: false },
|
|
38
|
+
{
|
|
39
|
+
pubkey: accounts.repayAccounts.obligation,
|
|
40
|
+
isSigner: false,
|
|
41
|
+
isWritable: true,
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
pubkey: accounts.repayAccounts.lendingMarket,
|
|
45
|
+
isSigner: false,
|
|
46
|
+
isWritable: false,
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
pubkey: accounts.repayAccounts.repayReserve,
|
|
50
|
+
isSigner: false,
|
|
51
|
+
isWritable: true,
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
pubkey: accounts.repayAccounts.reserveLiquidityMint,
|
|
55
|
+
isSigner: false,
|
|
56
|
+
isWritable: true,
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
pubkey: accounts.repayAccounts.reserveDestinationLiquidity,
|
|
60
|
+
isSigner: false,
|
|
61
|
+
isWritable: true,
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
pubkey: accounts.repayAccounts.userSourceLiquidity,
|
|
65
|
+
isSigner: false,
|
|
66
|
+
isWritable: true,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
pubkey: accounts.repayAccounts.tokenProgram,
|
|
70
|
+
isSigner: false,
|
|
71
|
+
isWritable: false,
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
pubkey: accounts.repayAccounts.instructionSysvarAccount,
|
|
75
|
+
isSigner: false,
|
|
76
|
+
isWritable: false,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
pubkey: accounts.withdrawAccounts.owner,
|
|
80
|
+
isSigner: true,
|
|
81
|
+
isWritable: false,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
pubkey: accounts.withdrawAccounts.obligation,
|
|
85
|
+
isSigner: false,
|
|
86
|
+
isWritable: true,
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
pubkey: accounts.withdrawAccounts.lendingMarket,
|
|
90
|
+
isSigner: false,
|
|
91
|
+
isWritable: false,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
pubkey: accounts.withdrawAccounts.lendingMarketAuthority,
|
|
95
|
+
isSigner: false,
|
|
96
|
+
isWritable: false,
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
pubkey: accounts.withdrawAccounts.withdrawReserve,
|
|
100
|
+
isSigner: false,
|
|
101
|
+
isWritable: true,
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
pubkey: accounts.withdrawAccounts.reserveLiquidityMint,
|
|
105
|
+
isSigner: false,
|
|
106
|
+
isWritable: true,
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
pubkey: accounts.withdrawAccounts.reserveSourceCollateral,
|
|
110
|
+
isSigner: false,
|
|
111
|
+
isWritable: true,
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
pubkey: accounts.withdrawAccounts.reserveCollateralMint,
|
|
115
|
+
isSigner: false,
|
|
116
|
+
isWritable: true,
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
pubkey: accounts.withdrawAccounts.reserveLiquiditySupply,
|
|
120
|
+
isSigner: false,
|
|
121
|
+
isWritable: true,
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
pubkey: accounts.withdrawAccounts.userDestinationLiquidity,
|
|
125
|
+
isSigner: false,
|
|
126
|
+
isWritable: true,
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
pubkey: accounts.withdrawAccounts.placeholderUserDestinationCollateral,
|
|
130
|
+
isSigner: false,
|
|
131
|
+
isWritable: false,
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
pubkey: accounts.withdrawAccounts.collateralTokenProgram,
|
|
135
|
+
isSigner: false,
|
|
136
|
+
isWritable: false,
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
pubkey: accounts.withdrawAccounts.liquidityTokenProgram,
|
|
140
|
+
isSigner: false,
|
|
141
|
+
isWritable: false,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
pubkey: accounts.withdrawAccounts.instructionSysvarAccount,
|
|
145
|
+
isSigner: false,
|
|
146
|
+
isWritable: false,
|
|
147
|
+
},
|
|
148
|
+
];
|
|
149
|
+
const identifier = Buffer.from([2, 54, 152, 3, 148, 96, 109, 218]);
|
|
150
|
+
const buffer = Buffer.alloc(1000);
|
|
151
|
+
const len = exports.layout.encode({
|
|
152
|
+
repayAmount: args.repayAmount,
|
|
153
|
+
withdrawCollateralAmount: args.withdrawCollateralAmount,
|
|
154
|
+
}, buffer);
|
|
155
|
+
const data = Buffer.concat([identifier, buffer]).slice(0, 8 + len);
|
|
156
|
+
const ix = new web3_js_1.TransactionInstruction({ keys, programId, data });
|
|
157
|
+
return ix;
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=repayAndWithdrawAndRedeem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repayAndWithdrawAndRedeem.js","sourceRoot":"","sources":["../../../src/idl_codegen/instructions/repayAndWithdrawAndRedeem.ts"],"names":[],"mappings":"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"}
|
package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js
CHANGED
|
@@ -31,7 +31,7 @@ const programId_1 = require("../programId");
|
|
|
31
31
|
exports.layout = borsh.struct([borsh.u64("collateralAmount")]);
|
|
32
32
|
function withdrawObligationCollateralAndRedeemReserveCollateral(args, accounts, programId = programId_1.PROGRAM_ID) {
|
|
33
33
|
const keys = [
|
|
34
|
-
{ pubkey: accounts.owner, isSigner: true, isWritable:
|
|
34
|
+
{ pubkey: accounts.owner, isSigner: true, isWritable: false },
|
|
35
35
|
{ pubkey: accounts.obligation, isSigner: false, isWritable: true },
|
|
36
36
|
{ pubkey: accounts.lendingMarket, isSigner: false, isWritable: false },
|
|
37
37
|
{
|
package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdrawObligationCollateralAndRedeemReserveCollateral.js","sourceRoot":"","sources":["../../../src/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,wHAwEC;AArGD,6CAAgF,CAAC,wDAAwD;AAEzI,wDAAyC,CAAC,wDAAwD;AAElG,4CAAyC;AAuB5B,QAAA,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;AAEnE,SAAgB,sDAAsD,CACpE,IAAgE,EAChE,QAAwE,EACxE,YAAuB,sBAAU;IAEjC,MAAM,IAAI,GAAuB;QAC/B,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"withdrawObligationCollateralAndRedeemReserveCollateral.js","sourceRoot":"","sources":["../../../src/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,wHAwEC;AArGD,6CAAgF,CAAC,wDAAwD;AAEzI,wDAAyC,CAAC,wDAAwD;AAElG,4CAAyC;AAuB5B,QAAA,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;AAEnE,SAAgB,sDAAsD,CACpE,IAAgE,EAChE,QAAwE,EACxE,YAAuB,sBAAU;IAEjC,MAAM,IAAI,GAAuB;QAC/B,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;QAC7D,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;QAClE,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;QACtE;YACE,MAAM,EAAE,QAAQ,CAAC,sBAAsB;YACvC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;QACD,EAAE,MAAM,EAAE,QAAQ,CAAC,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;QACvE;YACE,MAAM,EAAE,QAAQ,CAAC,oBAAoB;YACrC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI;SACjB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,uBAAuB;YACxC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI;SACjB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,qBAAqB;YACtC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI;SACjB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,sBAAsB;YACvC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI;SACjB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,wBAAwB;YACzC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI;SACjB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,oCAAoC;YACrD,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,sBAAsB;YACvC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,qBAAqB;YACtC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;QACD;YACE,MAAM,EAAE,QAAQ,CAAC,wBAAwB;YACzC,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;KACF,CAAA;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;IACpE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,GAAG,GAAG,cAAM,CAAC,MAAM,CACvB;QACE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;KACxC,EACD,MAAM,CACP,CAAA;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA;IAClE,MAAM,EAAE,GAAG,IAAI,gCAAsB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAChE,OAAO,EAAE,CAAA;AACX,CAAC"}
|
|
@@ -29,13 +29,18 @@ export interface ReserveConfigFields {
|
|
|
29
29
|
maxLiquidationBonusBps: number;
|
|
30
30
|
/** Bad debt liquidation bonus for an undercollateralized obligation, as bps */
|
|
31
31
|
badDebtLiquidationBonusBps: number;
|
|
32
|
-
/**
|
|
32
|
+
/**
|
|
33
|
+
* Time in seconds that must pass before redemptions are enabled after the deposit limit is
|
|
34
|
+
* crossed.
|
|
35
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
36
|
+
*/
|
|
33
37
|
deleveragingMarginCallPeriodSecs: BN;
|
|
34
38
|
/**
|
|
35
|
-
* The rate at which the deleveraging threshold decreases in
|
|
36
|
-
* e.g. 1 bps per hour would be
|
|
39
|
+
* The rate at which the deleveraging threshold decreases in seconds per bps
|
|
40
|
+
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
41
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
37
42
|
*/
|
|
38
|
-
|
|
43
|
+
deleveragingThresholdSecsPerBps: BN;
|
|
39
44
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
40
45
|
fees: types.ReserveFeesFields;
|
|
41
46
|
/** Borrow rate curve based on utilization */
|
|
@@ -48,13 +53,21 @@ export interface ReserveConfigFields {
|
|
|
48
53
|
borrowLimit: BN;
|
|
49
54
|
/** Token id from TokenInfos struct */
|
|
50
55
|
tokenInfo: types.TokenInfoFields;
|
|
51
|
-
/** Deposit
|
|
56
|
+
/** Deposit withdrawal caps - deposit & redeem */
|
|
52
57
|
depositWithdrawalCap: types.WithdrawalCapsFields;
|
|
53
|
-
/** Debt
|
|
58
|
+
/** Debt withdrawal caps - borrow & repay */
|
|
54
59
|
debtWithdrawalCap: types.WithdrawalCapsFields;
|
|
55
60
|
elevationGroups: Array<number>;
|
|
56
61
|
disableUsageAsCollOutsideEmode: number;
|
|
57
62
|
utilizationLimitBlockBorrowingAbove: number;
|
|
63
|
+
/**
|
|
64
|
+
* Whether this reserve should be subject to auto-deleveraging after deposit or borrow limit is
|
|
65
|
+
* crossed.
|
|
66
|
+
* Besides this flag, the lending market's flag also needs to be enabled (logical `AND`).
|
|
67
|
+
* **NOTE:** the manual "target LTV" deleveraging (enabled by the risk council for individual
|
|
68
|
+
* obligations) is NOT affected by this flag.
|
|
69
|
+
*/
|
|
70
|
+
autodeleverageEnabled: number;
|
|
58
71
|
reserved1: Array<number>;
|
|
59
72
|
/**
|
|
60
73
|
* Maximum amount liquidity of this reserve borrowed outside all elevation groups
|
|
@@ -69,6 +82,11 @@ export interface ReserveConfigFields {
|
|
|
69
82
|
* - 0 to disable borrows in this elevation group (expected value for the debt asset)
|
|
70
83
|
*/
|
|
71
84
|
borrowLimitAgainstThisCollateralInElevationGroup: Array<BN>;
|
|
85
|
+
/**
|
|
86
|
+
* The rate at which the deleveraging-related liquidation bonus increases, in bps per day.
|
|
87
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
88
|
+
*/
|
|
89
|
+
deleveragingBonusIncreaseBpsPerDay: BN;
|
|
72
90
|
}
|
|
73
91
|
export interface ReserveConfigJSON {
|
|
74
92
|
/** Status of the reserve Active/Obsolete/Hidden */
|
|
@@ -98,13 +116,18 @@ export interface ReserveConfigJSON {
|
|
|
98
116
|
maxLiquidationBonusBps: number;
|
|
99
117
|
/** Bad debt liquidation bonus for an undercollateralized obligation, as bps */
|
|
100
118
|
badDebtLiquidationBonusBps: number;
|
|
101
|
-
/**
|
|
119
|
+
/**
|
|
120
|
+
* Time in seconds that must pass before redemptions are enabled after the deposit limit is
|
|
121
|
+
* crossed.
|
|
122
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
123
|
+
*/
|
|
102
124
|
deleveragingMarginCallPeriodSecs: string;
|
|
103
125
|
/**
|
|
104
|
-
* The rate at which the deleveraging threshold decreases in
|
|
105
|
-
* e.g. 1 bps per hour would be
|
|
126
|
+
* The rate at which the deleveraging threshold decreases in seconds per bps
|
|
127
|
+
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
128
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
106
129
|
*/
|
|
107
|
-
|
|
130
|
+
deleveragingThresholdSecsPerBps: string;
|
|
108
131
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
109
132
|
fees: types.ReserveFeesJSON;
|
|
110
133
|
/** Borrow rate curve based on utilization */
|
|
@@ -117,13 +140,21 @@ export interface ReserveConfigJSON {
|
|
|
117
140
|
borrowLimit: string;
|
|
118
141
|
/** Token id from TokenInfos struct */
|
|
119
142
|
tokenInfo: types.TokenInfoJSON;
|
|
120
|
-
/** Deposit
|
|
143
|
+
/** Deposit withdrawal caps - deposit & redeem */
|
|
121
144
|
depositWithdrawalCap: types.WithdrawalCapsJSON;
|
|
122
|
-
/** Debt
|
|
145
|
+
/** Debt withdrawal caps - borrow & repay */
|
|
123
146
|
debtWithdrawalCap: types.WithdrawalCapsJSON;
|
|
124
147
|
elevationGroups: Array<number>;
|
|
125
148
|
disableUsageAsCollOutsideEmode: number;
|
|
126
149
|
utilizationLimitBlockBorrowingAbove: number;
|
|
150
|
+
/**
|
|
151
|
+
* Whether this reserve should be subject to auto-deleveraging after deposit or borrow limit is
|
|
152
|
+
* crossed.
|
|
153
|
+
* Besides this flag, the lending market's flag also needs to be enabled (logical `AND`).
|
|
154
|
+
* **NOTE:** the manual "target LTV" deleveraging (enabled by the risk council for individual
|
|
155
|
+
* obligations) is NOT affected by this flag.
|
|
156
|
+
*/
|
|
157
|
+
autodeleverageEnabled: number;
|
|
127
158
|
reserved1: Array<number>;
|
|
128
159
|
/**
|
|
129
160
|
* Maximum amount liquidity of this reserve borrowed outside all elevation groups
|
|
@@ -138,6 +169,11 @@ export interface ReserveConfigJSON {
|
|
|
138
169
|
* - 0 to disable borrows in this elevation group (expected value for the debt asset)
|
|
139
170
|
*/
|
|
140
171
|
borrowLimitAgainstThisCollateralInElevationGroup: Array<string>;
|
|
172
|
+
/**
|
|
173
|
+
* The rate at which the deleveraging-related liquidation bonus increases, in bps per day.
|
|
174
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
175
|
+
*/
|
|
176
|
+
deleveragingBonusIncreaseBpsPerDay: string;
|
|
141
177
|
}
|
|
142
178
|
/** Reserve configuration values */
|
|
143
179
|
export declare class ReserveConfig {
|
|
@@ -168,13 +204,18 @@ export declare class ReserveConfig {
|
|
|
168
204
|
readonly maxLiquidationBonusBps: number;
|
|
169
205
|
/** Bad debt liquidation bonus for an undercollateralized obligation, as bps */
|
|
170
206
|
readonly badDebtLiquidationBonusBps: number;
|
|
171
|
-
/**
|
|
207
|
+
/**
|
|
208
|
+
* Time in seconds that must pass before redemptions are enabled after the deposit limit is
|
|
209
|
+
* crossed.
|
|
210
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
211
|
+
*/
|
|
172
212
|
readonly deleveragingMarginCallPeriodSecs: BN;
|
|
173
213
|
/**
|
|
174
|
-
* The rate at which the deleveraging threshold decreases in
|
|
175
|
-
* e.g. 1 bps per hour would be
|
|
214
|
+
* The rate at which the deleveraging threshold decreases in seconds per bps
|
|
215
|
+
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
216
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
176
217
|
*/
|
|
177
|
-
readonly
|
|
218
|
+
readonly deleveragingThresholdSecsPerBps: BN;
|
|
178
219
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
179
220
|
readonly fees: types.ReserveFees;
|
|
180
221
|
/** Borrow rate curve based on utilization */
|
|
@@ -187,13 +228,21 @@ export declare class ReserveConfig {
|
|
|
187
228
|
readonly borrowLimit: BN;
|
|
188
229
|
/** Token id from TokenInfos struct */
|
|
189
230
|
readonly tokenInfo: types.TokenInfo;
|
|
190
|
-
/** Deposit
|
|
231
|
+
/** Deposit withdrawal caps - deposit & redeem */
|
|
191
232
|
readonly depositWithdrawalCap: types.WithdrawalCaps;
|
|
192
|
-
/** Debt
|
|
233
|
+
/** Debt withdrawal caps - borrow & repay */
|
|
193
234
|
readonly debtWithdrawalCap: types.WithdrawalCaps;
|
|
194
235
|
readonly elevationGroups: Array<number>;
|
|
195
236
|
readonly disableUsageAsCollOutsideEmode: number;
|
|
196
237
|
readonly utilizationLimitBlockBorrowingAbove: number;
|
|
238
|
+
/**
|
|
239
|
+
* Whether this reserve should be subject to auto-deleveraging after deposit or borrow limit is
|
|
240
|
+
* crossed.
|
|
241
|
+
* Besides this flag, the lending market's flag also needs to be enabled (logical `AND`).
|
|
242
|
+
* **NOTE:** the manual "target LTV" deleveraging (enabled by the risk council for individual
|
|
243
|
+
* obligations) is NOT affected by this flag.
|
|
244
|
+
*/
|
|
245
|
+
readonly autodeleverageEnabled: number;
|
|
197
246
|
readonly reserved1: Array<number>;
|
|
198
247
|
/**
|
|
199
248
|
* Maximum amount liquidity of this reserve borrowed outside all elevation groups
|
|
@@ -208,6 +257,11 @@ export declare class ReserveConfig {
|
|
|
208
257
|
* - 0 to disable borrows in this elevation group (expected value for the debt asset)
|
|
209
258
|
*/
|
|
210
259
|
readonly borrowLimitAgainstThisCollateralInElevationGroup: Array<BN>;
|
|
260
|
+
/**
|
|
261
|
+
* The rate at which the deleveraging-related liquidation bonus increases, in bps per day.
|
|
262
|
+
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
263
|
+
*/
|
|
264
|
+
readonly deleveragingBonusIncreaseBpsPerDay: BN;
|
|
211
265
|
constructor(fields: ReserveConfigFields);
|
|
212
266
|
static layout(property?: string): any;
|
|
213
267
|
static fromDecoded(obj: any): types.ReserveConfig;
|
|
@@ -225,7 +279,7 @@ export declare class ReserveConfig {
|
|
|
225
279
|
maxLiquidationBonusBps: number;
|
|
226
280
|
badDebtLiquidationBonusBps: number;
|
|
227
281
|
deleveragingMarginCallPeriodSecs: BN;
|
|
228
|
-
|
|
282
|
+
deleveragingThresholdSecsPerBps: BN;
|
|
229
283
|
fees: {
|
|
230
284
|
borrowFeeSf: BN;
|
|
231
285
|
flashLoanFeeSf: BN;
|
|
@@ -281,9 +335,11 @@ export declare class ReserveConfig {
|
|
|
281
335
|
elevationGroups: number[];
|
|
282
336
|
disableUsageAsCollOutsideEmode: number;
|
|
283
337
|
utilizationLimitBlockBorrowingAbove: number;
|
|
338
|
+
autodeleverageEnabled: number;
|
|
284
339
|
reserved1: number[];
|
|
285
340
|
borrowLimitOutsideElevationGroup: BN;
|
|
286
341
|
borrowLimitAgainstThisCollateralInElevationGroup: BN[];
|
|
342
|
+
deleveragingBonusIncreaseBpsPerDay: BN;
|
|
287
343
|
};
|
|
288
344
|
toJSON(): ReserveConfigJSON;
|
|
289
345
|
static fromJSON(obj: ReserveConfigJSON): ReserveConfig;
|
|
@@ -301,7 +357,7 @@ export declare class ReserveConfig {
|
|
|
301
357
|
maxLiquidationBonusBps: number;
|
|
302
358
|
badDebtLiquidationBonusBps: number;
|
|
303
359
|
deleveragingMarginCallPeriodSecs: BN;
|
|
304
|
-
|
|
360
|
+
deleveragingThresholdSecsPerBps: BN;
|
|
305
361
|
fees: {
|
|
306
362
|
borrowFeeSf: BN;
|
|
307
363
|
flashLoanFeeSf: BN;
|
|
@@ -357,9 +413,11 @@ export declare class ReserveConfig {
|
|
|
357
413
|
elevationGroups: number[];
|
|
358
414
|
disableUsageAsCollOutsideEmode: number;
|
|
359
415
|
utilizationLimitBlockBorrowingAbove: number;
|
|
416
|
+
autodeleverageEnabled: number;
|
|
360
417
|
reserved1: number[];
|
|
361
418
|
borrowLimitOutsideElevationGroup: BN;
|
|
362
419
|
borrowLimitAgainstThisCollateralInElevationGroup: BN[];
|
|
420
|
+
deleveragingBonusIncreaseBpsPerDay: BN;
|
|
363
421
|
};
|
|
364
422
|
}
|
|
365
423
|
//# sourceMappingURL=ReserveConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReserveConfig.d.ts","sourceRoot":"","sources":["../../../src/idl_codegen/types/ReserveConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,MAAM,OAAO,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,UAAU,CAAA;AAGjC,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAA;IACd,gGAAgG;IAChG,SAAS,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,wBAAwB,EAAE,MAAM,CAAA;IAChC,uDAAuD;IACvD,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACxB,gEAAgE;IAChE,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACxB,4FAA4F;IAC5F,mBAAmB,EAAE,MAAM,CAAA;IAC3B,+EAA+E;IAC/E,yBAAyB,EAAE,MAAM,CAAA;IACjC;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,kFAAkF;IAClF,uBAAuB,EAAE,MAAM,CAAA;IAC/B,gGAAgG;IAChG,sBAAsB,EAAE,MAAM,CAAA;IAC9B,gGAAgG;IAChG,sBAAsB,EAAE,MAAM,CAAA;IAC9B,+EAA+E;IAC/E,0BAA0B,EAAE,MAAM,CAAA;IAClC
|
|
1
|
+
{"version":3,"file":"ReserveConfig.d.ts","sourceRoot":"","sources":["../../../src/idl_codegen/types/ReserveConfig.ts"],"names":[],"mappings":"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"}
|