@everstake/eversol-ts-sdk
TypeScript icon, indicating that this package has built-in type declarations

1.0.14 • Public • Published

Eversol Stake Pool SDK

Eversol is a liquid staking protocol built on Solana. Eversol's main concept is to dedicate a percentage of the pool rewards (currently, 7% in the proposed scheme of Fees and Rewards Distribution) to the Stake Pool's Treasury, to fund the best projects being built on Solana. Unlike other stake pools, we will directly facilitate and boost the DeFi ecosystem by helping new apps and products come to life!

Installation

$ npm install @everstake/eversol-ts-sdk

Initialize the library

Import the main client class ESol and initialize it with the desired cluster type:

import { ESol } from '@everstake/eversol-ts-sdk';

// initializes for mainnet-beta
const eSol = new ESol('mainnet-beta');

// initializes for testnet
const eSol = new ESol('testnet');

// initializes for devnet
const eSol = new ESol('devnet');

Deposit SOL Transaction

Stake SOL and get your eSOL:

...
const depositSolTransaction = await eSol.createDepositSolTransactionWithReferrer(userAddress, amountLamports, referrerAccount)
// referrerAccount - should exist in referrer list (contact our team to add your address)
// than sign and send the `transaction`

Instant unstake eSOL Transaction

Skip the basic Solana cool-down period and undelegate stake instantly. If the feature is not available (meaning there is not enough liquidity/reserve in the pool to cover instant unstaking), please use the standard Unstake:

...
const instantUnstakeTransaction = await eSol.createUnDelegateSolTransaction(userAddress, eSolAmount)
// than sign and send the `transaction`

Classic delayed unstake eSOL Transaction

Your stake will be deactivated with the beginning of a new epoch. Once the stake is inactive, feel free to withdraw the tokens within your wallet, in compliance with regular Solana staking terms.

...
const delayedUnstakeTransaction = await eSol.createWithdrawSolTransaction(userAddress, eSolAmount, false)
// than sign and send the `transaction`

Withdraw Stake account

...
const withdrawStakeAccountTransaction = await eSol.createWithdrawStakeAccountTransaction(stakeAccountPubKey, userWalletAddress)
// than sign and send the `transaction`

Learn more

Dependencies (3)

Dev Dependencies (14)

Package Sidebar

Install

npm i @everstake/eversol-ts-sdk

Weekly Downloads

15

Version

1.0.14

License

ISC

Unpacked Size

116 kB

Total Files

32

Last publish

Collaborators

  • yevhenii_molodyk
  • ank-everstake