@defisaver/positions-sdk 2.1.169-portfolio-api-dev → 2.1.169
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/aaveV3/index.d.ts +12 -2
- package/cjs/aaveV3/sgho.d.ts +16 -2
- package/cjs/aaveV4/lend.d.ts +43 -2
- package/cjs/claiming/aaveV3.d.ts +2 -2
- package/cjs/claiming/ethena.d.ts +1 -2
- package/cjs/claiming/king.d.ts +1 -2
- package/cjs/claiming/spark.d.ts +2 -2
- package/cjs/fluid/index.d.ts +49 -5
- package/cjs/liquity/index.d.ts +12 -2
- package/cjs/liquityV2/index.d.ts +23 -8
- package/cjs/liquityV2/index.js +19 -37
- package/cjs/markets/morphoBlue/index.d.ts +2 -0
- package/cjs/markets/morphoBlue/index.js +18 -1
- package/cjs/portfolio/index.d.ts +8 -16
- package/cjs/portfolio/index.js +520 -458
- package/cjs/savings/index.d.ts +2 -8
- package/cjs/savings/index.js +4 -33
- package/cjs/types/aave.d.ts +2 -98
- package/cjs/types/aaveV4.d.ts +0 -44
- package/cjs/types/compound.d.ts +2 -26
- package/cjs/types/curveUsd.d.ts +1 -9
- package/cjs/types/fluid.d.ts +0 -13
- package/cjs/types/index.d.ts +0 -1
- package/cjs/types/index.js +0 -1
- package/cjs/types/liquity.d.ts +0 -12
- package/cjs/types/liquityV2.d.ts +0 -24
- package/cjs/types/llamaLend.d.ts +1 -12
- package/cjs/types/morphoBlue.d.ts +1 -2
- package/cjs/types/morphoBlue.js +1 -0
- package/cjs/types/portfolio.d.ts +5 -125
- package/cjs/types/savings/index.d.ts +1 -9
- package/cjs/types/spark.d.ts +1 -21
- package/cjs/umbrella/index.d.ts +3 -2
- package/esm/aaveV3/index.d.ts +12 -2
- package/esm/aaveV3/sgho.d.ts +16 -2
- package/esm/aaveV4/lend.d.ts +43 -2
- package/esm/claiming/aaveV3.d.ts +2 -2
- package/esm/claiming/aaveV3.js +1 -1
- package/esm/claiming/ethena.d.ts +1 -2
- package/esm/claiming/king.d.ts +1 -2
- package/esm/claiming/spark.d.ts +2 -2
- package/esm/claiming/spark.js +1 -1
- package/esm/fluid/index.d.ts +49 -5
- package/esm/liquity/index.d.ts +12 -2
- package/esm/liquityV2/index.d.ts +23 -8
- package/esm/liquityV2/index.js +18 -35
- package/esm/markets/morphoBlue/index.d.ts +2 -0
- package/esm/markets/morphoBlue/index.js +16 -0
- package/esm/portfolio/index.d.ts +8 -16
- package/esm/portfolio/index.js +522 -458
- package/esm/savings/index.d.ts +2 -8
- package/esm/savings/index.js +3 -31
- package/esm/types/aave.d.ts +2 -98
- package/esm/types/aaveV4.d.ts +0 -44
- package/esm/types/compound.d.ts +2 -26
- package/esm/types/curveUsd.d.ts +1 -9
- package/esm/types/fluid.d.ts +0 -13
- package/esm/types/index.d.ts +0 -1
- package/esm/types/index.js +0 -1
- package/esm/types/liquity.d.ts +0 -12
- package/esm/types/liquityV2.d.ts +0 -24
- package/esm/types/llamaLend.d.ts +1 -12
- package/esm/types/morphoBlue.d.ts +1 -2
- package/esm/types/morphoBlue.js +1 -0
- package/esm/types/portfolio.d.ts +5 -125
- package/esm/types/savings/index.d.ts +1 -9
- package/esm/types/spark.d.ts +1 -21
- package/esm/umbrella/index.d.ts +3 -2
- package/package.json +2 -2
- package/src/aaveV3/index.ts +1 -2
- package/src/aaveV3/sgho.ts +17 -2
- package/src/aaveV4/lend.ts +48 -2
- package/src/claiming/aaveV3.ts +2 -4
- package/src/claiming/ethena.ts +5 -5
- package/src/claiming/king.ts +3 -3
- package/src/claiming/spark.ts +4 -6
- package/src/fluid/index.ts +3 -4
- package/src/liquity/index.ts +2 -2
- package/src/liquityV2/index.ts +22 -48
- package/src/markets/morphoBlue/index.ts +16 -0
- package/src/portfolio/index.ts +331 -306
- package/src/savings/index.ts +4 -41
- package/src/types/aave.ts +1 -104
- package/src/types/aaveV4.ts +0 -49
- package/src/types/compound.ts +2 -38
- package/src/types/curveUsd.ts +1 -17
- package/src/types/fluid.ts +0 -14
- package/src/types/index.ts +0 -1
- package/src/types/liquity.ts +1 -13
- package/src/types/liquityV2.ts +1 -26
- package/src/types/llamaLend.ts +1 -19
- package/src/types/morphoBlue.ts +1 -3
- package/src/types/portfolio.ts +5 -151
- package/src/types/savings/index.ts +1 -12
- package/src/types/spark.ts +1 -25
- package/src/umbrella/index.ts +1 -2
- package/cjs/portfolio/lendingProtocols.d.ts +0 -184
- package/cjs/portfolio/lendingProtocols.js +0 -196
- package/esm/portfolio/lendingProtocols.d.ts +0 -184
- package/esm/portfolio/lendingProtocols.js +0 -189
- package/src/portfolio/lendingProtocols.ts +0 -281
package/cjs/aaveV3/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
|
-
import { AaveMarketInfo, AaveV3MarketData, AaveV3PositionData, AaveV3UsedAssets, EModeCategoryDataMapping
|
|
2
|
+
import { AaveMarketInfo, AaveV3MarketData, AaveV3PositionData, AaveV3UsedAssets, EModeCategoryDataMapping } from '../types';
|
|
3
3
|
import { Blockish, EthAddress, EthereumProvider, NetworkNumber, PositionBalances } from '../types/common';
|
|
4
4
|
import { getMeritCampaigns } from './merit';
|
|
5
5
|
import { getMerkleCampaigns } from './merkl';
|
|
@@ -76,7 +76,17 @@ export declare const getAaveV3AccountData: (provider: EthereumProvider, network:
|
|
|
76
76
|
export declare const getAaveV3FullPositionData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, market: AaveMarketInfo) => Promise<AaveV3PositionData>;
|
|
77
77
|
export declare const REWARDABLE_ASSETS: readonly ["0x028171bCA77440897B824Ca71D1c56caC55b68A3", "0x6C3c78838c761c6Ac7bE9F59fe808ea2A6E4379d", "0xD37EE7e4f452C6638c96536e68090De8cBcdb583", "0x279AF5b99540c1A3A7E3CDd326e19659401eF99e", "0xBcca60bB61934080951369a648Fb03DF4F96263C", "0x619beb58998eD2278e08620f97007e1116D5D25b", "0x3Ed3B47Dd13EC9a98b44e6204A523E766B225811", "0x531842cEbbdD378f8ee36D171d6cC9C4fcf475Ec", "0x9ff58f4fFB29fA2266Ab25e75e2A8b3503311656", "0x9c39809Dec7F95F5e0713634a4D0701329B3b4d2", "0x030bA81f1c18d280636F32af80b9AAd02Cf0854e", "0xF63B34710400CAd3e044cFfDcAb00a0f32E33eCf", "0xa06bC25B5805d5F8d82847D191Cb4Af5A3e873E0", "0x0b8f12b1788BFdE65Aa1ca52E3e9F3Ba401be16D", "0x6C5024Cd4F8A59110119C56f8933403A539555EB", "0xdC6a3Ab17299D9C2A412B0e0a4C1f55446AE0817", "0x5165d24277cD063F5ac44Efd447B27025e888f37", "0x7EbD09022Be45AD993BAA1CEc61166Fcc8644d97", "0xF256CC7847E919FAc9B808cC216cAc87CCF2f47a", "0xfAFEDF95E21184E3d880bd56D4806c4b8d31c69A", "0xB9D7CB55f463405CDfBe4E90a6D2Df01C2B92BF1", "0x5BdB050A92CADcCfCDcCCBFC17204a1C9cC0Ab73", "0xc713e5E149D5D0715DcD1c156a020976e7E56B88", "0xba728eAd5e496BE00DCF66F650b6d7758eCB50f8", "0x101cc05f4A51C0319f570d5E146a8C625198e636", "0x01C0eb1f8c6F1C1bF74ae028697ce7AA2a8b0E92", "0xc9BC48c72154ef3e5425641a3c747242112a46AF", "0xB5385132EE8321977FfF44b60cDE9fE9AB0B4e6b", "0x272F97b7a56a387aE942350bBC7Df5700f8a4576", "0x13210D4Fe0d5402bd7Ecbc4B5bC5cFcA3b71adB0", "0x2e8f4bdbe3d47d7d7de490437aea9915d930f1a3", "0xfdb93b3b10936cf81fa59a02a7523b6e2149b2b7", "0xA361718326c15715591c299427c62086F69923D9", "0xbA429f7011c9fa04cDd46a2Da24dc0FF0aC6099c", "0xd4937682df3C8aEF4FE912A96A74121C0829E664", "0xfE8F19B17fFeF0fDbfe2671F248903055AFAA8Ca", "0x683923dB55Fead99A79Fa01A27EeC3cB19679cC3", "0xC2e10006AccAb7B45D9184FcF5b7EC7763f5BaAe", "0x8dAE6Cb04688C62d939ed9B68d32Bc62e49970b1", "0x00ad8eBF64F141f1C81e9f8f792d3d1631c6c684", "0x6F634c6135D2EBD550000ac92F494F9CB8183dAe", "0x4dDff5885a67E4EffeC55875a3977D7E60F82ae0"];
|
|
78
78
|
export declare const fetchYearlyMeritApyForStakingGho: () => Promise<string>;
|
|
79
|
-
export declare const getStakeAaveData: (provider: Client, network: NetworkNumber, address: EthAddress) => Promise<
|
|
79
|
+
export declare const getStakeAaveData: (provider: Client, network: NetworkNumber, address: EthAddress) => Promise<{
|
|
80
|
+
activatedCooldown: string;
|
|
81
|
+
activatedCooldownAmount: string;
|
|
82
|
+
stkAaveRewardsBalance: string;
|
|
83
|
+
aaveRewardsBalance: string;
|
|
84
|
+
stkAaveBalance: string;
|
|
85
|
+
stkGhoBalance: string;
|
|
86
|
+
ghoMeritApy: string;
|
|
87
|
+
stkAaveApy: string;
|
|
88
|
+
sgho: import("./sgho").SghoData;
|
|
89
|
+
}>;
|
|
80
90
|
export { getMeritCampaigns, getMerkleCampaigns, };
|
|
81
91
|
export { getSghoData } from './sgho';
|
|
82
92
|
export type { SghoData, SghoUserData } from './sgho';
|
package/cjs/aaveV3/sgho.d.ts
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { EthAddress, NetworkNumber } from '../types/common';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export interface SghoUserData {
|
|
3
|
+
shares: string;
|
|
4
|
+
balance: string;
|
|
5
|
+
maxDeposit: string;
|
|
6
|
+
maxWithdraw: string;
|
|
7
|
+
underlyingBalance: string;
|
|
8
|
+
}
|
|
9
|
+
export interface SghoData {
|
|
10
|
+
totalAssets: string;
|
|
11
|
+
totalSupply: string;
|
|
12
|
+
supplyCap: string;
|
|
13
|
+
/** Target savings rate as an APY percent (e.g. "4.25" for 4.25%). */
|
|
14
|
+
targetRate: string;
|
|
15
|
+
paused: boolean;
|
|
16
|
+
user: SghoUserData;
|
|
17
|
+
}
|
|
4
18
|
export declare const getSghoData: (network: NetworkNumber, address?: EthAddress) => Promise<SghoData>;
|
package/cjs/aaveV4/lend.d.ts
CHANGED
|
@@ -1,12 +1,53 @@
|
|
|
1
1
|
import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export interface AaveV4TokenizationSpokeData {
|
|
3
|
+
underlyingAsset: EthAddress;
|
|
4
|
+
assetId: string;
|
|
5
|
+
decimals: number;
|
|
6
|
+
spoke: EthAddress;
|
|
7
|
+
spokeActive: boolean;
|
|
8
|
+
spokeHalted: boolean;
|
|
9
|
+
spokeDepositCap: string;
|
|
10
|
+
spokeTotalAssets: string;
|
|
11
|
+
spokeTotalShares: string;
|
|
12
|
+
hub: EthAddress;
|
|
13
|
+
hubLiquidity: string;
|
|
14
|
+
hubDrawnRate: string;
|
|
15
|
+
convertToShares: string;
|
|
16
|
+
convertToAssets: string;
|
|
17
|
+
user: EthAddress;
|
|
18
|
+
userSuppliedAssets: string;
|
|
19
|
+
userSuppliedShares: string;
|
|
20
|
+
}
|
|
4
21
|
export declare const AAVE_V4_TOKENIZED_SPOKES: Record<string, EthAddress>;
|
|
5
22
|
export declare const AAVE_V4_TOKENIZED_SPOKE_ADDRESSES: Partial<Record<NetworkNumber, EthAddress[]>>;
|
|
6
23
|
export type AaveV4TokenizedHubKey = 'CORE' | 'PLUS' | 'PRIME' | 'PAXOS';
|
|
7
24
|
export declare const aaveV4GetTokenizedHubKey: (hubNameOrKey?: string | null) => AaveV4TokenizedHubKey | null;
|
|
8
25
|
export declare const aaveV4GetTokenizedVaultKey: (symbol: string, hubNameOrKey?: string | null) => string | null;
|
|
9
26
|
export declare const aaveV4GetTokenizedVaultAddress: (network: NetworkNumber, symbol: string, hubNameOrKey?: string | null) => EthAddress | undefined;
|
|
27
|
+
/** Parsed tokenization spoke data with human-readable supplied amounts for display */
|
|
28
|
+
export interface AaveV4TokenizationSpokeDataParsed {
|
|
29
|
+
vaultAddress: EthAddress;
|
|
30
|
+
key: string | null;
|
|
31
|
+
symbol: string;
|
|
32
|
+
hubKey: string;
|
|
33
|
+
spokeActive: boolean;
|
|
34
|
+
spokeHalted: boolean;
|
|
35
|
+
/** Deposit cap in asset units (wei string) */
|
|
36
|
+
spokeDepositCap: string;
|
|
37
|
+
/** Total assets currently in spoke in asset units (wei string) */
|
|
38
|
+
spokeTotalAssets: string;
|
|
39
|
+
/** Available hub liquidity in asset units (wei string) */
|
|
40
|
+
hubLiquidity: string;
|
|
41
|
+
/** The conversion rate from assets to shares expressed in asset units. */
|
|
42
|
+
convertToShares: string;
|
|
43
|
+
userSuppliedAssetsEth: string;
|
|
44
|
+
userSuppliedSharesEth: string;
|
|
45
|
+
userSuppliedAssets: string;
|
|
46
|
+
userSuppliedShares: string;
|
|
47
|
+
underlyingAsset: EthAddress;
|
|
48
|
+
spoke: EthAddress;
|
|
49
|
+
decimals: number;
|
|
50
|
+
}
|
|
10
51
|
/**
|
|
11
52
|
* Fetches tokenization vault data for the given user via getTokenizationSpokesData.
|
|
12
53
|
* Returns parsed data including userSuppliedAssets in human-readable form for each vault.
|
package/cjs/claiming/aaveV3.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import { EthAddress, NetworkNumber } from '../types';
|
|
3
|
-
import {
|
|
4
|
-
export declare function getUnclaimedRewardsForAllMarkets(provider: Client, network: NetworkNumber, walletAddress: EthAddress, marketAddress: EthAddress): Promise<
|
|
3
|
+
import { ClaimableToken, MerklRewardsClaimableToken } from '../types/claiming';
|
|
4
|
+
export declare function getUnclaimedRewardsForAllMarkets(provider: Client, network: NetworkNumber, walletAddress: EthAddress, marketAddress: EthAddress): Promise<ClaimableToken[]>;
|
|
5
5
|
export declare function getMerklUnclaimedRewards(account: EthAddress, network: NetworkNumber): Promise<MerklRewardsClaimableToken[]>;
|
|
6
6
|
export declare function getMeritUnclaimedRewards(account: EthAddress, network: NetworkNumber): Promise<ClaimableToken[]>;
|
package/cjs/claiming/ethena.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { EthAddress } from '../types/common';
|
|
2
|
-
import { EthenaAirdropClaimableToken } from '../types/claiming';
|
|
3
2
|
export declare const fetchEthenaAirdropReward: (address: EthAddress) => Promise<any>;
|
|
4
|
-
export declare const fetchEthenaAirdropRewards: (walletAddresses: EthAddress[]) => Promise<Record<string,
|
|
3
|
+
export declare const fetchEthenaAirdropRewards: (walletAddresses: EthAddress[]) => Promise<Record<string, any[]>>;
|
package/cjs/claiming/king.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import { EthAddress, NetworkNumber } from '../types/common';
|
|
3
|
-
import { KingRewardsClaimableToken } from '../types/claiming';
|
|
4
3
|
export declare const fetchKingRewards: (walletAddress: EthAddress) => Promise<any>;
|
|
5
|
-
export declare const getKingRewards: (provider: Client, network: NetworkNumber, walletAddresses: EthAddress[]) => Promise<Record<string,
|
|
4
|
+
export declare const getKingRewards: (provider: Client, network: NetworkNumber, walletAddresses: EthAddress[]) => Promise<Record<string, any[]>>;
|
package/cjs/claiming/spark.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import { EthAddress, NetworkNumber } from '../types/common';
|
|
3
|
-
import {
|
|
3
|
+
import { SparkRewardsClaimableToken } from '../types/claiming';
|
|
4
4
|
export declare const fetchSpkAirdropRewards: (walletAddress: EthAddress) => Promise<any>;
|
|
5
|
-
export declare const fetchSparkAirdropRewards: (provider: Client, network: NetworkNumber, walletAddresses: EthAddress[]) => Promise<Record<string,
|
|
5
|
+
export declare const fetchSparkAirdropRewards: (provider: Client, network: NetworkNumber, walletAddresses: EthAddress[]) => Promise<Record<string, any[]>>;
|
|
6
6
|
export declare const fetchSparkRewards: (provider: Client, network: NetworkNumber, walletAddress: EthAddress, marketAddress: EthAddress) => Promise<SparkRewardsClaimableToken[]>;
|
package/cjs/fluid/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client, PublicClient } from 'viem';
|
|
2
2
|
import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
3
|
-
import { FluidAssetsData,
|
|
3
|
+
import { FluidAssetsData, FluidMarketData, FluidMarketInfo, FluidUsedAssets, FluidVaultData, InnerFluidMarketData } from '../types';
|
|
4
4
|
export { FluidMerklOpportunityType, buildFluidMerklRewardMap, getFluidMerklCampaigns, attachFluidMerklIncentives, } from './merkl';
|
|
5
5
|
export declare const EMPTY_USED_ASSET: {
|
|
6
6
|
isSupplied: boolean;
|
|
@@ -71,10 +71,54 @@ export declare const getFluidTokenData: (provider: EthereumProvider, network: Ne
|
|
|
71
71
|
depositRate: string;
|
|
72
72
|
withdrawRate: string;
|
|
73
73
|
}>;
|
|
74
|
-
export declare const _getFluidDepositData: (provider: Client, network: NetworkNumber, token: string, address: EthAddress) => Promise<
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
export declare const _getFluidDepositData: (provider: Client, network: NetworkNumber, token: string, address: EthAddress) => Promise<{
|
|
75
|
+
fTokenAddress: string | undefined;
|
|
76
|
+
fTokenSymbol: string;
|
|
77
|
+
decimals: string;
|
|
78
|
+
totalDeposited: string;
|
|
79
|
+
withdrawable: string;
|
|
80
|
+
apy: string;
|
|
81
|
+
depositRate: string;
|
|
82
|
+
withdrawRate: string;
|
|
83
|
+
deposited: string;
|
|
84
|
+
depositedShares: string;
|
|
85
|
+
}>;
|
|
86
|
+
export declare const getFluidDepositData: (provider: EthereumProvider, network: NetworkNumber, token: string, address: EthAddress) => Promise<{
|
|
87
|
+
fTokenAddress: string | undefined;
|
|
88
|
+
fTokenSymbol: string;
|
|
89
|
+
decimals: string;
|
|
90
|
+
totalDeposited: string;
|
|
91
|
+
withdrawable: string;
|
|
92
|
+
apy: string;
|
|
93
|
+
depositRate: string;
|
|
94
|
+
withdrawRate: string;
|
|
95
|
+
deposited: string;
|
|
96
|
+
depositedShares: string;
|
|
97
|
+
}>;
|
|
98
|
+
export declare const _getAllUserEarnPositionsWithFTokens: (provider: Client, network: NetworkNumber, user: EthAddress) => Promise<{
|
|
99
|
+
fTokenAddress: string | undefined;
|
|
100
|
+
fTokenSymbol: string;
|
|
101
|
+
decimals: string;
|
|
102
|
+
totalDeposited: string;
|
|
103
|
+
withdrawable: string;
|
|
104
|
+
apy: string;
|
|
105
|
+
depositRate: string;
|
|
106
|
+
withdrawRate: string;
|
|
107
|
+
deposited: string;
|
|
108
|
+
depositedShares: string;
|
|
109
|
+
}[]>;
|
|
110
|
+
export declare const getAllUserEarnPositionsWithFTokens: (provider: EthereumProvider, network: NetworkNumber, user: EthAddress) => Promise<{
|
|
111
|
+
fTokenAddress: string | undefined;
|
|
112
|
+
fTokenSymbol: string;
|
|
113
|
+
decimals: string;
|
|
114
|
+
totalDeposited: string;
|
|
115
|
+
withdrawable: string;
|
|
116
|
+
apy: string;
|
|
117
|
+
depositRate: string;
|
|
118
|
+
withdrawRate: string;
|
|
119
|
+
deposited: string;
|
|
120
|
+
depositedShares: string;
|
|
121
|
+
}[]>;
|
|
78
122
|
export declare const _getUserPositions: (provider: PublicClient, network: NetworkNumber, user: EthAddress) => Promise<{
|
|
79
123
|
marketData: FluidMarketData | undefined;
|
|
80
124
|
userData: {
|
package/cjs/liquity/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import { Blockish, EthAddress, EthereumProvider, NetworkNumber, PositionBalances } from '../types/common';
|
|
3
|
-
import {
|
|
3
|
+
import { LiquityTroveInfo } from '../types';
|
|
4
4
|
export declare const LIQUITY_NORMAL_MODE_RATIO = 110;
|
|
5
5
|
export declare const LIQUITY_RECOVERY_MODE_RATIO = 150;
|
|
6
6
|
export declare const _getLiquityAccountBalances: (provider: Client, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress) => Promise<PositionBalances>;
|
|
@@ -8,4 +8,14 @@ export declare const getLiquityAccountBalances: (provider: EthereumProvider, net
|
|
|
8
8
|
export declare const getDebtInFront: (provider: EthereumProvider, address: EthAddress) => Promise<string>;
|
|
9
9
|
export declare const _getLiquityTroveInfo: (provider: Client, network: NetworkNumber, address: EthAddress) => Promise<LiquityTroveInfo>;
|
|
10
10
|
export declare const getLiquityTroveInfo: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress) => Promise<LiquityTroveInfo>;
|
|
11
|
-
export declare const getLiquityStakingData: (provider: Client, network: NetworkNumber, address: EthAddress) => Promise<
|
|
11
|
+
export declare const getLiquityStakingData: (provider: Client, network: NetworkNumber, address: EthAddress) => Promise<{
|
|
12
|
+
totalLUSDDeposited: string;
|
|
13
|
+
totalLQTYStaked: string;
|
|
14
|
+
stakedLQTY: string;
|
|
15
|
+
stakedLUSDBalance: string;
|
|
16
|
+
rewardETH: string;
|
|
17
|
+
rewardLUSD: string;
|
|
18
|
+
stabilityRewardETH: string;
|
|
19
|
+
stabilityRewardLQTY: string;
|
|
20
|
+
showStakingBalances: boolean;
|
|
21
|
+
}>;
|
package/cjs/liquityV2/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client, PublicClient } from 'viem';
|
|
2
2
|
import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
3
|
-
import { LiquityV2AssetsData, LiquityV2MarketData, LiquityV2MarketInfo,
|
|
3
|
+
import { LiquityV2AssetsData, LiquityV2MarketData, LiquityV2MarketInfo, LiquityV2TroveData, LiquityV2Versions } from '../types';
|
|
4
4
|
export type SPYieldGainParameters = {
|
|
5
5
|
P: string;
|
|
6
6
|
aggWeightedDebtSum: string;
|
|
@@ -19,11 +19,6 @@ export declare const nftContractCreationBlockMapping: {
|
|
|
19
19
|
liquityv2wstethlegacy: number;
|
|
20
20
|
liquityv2rethlegacy: number;
|
|
21
21
|
};
|
|
22
|
-
/**
|
|
23
|
-
* The trove ids of several accounts in one market: the market's NFT transfers are read once for all of them, rather
|
|
24
|
-
* than once per account as _getLiquityV2UserTroveIds does.
|
|
25
|
-
*/
|
|
26
|
-
export declare const _getLiquityV2UsersTroveIds: (provider: PublicClient, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo, troveNFTAddress: EthAddress, limitBlocksForEventFetching: boolean, accounts: EthAddress[]) => Promise<Record<EthAddress, string[]>>;
|
|
27
22
|
export declare const _getLiquityV2UserTroveIds: (provider: PublicClient, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo, troveNFTAddress: EthAddress, limitBlocksForEventFetching: boolean, account: EthAddress) => Promise<{
|
|
28
23
|
troves: {
|
|
29
24
|
troveId: string;
|
|
@@ -57,5 +52,25 @@ export type sBoldYieldParameters = {
|
|
|
57
52
|
wsETH: string;
|
|
58
53
|
rETH: string;
|
|
59
54
|
};
|
|
60
|
-
export declare const getLiquityV2Staking: (provider: Client, network: NetworkNumber, market: LiquityV2Versions, user: EthAddress) => Promise<
|
|
61
|
-
|
|
55
|
+
export declare const getLiquityV2Staking: (provider: Client, network: NetworkNumber, market: LiquityV2Versions, user: EthAddress) => Promise<{
|
|
56
|
+
totalBOLDDeposited: string;
|
|
57
|
+
stakedBOLDBalance: string;
|
|
58
|
+
stabilityRewardColl: string;
|
|
59
|
+
stabilityRewardYield: string;
|
|
60
|
+
showStakingBalances: boolean;
|
|
61
|
+
debtTokenBalance: string;
|
|
62
|
+
stabilityPoolApy: string;
|
|
63
|
+
}>;
|
|
64
|
+
export declare const getLiquitySAndYBold: (provider: Client, network: NetworkNumber, markets: any, user: EthAddress) => Promise<{
|
|
65
|
+
spApy: string;
|
|
66
|
+
yBoldApy: string;
|
|
67
|
+
totalBoldDepositedSBold: string;
|
|
68
|
+
boldRateSBold: string;
|
|
69
|
+
maxWithdrawSBold: string;
|
|
70
|
+
totalBoldDepositedYBold: string;
|
|
71
|
+
boldRateYBold: string;
|
|
72
|
+
maxWithdrawYBold: string;
|
|
73
|
+
sBoldBalance: string;
|
|
74
|
+
yBoldBalance: string;
|
|
75
|
+
stYBoldBalance: string;
|
|
76
|
+
}>;
|
package/cjs/liquityV2/index.js
CHANGED
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.getLiquitySAndYBold = exports.getLiquityV2Staking = exports.getLiquityV2ClaimableCollateral = exports.getLiquityV2TroveData = exports._getLiquityV2TroveData = exports.getDebtInFrontForInterestRateLiquityV2 = exports.getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = exports.calculateDebtInFrontLiquityV2 = exports.getLiquityV2UserTroveIds = exports._getLiquityV2UserTroveIds = exports.
|
|
15
|
+
exports.getLiquitySAndYBold = exports.getLiquityV2Staking = exports.getLiquityV2ClaimableCollateral = exports.getLiquityV2TroveData = exports._getLiquityV2TroveData = exports.getDebtInFrontForInterestRateLiquityV2 = exports.getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = exports.calculateDebtInFrontLiquityV2 = exports.getLiquityV2UserTroveIds = exports._getLiquityV2UserTroveIds = exports.nftContractCreationBlockMapping = exports.getLiquityV2MarketData = exports._getLiquityV2MarketData = void 0;
|
|
16
16
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
17
17
|
const tokens_1 = require("@defisaver/tokens");
|
|
18
18
|
const contracts_1 = require("../contracts");
|
|
@@ -129,54 +129,36 @@ exports.nftContractCreationBlockMapping = {
|
|
|
129
129
|
[types_1.LiquityV2Versions.LiquityV2WstEthLegacy]: 21686238,
|
|
130
130
|
[types_1.LiquityV2Versions.LiquityV2REthLegacy]: 21686257,
|
|
131
131
|
};
|
|
132
|
-
|
|
133
|
-
const getTroveTransfers = (provider, network, troveNFTAddress, limitBlocksForEventFetching, market) => __awaiter(void 0, void 0, void 0, function* () {
|
|
132
|
+
const getTransferredTroves = (provider, network, troveNFTAddress, limitBlocksForEventFetching, market, account) => __awaiter(void 0, void 0, void 0, function* () {
|
|
134
133
|
const nftContract = (0, contracts_1.createViemContractFromConfigFunc)('LiquityV2TroveNFT', troveNFTAddress)(provider, network);
|
|
135
134
|
const nftContractCreationBlock = exports.nftContractCreationBlockMapping[market];
|
|
136
135
|
const currentBlock = +(yield provider.getBlockNumber()).toString();
|
|
137
136
|
const _events = yield nftContract.getEvents.Transfer({}, { fromBlock: limitBlocksForEventFetching ? BigInt(currentBlock - 1000) : BigInt(nftContractCreationBlock) });
|
|
138
|
-
|
|
137
|
+
const events = _events.map((event) => ({
|
|
139
138
|
from: event.args.from, to: event.args.to, tokenId: event.args.tokenId.toString(), blockNumber: +(event.blockNumber.toString()),
|
|
140
139
|
}));
|
|
140
|
+
const userTransferredTroves = events.filter((event) => (0, utils_1.compareAddresses)(event.to, account));
|
|
141
|
+
// check if the last know transfer address is the user
|
|
142
|
+
userTransferredTroves.forEach((event, index) => {
|
|
143
|
+
const otherTransfers = events.filter((e) => event.blockNumber < e.blockNumber && e.tokenId === event.tokenId);
|
|
144
|
+
// @ts-ignore
|
|
145
|
+
userTransferredTroves[index].invalid = !!otherTransfers.length;
|
|
146
|
+
});
|
|
147
|
+
// @ts-ignore
|
|
148
|
+
return userTransferredTroves.filter((event) => !event.invalid).map((event) => ({ troveId: event.tokenId }));
|
|
141
149
|
});
|
|
142
|
-
/** The troves transferred to an account that it still holds: no later transfer of the same trove. */
|
|
143
|
-
const getAccountTransferredTroves = (events, account) => events
|
|
144
|
-
.filter((event) => (0, utils_1.compareAddresses)(event.to, account))
|
|
145
|
-
.filter((event) => !events.some((e) => event.blockNumber < e.blockNumber && e.tokenId === event.tokenId))
|
|
146
|
-
.map((event) => ({ troveId: event.tokenId }));
|
|
147
|
-
const getTransferredTroves = (provider, network, troveNFTAddress, limitBlocksForEventFetching, market, account) => __awaiter(void 0, void 0, void 0, function* () {
|
|
148
|
-
return (getAccountTransferredTroves(yield getTroveTransfers(provider, network, troveNFTAddress, limitBlocksForEventFetching, market), account));
|
|
149
|
-
});
|
|
150
|
-
/** The troves an account opened and still owns, then the ones transferred to it, each once. */
|
|
151
|
-
const mergeTroveIds = (userTroves, userTransferredTroves) => {
|
|
152
|
-
const troves = [...userTroves.map(({ troveId }) => ({ troveId })), ...userTransferredTroves];
|
|
153
|
-
const filteredTroves = troves.filter((value, index, self) => index === self.findIndex((t) => (t.troveId === value.troveId)));
|
|
154
|
-
const troveIds = filteredTroves.map((trove) => trove.troveId);
|
|
155
|
-
const troveIdsSet = new Set(troveIds);
|
|
156
|
-
const troveIdsArray = Array.from(troveIdsSet);
|
|
157
|
-
return troveIdsArray.map((troveId) => troves.find((trove) => trove.troveId === troveId));
|
|
158
|
-
};
|
|
159
|
-
/**
|
|
160
|
-
* The trove ids of several accounts in one market: the market's NFT transfers are read once for all of them, rather
|
|
161
|
-
* than once per account as _getLiquityV2UserTroveIds does.
|
|
162
|
-
*/
|
|
163
|
-
const _getLiquityV2UsersTroveIds = (provider, network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, accounts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
164
|
-
const [userTroves, events] = yield Promise.all([
|
|
165
|
-
Promise.all(accounts.map((account) => getUserTroves(provider, network, selectedMarket.isLegacy, account, selectedMarket.marketAddress))),
|
|
166
|
-
getTroveTransfers(provider, network, troveNFTAddress, limitBlocksForEventFetching, selectedMarket.value),
|
|
167
|
-
]);
|
|
168
|
-
return Object.fromEntries(accounts.map((account, i) => [
|
|
169
|
-
account,
|
|
170
|
-
mergeTroveIds(userTroves[i].troves, getAccountTransferredTroves(events, account)).map(({ troveId }) => troveId),
|
|
171
|
-
]));
|
|
172
|
-
});
|
|
173
|
-
exports._getLiquityV2UsersTroveIds = _getLiquityV2UsersTroveIds;
|
|
174
150
|
const _getLiquityV2UserTroveIds = (provider, network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, account) => __awaiter(void 0, void 0, void 0, function* () {
|
|
175
151
|
const [{ troves: userTroves, nextFreeTroveIndex }, userTransferredTroves] = yield Promise.all([
|
|
176
152
|
getUserTroves(provider, network, selectedMarket.isLegacy, account, selectedMarket.marketAddress),
|
|
177
153
|
getTransferredTroves(provider, network, troveNFTAddress, limitBlocksForEventFetching, selectedMarket.value, account),
|
|
178
154
|
]);
|
|
179
|
-
|
|
155
|
+
const troves = [...userTroves.map(({ troveId }) => ({ troveId })), ...userTransferredTroves];
|
|
156
|
+
const filteredTroves = troves.filter((value, index, self) => index === self.findIndex((t) => (t.troveId === value.troveId)));
|
|
157
|
+
const troveIds = filteredTroves.map((trove) => trove.troveId);
|
|
158
|
+
const troveIdsSet = new Set(troveIds);
|
|
159
|
+
const troveIdsArray = Array.from(troveIdsSet);
|
|
160
|
+
const trovesNoDuplicates = troveIdsArray.map((troveId) => troves.find((trove) => trove.troveId === troveId));
|
|
161
|
+
return { troves: trovesNoDuplicates, nextFreeTroveIndex };
|
|
180
162
|
});
|
|
181
163
|
exports._getLiquityV2UserTroveIds = _getLiquityV2UserTroveIds;
|
|
182
164
|
const getLiquityV2UserTroveIds = (provider, network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, account) => __awaiter(void 0, void 0, void 0, function* () { return (0, exports._getLiquityV2UserTroveIds)((0, viem_1.getViemProvider)(provider, network), network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, account); });
|
|
@@ -109,6 +109,7 @@ export declare const MORPHO_BLUE_AERO_USDC_625_BASE: (networkId?: NetworkNumber)
|
|
|
109
109
|
export declare const MORPHO_BLUE_USDE_USDC_915_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
110
110
|
export declare const MORPHO_BLUE_CBETH_USDC_770_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
111
111
|
export declare const MORPHO_BLUE_CBXRP_USDC_625_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
112
|
+
export declare const MORPHO_BLUE_CBHYPE_USDC_625_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
112
113
|
export declare const MORPHO_BLUE_SYRUPUSDC_USDC_915_ARB: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
113
114
|
export declare const MorphoBlueWBTCUSDC_860_Arb: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
114
115
|
export declare const MORPHO_BLUE_WSTETH_USDC_860_ARB: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
@@ -226,6 +227,7 @@ export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
|
226
227
|
readonly morphoblueusdeusdc_915_base: MorphoBlueMarketData;
|
|
227
228
|
readonly morphobluecbethusdc_770_base: MorphoBlueMarketData;
|
|
228
229
|
readonly morphobluecbxrpusdc_625_base: MorphoBlueMarketData;
|
|
230
|
+
readonly morphobluecbhypeusdc_625_base: MorphoBlueMarketData;
|
|
229
231
|
readonly morphobluewsuperoethbweth_915_base: MorphoBlueMarketData;
|
|
230
232
|
readonly morphobluecbetheth_945_base: MorphoBlueMarketData;
|
|
231
233
|
readonly morphobluecbetheth_965_base: MorphoBlueMarketData;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MORPHO_BLUE_PRIME_PYUSD_860 = exports.MORPHO_BLUE_PTWEETH_USDA_860 = exports.MORPHO_BLUE_WOETH_ETH_860 = exports.MORPHO_BLUE_SWBTC_WBTC_945 = exports.MORPHO_BLUE_LBTC_WBTC_945 = exports.MORPHO_BLUE_MORPHO_USDC_625 = exports.MORPHO_BLUE_SUSDS_USDT_965 = exports.MORPHO_BLUE_LBTC_CBBTC_945 = exports.MORPHO_BLUE_LBTC_USDC_860 = exports.MORPHO_BLUE_SYRUPUSDC_USDC_915 = exports.MORPHO_BLUE_USR_USDC_915 = exports.MORPHO_BLUE_USDE_DAI_777 = exports.MORPHO_BLUE_USDE_DAI_945 = exports.MORPHO_BLUE_USDE_DAI_915 = exports.MORPHO_BLUE_USDE_DAI_860 = exports.MORPHO_BLUE_SUSDE_DAI_777 = exports.MORPHO_BLUE_SUSDE_DAI_945 = exports.MORPHO_BLUE_SUSDE_DAI_915 = exports.MORPHO_BLUE_SUSDE_DAI_860 = exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_860 = exports.MORPHO_BLUE_RSWETH_ETH_945 = exports.MORPHO_BLUE_RSETH_ETH_945 = exports.MORPHO_BLUE_ETH_USDT_915 = exports.MORPHO_BLUE_USDE_USDTB_915 = exports.MORPHO_BLUE_SUSDE_USDTB_915 = exports.MORPHO_BLUE_SUSDE_USDC_915 = exports.MORPHO_BLUE_CBBTC_USDC_860 = exports.MORPHO_BLUE_CBBTC_ETH_915 = exports.MORPHO_BLUE_TBTC_USDC = exports.MORPHO_BLUE_MKR_DAI_777 = exports.MORPHO_BLUE_MKR_USDC = exports.MORPHO_BLUE_SUSDE_USDT = exports.MORPHO_BLUE_USDE_USDT = exports.MORPHO_BLUE_WSTETH_PYUSD = exports.MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_USDT = exports.MORPHO_BLUE_WBTC_ETH = exports.MORPHO_BLUE_WBTC_PYUSD = exports.MORPHO_BLUE_WBTC_USDT = exports.MORPHO_BLUE_ETH_USDC_860 = exports.MORPHO_BLUE_ETH_USDC_915 = exports.MORPHO_BLUE_WBTC_USDC = exports.MORPHO_BLUE_SDAI_USDC = exports.MORPHO_BLUE_WEETH_ETH_860 = exports.MORPHO_BLUE_WSTETH_USDC = void 0;
|
|
4
4
|
exports.MORPHO_BLUE_WETH_EURC_860_BASE = exports.MORPHO_BLUE_CBBTC_EURC_860_BASE = exports.MORPHO_BLUE_WSTETH_EURC_860_BASE = exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE = exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = exports.MORPHO_BLUE_BSDETH_ETH_860_BASE = exports.MORPHO_BLUE_CBBTC_USDC_860_BASE = exports.MORPHO_BLUE_CBBTC_ETH_915_BASE = exports.MORPHO_BLUE_RETH_ETH_945_BASE = exports.MORPHO_BLUE_RETH_USDC_860_BASE = exports.MORPHO_BLUE_ETH_USDC_860_BASE = exports.MORPHO_BLUE_CBETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE_13c42741 = exports.MORPHO_BLUE_WSTETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d = exports.MORPHO_BLUE_CBETH_USDC_860_BASE = exports.MORPHO_BLUE_WBTC_PYUSD_860 = exports.MORPHO_BLUE_WBTC_RLUSD_860 = exports.MORPHO_BLUE_ETH_USDT_860 = exports.MORPHO_BLUE_WEETH_USDT_770 = exports.MORPHO_BLUE_CBBTC_PYUSD_860 = exports.MORPHO_BLUE_SYRUPUSDT_USDT_915 = exports.MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1 = exports.MORPHO_BLUE_WEETH_USDT_860 = exports.MORPHO_BLUE_CBBTC_ETH_915_12DBF493 = exports.MORPHO_BLUE_WBTC_ETH_915 = exports.MORPHO_BLUE_CBBTC_RLUSD_860 = exports.MORPHO_BLUE_STUSDS_USDC_860 = exports.MORPHO_BLUE_USD3_USDC_915 = exports.MORPHO_BLUE_ETH_USDC_860_94B823E6 = exports.MORPHO_BLUE_WEETH_USDC_860_85252BB8 = exports.MORPHO_BLUE_WEETH_USDC_860 = exports.MORPHO_BLUE_WEETH_USDC_770 = exports.MORPHO_BLUE_SYRUPUSDC_RLUSD_915 = exports.MORPHO_BLUE_WSTETH_USDT_860 = exports.MORPHO_BLUE_WBTC_USDT_860 = exports.MORPHO_BLUE_SUSDE_PYUSD_915 = exports.MORPHO_BLUE_LBTC_PYUSD_860 = exports.MORPHO_BLUE_CBBTC_USDT_860 = exports.MORPHO_BLUE_WEETH_PYUSD_860 = exports.MORPHO_BLUE_WEETH_RLUSD_860 = exports.MORPHO_BLUE_CBBTC_USDC_860_BC99DE6A = exports.MORPHO_BLUE_WBTC_USDC_860 = exports.MORPHO_BLUE_SYRUPUSDC_PYUSD_915 = exports.MORPHO_BLUE_WSTETH_USDC_860 = exports.MORPHO_BLUE_KBTC_PYUSD_860 = exports.MORPHO_BLUE_KBTC_RLUSD_860 = void 0;
|
|
5
|
-
exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.MORPHO_BLUE_WBTC_USDT0_860_ARB = exports.MORPHO_BLUE_WSTETH_USDT0_860_ARB = exports.MORPHO_BLUE_ETH_USDT0_860_ARB = exports.MORPHO_BLUE_WEETH_USDT0_860_ARB = exports.MORPHO_BLUE_SUSDS_USDT0_945_ARB = exports.MORPHO_BLUE_WEETH_USDC_860_ARB = exports.MORPHO_BLUE_SUSDS_USDC_945_ARB = exports.MORPHO_BLUE_ETH_USDC_860_ARB = exports.MORPHO_BLUE_WSTETH_USDC_860_ARB = exports.MorphoBlueWBTCUSDC_860_Arb = exports.MORPHO_BLUE_SYRUPUSDC_USDC_915_ARB = exports.MORPHO_BLUE_CBXRP_USDC_625_BASE = exports.MORPHO_BLUE_CBETH_USDC_770_BASE = exports.MORPHO_BLUE_USDE_USDC_915_BASE = exports.MORPHO_BLUE_AERO_USDC_625_BASE = exports.MORPHO_BLUE_EZETH_ETH_777_BASE = exports.MORPHO_BLUE_EZETH_USDC_777_BASE = exports.MORPHO_BLUE_WEETH_ETH_945_BASE = exports.MORPHO_BLUE_WEETH_USDC_777_BASE = exports.MORPHO_BLUE_WEETH_ETH_915_BASE = exports.MORPHO_BLUE_CBETH_EURC_860_BASE = void 0;
|
|
5
|
+
exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.MORPHO_BLUE_WBTC_USDT0_860_ARB = exports.MORPHO_BLUE_WSTETH_USDT0_860_ARB = exports.MORPHO_BLUE_ETH_USDT0_860_ARB = exports.MORPHO_BLUE_WEETH_USDT0_860_ARB = exports.MORPHO_BLUE_SUSDS_USDT0_945_ARB = exports.MORPHO_BLUE_WEETH_USDC_860_ARB = exports.MORPHO_BLUE_SUSDS_USDC_945_ARB = exports.MORPHO_BLUE_ETH_USDC_860_ARB = exports.MORPHO_BLUE_WSTETH_USDC_860_ARB = exports.MorphoBlueWBTCUSDC_860_Arb = exports.MORPHO_BLUE_SYRUPUSDC_USDC_915_ARB = exports.MORPHO_BLUE_CBHYPE_USDC_625_BASE = exports.MORPHO_BLUE_CBXRP_USDC_625_BASE = exports.MORPHO_BLUE_CBETH_USDC_770_BASE = exports.MORPHO_BLUE_USDE_USDC_915_BASE = exports.MORPHO_BLUE_AERO_USDC_625_BASE = exports.MORPHO_BLUE_EZETH_ETH_777_BASE = exports.MORPHO_BLUE_EZETH_USDC_777_BASE = exports.MORPHO_BLUE_WEETH_ETH_945_BASE = exports.MORPHO_BLUE_WEETH_USDC_777_BASE = exports.MORPHO_BLUE_WEETH_ETH_915_BASE = exports.MORPHO_BLUE_CBETH_EURC_860_BASE = void 0;
|
|
6
6
|
const utils_1 = require("../../services/utils");
|
|
7
7
|
const types_1 = require("../../types");
|
|
8
8
|
// MAINNET
|
|
@@ -1767,6 +1767,22 @@ const MORPHO_BLUE_CBXRP_USDC_625_BASE = (networkId = types_1.NetworkNumber.Base)
|
|
|
1767
1767
|
protocolName: 'morpho-blue',
|
|
1768
1768
|
});
|
|
1769
1769
|
exports.MORPHO_BLUE_CBXRP_USDC_625_BASE = MORPHO_BLUE_CBXRP_USDC_625_BASE;
|
|
1770
|
+
const MORPHO_BLUE_CBHYPE_USDC_625_BASE = (networkId = types_1.NetworkNumber.Base) => ({
|
|
1771
|
+
chainIds: [types_1.NetworkNumber.Base],
|
|
1772
|
+
label: 'Morpho Blue',
|
|
1773
|
+
shortLabel: 'cbHYPE/USDC',
|
|
1774
|
+
value: types_1.MorphoBlueVersions.MorphoBlueCbHYPEUSDC_625_Base,
|
|
1775
|
+
url: 'cbhypeusdc-76629002',
|
|
1776
|
+
loanToken: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
|
|
1777
|
+
collateralToken: '0xB200000000000000000000451d033a5000cb479e',
|
|
1778
|
+
oracle: '0x7FaD8B8De2DDb7b4B415e1Aa3613e45EeF9E4bFf',
|
|
1779
|
+
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
1780
|
+
irm: '0x46415998764C29aB2a25CbeA6254146D50D22687',
|
|
1781
|
+
lltv: 0.625,
|
|
1782
|
+
marketId: '0x76629002c9fdb20fb2092053a4f22c5c65e04a81887218b9546f2a2d82b4c0a8',
|
|
1783
|
+
protocolName: 'morpho-blue',
|
|
1784
|
+
});
|
|
1785
|
+
exports.MORPHO_BLUE_CBHYPE_USDC_625_BASE = MORPHO_BLUE_CBHYPE_USDC_625_BASE;
|
|
1770
1786
|
// ARBITRUM
|
|
1771
1787
|
const MORPHO_BLUE_SYRUPUSDC_USDC_915_ARB = (networkId = types_1.NetworkNumber.Eth) => ({
|
|
1772
1788
|
chainIds: [types_1.NetworkNumber.Arb],
|
|
@@ -2052,6 +2068,7 @@ const MorphoBlueMarkets = (networkId) => ({
|
|
|
2052
2068
|
[types_1.MorphoBlueVersions.MorphoBlueUSDeUSDC_915_Base]: (0, exports.MORPHO_BLUE_USDE_USDC_915_BASE)(networkId),
|
|
2053
2069
|
[types_1.MorphoBlueVersions.MorphoBlueCbEthUSDC_770_Base]: (0, exports.MORPHO_BLUE_CBETH_USDC_770_BASE)(networkId),
|
|
2054
2070
|
[types_1.MorphoBlueVersions.MorphoBlueCbXRPUSDC_625_Base]: (0, exports.MORPHO_BLUE_CBXRP_USDC_625_BASE)(networkId),
|
|
2071
|
+
[types_1.MorphoBlueVersions.MorphoBlueCbHYPEUSDC_625_Base]: (0, exports.MORPHO_BLUE_CBHYPE_USDC_625_BASE)(networkId),
|
|
2055
2072
|
[types_1.MorphoBlueVersions.MorphoBlueWsuperOETHbWETH_915_Base]: (0, exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE)(networkId),
|
|
2056
2073
|
[types_1.MorphoBlueVersions.MorphoBlueCbEthEth_945_Base]: (0, exports.MORPHO_BLUE_CBETH_ETH_945_BASE)(networkId),
|
|
2057
2074
|
[types_1.MorphoBlueVersions.MorphoBlueCbEthEth_965_Base]: (0, exports.MORPHO_BLUE_CBETH_ETH_965_BASE)(networkId),
|
package/cjs/portfolio/index.d.ts
CHANGED
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* What the portfolio reads per address — the other half of getPortfolioData — against `markets` from
|
|
11
|
-
* getPortfolioMarketsData. `markets` can be a promise: reads that do not need a market (Maker, Fluid, Liquity, staking,
|
|
12
|
-
* rewards) start at once, and each read on a market waits for it. A position on a market missing from `markets` is an
|
|
13
|
-
* entry with an error.
|
|
14
|
-
*/
|
|
15
|
-
export declare function getPortfolioUserData(provider: EthereumProvider, network: NetworkNumber, addresses: EthAddress[], markets: PortfolioMarketsData | Promise<PortfolioMarketsData>, isSim?: boolean, options?: PortfolioDataOptions): Promise<PortfolioUserData>;
|
|
16
|
-
export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], isSim?: boolean, options?: PortfolioDataOptions): Promise<PortfolioData>;
|
|
2
|
+
import { PortfolioMarketsData, PortfolioPositionsData } from '../types';
|
|
3
|
+
export declare function getPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], isSim?: boolean): Promise<{
|
|
4
|
+
positions: PortfolioPositionsData;
|
|
5
|
+
stakingPositions: any;
|
|
6
|
+
rewardsData: any;
|
|
7
|
+
markets: any;
|
|
8
|
+
}>;
|
|
17
9
|
export declare function getShifterPortfolioData(provider: EthereumProvider, network: NetworkNumber, defaultProvider: EthereumProvider, addresses: EthAddress[], isSim?: boolean): Promise<{
|
|
18
10
|
positions: PortfolioPositionsData;
|
|
19
|
-
markets:
|
|
11
|
+
markets: PortfolioMarketsData;
|
|
20
12
|
}>;
|
|
21
13
|
export * from './discovery';
|
|
22
14
|
export { getWalletLendingSummaries } from './lendingSummaries';
|