Class SolanaStakingClient
Constructors
constructor
Parameters
- __namedParameters: IInitOptions
Properties
connection
connection: Connection
Readonly
programs
programs: Programs
Methods
claimRewards
Returns Promise<ITransactionResult>
createRewardEntry
Returns Promise<ITransactionResult>
createRewardPool
Returns Promise<CreationResult>
createStakePool
Returns Promise<CreationResult>
decode
Type Parameters
- ProgramName extends keyof Programs = keyof Programs
- DecodingProgram = Programs[ProgramName]
- DerivedIdl extends Idl = DecodingProgram extends Program<IDLType> ? IDLType : never
- AccountName extends string | number | symbol = keyof IdlAccounts<DerivedIdl>
- DecodedAccount = IdlAccounts<DerivedIdl>[AccountName]
fundPool
Returns Promise<ITransactionResult>
getCommitment
getCommitment(): Commitment
getCurrentProgramId
getCurrentProgramId(programKey: keyof Programs): PublicKey Parameters
- programKey: keyof Programs
Returns PublicKey
getDefaultFeeValue
getDefaultFeeValue(): Promise< { authority: PublicKey; buffer1: number[]; buffer2: number[]; buffer3: number[]; streamflowFee: BN; },> Returns Promise<
{
authority: PublicKey;
buffer1: number[];
buffer2: number[];
buffer3: number[];
streamflowFee: BN;
},
>
getDiscriminator
Type Parameters
- ProgramName extends keyof Programs = keyof Programs
- DecodingProgram = Programs[ProgramName]
- DerivedIdl extends Idl = DecodingProgram extends Program<IDLType> ? IDLType : never
- AccountName extends string | number | symbol = keyof IdlAccounts<DerivedIdl>
Returns number[]
getFee
getFee( target: string | PublicKey,): Promise< | { buffer: number[]; streamflowFee: BN } | { authority: PublicKey; buffer1: number[]; buffer2: number[]; buffer3: number[]; streamflowFee: BN; },> Parameters
- target: string | PublicKey
Returns Promise<
| { buffer: number[]; streamflowFee: BN }
| {
authority: PublicKey;
buffer1: number[];
buffer2: number[];
buffer3: number[];
streamflowFee: BN;
},
>
getFeeValueIfExists
getFeeValueIfExists( target: string | PublicKey,): Promise<{ buffer: number[]; streamflowFee: BN }> Parameters
- target: string | PublicKey
Returns Promise<{ buffer: number[]; streamflowFee: BN }>
getStakeEntry
getStakeEntry( id: string | PublicKey,): Promise< { amount: BN; authority: PublicKey; buffer: number[]; closedTs: BN; createdTs: BN; duration: BN; effectiveAmount: BN; nonce: number; payer: PublicKey; priorTotalEffectiveStake: BN; stakePool: PublicKey; unstakeTs: BN; },> Returns Promise<
{
amount: BN;
authority: PublicKey;
buffer: number[];
closedTs: BN;
createdTs: BN;
duration: BN;
effectiveAmount: BN;
nonce: number;
payer: PublicKey;
priorTotalEffectiveStake: BN;
stakePool: PublicKey;
unstakeTs: BN;
},
>
getStakePool
getStakePool( id: string | PublicKey,): Promise< { authority: PublicKey; buffer: number[]; bump: number; creator: PublicKey; freezeStakeMint: boolean; maxDuration: BN; maxWeight: BN; minDuration: BN; mint: PublicKey; minWeight: BN; nonce: number; permissionless: boolean; stakeMint: PublicKey; totalEffectiveStake: BN; totalStake: BN; unstakePeriod: BN; vault: PublicKey; },> Returns Promise<
{
authority: PublicKey;
buffer: number[];
bump: number;
creator: PublicKey;
freezeStakeMint: boolean;
maxDuration: BN;
maxWeight: BN;
minDuration: BN;
mint: PublicKey;
minWeight: BN;
nonce: number;
permissionless: boolean;
stakeMint: PublicKey;
totalEffectiveStake: BN;
totalStake: BN;
unstakePeriod: BN;
vault: PublicKey;
},
>
prepareClaimRewardsInstructions
Returns Promise<{ ixs: TransactionInstruction[] }>
prepareCreateRewardEntryInstructions
Returns Promise<{ ixs: TransactionInstruction[] }>
prepareCreateRewardPoolInstructions
Returns Promise<{ ixs: TransactionInstruction[]; publicKey: PublicKey }>
prepareCreateStakePoolInstructions
Returns Promise<{ ixs: TransactionInstruction[]; publicKey: PublicKey }>
prepareFundPoolInstructions
Returns Promise<{ ixs: TransactionInstruction[] }>
prepareStakeInstructions
Returns Promise<{ ixs: TransactionInstruction[] }>
prepareUnstakeInstructions
prepareUnstakeInstructions( __namedParameters: StakeBaseArgs, extParams: IInteractSolanaExt,): Promise<{ ixs: TransactionInstruction[] }> Returns Promise<{ ixs: TransactionInstruction[] }>
prepareUpdateRewardPoolInstructions
Returns Promise<{ ixs: TransactionInstruction[] }>
searchRewardEntries
searchRewardEntries( criteria: Partial< Pick< { accountedAmount: BN; buffer: number[]; claimedAmount: BN; createdTs: BN; lastAccountedTs: BN; lastRewardAmount: BN; lastRewardPeriod: BN; rewardPool: PublicKey; stakeEntry: PublicKey; }, "rewardPool" | "stakeEntry", >, >,): Promise< ProgramAccount< { accountedAmount: BN; buffer: number[]; claimedAmount: BN; createdTs: BN; lastAccountedTs: BN; lastRewardAmount: BN; lastRewardPeriod: BN; rewardPool: PublicKey; stakeEntry: PublicKey; }, >[],> Parameters
- criteria: Partial<
Pick<
{
accountedAmount: BN;
buffer: number[];
claimedAmount: BN;
createdTs: BN;
lastAccountedTs: BN;
lastRewardAmount: BN;
lastRewardPeriod: BN;
rewardPool: PublicKey;
stakeEntry: PublicKey;
},
"rewardPool"
| "stakeEntry",
>,
>
Returns Promise<
ProgramAccount<
{
accountedAmount: BN;
buffer: number[];
claimedAmount: BN;
createdTs: BN;
lastAccountedTs: BN;
lastRewardAmount: BN;
lastRewardPeriod: BN;
rewardPool: PublicKey;
stakeEntry: PublicKey;
},
>[],
>
searchRewardPools
searchRewardPools( criteria?: Partial< Pick< { authority: PublicKey; buffer: number[]; bump: number; claimedAmount: BN; createdTs: BN; creator: PublicKey; fundedAmount: BN; lastAmountUpdateTs: BN; lastClaimPeriod: BN; lastPeriodUpdateTs: BN; lastRewardAmount: BN; lastRewardPeriod: BN; mint: PublicKey; nonce: number; permissionless: boolean; rewardAmount: BN; rewardPeriod: BN; stakePool: PublicKey; vault: PublicKey; }, "mint" | "stakePool", >, >,): Promise< ProgramAccount< { authority: PublicKey; buffer: number[]; bump: number; claimedAmount: BN; createdTs: BN; creator: PublicKey; fundedAmount: BN; lastAmountUpdateTs: BN; lastClaimPeriod: BN; lastPeriodUpdateTs: BN; lastRewardAmount: BN; lastRewardPeriod: BN; mint: PublicKey; nonce: number; permissionless: boolean; rewardAmount: BN; rewardPeriod: BN; stakePool: PublicKey; vault: PublicKey; }, >[],> Parameters
- criteria: Partial<
Pick<
{
authority: PublicKey;
buffer: number[];
bump: number;
claimedAmount: BN;
createdTs: BN;
creator: PublicKey;
fundedAmount: BN;
lastAmountUpdateTs: BN;
lastClaimPeriod: BN;
lastPeriodUpdateTs: BN;
lastRewardAmount: BN;
lastRewardPeriod: BN;
mint: PublicKey;
nonce: number;
permissionless: boolean;
rewardAmount: BN;
rewardPeriod: BN;
stakePool: PublicKey;
vault: PublicKey;
},
"mint"
| "stakePool",
>,
> = {}
Returns Promise<
ProgramAccount<
{
authority: PublicKey;
buffer: number[];
bump: number;
claimedAmount: BN;
createdTs: BN;
creator: PublicKey;
fundedAmount: BN;
lastAmountUpdateTs: BN;
lastClaimPeriod: BN;
lastPeriodUpdateTs: BN;
lastRewardAmount: BN;
lastRewardPeriod: BN;
mint: PublicKey;
nonce: number;
permissionless: boolean;
rewardAmount: BN;
rewardPeriod: BN;
stakePool: PublicKey;
vault: PublicKey;
},
>[],
>
searchStakeEntries
searchStakeEntries( criteria?: Partial< Pick< { amount: BN; authority: PublicKey; buffer: number[]; closedTs: BN; createdTs: BN; duration: BN; effectiveAmount: BN; nonce: number; payer: PublicKey; priorTotalEffectiveStake: BN; stakePool: PublicKey; unstakeTs: BN; }, "payer" | "authority" | "stakePool", >, >,): Promise< ProgramAccount< { amount: BN; authority: PublicKey; buffer: number[]; closedTs: BN; createdTs: BN; duration: BN; effectiveAmount: BN; nonce: number; payer: PublicKey; priorTotalEffectiveStake: BN; stakePool: PublicKey; unstakeTs: BN; }, >[],> Parameters
- criteria: Partial<
Pick<
{
amount: BN;
authority: PublicKey;
buffer: number[];
closedTs: BN;
createdTs: BN;
duration: BN;
effectiveAmount: BN;
nonce: number;
payer: PublicKey;
priorTotalEffectiveStake: BN;
stakePool: PublicKey;
unstakeTs: BN;
},
"payer"
| "authority"
| "stakePool",
>,
> = {}
Returns Promise<
ProgramAccount<
{
amount: BN;
authority: PublicKey;
buffer: number[];
closedTs: BN;
createdTs: BN;
duration: BN;
effectiveAmount: BN;
nonce: number;
payer: PublicKey;
priorTotalEffectiveStake: BN;
stakePool: PublicKey;
unstakeTs: BN;
},
>[],
>
searchStakePools
searchStakePools( criteria?: Partial< Pick< { authority: PublicKey; buffer: number[]; bump: number; creator: PublicKey; freezeStakeMint: boolean; maxDuration: BN; maxWeight: BN; minDuration: BN; mint: PublicKey; minWeight: BN; nonce: number; permissionless: boolean; stakeMint: PublicKey; totalEffectiveStake: BN; totalStake: BN; unstakePeriod: BN; vault: PublicKey; }, "mint" | "creator", >, >,): Promise< ProgramAccount< { authority: PublicKey; buffer: number[]; bump: number; creator: PublicKey; freezeStakeMint: boolean; maxDuration: BN; maxWeight: BN; minDuration: BN; mint: PublicKey; minWeight: BN; nonce: number; permissionless: boolean; stakeMint: PublicKey; totalEffectiveStake: BN; totalStake: BN; unstakePeriod: BN; vault: PublicKey; }, >[],> Parameters
- criteria: Partial<
Pick<
{
authority: PublicKey;
buffer: number[];
bump: number;
creator: PublicKey;
freezeStakeMint: boolean;
maxDuration: BN;
maxWeight: BN;
minDuration: BN;
mint: PublicKey;
minWeight: BN;
nonce: number;
permissionless: boolean;
stakeMint: PublicKey;
totalEffectiveStake: BN;
totalStake: BN;
unstakePeriod: BN;
vault: PublicKey;
},
"mint"
| "creator",
>,
> = {}
Returns Promise<
ProgramAccount<
{
authority: PublicKey;
buffer: number[];
bump: number;
creator: PublicKey;
freezeStakeMint: boolean;
maxDuration: BN;
maxWeight: BN;
minDuration: BN;
mint: PublicKey;
minWeight: BN;
nonce: number;
permissionless: boolean;
stakeMint: PublicKey;
totalEffectiveStake: BN;
totalStake: BN;
unstakePeriod: BN;
vault: PublicKey;
},
>[],
>
stake
Returns Promise<ITransactionResult>
unstake
unstake( data: StakeBaseArgs, extParams: IInteractSolanaExt,): Promise<ITransactionResult> Returns Promise<ITransactionResult>
updateRewardPool
Returns Promise<{ ixs: TransactionInstruction[]; txId: string }>