import { SuiClientTypes } from "@mysten/sui/client"; import BigNumber from "bignumber.js"; import { LendingMarket } from "../_generated/suilend/lending-market/structs"; import { Reserve } from "../_generated/suilend/reserve/structs"; import { LendingMarketMetadata } from "../lib"; import * as simulate from "../utils/simulate"; export type ParsedLendingMarket = ReturnType; export declare const parseLendingMarket: (lendingMarket: LendingMarket, reserves: Reserve[], coinMetadataMap: Record, nowS: number, lendingMarketMetadata?: LendingMarketMetadata, confidenceByCoinType?: simulate.ConfidenceByCoinType) => { version: bigint; reserves: { config: { $typeName: `${string}::reserve_config::ReserveConfig`; openLtvPct: number; closeLtvPct: number; maxCloseLtvPct: number; borrowWeightBps: BigNumber; depositLimit: BigNumber; borrowLimit: BigNumber; liquidationBonusBps: number; maxLiquidationBonusBps: number; depositLimitUsd: BigNumber; borrowLimitUsd: BigNumber; borrowFeeBps: number; spreadFeeBps: number; protocolLiquidationFeeBps: number; isolated: boolean; openAttributedBorrowLimitUsd: number; closeAttributedBorrowLimitUsd: number; additionalFields: import("../_generated/_dependencies/sui/bag/structs").Bag; interestRate: { id: string; utilPercent: BigNumber; aprPercent: BigNumber; }[]; }; $typeName: `${string}::reserve::Reserve`; id: string; arrayIndex: bigint; coinType: string; mintDecimals: number; priceIdentifier: string; price: BigNumber; smoothedPrice: BigNumber; minPrice: BigNumber; maxPrice: BigNumber; priceLastUpdateTimestampS: bigint; availableAmount: BigNumber; ctokenSupply: BigNumber; borrowedAmount: BigNumber; cumulativeBorrowRate: BigNumber; interestLastUpdateTimestampS: bigint; unclaimedSpreadFees: BigNumber; attributedBorrowValue: BigNumber; depositsPoolRewardManager: { $typeName: `${string}::liquidity_mining::PoolRewardManager`; id: string; totalShares: bigint; poolRewards: { $typeName: `${string}::liquidity_mining::PoolReward`; id: string; poolRewardManagerId: string; coinType: string; startTimeMs: number; endTimeMs: number; totalRewards: BigNumber; allocatedRewards: BigNumber; cumulativeRewardsPerShare: BigNumber; numUserRewardManagers: bigint; rewardIndex: number; symbol: string; mintDecimals: number; }[]; lastUpdateTimeMs: bigint; }; borrowsPoolRewardManager: { $typeName: `${string}::liquidity_mining::PoolRewardManager`; id: string; totalShares: bigint; poolRewards: { $typeName: `${string}::liquidity_mining::PoolReward`; id: string; poolRewardManagerId: string; coinType: string; startTimeMs: number; endTimeMs: number; totalRewards: BigNumber; allocatedRewards: BigNumber; cumulativeRewardsPerShare: BigNumber; numUserRewardManagers: bigint; rewardIndex: number; symbol: string; mintDecimals: number; }[]; lastUpdateTimeMs: bigint; }; availableAmountUsd: BigNumber; borrowedAmountUsd: BigNumber; depositedAmount: BigNumber; depositedAmountUsd: BigNumber; cTokenExchangeRate: BigNumber; borrowAprPercent: BigNumber; depositAprPercent: BigNumber; utilizationPercent: BigNumber; token: { id: string | null; decimals: number; name: string; symbol: string; description: string; iconUrl: string | null; coinType: string; }; symbol: string; name: string; iconUrl: string | null; description: string; totalDeposits: BigNumber; }[]; obligations: import("../_generated/_dependencies/sui/object-table/structs").ObjectTable<"0x2::object::ID", `${string}::obligation::Obligation<${string}>`>; rateLimiter: { config: { windowDuration: bigint; maxOutflow: bigint; }; $typeName: `${string}::rate_limiter::RateLimiter`; prevQty: bigint; windowStart: bigint; curQty: bigint; remainingOutflow: BigNumber; }; feeReceiver: string; badDebtUsd: BigNumber; badDebtLimitUsd: BigNumber; depositedAmountUsd: BigNumber; borrowedAmountUsd: BigNumber; tvlUsd: BigNumber; id: string; type: string; ownerCapId: string | undefined; name: string; isHidden: boolean; iconUrl: string | null; description: string | null; /** * @deprecated since version 1.0.3. Use `depositedAmountUsd` instead. */ totalSupplyUsd: BigNumber; /** * @deprecated since version 1.0.3. Use `borrowedAmountUsd` instead. */ totalBorrowUsd: BigNumber; };