UNPKG

@kamino-finance/scope-sdk

Version:
101 lines 4.07 kB
import { Address } from "@solana/kit"; import BN from "bn.js"; import * as types from "../types"; export interface StakeSystemFields { stakeList: types.ListFields; delayedUnstakeCoolingDown: BN; stakeDepositBumpSeed: number; stakeWithdrawBumpSeed: number; /** set by admin, how much slots before the end of the epoch, stake-delta can start */ slotsForStakeDelta: BN; /** * Marks the start of stake-delta operations, meaning that if somebody starts a delayed-unstake ticket * after this var is set with epoch_num the ticket will have epoch_created = current_epoch+1 * (the user must wait one more epoch, because their unstake-delta will be execute in this epoch) */ lastStakeDeltaEpoch: BN; minStake: BN; /** * can be set by validator-manager-auth to allow a second run of stake-delta to stake late stakers in the last minute of the epoch * so we maximize user's rewards */ extraStakeDeltaRuns: number; } export interface StakeSystemJSON { stakeList: types.ListJSON; delayedUnstakeCoolingDown: string; stakeDepositBumpSeed: number; stakeWithdrawBumpSeed: number; /** set by admin, how much slots before the end of the epoch, stake-delta can start */ slotsForStakeDelta: string; /** * Marks the start of stake-delta operations, meaning that if somebody starts a delayed-unstake ticket * after this var is set with epoch_num the ticket will have epoch_created = current_epoch+1 * (the user must wait one more epoch, because their unstake-delta will be execute in this epoch) */ lastStakeDeltaEpoch: string; minStake: string; /** * can be set by validator-manager-auth to allow a second run of stake-delta to stake late stakers in the last minute of the epoch * so we maximize user's rewards */ extraStakeDeltaRuns: number; } export declare class StakeSystem { readonly stakeList: types.List; readonly delayedUnstakeCoolingDown: BN; readonly stakeDepositBumpSeed: number; readonly stakeWithdrawBumpSeed: number; /** set by admin, how much slots before the end of the epoch, stake-delta can start */ readonly slotsForStakeDelta: BN; /** * Marks the start of stake-delta operations, meaning that if somebody starts a delayed-unstake ticket * after this var is set with epoch_num the ticket will have epoch_created = current_epoch+1 * (the user must wait one more epoch, because their unstake-delta will be execute in this epoch) */ readonly lastStakeDeltaEpoch: BN; readonly minStake: BN; /** * can be set by validator-manager-auth to allow a second run of stake-delta to stake late stakers in the last minute of the epoch * so we maximize user's rewards */ readonly extraStakeDeltaRuns: number; constructor(fields: StakeSystemFields); static layout(property?: string): import("buffer-layout").Layout<unknown>; static fromDecoded(obj: any): types.StakeSystem; static toEncodable(fields: StakeSystemFields): { stakeList: { account: Address; itemSize: number; count: number; newAccount: Address; copiedCount: number; }; delayedUnstakeCoolingDown: BN; stakeDepositBumpSeed: number; stakeWithdrawBumpSeed: number; slotsForStakeDelta: BN; lastStakeDeltaEpoch: BN; minStake: BN; extraStakeDeltaRuns: number; }; toJSON(): StakeSystemJSON; static fromJSON(obj: StakeSystemJSON): StakeSystem; toEncodable(): { stakeList: { account: Address; itemSize: number; count: number; newAccount: Address; copiedCount: number; }; delayedUnstakeCoolingDown: BN; stakeDepositBumpSeed: number; stakeWithdrawBumpSeed: number; slotsForStakeDelta: BN; lastStakeDeltaEpoch: BN; minStake: BN; extraStakeDeltaRuns: number; }; } //# sourceMappingURL=StakeSystem.d.ts.map