import { Config } from '../../../../Fct/Config'; declare class AaveHelper extends Config { private RAY; private SECONDS_PER_YEAR; private createContract; getAssetPrice: ({ asset, usdPriceEth }: { asset: string; usdPriceEth?: string | undefined; }) => Promise<{ wei: string; eth: string; usd: string | undefined; } | undefined>; getAssetsPrices: ({ usdPriceEth, assets }: { usdPriceEth?: string | undefined; assets?: string[] | undefined; }) => Promise<{ value: string | string[] | undefined; category?: string | undefined; name?: string | undefined; decimals?: number | undefined; symbol?: string | undefined; logoURI?: string | undefined; chainId?: string | number | undefined; decimalsList?: string[] | undefined; coins?: { address: string; decimals?: string | number | undefined; logo?: string | undefined; }[] | undefined; assetTypeName?: string | undefined; implementation?: string | undefined; wei: string; eth: string; usd: string | undefined; }[] | undefined>; getAssetAvailableBorrowPower: ({ asset, account, usdPriceEth, }: { asset: string; account: string; usdPriceEth?: string | undefined; }) => Promise<{ eth: string; usd: string | undefined; } | undefined>; getReserveTokensAddresses: ({ asset }: { asset: string; }) => Promise<{ aTokenAddress: string; stableDebtTokenAddress: string; variableDebtTokenAddress: string; } | undefined>; getReserveTokensAddressesV3: ({ asset }: { asset: string; }) => Promise<{ aTokenAddress: string; stableDebtTokenAddress: string; variableDebtTokenAddress: string; underlyingAssetAddress: string; } | undefined>; getUserAssetBalance: ({ asset, account, usdPriceEth, }: { asset: string; account: string; usdPriceEth?: string | undefined; }) => Promise<{ wallet: { eth: string; usd: string | undefined; apy: string | undefined; }; supplied: { eth: string; usd: string | undefined; apy: string | undefined; }; stableDebt: { eth: string; usd: string | undefined; apy: string | undefined; }; variableDebt: { eth: string; usd: string | undefined; apy: string | undefined; }; address: string; symbol: string | undefined; name: string | undefined; decimals: number | undefined; logoURI: string | undefined; } | undefined>; getUserAssetsBalances: ({ account, usdPriceEth, options, }: { account: string; usdPriceEth?: string | undefined; options?: { sortBy?: "wallet" | "supplied" | "stableDebt" | "variableDebt" | undefined; assets?: string[] | undefined; } | undefined; }) => Promise<({ wallet: { eth: string; usd: string | undefined; apy: string | undefined; }; supplied: { eth: string; usd: string | undefined; apy: string | undefined; }; stableDebt: { eth: string; usd: string | undefined; apy: string | undefined; }; variableDebt: { eth: string; usd: string | undefined; apy: string | undefined; }; address: string; symbol: string | undefined; name: string | undefined; decimals: number | undefined; logoURI: string | undefined; } | undefined)[] | undefined>; getUserReserveData: ({ asset, account }: { asset: string; account: string; }) => Promise<{ currentATokenBalance: string; currentStableDebt: string; currentVariableDebt: string; principalStableDebt: string; scaledVariableDebt: string; stableBorrowRate: string; liquidityRate: string; stableRateLastUpdated: number; usageAsCollateralEnabled: boolean; } | undefined>; getUserAccountData: ({ account }: { account: string; }) => Promise<{ totalCollateralETH: string; totalDebtETH: string; availableBorrowsETH: string; currentLiquidationThreshold: string; ltv: string; healthFactor: string; } | undefined>; getReserveData: ({ asset }: { asset: string; }) => Promise<{ configuratio: string; liquidityIndex: string; variableBorrowIndex: string; currentLiquidityRate: string; currentVariableBorrowRate: string; currentStableBorrowRate: string; lastUpdateTimestamp: string; aTokenAddress: string; stableDebtTokenAddress: string; variableDebtTokenAddress: string; interestRateStrategyAddress: string; id: number; } | undefined>; getAssetReserveData: ({ asset }: { asset: string; }) => Promise<{ availableLiquidity: string; totalStableDebt: string; totalVariableDebt: string; supplyRate: string; variableBorrowRate: string; stableBorrowRate: string; averageStableBorrowRate: string; liquidityIndex: string; variableBorrowIndex: string; lastUpdateTimestamp: string; } | undefined>; getAssetReserveDataV3: ({ asset }: { asset: string; }) => Promise<{ availableLiquidity: string; totalStableDebt: string; totalVariableDebt: string; supplyRate: string; variableBorrowRate: string; stableBorrowRate: string; averageStableBorrowRate: string; liquidityIndex: string; variableBorrowIndex: string; lastUpdateTimestamp: string; } | undefined>; getReserveConfigurationData: ({ asset }: { asset: string; }) => Promise<{ decimals: string; ltv: string; liquidationThreshold: string; liquidationBonus: string; reserveFactor: string; usageAsCollateralEnabled: boolean; borrowingEnabled: boolean; stableBorrowRateEnabled: boolean; isActive: boolean; isFrozen: boolean; } | undefined>; getAssetAPY: ({ asset, version }: { asset: string; version?: "V2" | "V3" | undefined; }) => Promise<{ supplyAPY: string; stableBorrowAPY: string; variableBorrowAPY: string; asset: string; } | undefined>; getAssetRateByApy: ({ apy }: { apy: string; }) => { rate: string; }; getAssetAPYByRate: ({ rate }: { rate: string; }) => { apy: string; }; } export { AaveHelper };