import { Address } from "@solana/kit";
import BN from "bn.js";
import * as types from "../types";
export interface KaminoRewardInfoFields {
    decimals: BN;
    rewardVault: Address;
    rewardMint: Address;
    rewardCollateralId: BN;
    lastIssuanceTs: BN;
    rewardPerSecond: BN;
    amountUncollected: BN;
    amountIssuedCumulative: BN;
    amountAvailable: BN;
}
export interface KaminoRewardInfoJSON {
    decimals: string;
    rewardVault: string;
    rewardMint: string;
    rewardCollateralId: string;
    lastIssuanceTs: string;
    rewardPerSecond: string;
    amountUncollected: string;
    amountIssuedCumulative: string;
    amountAvailable: string;
}
export declare class KaminoRewardInfo {
    readonly decimals: BN;
    readonly rewardVault: Address;
    readonly rewardMint: Address;
    readonly rewardCollateralId: BN;
    readonly lastIssuanceTs: BN;
    readonly rewardPerSecond: BN;
    readonly amountUncollected: BN;
    readonly amountIssuedCumulative: BN;
    readonly amountAvailable: BN;
    constructor(fields: KaminoRewardInfoFields);
    static layout(property?: string): import("buffer-layout").Layout<unknown>;
    static fromDecoded(obj: any): types.KaminoRewardInfo;
    static toEncodable(fields: KaminoRewardInfoFields): {
        decimals: BN;
        rewardVault: Address;
        rewardMint: Address;
        rewardCollateralId: BN;
        lastIssuanceTs: BN;
        rewardPerSecond: BN;
        amountUncollected: BN;
        amountIssuedCumulative: BN;
        amountAvailable: BN;
    };
    toJSON(): KaminoRewardInfoJSON;
    static fromJSON(obj: KaminoRewardInfoJSON): KaminoRewardInfo;
    toEncodable(): {
        decimals: BN;
        rewardVault: Address;
        rewardMint: Address;
        rewardCollateralId: BN;
        lastIssuanceTs: BN;
        rewardPerSecond: BN;
        amountUncollected: BN;
        amountIssuedCumulative: BN;
        amountAvailable: BN;
    };
}
//# sourceMappingURL=KaminoRewardInfo.d.ts.map