@defisaver/positions-sdk 2.1.136 → 2.1.137-audit-dev
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/cjs/config/contracts.d.ts +0 -938
- package/cjs/config/contracts.js +1 -8
- package/cjs/contracts.d.ts +3823 -27499
- package/cjs/contracts.js +2 -3
- package/cjs/helpers/index.d.ts +0 -1
- package/cjs/helpers/index.js +1 -2
- package/cjs/index.d.ts +1 -2
- package/cjs/index.js +1 -3
- package/cjs/markets/index.d.ts +0 -1
- package/cjs/markets/index.js +1 -3
- package/cjs/markets/morphoBlue/index.d.ts +4 -0
- package/cjs/markets/morphoBlue/index.js +36 -2
- package/cjs/portfolio/discovery.d.ts +1 -1
- package/cjs/portfolio/discovery.js +1 -1
- package/cjs/portfolio/index.js +0 -32
- package/cjs/savings/morphoVaults/index.js +19 -2
- package/cjs/services/viem.d.ts +918 -2679
- package/cjs/staking/staking.js +1 -2
- package/cjs/types/index.d.ts +0 -1
- package/cjs/types/index.js +0 -1
- package/cjs/types/morphoBlue.d.ts +2 -0
- package/cjs/types/morphoBlue.js +2 -0
- package/cjs/types/portfolio.d.ts +0 -4
- package/esm/config/contracts.d.ts +0 -938
- package/esm/config/contracts.js +0 -6
- package/esm/contracts.d.ts +3823 -27499
- package/esm/contracts.js +0 -1
- package/esm/helpers/index.d.ts +0 -1
- package/esm/helpers/index.js +0 -1
- package/esm/index.d.ts +1 -2
- package/esm/index.js +1 -2
- package/esm/markets/index.d.ts +0 -1
- package/esm/markets/index.js +0 -1
- package/esm/markets/morphoBlue/index.d.ts +4 -0
- package/esm/markets/morphoBlue/index.js +32 -0
- package/esm/portfolio/discovery.d.ts +1 -1
- package/esm/portfolio/discovery.js +1 -1
- package/esm/portfolio/index.js +1 -33
- package/esm/savings/morphoVaults/index.js +19 -2
- package/esm/services/viem.d.ts +916 -2667
- package/esm/staking/staking.js +1 -2
- package/esm/types/index.d.ts +0 -1
- package/esm/types/index.js +0 -1
- package/esm/types/morphoBlue.d.ts +2 -0
- package/esm/types/morphoBlue.js +2 -0
- package/esm/types/portfolio.d.ts +0 -4
- package/package.json +9 -2
- package/src/config/contracts.ts +0 -6
- package/src/contracts.ts +2 -3
- package/src/helpers/index.ts +0 -1
- package/src/index.ts +0 -2
- package/src/markets/index.ts +0 -1
- package/src/markets/morphoBlue/index.ts +32 -0
- package/src/portfolio/discovery.ts +1 -1
- package/src/portfolio/index.ts +0 -33
- package/src/savings/morphoVaults/index.ts +18 -2
- package/src/staking/staking.ts +1 -2
- package/src/types/index.ts +0 -1
- package/src/types/morphoBlue.ts +2 -0
- package/src/types/portfolio.ts +0 -4
- package/cjs/eulerV2/index.d.ts +0 -47
- package/cjs/eulerV2/index.js +0 -225
- package/cjs/helpers/eulerHelpers/index.d.ts +0 -22
- package/cjs/helpers/eulerHelpers/index.js +0 -231
- package/cjs/markets/euler/index.d.ts +0 -8
- package/cjs/markets/euler/index.js +0 -30
- package/cjs/types/euler.d.ts +0 -153
- package/cjs/types/euler.js +0 -14
- package/esm/eulerV2/index.d.ts +0 -47
- package/esm/eulerV2/index.js +0 -215
- package/esm/helpers/eulerHelpers/index.d.ts +0 -22
- package/esm/helpers/eulerHelpers/index.js +0 -218
- package/esm/markets/euler/index.d.ts +0 -8
- package/esm/markets/euler/index.js +0 -24
- package/esm/types/euler.d.ts +0 -153
- package/esm/types/euler.js +0 -11
- package/src/eulerV2/index.ts +0 -331
- package/src/helpers/eulerHelpers/index.ts +0 -232
- package/src/markets/euler/index.ts +0 -27
- package/src/types/euler.ts +0 -178
package/esm/staking/staking.js
CHANGED
|
@@ -184,9 +184,8 @@ export const calculateInterestEarned = (principal, interest, type, apy = false)
|
|
|
184
184
|
};
|
|
185
185
|
export const calculateNetApy = ({ usedAssets, assetsData, optionalData, }) => {
|
|
186
186
|
const sumValues = Object.values(usedAssets).reduce((_acc, usedAsset) => {
|
|
187
|
-
var _a;
|
|
188
187
|
const acc = Object.assign({}, _acc);
|
|
189
|
-
const assetData = assetsData[usedAsset.symbol]
|
|
188
|
+
const assetData = assetsData[usedAsset.symbol];
|
|
190
189
|
if (usedAsset.isSupplied) {
|
|
191
190
|
const amount = usedAsset.suppliedUsd;
|
|
192
191
|
acc.suppliedUsd = new Dec(acc.suppliedUsd).add(amount).toString();
|
package/esm/types/index.d.ts
CHANGED
package/esm/types/index.js
CHANGED
|
@@ -67,6 +67,7 @@ export declare enum MorphoBlueVersions {
|
|
|
67
67
|
MorphoBlueSyrupUSDCRLUSD_915 = "morphobluesyrupusdcrlusd_915",// syrupUSDC/RLUSD 0.915
|
|
68
68
|
MorphoBlueWeEthUSDC_770 = "morphoblueweethusdc_770",// weETH/USDC 0.77
|
|
69
69
|
MorphoBlueWeEthUSDC_860 = "morphoblueweethusdc_860",// weETH/USDC 0.86
|
|
70
|
+
MorphoBlueWeEthUSDC_860_85252bb8 = "morphoblueweethusdc_860_85252bb8",// weETH/USDC 0.86
|
|
70
71
|
MorphoBlueEthUSDC_860_94b823e6 = "morphoblueethusdc_860_94b823e6",// ETH/USDC 0.86
|
|
71
72
|
MorphoBlueUSD3USDC_915 = "morphoblueusd3usdc_915",// USD3/USDC 0.915
|
|
72
73
|
MorphoBlueStUSDSUSDC_860 = "morphobluestusdsusdc_860",// stUSDS/USDC 0.86
|
|
@@ -74,6 +75,7 @@ export declare enum MorphoBlueVersions {
|
|
|
74
75
|
MorphoBlueWBTCEth_915 = "morphobluewbtceth_915",// WBTC/ETH 0.915
|
|
75
76
|
MorphoBlueCbBTCEth_915_12dbf493 = "morphobluecbbtceth_915_12dbf493",// cbBTC/ETH 0.915
|
|
76
77
|
MorphoBlueWeEthUSDT_860 = "morphoblueweethusdt_860",// weETH/USDT 0.86
|
|
78
|
+
MorphoBlueWeEthUSDT_860_a6a4c1f1 = "morphoblueweethusdt_860_a6a4c1f1",// weETH/USDT 0.86
|
|
77
79
|
MorphoBlueSyrupUSDTUSDT_915 = "morphobluesyrupusdtusdt_915",// syrupUSDT/USDT 0.915
|
|
78
80
|
MorphoBlueCbBTCPYUSD_860 = "morphobluecbbtcpyusd_860",// cbBTC/PYUSD 0.86
|
|
79
81
|
MorphoBlueWeEthUSDT_770 = "morphoblueweethusdt_770",// weETH/USDT 0.77
|
package/esm/types/morphoBlue.js
CHANGED
|
@@ -73,6 +73,7 @@ export var MorphoBlueVersions;
|
|
|
73
73
|
MorphoBlueVersions["MorphoBlueSyrupUSDCRLUSD_915"] = "morphobluesyrupusdcrlusd_915";
|
|
74
74
|
MorphoBlueVersions["MorphoBlueWeEthUSDC_770"] = "morphoblueweethusdc_770";
|
|
75
75
|
MorphoBlueVersions["MorphoBlueWeEthUSDC_860"] = "morphoblueweethusdc_860";
|
|
76
|
+
MorphoBlueVersions["MorphoBlueWeEthUSDC_860_85252bb8"] = "morphoblueweethusdc_860_85252bb8";
|
|
76
77
|
MorphoBlueVersions["MorphoBlueEthUSDC_860_94b823e6"] = "morphoblueethusdc_860_94b823e6";
|
|
77
78
|
MorphoBlueVersions["MorphoBlueUSD3USDC_915"] = "morphoblueusd3usdc_915";
|
|
78
79
|
MorphoBlueVersions["MorphoBlueStUSDSUSDC_860"] = "morphobluestusdsusdc_860";
|
|
@@ -80,6 +81,7 @@ export var MorphoBlueVersions;
|
|
|
80
81
|
MorphoBlueVersions["MorphoBlueWBTCEth_915"] = "morphobluewbtceth_915";
|
|
81
82
|
MorphoBlueVersions["MorphoBlueCbBTCEth_915_12dbf493"] = "morphobluecbbtceth_915_12dbf493";
|
|
82
83
|
MorphoBlueVersions["MorphoBlueWeEthUSDT_860"] = "morphoblueweethusdt_860";
|
|
84
|
+
MorphoBlueVersions["MorphoBlueWeEthUSDT_860_a6a4c1f1"] = "morphoblueweethusdt_860_a6a4c1f1";
|
|
83
85
|
MorphoBlueVersions["MorphoBlueSyrupUSDTUSDT_915"] = "morphobluesyrupusdtusdt_915";
|
|
84
86
|
MorphoBlueVersions["MorphoBlueCbBTCPYUSD_860"] = "morphobluecbbtcpyusd_860";
|
|
85
87
|
MorphoBlueVersions["MorphoBlueWeEthUSDT_770"] = "morphoblueweethusdt_770";
|
package/esm/types/portfolio.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ import { AaveV4AccountData, AaveV4SpokesType } from './aaveV4';
|
|
|
3
3
|
import { EthAddress } from './common';
|
|
4
4
|
import { CompoundV2PositionData, CompoundV3PositionData, CompoundVersions } from './compound';
|
|
5
5
|
import { CrvUSDUserData, CrvUSDVersions } from './curveUsd';
|
|
6
|
-
import { EulerV2PositionData, EulerV2Versions } from './euler';
|
|
7
6
|
import { FluidVaultData } from './fluid';
|
|
8
7
|
import { LiquityTroveInfo } from './liquity';
|
|
9
8
|
import { LlamaLendUserData, LlamaLendVersionsType } from './llamaLend';
|
|
@@ -27,9 +26,6 @@ export interface PortfolioPositionsDataForAddress {
|
|
|
27
26
|
spark: {
|
|
28
27
|
[key in SparkVersions]?: PortfolioProtocolData<SparkPositionData>;
|
|
29
28
|
};
|
|
30
|
-
eulerV2: {
|
|
31
|
-
[key in EulerV2Versions]?: Record<EthAddress, PortfolioProtocolData<EulerV2PositionData>>;
|
|
32
|
-
};
|
|
33
29
|
maker: {
|
|
34
30
|
[key: string]: PortfolioProtocolData<CdpData>;
|
|
35
31
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@defisaver/positions-sdk",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.137-audit-dev",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "./cjs/index.js",
|
|
6
6
|
"module": "./esm/index.js",
|
|
@@ -25,11 +25,17 @@
|
|
|
25
25
|
"@types/lodash": "^4.17.15",
|
|
26
26
|
"@types/memoizee": "^0.4.12",
|
|
27
27
|
"decimal.js": "^10.6.0",
|
|
28
|
-
"graphql-request": "^1.8.2",
|
|
29
28
|
"lodash": "^4.17.21",
|
|
30
29
|
"memoizee": "^0.4.17",
|
|
31
30
|
"viem": "^2.37.9"
|
|
32
31
|
},
|
|
32
|
+
"overrides": {
|
|
33
|
+
"serialize-javascript": "^7.1.0",
|
|
34
|
+
"uuid": "^11.1.1",
|
|
35
|
+
"@typescript-eslint/typescript-estree": {
|
|
36
|
+
"minimatch": "^9.0.9"
|
|
37
|
+
}
|
|
38
|
+
},
|
|
33
39
|
"devDependencies": {
|
|
34
40
|
"@defisaver/eslint-config": "^1.0.1",
|
|
35
41
|
"@metamask/eth-json-rpc-middleware": "^15.0.1",
|
|
@@ -40,6 +46,7 @@
|
|
|
40
46
|
"dotenv": "^16.3.1",
|
|
41
47
|
"eslint": "^8.49.0",
|
|
42
48
|
"eslint-plugin-import": "^2.31.0",
|
|
49
|
+
"eslint-webpack-plugin": "^4.0.1",
|
|
43
50
|
"mocha": "^10.2.0",
|
|
44
51
|
"nock": "^14.0.0",
|
|
45
52
|
"ts-node": "^10.9.2",
|
package/src/config/contracts.ts
CHANGED
|
@@ -1169,12 +1169,6 @@ export const LiquityV2TroveNFT = {
|
|
|
1169
1169
|
"abi": [{"inputs":[{"internalType":"contract IAddressesRegistry","name":"_addressesRegistry","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_troveId","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"metadataNFT","outputs":[{"internalType":"contract IMetadataNFT","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"uint256","name":"_troveId","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"troveManager","outputs":[{"internalType":"contract ITroveManager","name":"","type":"address"}],"stateMutability":"view","type":"function"}],
|
|
1170
1170
|
"networks": {}
|
|
1171
1171
|
} as const;
|
|
1172
|
-
export const EulerV2View = {
|
|
1173
|
-
"abi": [{"inputs":[],"name":"USD","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feedRegistry","outputs":[{"internalType":"contract IFeedRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_page","type":"uint256"},{"internalType":"uint256","name":"_perPage","type":"uint256"}],"name":"fetchUsedAccounts","outputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address[]","name":"accounts","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getAaveTokenPriceInETH","outputs":[{"internalType":"uint256","name":"price","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getAaveTokenPriceInUSD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getAaveV3TokenPriceInETH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getAaveV3TokenPriceInUSD","outputs":[{"internalType":"uint256","name":"price","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"}],"name":"getAddrForChainlinkOracle","outputs":[{"internalType":"address","name":"tokenAddrForChainlinkUsage","type":"address"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"vault","type":"address"},{"internalType":"bool","name":"isBorrowOperation","type":"bool"},{"internalType":"uint256","name":"liquidityAdded","type":"uint256"},{"internalType":"uint256","name":"liquidityRemoved","type":"uint256"}],"internalType":"struct EulerV2View.LiquidityChangeParams[]","name":"params","type":"tuple[]"}],"name":"getApyAfterValuesEstimation","outputs":[{"internalType":"uint256[]","name":"estimatedBorrowRates","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"}],"name":"getChainlinkPriceInETH","outputs":[{"internalType":"int256","name":"chainlinkPriceInETH","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"},{"internalType":"bool","name":"_useFallback","type":"bool"}],"name":"getChainlinkPriceInUSD","outputs":[{"internalType":"int256","name":"chainlinkPriceInUSD","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"}],"name":"getPriceInETH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"}],"name":"getPriceInUSD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"},{"internalType":"uint80","name":"_roundId","type":"uint80"},{"internalType":"contract IAggregatorV3","name":"aggregator","type":"address"}],"name":"getRoundInfo","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"updateTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_inputTokenAddr","type":"address"},{"internalType":"uint80","name":"_roundId","type":"uint80"}],"name":"getRoundInfo","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"updateTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getSparkTokenPriceInETH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"}],"name":"getSparkTokenPriceInUSD","outputs":[{"internalType":"uint256","name":"price","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getUserData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"bool","name":"inLockDownMode","type":"bool"},{"internalType":"bool","name":"inPermitDisabledMode","type":"bool"},{"internalType":"address","name":"borrowVault","type":"address"},{"internalType":"uint256","name":"borrowAmountInUnit","type":"uint256"},{"internalType":"uint256","name":"borrowAmountInAsset","type":"uint256"},{"components":[{"internalType":"address","name":"collateralVault","type":"address"},{"internalType":"bool","name":"usedInBorrow","type":"bool"},{"internalType":"uint256","name":"collateralAmountInUnit","type":"uint256"},{"internalType":"uint256","name":"collateralAmountInAsset","type":"uint256"},{"internalType":"uint256","name":"collateralAmountInUSD","type":"uint256"}],"internalType":"struct EulerV2View.UserCollateralInfo[]","name":"collaterals","type":"tuple[]"}],"internalType":"struct EulerV2View.UserData","name":"data","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"}],"name":"getUsersData","outputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"bool","name":"inLockDownMode","type":"bool"},{"internalType":"bool","name":"inPermitDisabledMode","type":"bool"},{"internalType":"address","name":"borrowVault","type":"address"},{"internalType":"uint256","name":"borrowAmountInUnit","type":"uint256"},{"internalType":"uint256","name":"borrowAmountInAsset","type":"uint256"},{"components":[{"internalType":"address","name":"collateralVault","type":"address"},{"internalType":"bool","name":"usedInBorrow","type":"bool"},{"internalType":"uint256","name":"collateralAmountInUnit","type":"uint256"},{"internalType":"uint256","name":"collateralAmountInAsset","type":"uint256"},{"internalType":"uint256","name":"collateralAmountInUSD","type":"uint256"}],"internalType":"struct EulerV2View.UserCollateralInfo[]","name":"collaterals","type":"tuple[]"}],"internalType":"struct EulerV2View.UserData[]","name":"data","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_vault","type":"address"}],"name":"getVaultCollaterals","outputs":[{"components":[{"internalType":"address","name":"vaultAddr","type":"address"},{"internalType":"address","name":"assetAddr","type":"address"},{"internalType":"string","name":"vaultSymbol","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"address","name":"governorAdmin","type":"address"},{"internalType":"bool","name":"isEscrowed","type":"bool"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"sharePriceInUnit","type":"uint256"},{"internalType":"uint256","name":"assetPriceInUnit","type":"uint256"},{"internalType":"uint256","name":"cash","type":"uint256"},{"internalType":"uint256","name":"totalBorrows","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"},{"internalType":"uint16","name":"borrowLTV","type":"uint16"},{"internalType":"uint16","name":"liquidationLTV","type":"uint16"},{"internalType":"uint16","name":"initialLiquidationLTV","type":"uint16"},{"internalType":"uint48","name":"targetTimestamp","type":"uint48"},{"internalType":"uint32","name":"rampDuration","type":"uint32"},{"internalType":"uint256","name":"interestFee","type":"uint256"},{"internalType":"uint256","name":"interestRate","type":"uint256"}],"internalType":"struct EulerV2View.CollateralInfo[]","name":"collateralsInfo","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_vault","type":"address"}],"name":"getVaultInfoFull","outputs":[{"components":[{"internalType":"address","name":"vaultAddr","type":"address"},{"internalType":"address","name":"assetAddr","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"totalSupplyShares","type":"uint256"},{"internalType":"uint256","name":"cash","type":"uint256"},{"internalType":"uint256","name":"totalBorrows","type":"uint256"},{"internalType":"uint256","name":"totalAssets","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"},{"internalType":"uint256","name":"borrowCap","type":"uint256"},{"components":[{"internalType":"address","name":"vaultAddr","type":"address"},{"internalType":"address","name":"assetAddr","type":"address"},{"internalType":"string","name":"vaultSymbol","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"address","name":"governorAdmin","type":"address"},{"internalType":"bool","name":"isEscrowed","type":"bool"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"sharePriceInUnit","type":"uint256"},{"internalType":"uint256","name":"assetPriceInUnit","type":"uint256"},{"internalType":"uint256","name":"cash","type":"uint256"},{"internalType":"uint256","name":"totalBorrows","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"},{"internalType":"uint16","name":"borrowLTV","type":"uint16"},{"internalType":"uint16","name":"liquidationLTV","type":"uint16"},{"internalType":"uint16","name":"initialLiquidationLTV","type":"uint16"},{"internalType":"uint48","name":"targetTimestamp","type":"uint48"},{"internalType":"uint32","name":"rampDuration","type":"uint32"},{"internalType":"uint256","name":"interestFee","type":"uint256"},{"internalType":"uint256","name":"interestRate","type":"uint256"}],"internalType":"struct EulerV2View.CollateralInfo[]","name":"collaterals","type":"tuple[]"},{"internalType":"uint16","name":"maxLiquidationDiscount","type":"uint16"},{"internalType":"uint256","name":"liquidationCoolOffTime","type":"uint256"},{"internalType":"bool","name":"badDebtSocializationEnabled","type":"bool"},{"internalType":"address","name":"unitOfAccount","type":"address"},{"internalType":"uint256","name":"unitOfAccountInUsd","type":"uint256"},{"internalType":"address","name":"oracle","type":"address"},{"internalType":"uint256","name":"assetPriceInUnit","type":"uint256"},{"internalType":"uint256","name":"sharePriceInUnit","type":"uint256"},{"internalType":"uint256","name":"interestRate","type":"uint256"},{"internalType":"address","name":"irm","type":"address"},{"internalType":"address","name":"balanceTrackerAddress","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"governorAdmin","type":"address"},{"internalType":"uint256","name":"interestFee","type":"uint256"}],"internalType":"struct EulerV2View.VaultInfoFull","name":"data","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_vaults","type":"address[]"}],"name":"getVaultsInfosFull","outputs":[{"components":[{"internalType":"address","name":"vaultAddr","type":"address"},{"internalType":"address","name":"assetAddr","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"totalSupplyShares","type":"uint256"},{"internalType":"uint256","name":"cash","type":"uint256"},{"internalType":"uint256","name":"totalBorrows","type":"uint256"},{"internalType":"uint256","name":"totalAssets","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"},{"internalType":"uint256","name":"borrowCap","type":"uint256"},{"components":[{"internalType":"address","name":"vaultAddr","type":"address"},{"internalType":"address","name":"assetAddr","type":"address"},{"internalType":"string","name":"vaultSymbol","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"address","name":"governorAdmin","type":"address"},{"internalType":"bool","name":"isEscrowed","type":"bool"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"sharePriceInUnit","type":"uint256"},{"internalType":"uint256","name":"assetPriceInUnit","type":"uint256"},{"internalType":"uint256","name":"cash","type":"uint256"},{"internalType":"uint256","name":"totalBorrows","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"},{"internalType":"uint16","name":"borrowLTV","type":"uint16"},{"internalType":"uint16","name":"liquidationLTV","type":"uint16"},{"internalType":"uint16","name":"initialLiquidationLTV","type":"uint16"},{"internalType":"uint48","name":"targetTimestamp","type":"uint48"},{"internalType":"uint32","name":"rampDuration","type":"uint32"},{"internalType":"uint256","name":"interestFee","type":"uint256"},{"internalType":"uint256","name":"interestRate","type":"uint256"}],"internalType":"struct EulerV2View.CollateralInfo[]","name":"collaterals","type":"tuple[]"},{"internalType":"uint16","name":"maxLiquidationDiscount","type":"uint16"},{"internalType":"uint256","name":"liquidationCoolOffTime","type":"uint256"},{"internalType":"bool","name":"badDebtSocializationEnabled","type":"bool"},{"internalType":"address","name":"unitOfAccount","type":"address"},{"internalType":"uint256","name":"unitOfAccountInUsd","type":"uint256"},{"internalType":"address","name":"oracle","type":"address"},{"internalType":"uint256","name":"assetPriceInUnit","type":"uint256"},{"internalType":"uint256","name":"sharePriceInUnit","type":"uint256"},{"internalType":"uint256","name":"interestRate","type":"uint256"},{"internalType":"address","name":"irm","type":"address"},{"internalType":"address","name":"balanceTrackerAddress","type":"address"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"address","name":"governorAdmin","type":"address"},{"internalType":"uint256","name":"interestFee","type":"uint256"}],"internalType":"struct EulerV2View.VaultInfoFull[]","name":"data","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"int256","name":"_btcPrice","type":"int256"}],"name":"getWBtcPrice","outputs":[{"internalType":"int256","name":"wBtcPrice","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"int256","name":"_stEthPrice","type":"int256"}],"name":"getWStEthPrice","outputs":[{"internalType":"int256","name":"wStEthPrice","type":"int256"}],"stateMutability":"view","type":"function"}],
|
|
1174
|
-
"networks": {
|
|
1175
|
-
"1": { "address": "0x8932E46Ecf96b5Fe033F5e27Ab6dC755Cb668967" }
|
|
1176
|
-
}
|
|
1177
|
-
} as const;
|
|
1178
1172
|
export const LiquityV2StabilityPool = {
|
|
1179
1173
|
"abi": [{"inputs":[{"internalType":"contract IAddressesRegistry","name":"_addressesRegistry","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_newActivePoolAddress","type":"address"}],"name":"ActivePoolAddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_B","type":"uint256"},{"indexed":false,"internalType":"uint128","name":"_epoch","type":"uint128"},{"indexed":false,"internalType":"uint128","name":"_scale","type":"uint128"}],"name":"B_Updated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_newBoldTokenAddress","type":"address"}],"name":"BoldTokenAddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_newDefaultPoolAddress","type":"address"}],"name":"DefaultPoolAddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_depositor","type":"address"},{"indexed":false,"internalType":"enum IStabilityPoolEvents.Operation","name":"_operation","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"_depositLossSinceLastOperation","type":"uint256"},{"indexed":false,"internalType":"int256","name":"_depositChange","type":"int256"},{"indexed":false,"internalType":"uint256","name":"_yieldGainSinceLastOperation","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_yieldGainClaimed","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_ethGainSinceLastOperation","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_ethGainClaimed","type":"uint256"}],"name":"DepositOperation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_depositor","type":"address"},{"indexed":false,"internalType":"uint256","name":"_newDeposit","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_stashedColl","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_snapshotP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_snapshotS","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_snapshotB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_snapshotScale","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_snapshotEpoch","type":"uint256"}],"name":"DepositUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint128","name":"_currentEpoch","type":"uint128"}],"name":"EpochUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"EtherSent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_P","type":"uint256"}],"name":"P_Updated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_newPriceFeedAddress","type":"address"}],"name":"PriceFeedAddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_S","type":"uint256"},{"indexed":false,"internalType":"uint128","name":"_epoch","type":"uint128"},{"indexed":false,"internalType":"uint128","name":"_scale","type":"uint128"}],"name":"S_Updated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint128","name":"_currentScale","type":"uint128"}],"name":"ScaleUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_newBalance","type":"uint256"}],"name":"StabilityPoolBoldBalanceUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_newBalance","type":"uint256"}],"name":"StabilityPoolCollBalanceUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_newTroveManagerAddress","type":"address"}],"name":"TroveManagerAddressChanged","type":"event"},{"inputs":[],"name":"NAME","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"P","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SCALE_FACTOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"activePool","outputs":[{"internalType":"contract IActivePool","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"boldToken","outputs":[{"internalType":"contract IBoldToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimAllCollGains","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"collToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentEpoch","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentScale","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"depositSnapshots","outputs":[{"internalType":"uint256","name":"S","type":"uint256"},{"internalType":"uint256","name":"P","type":"uint256"},{"internalType":"uint256","name":"B","type":"uint256"},{"internalType":"uint128","name":"scale","type":"uint128"},{"internalType":"uint128","name":"epoch","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"deposits","outputs":[{"internalType":"uint256","name":"initialValue","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint128","name":"","type":"uint128"},{"internalType":"uint128","name":"","type":"uint128"}],"name":"epochToScaleToB","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint128","name":"","type":"uint128"},{"internalType":"uint128","name":"","type":"uint128"}],"name":"epochToScaleToS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCollBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_depositor","type":"address"}],"name":"getCompoundedBoldDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_depositor","type":"address"}],"name":"getDepositorCollGain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_depositor","type":"address"}],"name":"getDepositorYieldGain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_depositor","type":"address"}],"name":"getDepositorYieldGainWithPending","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getEntireSystemColl","outputs":[{"internalType":"uint256","name":"entireSystemColl","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getEntireSystemDebt","outputs":[{"internalType":"uint256","name":"entireSystemDebt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalBoldDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getYieldGainsOwed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getYieldGainsPending","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastBoldLossError_Offset","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastBoldLossError_TotalDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastCollError_Offset","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastYieldError","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_debtToOffset","type":"uint256"},{"internalType":"uint256","name":"_collToAdd","type":"uint256"}],"name":"offset","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_topUp","type":"uint256"},{"internalType":"bool","name":"_doClaim","type":"bool"}],"name":"provideToSP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"stashedColl","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_boldYield","type":"uint256"}],"name":"triggerBoldRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"troveManager","outputs":[{"internalType":"contract ITroveManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"bool","name":"_doClaim","type":"bool"}],"name":"withdrawFromSP","outputs":[],"stateMutability":"nonpayable","type":"function"}],
|
|
1180
1174
|
"networks": {}
|
package/src/contracts.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getContract, Client } from 'viem';
|
|
1
|
+
import { getContract, Client, GetContractReturnType } from 'viem';
|
|
2
2
|
import * as configRaw from './config/contracts';
|
|
3
3
|
import {
|
|
4
4
|
Blockish, EthAddress, HexString, NetworkNumber,
|
|
@@ -57,7 +57,7 @@ export const getConfigContractAbi = <TKey extends ConfigKey>(name: TKey, network
|
|
|
57
57
|
return latestAbi as unknown as typeof configRaw[TKey]['abi'];
|
|
58
58
|
};
|
|
59
59
|
|
|
60
|
-
export const createViemContractFromConfigFunc = <TKey extends ConfigKey>(name: TKey, _address?: HexString) => (client: Client, network: NetworkNumber, block?: Blockish) => {
|
|
60
|
+
export const createViemContractFromConfigFunc = <TKey extends ConfigKey>(name: TKey, _address?: HexString) => (client: Client, network: NetworkNumber, block?: Blockish): GetContractReturnType<typeof configRaw[TKey]['abi'], Client, HexString> => {
|
|
61
61
|
const address = (_address || getConfigContractAddress(name, network, block));
|
|
62
62
|
const abi = getConfigContractAbi(name, network, block) as typeof configRaw[TKey]['abi'];
|
|
63
63
|
return getContract({
|
|
@@ -134,7 +134,6 @@ export const WstETHPriceFeedContractViem = createViemContractFromConfigFunc('Wst
|
|
|
134
134
|
export const CompV3ViewContractViem = createViemContractFromConfigFunc('CompV3View');
|
|
135
135
|
export const SparkViewContractViem = createViemContractFromConfigFunc('SparkView');
|
|
136
136
|
export const SparkIncentiveDataProviderContractViem = createViemContractFromConfigFunc('SparkIncentiveDataProvider');
|
|
137
|
-
export const EulerV2ViewContractViem = createViemContractFromConfigFunc('EulerV2View');
|
|
138
137
|
export const CrvUSDViewContractViem = createViemContractFromConfigFunc('crvUSDView');
|
|
139
138
|
export const CrvUSDFactoryContractViem = createViemContractFromConfigFunc('crvUSDFactory');
|
|
140
139
|
export const LlamaLendViewContractViem = createViemContractFromConfigFunc('LlamaLendView');
|
package/src/helpers/index.ts
CHANGED
|
@@ -6,6 +6,5 @@ export * as makerHelpers from './makerHelpers';
|
|
|
6
6
|
export * as morphoBlueHelpers from './morphoBlueHelpers';
|
|
7
7
|
export * as llamaLendHelpers from './llamaLendHelpers';
|
|
8
8
|
export * as liquityV2Helpers from './liquityV2Helpers';
|
|
9
|
-
export * as eulerV2Helpers from './eulerHelpers';
|
|
10
9
|
export * as fluidHelpers from './fluidHelpers';
|
|
11
10
|
export * as aaveV4Helpers from './aaveV4Helpers';
|
package/src/index.ts
CHANGED
|
@@ -18,7 +18,6 @@ import * as helpers from './helpers';
|
|
|
18
18
|
import * as exchange from './exchange';
|
|
19
19
|
import * as morphoBlue from './morphoBlue';
|
|
20
20
|
import * as llamaLend from './llamaLend';
|
|
21
|
-
import * as eulerV2 from './eulerV2';
|
|
22
21
|
import * as portfolio from './portfolio';
|
|
23
22
|
import * as claiming from './claiming';
|
|
24
23
|
import * as savings from './savings';
|
|
@@ -43,7 +42,6 @@ export {
|
|
|
43
42
|
helpers,
|
|
44
43
|
morphoBlue,
|
|
45
44
|
llamaLend,
|
|
46
|
-
eulerV2,
|
|
47
45
|
fluid,
|
|
48
46
|
portfolio,
|
|
49
47
|
claiming,
|
package/src/markets/index.ts
CHANGED
|
@@ -19,7 +19,6 @@ export { CrvUsdMarkets } from './curveUsd';
|
|
|
19
19
|
export { MorphoBlueMarkets, findMorphoBlueMarket } from './morphoBlue';
|
|
20
20
|
export { LlamaLendMarkets } from './llamaLend';
|
|
21
21
|
export { LiquityV2Markets, findLiquityV2MarketByAddress } from './liquityV2';
|
|
22
|
-
export { EulerV2Markets } from './euler';
|
|
23
22
|
export {
|
|
24
23
|
FluidMarkets,
|
|
25
24
|
getFluidVersionsDataForNetwork,
|
|
@@ -1012,6 +1012,21 @@ export const MORPHO_BLUE_WEETH_USDC_860 = (networkId: NetworkNumber = NetworkNum
|
|
|
1012
1012
|
marketId: '0x61765602144e91e5ac9f9e98b8584eae308f9951596fd7f5e0f59f21cd2bf664',
|
|
1013
1013
|
protocolName: 'morpho-blue',
|
|
1014
1014
|
});
|
|
1015
|
+
export const MORPHO_BLUE_WEETH_USDC_860_85252BB8 = (networkId: NetworkNumber = NetworkNumber.Eth): MorphoBlueMarketData => ({
|
|
1016
|
+
chainIds: [NetworkNumber.Eth],
|
|
1017
|
+
label: 'Morpho',
|
|
1018
|
+
shortLabel: 'weETH/USDC',
|
|
1019
|
+
value: MorphoBlueVersions.MorphoBlueWeEthUSDC_860_85252bb8,
|
|
1020
|
+
url: 'weethusdc-85252bb8',
|
|
1021
|
+
loanToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
1022
|
+
collateralToken: '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee',
|
|
1023
|
+
oracle: '0xa3A7A3ceFee206f9d7Fe00eC3C83324ED4228411',
|
|
1024
|
+
oracleType: MorphoBlueOracleType.MARKET_RATE,
|
|
1025
|
+
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
1026
|
+
lltv: 0.86,
|
|
1027
|
+
marketId: '0x85252bb8485c99bba46fe149c7dd2aad83672640f53c630890673cf1848ba16e',
|
|
1028
|
+
protocolName: 'morpho-blue',
|
|
1029
|
+
});
|
|
1015
1030
|
export const MORPHO_BLUE_ETH_USDC_860_94B823E6 = (networkId: NetworkNumber = NetworkNumber.Eth): MorphoBlueMarketData => ({
|
|
1016
1031
|
chainIds: [NetworkNumber.Eth],
|
|
1017
1032
|
label: 'Morpho',
|
|
@@ -1117,6 +1132,21 @@ export const MORPHO_BLUE_WEETH_USDT_860 = (networkId: NetworkNumber = NetworkNum
|
|
|
1117
1132
|
marketId: '0xc2c53d2b868e163da71de14a5113cc2743fc9b5ad7488334720ed2846566a8f6',
|
|
1118
1133
|
protocolName: 'morpho-blue',
|
|
1119
1134
|
});
|
|
1135
|
+
export const MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1 = (networkId: NetworkNumber = NetworkNumber.Eth): MorphoBlueMarketData => ({
|
|
1136
|
+
chainIds: [NetworkNumber.Eth],
|
|
1137
|
+
label: 'Morpho',
|
|
1138
|
+
shortLabel: 'weETH/USDT',
|
|
1139
|
+
value: MorphoBlueVersions.MorphoBlueWeEthUSDT_860_a6a4c1f1,
|
|
1140
|
+
url: 'weethusdt-a6a4c1f1',
|
|
1141
|
+
loanToken: '0xdAC17F958D2ee523a2206206994597C13D831ec7',
|
|
1142
|
+
collateralToken: '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee',
|
|
1143
|
+
oracle: '0xa3A7A3ceFee206f9d7Fe00eC3C83324ED4228411',
|
|
1144
|
+
oracleType: MorphoBlueOracleType.MARKET_RATE,
|
|
1145
|
+
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
1146
|
+
lltv: 0.86,
|
|
1147
|
+
marketId: '0xa6a4c1f15490a1ff39d9de3a366b408dd5647a436d8b179726d3e0562aff1292',
|
|
1148
|
+
protocolName: 'morpho-blue',
|
|
1149
|
+
});
|
|
1120
1150
|
export const MORPHO_BLUE_SYRUPUSDT_USDT_915 = (networkId: NetworkNumber = NetworkNumber.Eth): MorphoBlueMarketData => ({
|
|
1121
1151
|
chainIds: [NetworkNumber.Eth],
|
|
1122
1152
|
label: 'Morpho',
|
|
@@ -1881,6 +1911,7 @@ export const MorphoBlueMarkets = (networkId: NetworkNumber) => ({
|
|
|
1881
1911
|
[MorphoBlueVersions.MorphoBlueSyrupUSDCRLUSD_915]: MORPHO_BLUE_SYRUPUSDC_RLUSD_915(networkId),
|
|
1882
1912
|
[MorphoBlueVersions.MorphoBlueWeEthUSDC_770]: MORPHO_BLUE_WEETH_USDC_770(networkId),
|
|
1883
1913
|
[MorphoBlueVersions.MorphoBlueWeEthUSDC_860]: MORPHO_BLUE_WEETH_USDC_860(networkId),
|
|
1914
|
+
[MorphoBlueVersions.MorphoBlueWeEthUSDC_860_85252bb8]: MORPHO_BLUE_WEETH_USDC_860_85252BB8(networkId),
|
|
1884
1915
|
[MorphoBlueVersions.MorphoBlueEthUSDC_860_94b823e6]: MORPHO_BLUE_ETH_USDC_860_94B823E6(networkId),
|
|
1885
1916
|
[MorphoBlueVersions.MorphoBlueUSD3USDC_915]: MORPHO_BLUE_USD3_USDC_915(networkId),
|
|
1886
1917
|
[MorphoBlueVersions.MorphoBlueStUSDSUSDC_860]: MORPHO_BLUE_STUSDS_USDC_860(networkId),
|
|
@@ -1888,6 +1919,7 @@ export const MorphoBlueMarkets = (networkId: NetworkNumber) => ({
|
|
|
1888
1919
|
[MorphoBlueVersions.MorphoBlueWBTCEth_915]: MORPHO_BLUE_WBTC_ETH_915(networkId),
|
|
1889
1920
|
[MorphoBlueVersions.MorphoBlueCbBTCEth_915_12dbf493]: MORPHO_BLUE_CBBTC_ETH_915_12DBF493(networkId),
|
|
1890
1921
|
[MorphoBlueVersions.MorphoBlueWeEthUSDT_860]: MORPHO_BLUE_WEETH_USDT_860(networkId),
|
|
1922
|
+
[MorphoBlueVersions.MorphoBlueWeEthUSDT_860_a6a4c1f1]: MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1(networkId),
|
|
1891
1923
|
[MorphoBlueVersions.MorphoBlueSyrupUSDTUSDT_915]: MORPHO_BLUE_SYRUPUSDT_USDT_915(networkId),
|
|
1892
1924
|
[MorphoBlueVersions.MorphoBlueCbBTCPYUSD_860]: MORPHO_BLUE_CBBTC_PYUSD_860(networkId),
|
|
1893
1925
|
[MorphoBlueVersions.MorphoBlueWeEthUSDT_770]: MORPHO_BLUE_WEETH_USDT_770(networkId),
|
|
@@ -35,7 +35,7 @@ const hasAnyBalance = (balances: PositionBalances): boolean => (
|
|
|
35
35
|
* Uses one shared, multicall-batched viem client (same pattern as getPortfolioData) so all
|
|
36
36
|
* per-market reads collapse into a handful of RPC round trips.
|
|
37
37
|
*
|
|
38
|
-
* Not covered: Maker, Liquity, Liquity V2, Fluid
|
|
38
|
+
* Not covered: Maker, Liquity, Liquity V2, Fluid — these already expose cheap,
|
|
39
39
|
* user-scoped discovery entry points elsewhere in the SDK (e.g. _getUserCdps, _getUserPositionsPortfolio).
|
|
40
40
|
*/
|
|
41
41
|
export async function getUserPositionsExistence(
|
package/src/portfolio/index.ts
CHANGED
|
@@ -5,7 +5,6 @@ import {
|
|
|
5
5
|
AaveV4Spokes,
|
|
6
6
|
CompoundMarkets,
|
|
7
7
|
CrvUsdMarkets,
|
|
8
|
-
EulerV2Markets,
|
|
9
8
|
LiquityV2Markets,
|
|
10
9
|
LlamaLendMarkets,
|
|
11
10
|
MorphoBlueMarkets,
|
|
@@ -22,7 +21,6 @@ import {
|
|
|
22
21
|
CompoundV3MarketsData,
|
|
23
22
|
CompoundVersions,
|
|
24
23
|
CrvUSDGlobalMarketData,
|
|
25
|
-
EulerV2FullMarketData,
|
|
26
24
|
LiquityV2MarketData,
|
|
27
25
|
LlamaLendGlobalMarketData,
|
|
28
26
|
MorphoBlueMarketInfo,
|
|
@@ -31,7 +29,6 @@ import {
|
|
|
31
29
|
} from '../types';
|
|
32
30
|
import { _getCompoundV3AccountData, _getCompoundV3MarketsData } from '../compoundV3';
|
|
33
31
|
import { _getSparkAccountData, _getSparkMarketsData } from '../spark';
|
|
34
|
-
import { _getEulerV2AccountData, _getEulerV2MarketsData } from '../eulerV2';
|
|
35
32
|
import { _getCurveUsdGlobalData, _getCurveUsdUserData } from '../curveUsd';
|
|
36
33
|
import { _getLlamaLendGlobalData, _getLlamaLendUserData } from '../llamaLend';
|
|
37
34
|
import { _getAaveV3AccountData, _getAaveV3MarketData, getStakeAaveData } from '../aaveV3';
|
|
@@ -43,7 +40,6 @@ import { getViemProvider } from '../services/viem';
|
|
|
43
40
|
import { _getLiquityTroveInfo, getLiquityStakingData } from '../liquity';
|
|
44
41
|
import { _getLiquityV2MarketData, getLiquitySAndYBold, getLiquityV2Staking } from '../liquityV2';
|
|
45
42
|
import { _getAllUserEarnPositionsWithFTokens, _getUserPositionsPortfolio } from '../fluid';
|
|
46
|
-
import { getEulerV2SubAccounts } from '../helpers/eulerHelpers';
|
|
47
43
|
import { getUmbrellaData } from '../umbrella';
|
|
48
44
|
import { getMeritUnclaimedRewards, getUnclaimedRewardsForAllMarkets } from '../claiming/aaveV3';
|
|
49
45
|
import { getCompoundV3Rewards } from '../claiming/compV3';
|
|
@@ -65,7 +61,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
65
61
|
const morphoMarkets = Object.values(MorphoBlueMarkets(network)).filter((market) => market.chainIds.includes(network));
|
|
66
62
|
const compoundV3Markets = Object.values(CompoundMarkets(network)).filter((market) => market.chainIds.includes(network) && market.value !== CompoundVersions.CompoundV2);
|
|
67
63
|
const sparkMarkets = Object.values(SparkMarkets(network)).filter((market) => market.chainIds.includes(network));
|
|
68
|
-
const eulerV2Markets = Object.values(EulerV2Markets(network)).filter((market) => market.chainIds.includes(network));
|
|
69
64
|
const aaveV3Markets = [AaveVersions.AaveV3, AaveVersions.AaveV3Lido, AaveVersions.AaveV3Etherfi].map((version) => AaveMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
70
65
|
const aaveV2Markets = [AaveVersions.AaveV2].map((version) => AaveMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
71
66
|
const compoundV2Markets = [CompoundVersions.CompoundV2].map((version) => CompoundMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
@@ -83,7 +78,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
83
78
|
const morphoMarketsData: Record<string, MorphoBlueMarketInfo> = {};
|
|
84
79
|
const compoundV3MarketsData: Record<string, CompoundV3MarketsData> = {};
|
|
85
80
|
const sparkMarketsData: Record<string, SparkMarketsData> = {};
|
|
86
|
-
const eulerV2MarketsData: Record<string, EulerV2FullMarketData> = {};
|
|
87
81
|
const aaveV3MarketsData: Record<string, AaveV3MarketData> = {};
|
|
88
82
|
const makerCdps: Record<string, CdpInfo[]> = {};
|
|
89
83
|
const aaveV2MarketsData: Record<string, AaveV2MarketData> = {};
|
|
@@ -97,7 +91,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
97
91
|
morphoMarketsData,
|
|
98
92
|
compoundV3MarketsData,
|
|
99
93
|
sparkMarketsData,
|
|
100
|
-
eulerV2MarketsData,
|
|
101
94
|
aaveV3MarketsData,
|
|
102
95
|
aaveV2MarketsData,
|
|
103
96
|
compoundV2MarketsData,
|
|
@@ -119,7 +112,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
119
112
|
morphoBlue: {},
|
|
120
113
|
compoundV3: {},
|
|
121
114
|
spark: {},
|
|
122
|
-
eulerV2: {},
|
|
123
115
|
maker: {},
|
|
124
116
|
aaveV2: {},
|
|
125
117
|
compoundV2: {},
|
|
@@ -175,10 +167,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
175
167
|
const marketData = await _getSparkMarketsData(client, network, market);
|
|
176
168
|
sparkMarketsData[market.value] = marketData;
|
|
177
169
|
}),
|
|
178
|
-
...eulerV2Markets.map(async (market) => {
|
|
179
|
-
const marketData = await _getEulerV2MarketsData(client, network, market);
|
|
180
|
-
eulerV2MarketsData[market.value] = marketData;
|
|
181
|
-
}),
|
|
182
170
|
...aaveV3Markets.map(async (market) => {
|
|
183
171
|
const marketData = await _getAaveV3MarketData(client, network, market);
|
|
184
172
|
aaveV3MarketsData[market.value] = marketData;
|
|
@@ -503,27 +491,6 @@ export async function getPortfolioData(provider: EthereumProvider, network: Netw
|
|
|
503
491
|
positions[address.toLowerCase() as EthAddress].spark[market.value] = { error: `Error fetching Spark account data for address ${address} on market ${market.value}`, data: null };
|
|
504
492
|
}
|
|
505
493
|
})).flat(),
|
|
506
|
-
...eulerV2Markets.map((market) => addresses.map((address) => {
|
|
507
|
-
const eulerV2SubAccounts = getEulerV2SubAccounts(address);
|
|
508
|
-
const eulerV2Addresses = [address, ...eulerV2SubAccounts];
|
|
509
|
-
return Promise.all(eulerV2Addresses.map(async (eulerAddress) => {
|
|
510
|
-
try {
|
|
511
|
-
const accData = await _getEulerV2AccountData(client, network, eulerAddress, eulerAddress, { selectedMarket: market, ...eulerV2MarketsData[market.value] });
|
|
512
|
-
if (new Dec(accData.suppliedUsd).gt(0) || new Dec(accData.borrowedUsd).gt(0)) {
|
|
513
|
-
if (!positions[address.toLowerCase() as EthAddress].eulerV2[market.value]) {
|
|
514
|
-
positions[address.toLowerCase() as EthAddress].eulerV2[market.value] = {};
|
|
515
|
-
}
|
|
516
|
-
positions[address.toLowerCase() as EthAddress].eulerV2[market.value]![eulerAddress.toLowerCase() as EthAddress] = { error: '', data: accData };
|
|
517
|
-
}
|
|
518
|
-
} catch (error) {
|
|
519
|
-
console.error(`Error fetching EulerV2 account data for address ${eulerAddress} on market ${market.value}:`, error);
|
|
520
|
-
if (!positions[address.toLowerCase() as EthAddress].eulerV2[market.value]) {
|
|
521
|
-
positions[address.toLowerCase() as EthAddress].eulerV2[market.value] = {};
|
|
522
|
-
}
|
|
523
|
-
positions[address.toLowerCase() as EthAddress].eulerV2[market.value]![eulerAddress.toLowerCase() as EthAddress] = { error: `Error fetching EulerV2 account data for address ${eulerAddress} on market ${market.value}`, data: null };
|
|
524
|
-
}
|
|
525
|
-
}));
|
|
526
|
-
}).flat()).flat(),
|
|
527
494
|
...addresses.map(async (address) => makerCdps[address.toLowerCase() as EthAddress]?.map(async (cdpInfo) => {
|
|
528
495
|
try {
|
|
529
496
|
const cdpData = await _getMakerCdpData(client, network, cdpInfo);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import Dec from 'decimal.js';
|
|
3
|
-
import { request as graphqlRequest } from 'graphql-request';
|
|
4
3
|
import { assetAmountInEth } from '@defisaver/tokens';
|
|
5
4
|
import * as morphoVaultsOptions from './options';
|
|
6
5
|
import { EthAddress, EthereumProvider, NetworkNumber } from '../../types/common';
|
|
6
|
+
import { LONGER_TIMEOUT } from '../../services/utils';
|
|
7
7
|
import { getViemProvider } from '../../services/viem';
|
|
8
8
|
import { getMorphoVaultContractViem } from '../../contracts';
|
|
9
9
|
import { MorphoVault, SavingsVaultData } from '../../types';
|
|
@@ -30,6 +30,22 @@ const vaultDataQuery = `
|
|
|
30
30
|
|
|
31
31
|
const MORPHO_BLUE_API = 'https://api.morpho.org/graphql';
|
|
32
32
|
|
|
33
|
+
const fetchVaultData = async (address: EthAddress, chainId: NetworkNumber) => {
|
|
34
|
+
const res = await fetch(MORPHO_BLUE_API, {
|
|
35
|
+
method: 'POST',
|
|
36
|
+
headers: { 'Content-Type': 'application/json' },
|
|
37
|
+
body: JSON.stringify({
|
|
38
|
+
query: vaultDataQuery,
|
|
39
|
+
variables: { address, chainId },
|
|
40
|
+
}),
|
|
41
|
+
signal: AbortSignal.timeout(LONGER_TIMEOUT),
|
|
42
|
+
});
|
|
43
|
+
if (!res.ok) throw new Error(`Morpho vault request failed: ${res.status}`);
|
|
44
|
+
const body = await res.json();
|
|
45
|
+
if (!body?.data) throw new Error('Morpho vault response missing data');
|
|
46
|
+
return body.data;
|
|
47
|
+
};
|
|
48
|
+
|
|
33
49
|
export const _getMorphoVaultData = async (provider: Client, network: NetworkNumber, morphoVault: MorphoVault, accounts: EthAddress[]): Promise<SavingsVaultData> => {
|
|
34
50
|
const morphoVaultContract = getMorphoVaultContractViem(provider, morphoVault.address);
|
|
35
51
|
|
|
@@ -40,7 +56,7 @@ export const _getMorphoVaultData = async (provider: Client, network: NetworkNumb
|
|
|
40
56
|
morphoVaultContract.read.totalSupply(),
|
|
41
57
|
morphoVaultContract.read.decimals(),
|
|
42
58
|
morphoVaultContract.read.DECIMALS_OFFSET(),
|
|
43
|
-
|
|
59
|
+
fetchVaultData(morphoVault.address, network),
|
|
44
60
|
...accounts.map(async (account) => {
|
|
45
61
|
const share = await morphoVaultContract.read.balanceOf([account]);
|
|
46
62
|
shares[account] = share;
|
package/src/staking/staking.ts
CHANGED
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
import { BLOCKS_IN_A_YEAR } from '../constants';
|
|
9
9
|
import { DEFAULT_TIMEOUT } from '../services/utils';
|
|
10
10
|
import { EligibilityMapping } from './eligibility';
|
|
11
|
-
import { EulerV2UsedAsset } from '../types';
|
|
12
11
|
|
|
13
12
|
const getSsrApy = async () => {
|
|
14
13
|
try {
|
|
@@ -143,7 +142,7 @@ export const calculateNetApy = ({
|
|
|
143
142
|
}: { usedAssets: MMUsedAssets, assetsData: MMAssetsData, optionalData?: any }) => {
|
|
144
143
|
const sumValues = Object.values(usedAssets).reduce((_acc, usedAsset) => {
|
|
145
144
|
const acc = { ..._acc };
|
|
146
|
-
const assetData = assetsData[usedAsset.symbol]
|
|
145
|
+
const assetData = assetsData[usedAsset.symbol];
|
|
147
146
|
|
|
148
147
|
if (usedAsset.isSupplied) {
|
|
149
148
|
const amount = usedAsset.suppliedUsd;
|
package/src/types/index.ts
CHANGED
package/src/types/morphoBlue.ts
CHANGED
|
@@ -79,6 +79,7 @@ export enum MorphoBlueVersions {
|
|
|
79
79
|
MorphoBlueSyrupUSDCRLUSD_915 = 'morphobluesyrupusdcrlusd_915', // syrupUSDC/RLUSD 0.915
|
|
80
80
|
MorphoBlueWeEthUSDC_770 = 'morphoblueweethusdc_770', // weETH/USDC 0.77
|
|
81
81
|
MorphoBlueWeEthUSDC_860 = 'morphoblueweethusdc_860', // weETH/USDC 0.86
|
|
82
|
+
MorphoBlueWeEthUSDC_860_85252bb8 = 'morphoblueweethusdc_860_85252bb8', // weETH/USDC 0.86
|
|
82
83
|
MorphoBlueEthUSDC_860_94b823e6 = 'morphoblueethusdc_860_94b823e6', // ETH/USDC 0.86
|
|
83
84
|
MorphoBlueUSD3USDC_915 = 'morphoblueusd3usdc_915', // USD3/USDC 0.915
|
|
84
85
|
MorphoBlueStUSDSUSDC_860 = 'morphobluestusdsusdc_860', // stUSDS/USDC 0.86
|
|
@@ -86,6 +87,7 @@ export enum MorphoBlueVersions {
|
|
|
86
87
|
MorphoBlueWBTCEth_915 = 'morphobluewbtceth_915', // WBTC/ETH 0.915
|
|
87
88
|
MorphoBlueCbBTCEth_915_12dbf493 = 'morphobluecbbtceth_915_12dbf493', // cbBTC/ETH 0.915
|
|
88
89
|
MorphoBlueWeEthUSDT_860 = 'morphoblueweethusdt_860', // weETH/USDT 0.86
|
|
90
|
+
MorphoBlueWeEthUSDT_860_a6a4c1f1 = 'morphoblueweethusdt_860_a6a4c1f1', // weETH/USDT 0.86
|
|
89
91
|
MorphoBlueSyrupUSDTUSDT_915 = 'morphobluesyrupusdtusdt_915', // syrupUSDT/USDT 0.915
|
|
90
92
|
MorphoBlueCbBTCPYUSD_860 = 'morphobluecbbtcpyusd_860', // cbBTC/PYUSD 0.86
|
|
91
93
|
MorphoBlueWeEthUSDT_770 = 'morphoblueweethusdt_770', // weETH/USDT 0.77
|
package/src/types/portfolio.ts
CHANGED
|
@@ -3,7 +3,6 @@ import { AaveV4AccountData, AaveV4SpokesType } from './aaveV4';
|
|
|
3
3
|
import { EthAddress } from './common';
|
|
4
4
|
import { CompoundV2PositionData, CompoundV3PositionData, CompoundVersions } from './compound';
|
|
5
5
|
import { CrvUSDUserData, CrvUSDVersions } from './curveUsd';
|
|
6
|
-
import { EulerV2PositionData, EulerV2Versions } from './euler';
|
|
7
6
|
import { FluidVaultData } from './fluid';
|
|
8
7
|
import { LiquityTroveInfo } from './liquity';
|
|
9
8
|
import { LiquityV2TroveData, LiquityV2Versions } from './liquityV2';
|
|
@@ -30,9 +29,6 @@ export interface PortfolioPositionsDataForAddress {
|
|
|
30
29
|
spark: {
|
|
31
30
|
[key in SparkVersions]?: PortfolioProtocolData<SparkPositionData>;
|
|
32
31
|
};
|
|
33
|
-
eulerV2: {
|
|
34
|
-
[key in EulerV2Versions]?: Record<EthAddress, PortfolioProtocolData<EulerV2PositionData>>;
|
|
35
|
-
};
|
|
36
32
|
maker: {
|
|
37
33
|
[key: string]: PortfolioProtocolData<CdpData>;
|
|
38
34
|
};
|