/// /// /// import { BeetStruct } from '@metaplex-foundation/beet'; import { PublicKey } from '@solana/web3.js'; import BigNumber from 'bignumber.js'; export type Fees = { borrowFeeWad: BigNumber; flashLoanFeeWad: BigNumber; hostFeePercentage: number; }; export declare const feesStruct: BeetStruct>; export type ReserveConfig = { optimalUtilizationRate: number; loanToValueRatio: number; liquidationBonus: number; liquidationThreshold: number; minBorrowRate: number; optimalBorrowRate: number; maxBorrowRate: number; fees: Fees; depositLimit: BigNumber; borrowLimit: BigNumber; feeReceiver: PublicKey; }; export declare const reserveConfigStruct: BeetStruct>; export type Collateral = { mintPubkey: PublicKey; mintTotalSupply: BigNumber; supplyPubkey: PublicKey; }; export declare const collateralStruct: BeetStruct>; export type Liquidity = { mintPubkey: PublicKey; mintDecimals: number; supplyPubkey: PublicKey; pythOracle: PublicKey; switchboardOracle: PublicKey; availableAmount: BigNumber; borrowedAmountWads: BigNumber; cumulativeBorrowRateWads: BigNumber; marketPrice: BigNumber; }; export declare const liquidityStruct: BeetStruct>; export type LastUpdate = { slot: BigNumber; stale: number; }; export declare const lastUpdateStruct: BeetStruct>; export type Reserve = { version: number; lastUpdate: LastUpdate; lendingMarket: PublicKey; liquidity: Liquidity; collateral: Collateral; config: ReserveConfig; padding: Buffer; }; export declare const reserveStruct: BeetStruct>; export type Obligation = { version: number; lastUpdate: LastUpdate; lendingMarket: PublicKey; owner: PublicKey; depositedValue: BigNumber; borrowedValue: BigNumber; allowedBorrowValue: BigNumber; unhealthyBorrowValue: BigNumber; padding: Buffer; depositsLen: number; borrowsLen: number; dataFlat: Buffer; }; export declare const obligationStruct: BeetStruct>; export type ObligationCollateral = { depositReserve: PublicKey; depositedAmount: BigNumber; marketValue: BigNumber; padding: Buffer; }; export declare const obligationCollateralStruct: BeetStruct>; export type ObligationLiquidity = { borrowReserve: PublicKey; cumulativeBorrowRateWads: BigNumber; borrowedAmountWads: BigNumber; marketValue: BigNumber; padding: Buffer; }; export declare const obligationLiquidityStruct: BeetStruct>; export type ClaimStatus = { buffer: Buffer; isClaimed: boolean; claimant: PublicKey; claimedAt: BigNumber; amount: BigNumber; }; export declare const claimStatusStruct: BeetStruct>; export type MerkleDistributor = { buffer: Buffer; base: PublicKey; bump: number; root: number[]; mint: PublicKey; maxTotalClaim: BigNumber; maxNumNodes: BigNumber; totalAmountClaimed: BigNumber; numNodesClaimed: BigNumber; }; export declare const merkleDistributorStruct: BeetStruct>;