import { Address, GetAccountInfoApi, GetMultipleAccountsApi, Rpc } from "@solana/kit"; import BN from "bn.js"; import * as types from "../types"; export interface ObligationFields { tag: BN; lastUpdate: types.LastUpdateFields; lendingMarket: Address; owner: Address; deposits: Array; lowestReserveDepositLiquidationLtv: BN; depositedValueSf: BN; borrows: Array; borrowFactorAdjustedDebtValueSf: BN; borrowedAssetsMarketValueSf: BN; allowedBorrowValueSf: BN; unhealthyBorrowValueSf: BN; paddingDeprecatedAssetTiers: Array; elevationGroup: number; numOfObsoleteDepositReserves: number; hasDebt: number; referrer: Address; borrowingDisabled: number; autodeleverageTargetLtvPct: number; lowestReserveDepositMaxLtvPct: number; numOfObsoleteBorrowReserves: number; ownershipTransferState: number; reserved: Array; highestBorrowFactorPct: BN; autodeleverageMarginCallStartedTimestamp: BN; obligationOrders: Array; headBorrowOrder: types.BorrowOrderFields; pendingOwner: Address; tailBorrowOrders: Array; padding3: Array; } export interface ObligationJSON { tag: string; lastUpdate: types.LastUpdateJSON; lendingMarket: string; owner: string; deposits: Array; lowestReserveDepositLiquidationLtv: string; depositedValueSf: string; borrows: Array; borrowFactorAdjustedDebtValueSf: string; borrowedAssetsMarketValueSf: string; allowedBorrowValueSf: string; unhealthyBorrowValueSf: string; paddingDeprecatedAssetTiers: Array; elevationGroup: number; numOfObsoleteDepositReserves: number; hasDebt: number; referrer: string; borrowingDisabled: number; autodeleverageTargetLtvPct: number; lowestReserveDepositMaxLtvPct: number; numOfObsoleteBorrowReserves: number; ownershipTransferState: number; reserved: Array; highestBorrowFactorPct: string; autodeleverageMarginCallStartedTimestamp: string; obligationOrders: Array; headBorrowOrder: types.BorrowOrderJSON; pendingOwner: string; tailBorrowOrders: Array; padding3: Array; } export declare class Obligation { readonly tag: BN; readonly lastUpdate: types.LastUpdate; readonly lendingMarket: Address; readonly owner: Address; readonly deposits: Array; readonly lowestReserveDepositLiquidationLtv: BN; readonly depositedValueSf: BN; readonly borrows: Array; readonly borrowFactorAdjustedDebtValueSf: BN; readonly borrowedAssetsMarketValueSf: BN; readonly allowedBorrowValueSf: BN; readonly unhealthyBorrowValueSf: BN; readonly paddingDeprecatedAssetTiers: Array; readonly elevationGroup: number; readonly numOfObsoleteDepositReserves: number; readonly hasDebt: number; readonly referrer: Address; readonly borrowingDisabled: number; readonly autodeleverageTargetLtvPct: number; readonly lowestReserveDepositMaxLtvPct: number; readonly numOfObsoleteBorrowReserves: number; readonly ownershipTransferState: number; readonly reserved: Array; readonly highestBorrowFactorPct: BN; readonly autodeleverageMarginCallStartedTimestamp: BN; readonly obligationOrders: Array; readonly headBorrowOrder: types.BorrowOrder; readonly pendingOwner: Address; readonly tailBorrowOrders: Array; readonly padding3: Array; static readonly discriminator: Buffer; static readonly layout: import("buffer-layout").Layout; constructor(fields: ObligationFields); static fetch(rpc: Rpc, address: Address, programId?: Address): Promise; static fetchMultiple(rpc: Rpc, addresses: Address[], programId?: Address): Promise>; static decode(data: Buffer): Obligation; toJSON(): ObligationJSON; static fromJSON(obj: ObligationJSON): Obligation; } //# sourceMappingURL=Obligation.d.ts.map