1.0.14 • Published 2 years ago

@everstake/eversol-ts-sdk v1.0.14

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Esol logo

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

1.0.9

2 years ago

1.0.8

2 years ago

1.0.11

2 years ago

1.0.10

2 years ago

1.0.14

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago