import { PublicKey } from "@solana/web3.js";
import BN from "bn.js";
import * as types from "../types";
export interface WhirlpoolRewardInfoFields {
    mint: PublicKey;
    vault: PublicKey;
    authority: PublicKey;
    emissionsPerSecondX64: BN;
    growthGlobalX64: BN;
}
export interface WhirlpoolRewardInfoJSON {
    mint: string;
    vault: string;
    authority: string;
    emissionsPerSecondX64: string;
    growthGlobalX64: string;
}
export declare class WhirlpoolRewardInfo {
    readonly mint: PublicKey;
    readonly vault: PublicKey;
    readonly authority: PublicKey;
    readonly emissionsPerSecondX64: BN;
    readonly growthGlobalX64: BN;
    constructor(fields: WhirlpoolRewardInfoFields);
    static layout(property?: string): any;
    static fromDecoded(obj: any): types.WhirlpoolRewardInfo;
    static toEncodable(fields: WhirlpoolRewardInfoFields): {
        mint: PublicKey;
        vault: PublicKey;
        authority: PublicKey;
        emissionsPerSecondX64: BN;
        growthGlobalX64: BN;
    };
    toJSON(): WhirlpoolRewardInfoJSON;
    static fromJSON(obj: WhirlpoolRewardInfoJSON): WhirlpoolRewardInfo;
    toEncodable(): {
        mint: PublicKey;
        vault: PublicKey;
        authority: PublicKey;
        emissionsPerSecondX64: BN;
        growthGlobalX64: BN;
    };
}
