StakePoolProgram class
Stake Pool Program
Properties
hashCode
→ int
The hash code for this object.
no setter inherited
pubkey
→ Pubkey
The public key that identifies this program (i.e. program id).
final inherited
runtimeType
→ Type
A representation of the runtime type of the object.
no setter inherited
Static Methods
addValidatorToPool ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey reserveStake , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey stakeAccount , required Pubkey voteAccount , u32 ? seed })
→ TransactionInstruction
(Staker only) Adds a stake account delegated to validator, to the pool's list of managed
validators.
cleanupRemovedValidatorEntries ({required Pubkey stakePoolAddress , required Pubkey validatorList })
→ TransactionInstruction
Cleans up validator stake account entries marked as ready for removal
.
createTokenMetadata ({required Pubkey stakePoolAddress , required Pubkey manager , required Pubkey withdrawAuthority , required Pubkey poolMint , required Pubkey payer , required Pubkey tokenMetadataAccount , required String name , required String symbol , required String uri })
→ TransactionInstruction
Create token metadata for the stake-pool token in the metaplex-token program.
decreaseAdditionalValidatorStake ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey stakeAccount , required Pubkey uninitializedStakeAccount , required Pubkey transientStakeAccount , required bu64 lamports , required bu64 transientStakeSeed , required bu64 ephemeralStakeSeed })
→ TransactionInstruction
(Staker only) Decrease active stake again from a validator, eventually moving it to the
reserve.
decreaseValidatorStake ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey stakeAccount , required Pubkey transientStakeAccount , required bu64 lamports , required bu64 transientStakeSeed })
→ TransactionInstruction
(Staker only) Decrease active stake on a validator, eventually moving it to the reserve.
depositSol ({required Pubkey stakePoolAddress , required Pubkey withdrawAuthority , required Pubkey reserveStake , required Pubkey payer , required Pubkey payerTokenAccount , required Pubkey feeAccount , required Pubkey referralFeeAccount , required Pubkey poolMint , Pubkey ? depositAuthority , required bu64 lamports })
→ TransactionInstruction
Deposit SOL directly into the pool's reserve account. The output is a "pool" token
representing ownership into the pool. Inputs are converted to the current ratio.
depositStake ({required Pubkey stakePoolAddress , required Pubkey validatorList , required Pubkey depositAuthority , bool isDepositAuthoritySigner = false , required Pubkey withdrawAuthority , required Pubkey stakeAccount , required Pubkey validatorStakeAccount , required Pubkey reserveStake , required Pubkey userTokenAccount , required Pubkey tokenAccount , required Pubkey referralFeeAccount , required Pubkey poolMint })
→ TransactionInstruction
Deposit some stake into the pool. The output is a "pool" token representing ownership into
the pool. Inputs are converted to the current ratio.
findDepositAuthorityProgramAddress (Pubkey stakePoolAddress )
→ ProgramAddress
Find the deposit authority account address of the given stakePoolAddress
.
findEphemeralStakeProgramAddress (Pubkey stakePoolAddress , bu64 seed )
→ ProgramAddress
Find the ephemeral stake account address of stakePoolAddress
and seed
(u64).
findStakeProgramAddress (Pubkey voteAccountAddress , Pubkey stakePoolAddress , [bu64 ? seed ])
→ ProgramAddress
Find the stake account address of the given validator voteAccountAddress
and
stakePoolAddress
.
findTransientStakeProgramAddress (Pubkey voteAccountAddress , Pubkey stakePoolAddress , bu64 seed )
→ ProgramAddress
Find the transient stake account address of the given validator voteAccountAddress
,
stakePoolAddress
and seed
(u64).
findWithdrawAuthorityProgramAddress (Pubkey stakePoolAddress )
→ ProgramAddress
Find the withdraw authority account address of the given stakePoolAddress
.
increaseAdditionalValidatorStake ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey reserveStake , required Pubkey uninitializedStakeAccount , required Pubkey transientStakeAccount , required Pubkey validatorStakeAccount , required Pubkey voteAccount , required bu64 lamports , required bu64 transientStakeSeed , required bu64 ephemeralStakeSeed })
→ TransactionInstruction
(Staker only) Increase stake on a validator again in an epoch.
increaseValidatorStake ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey reserveStake , required Pubkey transientStakeAccount , required Pubkey validatorStakeAccount , required Pubkey validatorVoteAccount , required bu64 lamports , required bu64 transientStakeSeed })
→ TransactionInstruction
(Staker only) Increase stake on a validator from the reserve account.
initialize ({required Pubkey stakePoolAddress , required Pubkey manager , required Pubkey staker , Pubkey ? withdrawAuthority , required Pubkey validatorList , required Pubkey reserveStake , required Pubkey poolMint , required Pubkey managerFeeAccount , Pubkey ? depositAuthority , required Fee fee , required Fee withdrawalFee , required Fee depositFee , required u8 referralFee , required u32 maxValidators })
→ TransactionInstruction
Initializes a new StakePool .
redelegate ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey sourceStakeAccount , required Pubkey sourceTransientStakeAccount , required Pubkey uninitializedEphemeralStakeAccount , required Pubkey destinationTransientStakeAccount , required Pubkey destinationStakeAccount , required Pubkey destinationVoteAccount , required bu64 lamports , required bu64 sourceTransientStakeSeed , required bu64 ephemeralStakeSeed , required bu64 destinationTransientStakeSeed })
→ TransactionInstruction
(Staker only) Redelegate active stake on a validator, eventually moving it to another.
removeValidatorFromPool ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey stakeAccount , required Pubkey transientStakeAccount })
→ TransactionInstruction
(Staker only) Removes a validator from the pool, deactivating its stake.
setFee ({required Pubkey stakePoolAddress , required Pubkey manager , required FeeType fee })
→ TransactionInstruction
(Manager only) Update fee.
setFundingAuthority ({required Pubkey stakePoolAddress , required Pubkey manager , required Pubkey ? newAuthority , required FundingType fundingType })
→ TransactionInstruction
(Manager only) Update SOL deposit, stake deposit, or SOL withdrawal authority.
setManager ({required Pubkey stakePoolAddress , required Pubkey manager , required Pubkey newManager , required Pubkey newManagerFeeAccount })
→ TransactionInstruction
(Manager only) Update manager.
setPreferredValidator ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey validatorList , required PreferredValidatorType validatorType , required Pubkey ? validatorVoteAddress })
→ TransactionInstruction
(Staker only) Set the preferred deposit or withdraw stake account for the stake pool.
setStaker ({required Pubkey stakePoolAddress , required Pubkey staker , required Pubkey newStaker })
→ TransactionInstruction
(Manager or staker only) Update staker.
updateStakePoolBalance ({required Pubkey stakePoolAddress , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey reserveStake , required Pubkey managerFeeAccount , required Pubkey poolMint })
→ TransactionInstruction
Updates total pool balance based on balances in the reserve and validator list.
updateTokenMetadata ({required Pubkey stakePoolAddress , required Pubkey manager , required Pubkey withdrawAuthority , required Pubkey tokenMetadataAccount , required String name , required String symbol , required String uri })
→ TransactionInstruction
Update token metadata for the stake-pool token in the metaplex-token program.
updateValidatorListBalance ({required Pubkey stakePoolAddress , required Pubkey withdrawAuthority , required Pubkey validatorList , required Pubkey reserveStake , required List <Pubkey > validatorAndTransientStakeAccounts , required u32 startIndex , required bool noMerge })
→ TransactionInstruction
Updates balances of validator and transient stake accounts in the pool.
withdrawSol ({required Pubkey stakePoolAddress , required Pubkey withdrawAuthority , required Pubkey userTransferAuthority , required Pubkey userTokenAccount , required Pubkey reserveStake , required Pubkey receiverAccount , required Pubkey receiverTokenAccount , required Pubkey poolMint , Pubkey ? solWithdrawAuthority , required bu64 lamports })
→ TransactionInstruction
Withdraw SOL directly from the pool's reserve account. Fails if the reserve does not have
enough SOL.
withdrawStake ({required Pubkey stakePoolAddress , required Pubkey validatorList , required Pubkey withdrawAuthority , required Pubkey validatorOrReserveStakeAccount , required Pubkey unitializedStakeAccount , required Pubkey userWithdrawAuthority , required Pubkey userTransferAuthority , required Pubkey userTokenAccount , required Pubkey managerFeeAccount , required Pubkey poolMint , required bu64 lamports })
→ TransactionInstruction
Withdraw the token from the pool at the current ratio.