@hubbleprotocol/farms-sdk
Version:
109 lines (108 loc) • 3.33 kB
TypeScript
import { PublicKey } from "@solana/web3.js";
import BN from "bn.js";
import * as types from "../types";
export interface RewardInfoFields {
token: types.TokenInfoFields;
rewardsVault: PublicKey;
rewardsAvailable: BN;
rewardScheduleCurve: types.RewardScheduleCurveFields;
minClaimDurationSeconds: BN;
lastIssuanceTs: BN;
rewardsIssuedUnclaimed: BN;
rewardsIssuedCumulative: BN;
rewardPerShareScaled: BN;
placeholder0: BN;
rewardType: number;
rewardsPerSecondDecimals: number;
padding0: Array<number>;
padding1: Array<BN>;
}
export interface RewardInfoJSON {
token: types.TokenInfoJSON;
rewardsVault: string;
rewardsAvailable: string;
rewardScheduleCurve: types.RewardScheduleCurveJSON;
minClaimDurationSeconds: string;
lastIssuanceTs: string;
rewardsIssuedUnclaimed: string;
rewardsIssuedCumulative: string;
rewardPerShareScaled: string;
placeholder0: string;
rewardType: number;
rewardsPerSecondDecimals: number;
padding0: Array<number>;
padding1: Array<string>;
}
export declare class RewardInfo {
readonly token: types.TokenInfo;
readonly rewardsVault: PublicKey;
readonly rewardsAvailable: BN;
readonly rewardScheduleCurve: types.RewardScheduleCurve;
readonly minClaimDurationSeconds: BN;
readonly lastIssuanceTs: BN;
readonly rewardsIssuedUnclaimed: BN;
readonly rewardsIssuedCumulative: BN;
readonly rewardPerShareScaled: BN;
readonly placeholder0: BN;
readonly rewardType: number;
readonly rewardsPerSecondDecimals: number;
readonly padding0: Array<number>;
readonly padding1: Array<BN>;
constructor(fields: RewardInfoFields);
static layout(property?: string): any;
static fromDecoded(obj: any): types.RewardInfo;
static toEncodable(fields: RewardInfoFields): {
token: {
mint: PublicKey;
decimals: BN;
tokenProgram: PublicKey;
padding: BN[];
};
rewardsVault: PublicKey;
rewardsAvailable: BN;
rewardScheduleCurve: {
points: {
tsStart: BN;
rewardPerTimeUnit: BN;
}[];
};
minClaimDurationSeconds: BN;
lastIssuanceTs: BN;
rewardsIssuedUnclaimed: BN;
rewardsIssuedCumulative: BN;
rewardPerShareScaled: BN;
placeholder0: BN;
rewardType: number;
rewardsPerSecondDecimals: number;
padding0: number[];
padding1: BN[];
};
toJSON(): RewardInfoJSON;
static fromJSON(obj: RewardInfoJSON): RewardInfo;
toEncodable(): {
token: {
mint: PublicKey;
decimals: BN;
tokenProgram: PublicKey;
padding: BN[];
};
rewardsVault: PublicKey;
rewardsAvailable: BN;
rewardScheduleCurve: {
points: {
tsStart: BN;
rewardPerTimeUnit: BN;
}[];
};
minClaimDurationSeconds: BN;
lastIssuanceTs: BN;
rewardsIssuedUnclaimed: BN;
rewardsIssuedCumulative: BN;
rewardPerShareScaled: BN;
placeholder0: BN;
rewardType: number;
rewardsPerSecondDecimals: number;
padding0: number[];
padding1: BN[];
};
}