impermax-sdk 2.1.128 → 2.1.129
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/lib/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ import { FarmIndex, Farms, getFarmByStakedLPFactory, hrFarms, STAKED_LP_FACTORY
|
|
|
19
19
|
import { APPROVE_AMOUNT, DEADLINE, NOT_SYNCED, ZERO } from './config/general';
|
|
20
20
|
import { BLOCKS_SUBGRAPH_URL, IMPERMAX_CHEF_SUBGRAPH_URL, IMPERMAX_SUBGRAPH_URL, XIMX_SUBGRAPH_URL } from './config/subgraphs';
|
|
21
21
|
import { Address, AddressIndex, AmmIndex, DistributorDetails, Factory, Extension, FactoryIndex, LendingPoolIndex, NetworkFactoryIndex, NetworkIndex, Networks, PoolTokenType, ProposalState, WhitelistState, VaultType, Borrowable } from './config/types';
|
|
22
|
-
import { AirdropData, ApprovalType, Changes, Contract, OnchainConfig, NO_CHANGES, PendingRewardUI, PermitData, Values, CollateralConfig,
|
|
22
|
+
import { AirdropData, ApprovalType, Changes, Contract, OnchainConfig, NO_CHANGES, PendingRewardUI, PermitData, Values, CollateralConfig, BorrowableV2Config, BorrowableV3Config, PairConfig, Permits, Permit, PermitType } from './onchain/onchainTypes';
|
|
23
23
|
import { BorrowableData, BorrowablePastData, BorrowPosition, CollateralData, CollateralPosition, FarmingPoolData, LendingPoolData, LendingPoolPastData, PairData, PoolTokenData, RewardData, SupplyPosition, TokenData, TvlData, UserData, XimxData, LendingVaultData, VaultPosition, PairConfigData, ProposalData, ProposalMetadata, isV3Factory } from './offchain/offchainTypes';
|
|
24
24
|
import { OffchainBorrowable, OffchainCollateral } from './offchain/lendingPool';
|
|
25
25
|
import OffchainConfigManager, { OffchainPairConfig, OffchainProposal } from './offchain/configManager';
|
|
@@ -42,4 +42,4 @@ import { decimalToBalance } from './utils/ether-utils';
|
|
|
42
42
|
import OffchainAccountLendingPoolV3 from "./offchain/account/lendingPool/offchainAccountLendingPoolV3";
|
|
43
43
|
import OffchainAccountNftlpUniswapV3 from './offchain/account/lendingPool/nftlp/offchainAccountNftlpUniswapV3';
|
|
44
44
|
import { MAX_TICK, MIN_TICK, formatPriceSqrtX96, uniV3TickToPrice } from "./utils/nftlpMath/uniswapV3General";
|
|
45
|
-
export { offchain, OffchainMultichain, Offchain, OffchainLendingPool, OffchainPoolToken, OffchainCollateral, OffchainBorrowable, OffchainVault, OffchainLeveragedVault, OffchainLendingVault, OffchainHedgedVault, OffchainConfigManager, OffchainPairConfig, OffchainProposal, OffchainMultichainAccount, OffchainAccount, OffchainAccountLendingPool, OffchainAccountPoolToken, OffchainAccountCollateral, OffchainAccountBorrowable, OffchainLeveragedPosition, OffchainAccountVault, OffchainPriceHelper, OffchainSolidexHelper, PoolTokenData, BorrowableData, CollateralData, BorrowablePastData, TokenData, RewardData, PairData, FarmingPoolData, LendingPoolPastData, LendingPoolData, CollateralPosition, SupplyPosition, BorrowPosition, UserData, TvlData, XimxData, LendingVaultData, VaultPosition, PairConfigData, ProposalData, ProposalMetadata, VaultRisk, VaultType, onchain, Onchain, OnchainLendingPool, OnchainPoolToken, OnchainBorrowable, OnchainCollateral, OnchainLendingVault, OnchainConfigManager, OnchainProposal, OnchainPairConfig, OnchainAccount, OnchainAccountLendingPool, OnchainAccountPoolToken, OnchainAccountBorrowable, OnchainAccountCollateral, OnchainAccountLendingVault, OnchainContractsHelper, OnchainImpermaxFactory, OnchainInteractions, OnchainInteractionsLendingPool, OnchainInteractionsPoolToken, OnchainInteractionsCollateral, OnchainInteractionsBorrowable, OnchainInteractionsLendingVault, OnchainInteractionsConfigManager, Contract, ApprovalType, PermitData, OnchainConfig, Changes, NO_CHANGES, Values, AirdropData, PendingRewardUI, CollateralConfig,
|
|
45
|
+
export { offchain, OffchainMultichain, Offchain, OffchainLendingPool, OffchainPoolToken, OffchainCollateral, OffchainBorrowable, OffchainVault, OffchainLeveragedVault, OffchainLendingVault, OffchainHedgedVault, OffchainConfigManager, OffchainPairConfig, OffchainProposal, OffchainMultichainAccount, OffchainAccount, OffchainAccountLendingPool, OffchainAccountPoolToken, OffchainAccountCollateral, OffchainAccountBorrowable, OffchainLeveragedPosition, OffchainAccountVault, OffchainPriceHelper, OffchainSolidexHelper, PoolTokenData, BorrowableData, CollateralData, BorrowablePastData, TokenData, RewardData, PairData, FarmingPoolData, LendingPoolPastData, LendingPoolData, CollateralPosition, SupplyPosition, BorrowPosition, UserData, TvlData, XimxData, LendingVaultData, VaultPosition, PairConfigData, ProposalData, ProposalMetadata, VaultRisk, VaultType, onchain, Onchain, OnchainLendingPool, OnchainPoolToken, OnchainBorrowable, OnchainCollateral, OnchainLendingVault, OnchainConfigManager, OnchainProposal, OnchainPairConfig, OnchainAccount, OnchainAccountLendingPool, OnchainAccountPoolToken, OnchainAccountBorrowable, OnchainAccountCollateral, OnchainAccountLendingVault, OnchainContractsHelper, OnchainImpermaxFactory, OnchainInteractions, OnchainInteractionsLendingPool, OnchainInteractionsPoolToken, OnchainInteractionsCollateral, OnchainInteractionsBorrowable, OnchainInteractionsLendingVault, OnchainInteractionsConfigManager, Contract, ApprovalType, PermitData, OnchainConfig, Changes, NO_CHANGES, Values, AirdropData, PendingRewardUI, CollateralConfig, BorrowableV2Config, BorrowableV3Config, PairConfig, CLAIM_AGGREGATOR, IMPERMAX_CHEF, IMX, IMPERMAX_FACTORY, getNetworkFactories, getFactoryByAddress, LENDING_VAULT_WATCHER, MERKLE_DISTRIBUTOR_IBEX, MERKLE_DISTRIBUTOR_IBEX_2, MERKLE_DISTRIBUTOR_ETH, ROUTER, SIMPLE_UNISWAP_ORACLE, WETH, MERKLE_URL_ETH, MERKLE_URL_IBEX, MERKLE_URL_IBEX_2, hrAmms, AMM_FACTORY, getAmmByFactory, AMM_SUBGRAPH_URLS, ADD_LIQUIDITY_URLS, AMM_LP_FEE, DEBANK_IDS, ETH_SYMBOL, ETH_NAME, SOLIDEX_FACTORIES, BORROW_FEE_FACTORIES, OLD_KINK_MULTIPLIER_FACTORIES, LIQUIDATION_FEE_FACTORIES, V2_FACTORIES, Farms, hrFarms, FarmIndex, STAKED_LP_FACTORY, getFarmByStakedLPFactory, NOT_SYNCED, DEADLINE, ZERO, APPROVE_AMOUNT, IMPERMAX_SUBGRAPH_URL, IMPERMAX_CHEF_SUBGRAPH_URL, BLOCKS_SUBGRAPH_URL, XIMX_SUBGRAPH_URL, Networks, Factory, Extension, PoolTokenType, Amms, Address, NetworkIndex, FactoryIndex, AddressIndex, NetworkFactoryIndex, LendingPoolIndex, AmmIndex, DistributorDetails, ProposalState, WhitelistState, VaultListOrderBy, VaultListParams, LendingPoolListOrderBy, LendingPoolListParams, SortDirection, LendingPoolVersion, PositionType, AccountPosition, PermitType, Permits, Permit, Borrowable, OnchainInteractionsLendingPoolV3, OnchainInteractionsNftlpUniswapV3, decimalToBalance, OffchainAccountLendingPoolV3, OffchainAccountNftlpUniswapV3, MAX_TICK, MIN_TICK, formatPriceSqrtX96, uniV3TickToPrice, isV3Factory };
|
|
@@ -21,18 +21,21 @@ export default class OnchainPairConfig {
|
|
|
21
21
|
getReserveFactor: () => Promise<number>;
|
|
22
22
|
getKinkUtilizationRate: () => Promise<number>;
|
|
23
23
|
getAdjustSpeed: () => Promise<number>;
|
|
24
|
-
getBorrowTracker: () => Promise<Address>;
|
|
24
|
+
getBorrowTracker: () => Promise<Address | undefined>;
|
|
25
|
+
getDebtCeiling: () => Promise<string | undefined>;
|
|
25
26
|
};
|
|
26
27
|
getBorrowableA: () => {
|
|
27
28
|
getReserveFactor: () => Promise<number>;
|
|
28
29
|
getKinkUtilizationRate: () => Promise<number>;
|
|
29
30
|
getAdjustSpeed: () => Promise<number>;
|
|
30
|
-
getBorrowTracker: () => Promise<Address>;
|
|
31
|
+
getBorrowTracker: () => Promise<Address | undefined>;
|
|
32
|
+
getDebtCeiling: () => Promise<string | undefined>;
|
|
31
33
|
};
|
|
32
34
|
getBorrowableB: () => {
|
|
33
35
|
getReserveFactor: () => Promise<number>;
|
|
34
36
|
getKinkUtilizationRate: () => Promise<number>;
|
|
35
37
|
getAdjustSpeed: () => Promise<number>;
|
|
36
|
-
getBorrowTracker: () => Promise<Address>;
|
|
38
|
+
getBorrowTracker: () => Promise<Address | undefined>;
|
|
39
|
+
getDebtCeiling: () => Promise<string | undefined>;
|
|
37
40
|
};
|
|
38
41
|
}
|
|
@@ -11,6 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
const types_1 = require("../../config/types");
|
|
13
13
|
const impermax_factories_1 = require("../../config/contracts/impermax-factories");
|
|
14
|
+
const onchainTypes_1 = require("../onchainTypes");
|
|
14
15
|
class OnchainPairConfig {
|
|
15
16
|
constructor(proposal, pairConfig) {
|
|
16
17
|
this.getProposal = () => this.proposal;
|
|
@@ -36,7 +37,7 @@ class OnchainPairConfig {
|
|
|
36
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
37
38
|
if (!this.lendingPool)
|
|
38
39
|
this.lendingPool = (() => __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
const impermaxFactory =
|
|
40
|
+
const impermaxFactory = this.getOnchain().getImpermaxFactory(yield this.getFactory());
|
|
40
41
|
return impermaxFactory.getLendingPool(yield this.getPairAddress());
|
|
41
42
|
}))();
|
|
42
43
|
return this.lendingPool;
|
|
@@ -77,7 +78,10 @@ class OnchainPairConfig {
|
|
|
77
78
|
return parseInt(borrowableConfig.adjustSpeed) / 1e18;
|
|
78
79
|
}),
|
|
79
80
|
getBorrowTracker: () => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
-
return borrowableConfig.borrowTracker;
|
|
81
|
+
return (0, onchainTypes_1.isBorrowableV2Config)(borrowableConfig) ? borrowableConfig.borrowTracker : undefined;
|
|
82
|
+
}),
|
|
83
|
+
getDebtCeiling: () => __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
return (0, onchainTypes_1.isBorrowableV3Config)(borrowableConfig) ? borrowableConfig.debtCeiling : undefined;
|
|
81
85
|
}),
|
|
82
86
|
};
|
|
83
87
|
}
|
|
@@ -60,12 +60,19 @@ export interface CollateralConfig {
|
|
|
60
60
|
liquidationIncentive: string;
|
|
61
61
|
liquidationFee: string;
|
|
62
62
|
}
|
|
63
|
-
export interface
|
|
63
|
+
export interface BorrowableV2Config {
|
|
64
64
|
reserveFactor: string;
|
|
65
65
|
kinkUtilizationRate: string;
|
|
66
66
|
adjustSpeed: string;
|
|
67
67
|
borrowTracker: string;
|
|
68
68
|
}
|
|
69
|
+
export interface BorrowableV3Config {
|
|
70
|
+
reserveFactor: string;
|
|
71
|
+
kinkUtilizationRate: string;
|
|
72
|
+
adjustSpeed: string;
|
|
73
|
+
debtCeiling: string;
|
|
74
|
+
}
|
|
75
|
+
export type BorrowableConfig = BorrowableV2Config | BorrowableV3Config;
|
|
69
76
|
export interface PairConfig {
|
|
70
77
|
factory: string;
|
|
71
78
|
pair: string;
|
|
@@ -74,3 +81,5 @@ export interface PairConfig {
|
|
|
74
81
|
borrowable0Config: BorrowableConfig;
|
|
75
82
|
borrowable1Config: BorrowableConfig;
|
|
76
83
|
}
|
|
84
|
+
export declare const isBorrowableV2Config: (config: BorrowableConfig) => config is BorrowableV2Config;
|
|
85
|
+
export declare const isBorrowableV3Config: (config: BorrowableConfig) => config is BorrowableV3Config;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NO_CHANGES = exports.PermitType = exports.ApprovalType = void 0;
|
|
3
|
+
exports.isBorrowableV3Config = exports.isBorrowableV2Config = exports.NO_CHANGES = exports.PermitType = exports.ApprovalType = void 0;
|
|
4
4
|
var ApprovalType;
|
|
5
5
|
(function (ApprovalType) {
|
|
6
6
|
ApprovalType[ApprovalType["POOL_TOKEN"] = 0] = "POOL_TOKEN";
|
|
@@ -19,3 +19,11 @@ exports.NO_CHANGES = {
|
|
|
19
19
|
changeBorrowedB: 0,
|
|
20
20
|
changeCollateral: 0,
|
|
21
21
|
};
|
|
22
|
+
const isBorrowableV2Config = (config) => {
|
|
23
|
+
return 'borrowTracker' in config;
|
|
24
|
+
};
|
|
25
|
+
exports.isBorrowableV2Config = isBorrowableV2Config;
|
|
26
|
+
const isBorrowableV3Config = (config) => {
|
|
27
|
+
return 'debtCeiling' in config;
|
|
28
|
+
};
|
|
29
|
+
exports.isBorrowableV3Config = isBorrowableV3Config;
|