@kamino-finance/scope-sdk
Version:
Scope Oracle SDK
226 lines • 7.24 kB
TypeScript
import { Address } from "@solana/kit";
import BN from "bn.js";
import * as types from "../types";
export interface StateFields {
msolMint: Address;
adminAuthority: Address;
operationalSolAccount: Address;
treasuryMsolAccount: Address;
reserveBumpSeed: number;
msolMintAuthorityBumpSeed: number;
rentExemptForTokenAcc: BN;
rewardFee: types.FeeFields;
stakeSystem: types.StakeSystemFields;
validatorSystem: types.ValidatorSystemFields;
liqPool: types.LiqPoolFields;
availableReserveBalance: BN;
msolSupply: BN;
msolPrice: BN;
/** count tickets for delayed-unstake */
circulatingTicketCount: BN;
/** total lamports amount of generated and not claimed yet tickets */
circulatingTicketBalance: BN;
lentFromReserve: BN;
minDeposit: BN;
minWithdraw: BN;
stakingSolCap: BN;
emergencyCoolingDown: BN;
}
export interface StateJSON {
msolMint: string;
adminAuthority: string;
operationalSolAccount: string;
treasuryMsolAccount: string;
reserveBumpSeed: number;
msolMintAuthorityBumpSeed: number;
rentExemptForTokenAcc: string;
rewardFee: types.FeeJSON;
stakeSystem: types.StakeSystemJSON;
validatorSystem: types.ValidatorSystemJSON;
liqPool: types.LiqPoolJSON;
availableReserveBalance: string;
msolSupply: string;
msolPrice: string;
/** count tickets for delayed-unstake */
circulatingTicketCount: string;
/** total lamports amount of generated and not claimed yet tickets */
circulatingTicketBalance: string;
lentFromReserve: string;
minDeposit: string;
minWithdraw: string;
stakingSolCap: string;
emergencyCoolingDown: string;
}
export declare class State {
readonly msolMint: Address;
readonly adminAuthority: Address;
readonly operationalSolAccount: Address;
readonly treasuryMsolAccount: Address;
readonly reserveBumpSeed: number;
readonly msolMintAuthorityBumpSeed: number;
readonly rentExemptForTokenAcc: BN;
readonly rewardFee: types.Fee;
readonly stakeSystem: types.StakeSystem;
readonly validatorSystem: types.ValidatorSystem;
readonly liqPool: types.LiqPool;
readonly availableReserveBalance: BN;
readonly msolSupply: BN;
readonly msolPrice: BN;
/** count tickets for delayed-unstake */
readonly circulatingTicketCount: BN;
/** total lamports amount of generated and not claimed yet tickets */
readonly circulatingTicketBalance: BN;
readonly lentFromReserve: BN;
readonly minDeposit: BN;
readonly minWithdraw: BN;
readonly stakingSolCap: BN;
readonly emergencyCoolingDown: BN;
constructor(fields: StateFields);
static layout(property?: string): import("buffer-layout").Layout<unknown>;
static fromDecoded(obj: any): types.State;
static toEncodable(fields: StateFields): {
msolMint: Address;
adminAuthority: Address;
operationalSolAccount: Address;
treasuryMsolAccount: Address;
reserveBumpSeed: number;
msolMintAuthorityBumpSeed: number;
rentExemptForTokenAcc: BN;
rewardFee: {
basisPoints: number;
};
stakeSystem: {
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;
};
validatorSystem: {
validatorList: {
account: Address;
itemSize: number;
count: number;
newAccount: Address;
copiedCount: number;
};
managerAuthority: Address;
totalValidatorScore: number;
totalActiveBalance: BN;
autoAddValidatorEnabled: number;
};
liqPool: {
lpMint: Address;
lpMintAuthorityBumpSeed: number;
solLegBumpSeed: number;
msolLegAuthorityBumpSeed: number;
msolLeg: Address;
lpLiquidityTarget: BN;
lpMaxFee: {
basisPoints: number;
};
lpMinFee: {
basisPoints: number;
};
treasuryCut: {
basisPoints: number;
};
lpSupply: BN;
lentFromSolLeg: BN;
liquiditySolCap: BN;
};
availableReserveBalance: BN;
msolSupply: BN;
msolPrice: BN;
circulatingTicketCount: BN;
circulatingTicketBalance: BN;
lentFromReserve: BN;
minDeposit: BN;
minWithdraw: BN;
stakingSolCap: BN;
emergencyCoolingDown: BN;
};
toJSON(): StateJSON;
static fromJSON(obj: StateJSON): State;
toEncodable(): {
msolMint: Address;
adminAuthority: Address;
operationalSolAccount: Address;
treasuryMsolAccount: Address;
reserveBumpSeed: number;
msolMintAuthorityBumpSeed: number;
rentExemptForTokenAcc: BN;
rewardFee: {
basisPoints: number;
};
stakeSystem: {
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;
};
validatorSystem: {
validatorList: {
account: Address;
itemSize: number;
count: number;
newAccount: Address;
copiedCount: number;
};
managerAuthority: Address;
totalValidatorScore: number;
totalActiveBalance: BN;
autoAddValidatorEnabled: number;
};
liqPool: {
lpMint: Address;
lpMintAuthorityBumpSeed: number;
solLegBumpSeed: number;
msolLegAuthorityBumpSeed: number;
msolLeg: Address;
lpLiquidityTarget: BN;
lpMaxFee: {
basisPoints: number;
};
lpMinFee: {
basisPoints: number;
};
treasuryCut: {
basisPoints: number;
};
lpSupply: BN;
lentFromSolLeg: BN;
liquiditySolCap: BN;
};
availableReserveBalance: BN;
msolSupply: BN;
msolPrice: BN;
circulatingTicketCount: BN;
circulatingTicketBalance: BN;
lentFromReserve: BN;
minDeposit: BN;
minWithdraw: BN;
stakingSolCap: BN;
emergencyCoolingDown: BN;
};
}
//# sourceMappingURL=State.d.ts.map