@lavarage/sdk 7.3.0 → 7.4.1
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/abi/borrowerOperations.ts +1 -1
- package/dist/index.d.mts +16 -1
- package/dist/index.d.ts +16 -1
- package/dist/index.js +27 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +26 -2
- package/dist/index.mjs.map +1 -1
- package/evm.ts +45 -1
- package/interfaces/evm.ts +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
export const borrowerOperationsAbi = [{"type":"
|
|
1
|
+
export const borrowerOperationsAbi = [{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":true,"internalType":"address","name":"tokenHolder","type":"address"},{"indexed":true,"internalType":"address","name":"tokenCollateral","type":"address"},{"indexed":false,"internalType":"uint256","name":"loanId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"openingPositionSize","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"collateralAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"initialMargin","type":"uint256"}],"name":"Buy","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"dex","type":"address"}],"name":"DexAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"dex","type":"address"}],"name":"DexRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"borrower","type":"address"},{"indexed":true,"internalType":"address","name":"tokenHolder","type":"address"},{"indexed":true,"internalType":"address","name":"tokenCollateral","type":"address"},{"indexed":false,"internalType":"uint256","name":"loanId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"closingPositionSize","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"liquidatorRepaidAmount","type":"uint256"}],"name":"Liquidation","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"MaxApprovalAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":true,"internalType":"address","name":"tokenHolder","type":"address"},{"indexed":true,"internalType":"address","name":"tokenCollateral","type":"address"},{"indexed":false,"internalType":"uint256","name":"loanId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"closingPositionSize","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"profit","type":"uint256"}],"name":"Sell","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"}],"name":"TokenAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"}],"name":"TokenRemoved","type":"event"},{"inputs":[{"internalType":"address","name":"dex","type":"address"}],"name":"addWhitelistedDex","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"addWhitelistedToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"buyingCode","type":"bytes"},{"internalType":"contract IERC20","name":"tokenCollateral","type":"address"},{"internalType":"uint256","name":"borrowAmount","type":"uint256"},{"internalType":"contract TokenHolder","name":"tokenHolder","type":"address"},{"internalType":"address","name":"inchRouter","type":"address"},{"internalType":"address","name":"integratorFeeAddress","type":"address"},{"internalType":"address","name":"whitelistedDex","type":"address"}],"name":"buy","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_weth","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"dex","type":"address"}],"name":"isWhitelistedDex","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"isWhitelistedToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"loanId","type":"uint256"},{"internalType":"contract TokenHolder","name":"tokenHolder","type":"address"},{"internalType":"uint256","name":"closingPositionSize","type":"uint256"}],"name":"liquidate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"loanRecords","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"tokenHolder","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxApprovalAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"profitFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"dex","type":"address"}],"name":"removeWhitelistedDex","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"removeWhitelistedToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"loanId","type":"uint256"},{"internalType":"bytes","name":"sellingCode","type":"bytes"},{"internalType":"contract TokenHolder","name":"tokenHolder","type":"address"},{"internalType":"address","name":"inchRouter","type":"address"},{"internalType":"address","name":"integratorFeeAddress","type":"address"},{"internalType":"address","name":"whitelistedDex","type":"address"}],"name":"sell","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_admin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxApprovalAmount","type":"uint256"}],"name":"setMaxApprovalAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_openingFee","type":"uint256"}],"name":"setOpeningFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_profitFee","type":"uint256"}],"name":"setProfitFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelistedDexes","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelistedTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]
|
package/dist/index.d.mts
CHANGED
|
@@ -3116,6 +3116,7 @@ interface BuyEvent {
|
|
|
3116
3116
|
initialMargin: bigint;
|
|
3117
3117
|
transactionHash: string;
|
|
3118
3118
|
timestamp: number;
|
|
3119
|
+
interestRate: number;
|
|
3119
3120
|
}
|
|
3120
3121
|
interface SellEvent {
|
|
3121
3122
|
trader: string;
|
|
@@ -3291,6 +3292,20 @@ declare function getCollateralExposureEvm(provider: Provider, tokenHolderContrac
|
|
|
3291
3292
|
* @returns Available exposure as a BigNumber
|
|
3292
3293
|
*/
|
|
3293
3294
|
declare function getAvailableExposureEvm(provider: Provider, tokenHolderContractAddress: string, collateralAddress: string): Promise<bigint>;
|
|
3295
|
+
/**
|
|
3296
|
+
* Creates an unsigned transaction to liquidate a trading position on EVM chain
|
|
3297
|
+
* @param provider - Ethers provider
|
|
3298
|
+
* @param borrowerOpsContractAddress - BorrowerOperations contract address
|
|
3299
|
+
* @param params - Liquidation parameters
|
|
3300
|
+
* @returns Unsigned transaction object
|
|
3301
|
+
*/
|
|
3302
|
+
declare const liquidatePositionEvm: (provider: Provider, borrowerOpsContractAddress: string, { loanId, tokenHolder, closingPositionSize, gasLimit, gasPrice, }: {
|
|
3303
|
+
loanId: BigNumberish;
|
|
3304
|
+
tokenHolder: string;
|
|
3305
|
+
closingPositionSize: BigNumberish;
|
|
3306
|
+
gasLimit?: string | number;
|
|
3307
|
+
gasPrice?: string | number;
|
|
3308
|
+
}) => Promise<ContractTransaction>;
|
|
3294
3309
|
/**
|
|
3295
3310
|
* Update max lend per token for multiple collaterals in batch
|
|
3296
3311
|
* @param provider - Ethers provider
|
|
@@ -3621,4 +3636,4 @@ declare const mergePositionV2: (lavarageProgram: Program<Lavarage>, position1: P
|
|
|
3621
3636
|
collateralType: PublicKey;
|
|
3622
3637
|
}>, quoteToken: PublicKey, computeBudgetMicroLamports?: number) => Promise<VersionedTransaction>;
|
|
3623
3638
|
|
|
3624
|
-
export { IDL$1 as IDL, lavaragev2 as IDLV2, type Lavarage$1 as Lavarage, closePositionEvm, closeTradeV1, closeTradeV2, createTpDelegate, getActiveLoanCountEvm, getActiveLoansBatchEvm, getAllPositions, getAvailableExposureEvm, getClosedPositions, getClosedPositionsEvm, getCollateralExposureEvm, getCollateralInfoEvm, getDelegateAccounts, getLiquidatedPositions, getLiquidatedPositionsEvm, getLoanEvm, getLoansByBorrowerEvm, getOffers, getOffersEvm, getOpenPositions, getOpeningFeeEvm, getPda, getPositionAccountPDA, getPositionsEvm, getProfitFeeEvm, getTokenBalanceEvm, getUserLoansEvm, lending, mergePositionV2, modifyTpDelegate, openPositionEvm, openTradeV1, openTradeV2, partialRepayV1, partialRepayV2, removeTpDelegate, splitPositionV2, updateMaxLendPerTokenBatchEvm };
|
|
3639
|
+
export { IDL$1 as IDL, lavaragev2 as IDLV2, type Lavarage$1 as Lavarage, closePositionEvm, closeTradeV1, closeTradeV2, createTpDelegate, getActiveLoanCountEvm, getActiveLoansBatchEvm, getAllPositions, getAvailableExposureEvm, getClosedPositions, getClosedPositionsEvm, getCollateralExposureEvm, getCollateralInfoEvm, getDelegateAccounts, getLiquidatedPositions, getLiquidatedPositionsEvm, getLoanEvm, getLoansByBorrowerEvm, getOffers, getOffersEvm, getOpenPositions, getOpeningFeeEvm, getPda, getPositionAccountPDA, getPositionsEvm, getProfitFeeEvm, getTokenBalanceEvm, getUserLoansEvm, lending, liquidatePositionEvm, mergePositionV2, modifyTpDelegate, openPositionEvm, openTradeV1, openTradeV2, partialRepayV1, partialRepayV2, removeTpDelegate, splitPositionV2, updateMaxLendPerTokenBatchEvm };
|
package/dist/index.d.ts
CHANGED
|
@@ -3116,6 +3116,7 @@ interface BuyEvent {
|
|
|
3116
3116
|
initialMargin: bigint;
|
|
3117
3117
|
transactionHash: string;
|
|
3118
3118
|
timestamp: number;
|
|
3119
|
+
interestRate: number;
|
|
3119
3120
|
}
|
|
3120
3121
|
interface SellEvent {
|
|
3121
3122
|
trader: string;
|
|
@@ -3291,6 +3292,20 @@ declare function getCollateralExposureEvm(provider: Provider, tokenHolderContrac
|
|
|
3291
3292
|
* @returns Available exposure as a BigNumber
|
|
3292
3293
|
*/
|
|
3293
3294
|
declare function getAvailableExposureEvm(provider: Provider, tokenHolderContractAddress: string, collateralAddress: string): Promise<bigint>;
|
|
3295
|
+
/**
|
|
3296
|
+
* Creates an unsigned transaction to liquidate a trading position on EVM chain
|
|
3297
|
+
* @param provider - Ethers provider
|
|
3298
|
+
* @param borrowerOpsContractAddress - BorrowerOperations contract address
|
|
3299
|
+
* @param params - Liquidation parameters
|
|
3300
|
+
* @returns Unsigned transaction object
|
|
3301
|
+
*/
|
|
3302
|
+
declare const liquidatePositionEvm: (provider: Provider, borrowerOpsContractAddress: string, { loanId, tokenHolder, closingPositionSize, gasLimit, gasPrice, }: {
|
|
3303
|
+
loanId: BigNumberish;
|
|
3304
|
+
tokenHolder: string;
|
|
3305
|
+
closingPositionSize: BigNumberish;
|
|
3306
|
+
gasLimit?: string | number;
|
|
3307
|
+
gasPrice?: string | number;
|
|
3308
|
+
}) => Promise<ContractTransaction>;
|
|
3294
3309
|
/**
|
|
3295
3310
|
* Update max lend per token for multiple collaterals in batch
|
|
3296
3311
|
* @param provider - Ethers provider
|
|
@@ -3621,4 +3636,4 @@ declare const mergePositionV2: (lavarageProgram: Program<Lavarage>, position1: P
|
|
|
3621
3636
|
collateralType: PublicKey;
|
|
3622
3637
|
}>, quoteToken: PublicKey, computeBudgetMicroLamports?: number) => Promise<VersionedTransaction>;
|
|
3623
3638
|
|
|
3624
|
-
export { IDL$1 as IDL, lavaragev2 as IDLV2, type Lavarage$1 as Lavarage, closePositionEvm, closeTradeV1, closeTradeV2, createTpDelegate, getActiveLoanCountEvm, getActiveLoansBatchEvm, getAllPositions, getAvailableExposureEvm, getClosedPositions, getClosedPositionsEvm, getCollateralExposureEvm, getCollateralInfoEvm, getDelegateAccounts, getLiquidatedPositions, getLiquidatedPositionsEvm, getLoanEvm, getLoansByBorrowerEvm, getOffers, getOffersEvm, getOpenPositions, getOpeningFeeEvm, getPda, getPositionAccountPDA, getPositionsEvm, getProfitFeeEvm, getTokenBalanceEvm, getUserLoansEvm, lending, mergePositionV2, modifyTpDelegate, openPositionEvm, openTradeV1, openTradeV2, partialRepayV1, partialRepayV2, removeTpDelegate, splitPositionV2, updateMaxLendPerTokenBatchEvm };
|
|
3639
|
+
export { IDL$1 as IDL, lavaragev2 as IDLV2, type Lavarage$1 as Lavarage, closePositionEvm, closeTradeV1, closeTradeV2, createTpDelegate, getActiveLoanCountEvm, getActiveLoansBatchEvm, getAllPositions, getAvailableExposureEvm, getClosedPositions, getClosedPositionsEvm, getCollateralExposureEvm, getCollateralInfoEvm, getDelegateAccounts, getLiquidatedPositions, getLiquidatedPositionsEvm, getLoanEvm, getLoansByBorrowerEvm, getOffers, getOffersEvm, getOpenPositions, getOpeningFeeEvm, getPda, getPositionAccountPDA, getPositionsEvm, getProfitFeeEvm, getTokenBalanceEvm, getUserLoansEvm, lending, liquidatePositionEvm, mergePositionV2, modifyTpDelegate, openPositionEvm, openTradeV1, openTradeV2, partialRepayV1, partialRepayV2, removeTpDelegate, splitPositionV2, updateMaxLendPerTokenBatchEvm };
|
package/dist/index.js
CHANGED
|
@@ -97,6 +97,7 @@ __export(index_exports, {
|
|
|
97
97
|
getTokenBalanceEvm: () => getTokenBalanceEvm,
|
|
98
98
|
getUserLoansEvm: () => getUserLoansEvm,
|
|
99
99
|
lending: () => lending_exports,
|
|
100
|
+
liquidatePositionEvm: () => liquidatePositionEvm,
|
|
100
101
|
mergePositionV2: () => mergePositionV2,
|
|
101
102
|
modifyTpDelegate: () => modifyTpDelegate,
|
|
102
103
|
openPositionEvm: () => openPositionEvm,
|
|
@@ -118,7 +119,7 @@ var import_spl_token2 = require("@solana/spl-token");
|
|
|
118
119
|
var import_ethers = require("ethers");
|
|
119
120
|
|
|
120
121
|
// abi/borrowerOperations.ts
|
|
121
|
-
var borrowerOperationsAbi = [{ "
|
|
122
|
+
var borrowerOperationsAbi = [{ "inputs": [], "name": "InvalidInitialization", "type": "error" }, { "inputs": [], "name": "NotInitializing", "type": "error" }, { "inputs": [], "name": "ReentrancyGuardReentrantCall", "type": "error" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "buyer", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenHolder", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenCollateral", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "loanId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "openingPositionSize", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "collateralAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "initialMargin", "type": "uint256" }], "name": "Buy", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "dex", "type": "address" }], "name": "DexAdded", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "dex", "type": "address" }], "name": "DexRemoved", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint64", "name": "version", "type": "uint64" }], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "borrower", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenHolder", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenCollateral", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "loanId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "closingPositionSize", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "liquidatorRepaidAmount", "type": "uint256" }], "name": "Liquidation", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint256", "name": "oldAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newAmount", "type": "uint256" }], "name": "MaxApprovalAmountUpdated", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "buyer", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenHolder", "type": "address" }, { "indexed": true, "internalType": "address", "name": "tokenCollateral", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "loanId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "closingPositionSize", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "profit", "type": "uint256" }], "name": "Sell", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "token", "type": "address" }], "name": "TokenAdded", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "token", "type": "address" }], "name": "TokenRemoved", "type": "event" }, { "inputs": [{ "internalType": "address", "name": "dex", "type": "address" }], "name": "addWhitelistedDex", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "token", "type": "address" }], "name": "addWhitelistedToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "admin", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes", "name": "buyingCode", "type": "bytes" }, { "internalType": "contract IERC20", "name": "tokenCollateral", "type": "address" }, { "internalType": "uint256", "name": "borrowAmount", "type": "uint256" }, { "internalType": "contract TokenHolder", "name": "tokenHolder", "type": "address" }, { "internalType": "address", "name": "inchRouter", "type": "address" }, { "internalType": "address", "name": "integratorFeeAddress", "type": "address" }, { "internalType": "address", "name": "whitelistedDex", "type": "address" }], "name": "buy", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [{ "internalType": "contract IERC20", "name": "_weth", "type": "address" }], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "dex", "type": "address" }], "name": "isWhitelistedDex", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "token", "type": "address" }], "name": "isWhitelistedToken", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "loanId", "type": "uint256" }, { "internalType": "contract TokenHolder", "name": "tokenHolder", "type": "address" }, { "internalType": "uint256", "name": "closingPositionSize", "type": "uint256" }], "name": "liquidate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }], "name": "loanRecords", "outputs": [{ "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "address", "name": "tokenHolder", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxApprovalAmount", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "openingFee", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "profitFee", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "dex", "type": "address" }], "name": "removeWhitelistedDex", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "token", "type": "address" }], "name": "removeWhitelistedToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "loanId", "type": "uint256" }, { "internalType": "bytes", "name": "sellingCode", "type": "bytes" }, { "internalType": "contract TokenHolder", "name": "tokenHolder", "type": "address" }, { "internalType": "address", "name": "inchRouter", "type": "address" }, { "internalType": "address", "name": "integratorFeeAddress", "type": "address" }, { "internalType": "address", "name": "whitelistedDex", "type": "address" }], "name": "sell", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_admin", "type": "address" }], "name": "setAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "_maxApprovalAmount", "type": "uint256" }], "name": "setMaxApprovalAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "_openingFee", "type": "uint256" }], "name": "setOpeningFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "_profitFee", "type": "uint256" }], "name": "setProfitFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "whitelistedDexes", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "whitelistedTokens", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }];
|
|
122
123
|
|
|
123
124
|
// abi/tokenHolderAbi.ts
|
|
124
125
|
var tokenHolderAbi = [
|
|
@@ -866,7 +867,8 @@ function getPositionsEvm(provider, tokenHolderContractAddress) {
|
|
|
866
867
|
initialMargin: loan.userPaid,
|
|
867
868
|
transactionHash: "",
|
|
868
869
|
// Not available from loan data
|
|
869
|
-
timestamp: Number(loan.timestamp)
|
|
870
|
+
timestamp: Number(loan.timestamp),
|
|
871
|
+
interestRate: loan.collateral.interestRate
|
|
870
872
|
});
|
|
871
873
|
}
|
|
872
874
|
}
|
|
@@ -1081,6 +1083,28 @@ function getAvailableExposureEvm(provider, tokenHolderContractAddress, collatera
|
|
|
1081
1083
|
return contract.getAvailableExposure(collateralAddress);
|
|
1082
1084
|
});
|
|
1083
1085
|
}
|
|
1086
|
+
var liquidatePositionEvm = (_0, _1, _2) => __async(void 0, [_0, _1, _2], function* (provider, borrowerOpsContractAddress, {
|
|
1087
|
+
loanId,
|
|
1088
|
+
tokenHolder,
|
|
1089
|
+
closingPositionSize,
|
|
1090
|
+
gasLimit,
|
|
1091
|
+
gasPrice
|
|
1092
|
+
}) {
|
|
1093
|
+
const contract = new import_ethers.Contract(
|
|
1094
|
+
borrowerOpsContractAddress,
|
|
1095
|
+
borrowerOperationsAbi,
|
|
1096
|
+
provider
|
|
1097
|
+
);
|
|
1098
|
+
const txOptions = {};
|
|
1099
|
+
if (gasLimit) txOptions.gasLimit = gasLimit;
|
|
1100
|
+
if (gasPrice) txOptions.gasPrice = gasPrice;
|
|
1101
|
+
return contract.liquidate.populateTransaction(
|
|
1102
|
+
loanId,
|
|
1103
|
+
tokenHolder,
|
|
1104
|
+
closingPositionSize,
|
|
1105
|
+
Object.keys(txOptions).length > 0 ? txOptions : {}
|
|
1106
|
+
);
|
|
1107
|
+
});
|
|
1084
1108
|
var updateMaxLendPerTokenBatchEvm = (_0, _1, _2) => __async(void 0, [_0, _1, _2], function* (provider, tokenHolderContractAddress, {
|
|
1085
1109
|
collateralAddresses,
|
|
1086
1110
|
newMaxLendPerTokens,
|
|
@@ -5995,6 +6019,7 @@ var mergePositionV2 = (lavarageProgram, position1, position2, offer, quoteToken,
|
|
|
5995
6019
|
getTokenBalanceEvm,
|
|
5996
6020
|
getUserLoansEvm,
|
|
5997
6021
|
lending,
|
|
6022
|
+
liquidatePositionEvm,
|
|
5998
6023
|
mergePositionV2,
|
|
5999
6024
|
modifyTpDelegate,
|
|
6000
6025
|
openPositionEvm,
|