/// /// import { AccountInfo, PublicKey } from '@solana/web3.js'; import BigNumber from 'bignumber.js'; import { Parser } from '../util'; import { LastUpdate } from './lastUpdate'; export interface Obligation { version: number; lastUpdate: LastUpdate; lendingMarket: PublicKey; owner: PublicKey; deposits: ObligationCollateral[]; borrows: ObligationLiquidity[]; depositedValue: BigNumber; borrowedValue: BigNumber; allowedBorrowValue: BigNumber; unhealthyBorrowValue: BigNumber; } export interface ObligationCollateral { depositReserve: PublicKey; depositedAmount: bigint; marketValue: BigNumber; } export interface ObligationLiquidity { borrowReserve: PublicKey; cumulativeBorrowRateWads: BigNumber; borrowedAmountWads: BigNumber; marketValue: BigNumber; } /** @internal */ export interface ObligationDataFlat { version: number; lastUpdate: LastUpdate; lendingMarket: PublicKey; owner: PublicKey; depositedValue: BigNumber; borrowedValue: BigNumber; allowedBorrowValue: BigNumber; unhealthyBorrowValue: BigNumber; padding: Buffer; depositsLen: number; borrowsLen: number; dataFlat: Buffer; } /** @internal */ export declare const ObligationCollateralLayout: import("buffer-layout").Layout; /** @internal */ export declare const ObligationLiquidityLayout: import("buffer-layout").Layout; /** @internal */ export declare const ObligationLayout: import("buffer-layout").Layout; export declare const OBLIGATION_SIZE: number; export declare const isObligation: (info: AccountInfo) => boolean; export declare const parseObligation: Parser;