@terminusbet/stake-vote-sdk
Version:
A simple SDK for interacting with terminusbet governance
28 lines • 1.04 kB
JavaScript
import { struct, u64, publicKey } from "@coral-xyz/borsh";
import { PublicKey } from "@solana/web3.js";
export class UserRewardState {
discriminator;
ballotBot;
rewardMint;
voteRewardState;
amount;
constructor(discriminator, ballotBot, rewardMint, voteRewardState, amount) {
this.discriminator = discriminator;
this.ballotBot = ballotBot;
this.rewardMint = rewardMint;
this.voteRewardState = voteRewardState;
this.amount = amount;
}
static fromBuffer(buffer) {
const structure = struct([
u64("discriminator"),
publicKey("ballotBot"),
publicKey("rewardMint"),
publicKey("voteRewardState"),
u64("amount")
]);
let value = structure.decode(buffer);
return new UserRewardState(BigInt(value.discriminator), new PublicKey(value.ballotBot), new PublicKey(value.rewardMint), new PublicKey(value.voteRewardState), BigInt(value.amount));
}
}
//# sourceMappingURL=userRewardState.js.map