import { PublicKey } from '@solana/web3.js';
export interface AllAccounts {
    collectionInfos: CollectionInfoView[];
    deposits: DepositView[];
    liquidityPools: LiquidityPoolView[];
    loans: LoanView[];
}
export interface CollectionInfoView {
    collectionInfoPubkey: string;
    creator: string;
    liquidityPool: string;
    pricingLookupAddress: string;
    royaltyAddress: string;
    royaltyFeeTime: number;
    royaltyFeePrice: number;
    loanToValue: number;
    collaterizationRate: number;
    availableLoanTypes: string;
    expirationTime: number;
}
export declare function decodedCollectionInfo(decodedCollection: any, address: PublicKey): CollectionInfoView;
export interface LiquidityPoolView {
    liquidityPoolPubkey: string;
    id: number;
    rewardInterestRateTime: number;
    feeInterestRateTime: number;
    rewardInterestRatePrice: number;
    feeInterestRatePrice: number;
    liquidityAmount: number;
    liqOwner: string;
    amountOfStaked: number;
    userRewardsAmount: number;
    apr: number;
    cumulative: number;
    lastTime: number;
    oldCumulative: number;
    period: number;
}
export declare function decodedLiquidityPool(decodedLiquidityPool: any, address: PublicKey): LiquidityPoolView;
export interface DepositView {
    depositPubkey: string;
    liquidityPool: string;
    user: string;
    amount: number;
    stakedAt: number;
    stakedAtCumulative: number;
}
export declare function decodedDeposit(decodedDeposit: any, address: PublicKey): DepositView;
export interface LoanView {
    loanPubkey: string;
    user: string;
    nftMint: string;
    nftUserTokenAccount: string;
    liquidityPool: string;
    collectionInfo: string;
    startedAt: number;
    expiredAt: number;
    finishedAt: number;
    originalPrice: number;
    amountToGet: number;
    rewardAmount: number;
    feeAmount: number;
    royaltyAmount: number;
    rewardInterestRate: number;
    feeInterestRate: number;
    royaltyInterestRate: number;
    loanStatus: string;
    loanType: string;
}
export declare function decodedLoan(decodedLoan: any, address: PublicKey): LoanView;
