Skip to content
docs

WalletManagerSolana

Defined in: wallet-solana/src/manager.ts:20

One seed → Solana accounts at m/44’/501’/i’/0’ (SLIP-10 ed25519; Phantom and Solflare default). Paths may be given relative to m/44’/501’ (“0’/0’”) or in full.

Built with an ed25519 Signer instead of a seed, the manager wraps it:

  • a derivable SeedSigner sitting at m/44'/501' yields getAccount(i) → i'/0' children (any path under the signer’s path derives);
  • a SeedSigner at a leaf, or any external signer, is getAccount(0) (path = the signer’s path, or ‘external’); other indexes/paths throw SignerError.

new WalletManagerSolana(seedOrSigner, config?): WalletManagerSolana

Defined in: wallet-solana/src/manager.ts:21

string | Uint8Array<ArrayBufferLike> | Signer

SolanaConfig = {}

WalletManagerSolana

WalletManager<WalletAccountSolana, SolanaConfig>.constructor

protected readonly _accounts: Map<string, WalletAccountSolana>

Defined in: core/dist/index.d.ts:271

WalletManager._accounts


protected readonly _config: SolanaConfig

Defined in: core/dist/index.d.ts:270

WalletManager._config


protected readonly _signer: Signer | undefined

Defined in: core/dist/index.d.ts:269

WalletManager._signer

protected cachedAccount(key, create): Promise<WalletAccountSolana>

Defined in: core/dist/index.d.ts:295

The account cached under key, built by create at most once: concurrent calls share one build. Throws once the manager is disposed; an account whose build finishes after dispose() is disposed itself and the call throws, so no live signing account outlives the manager.

string

() => WalletAccountSolana | Promise<WalletAccountSolana>

Promise<WalletAccountSolana>

WalletManager.cachedAccount


dispose(): void

Defined in: core/dist/index.d.ts:302

Dispose every derived account and zeroize the seed; subclasses zeroize their own extras first, then call super.

void

WalletManager.dispose


protected externalSigner(): Signer | undefined

Defined in: core/dist/index.d.ts:281

The Signer this manager was built with, if any (no mnemonic then). Chain managers decide how to turn it into accounts.

Signer | undefined

WalletManager.externalSigner


getAccount(index?): Promise<WalletAccountSolana>

Defined in: wallet-solana/src/manager.ts:26

Account index on the chain’s standard path. Cached per index.

number = 0

Promise<WalletAccountSolana>

WalletManager.getAccount


getAccountByPath(path): Promise<WalletAccountSolana>

Defined in: wallet-solana/src/manager.ts:30

Account at an explicit path. Cached per path.

string

Promise<WalletAccountSolana>

WalletManager.getAccountByPath


getFeeRates(): Promise<FeeRates>

Defined in: wallet-solana/src/manager.ts:64

Max recent prioritization fee (micro-lamports/CU); slow = ×0.8, fast = ×1.2.

Promise<FeeRates>

WalletManager.getFeeRates


getReadOnlyAccount(address): WalletAccountReadOnlySolana

Defined in: wallet-solana/src/manager.ts:59

A read-only account for any address, with this manager’s config.

string

WalletAccountReadOnlySolana


protected requireSigner(curve): Signer

Defined in: core/dist/index.d.ts:283

The external signer, asserted to sign on curve; throws when the manager holds a mnemonic instead.

SignerCurve

Signer

WalletManager.requireSigner


protected seedBytes(): Uint8Array

Defined in: core/dist/index.d.ts:275

The 64-byte seed this manager derives from; throws for a Signer-built or disposed manager.

Uint8Array

WalletManager.seedBytes


protected signerAccount(key, signer, relativePath, build): Promise<WalletAccountSolana>

Defined in: core/dist/index.d.ts:300

cachedAccount over an injected signer: the signer itself (relativePath undefined) or its child along relativePath. A child that never becomes an account is disposed.

string

Signer

string | undefined

(leaf, publicKey) => WalletAccountSolana

Promise<WalletAccountSolana>

WalletManager.signerAccount


static getRandomSeedPhrase(words?): string

Defined in: core/dist/index.d.ts:279

Same as the core getRandomSeedPhrase.

24 | 12

string

WalletManager.getRandomSeedPhrase


static isValidSeedPhrase(seed): boolean

Defined in: core/dist/index.d.ts:277

Same as the core isValidSeedPhrase.

string

boolean

WalletManager.isValidSeedPhrase