Skip to main content
This page has been updated for Wallets SDK V1. If you are using the previous version, see the previous version of this page or the V1 migration guide.
Defined in: packages/wallets/src/wallets/solana.ts:17

Extends

Constructors

new SolanaWallet()

new SolanaWallet(wallet): SolanaWallet
Defined in: packages/wallets/src/wallets/solana.ts:18

Parameters

Returns

SolanaWallet

Overrides

Wallet.constructor

Properties

Accessors

apiClient

Get Signature

get apiClient(): WalletsApiClient
Defined in: packages/wallets/src/wallets/wallet.ts:265
Returns
WalletsApiClient

Inherited from

Wallet.apiClient

recovery

Get Signature

get recovery(): SignerConfigForChain<C>
Defined in: packages/wallets/src/wallets/wallet.ts:289 Experimental Get the recovery signer config
Returns
SignerConfigForChain<C> The recovery signer config This API is experimental and may change in the future

Inherited from

Wallet.recovery

signer

Get Signature

get signer(): SignerAdapter<keyof SignResultMap> | undefined
Defined in: packages/wallets/src/wallets/wallet.ts:170
Returns
SignerAdapter<keyof SignResultMap> | undefined

Inherited from

Wallet.signer

Methods

addSigner()

addSigner<T>(signer, options?): Promise<T extends PrepareOnly<true> ? Signer & object : Signer>
Defined in: packages/wallets/src/wallets/wallet.ts:604 Add a signer to the wallet. Always uses the recovery signer internally to approve the registration. If the signer being added is the current operational signer, it will be reassembled with the new locator. Otherwise, the original signer is restored after the operation.

Type Parameters

Parameters

Returns

Promise<T extends PrepareOnly<true> ? Signer & object : Signer>

Inherited from

Wallet.addSigner

approve()

approve<T>(params): Promise<ApproveResult<T>>
Defined in: packages/wallets/src/wallets/wallet.ts:557 Approve a transaction or signature

Type Parameters

Parameters

Returns

Promise<ApproveResult<T>> The transaction or signature

Inherited from

Wallet.approve

approveTransaction()

approveTransaction(params): Promise<Error>
Defined in: packages/wallets/src/wallets/wallet.ts:533

Parameters

Returns

Promise<Error> The transaction

Deprecated

Use approve instead. Approve a transaction

Inherited from

Wallet.approveTransaction

balances()

balances(tokens?): Promise<Balances<"solana">>
Defined in: packages/wallets/src/wallets/wallet.ts:306 Get the wallet balances - always includes USDC and native token (ETH/SOL)

Parameters

Returns

Promise<Balances<"solana">> The balances returns nativeToken, usdc, tokens

Throws

If the balances cannot be retrieved

Inherited from

Wallet.balances

isSignerApproved()

isSignerApproved(signerLocator): Promise<boolean>
Defined in: packages/wallets/src/wallets/wallet.ts:973 Check if a signer is approved and usable for the current wallet chain.

Parameters

Returns

Promise<boolean> true if the signer is approved for this chain

Inherited from

Wallet.isSignerApproved

needsRecovery()

needsRecovery(): boolean
Defined in: packages/wallets/src/wallets/wallet.ts:981 Whether the wallet needs recovery (signer registration) before the next transaction.

Returns

boolean true if recovery is needed

Inherited from

Wallet.needsRecovery

nfts()

nfts(params): Promise<unknown>
Defined in: packages/wallets/src/wallets/wallet.ts:375 Get the wallet NFTs

Parameters

Returns

Promise<unknown> The NFTs

Inherited from

Wallet.nfts

recover()

recover(): Promise<void>
Defined in: packages/wallets/src/wallets/wallet.ts:997 Register a device signer with the wallet using the recovery signer. Generates a new device key and registers it on-chain. Returns early if the device signer’s locator is already approved on-chain.

Returns

Promise<void>

Inherited from

Wallet.recover

removeSigner()

removeSigner<T>(signer, options?): Promise<RemoveSignerReturnType>
Defined in: packages/wallets/src/wallets/wallet.ts:764 Remove a signer from the wallet. Always uses the recovery signer internally to approve the removal.

Type Parameters

Parameters

Returns

Promise<RemoveSignerReturnType>

Inherited from

Wallet.removeSigner

send()

send<T>(to, token, amount, options?): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>
Defined in: packages/wallets/src/wallets/wallet.ts:450 Send a token to a wallet or user locator

Type Parameters

Parameters

Returns

Promise<Transaction<T extends PrepareOnly<true> ? true : false>> The transaction

Inherited from

Wallet.send

sendTransaction()

sendTransaction<T>(params): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>
Defined in: packages/wallets/src/wallets/solana.ts:56 Send a raw Solana transaction.

Type Parameters

Parameters

Returns

Promise<Transaction<T extends PrepareOnly<true> ? true : false>> The transaction result

signerIsRegistered()

signerIsRegistered(signerLocator): Promise<boolean>
Defined in: packages/wallets/src/wallets/wallet.ts:964 Check if a signer is registered in this wallet.

Parameters

Returns

Promise<boolean> true if the signer is registered

Inherited from

Wallet.signerIsRegistered

signers()

signers(): Promise<Signer[]>
Defined in: packages/wallets/src/wallets/wallet.ts:1014 List the signers for this wallet. Returns full signer objects with status. For EVM wallets, only signers with an approval (pending or completed) for the wallet’s chain are included.

Returns

Promise<Signer[]> The signers

Inherited from

Wallet.signers

stagingFund()

stagingFund(amount, chain?): Promise<FundWalletResponse>
Defined in: packages/wallets/src/wallets/wallet.ts:345 Funds the wallet with Crossmint’s stablecoin (USDXM). Note: This method is only available in staging environments and exclusively supports USDXM tokens. It cannot be used in production environments.

Parameters

Returns

Promise<FundWalletResponse> The funding response

Throws

If the funding operation fails or if called in a production environment

Inherited from

Wallet.stagingFund

transaction()

transaction(transactionId): Promise<WalletsTransactionV2025ResponseDtoClass>
Defined in: packages/wallets/src/wallets/wallet.ts:407 Get a transaction by id

Parameters

Returns

Promise<WalletsTransactionV2025ResponseDtoClass> The transaction

Throws

If the transaction cannot be retrieved

Inherited from

Wallet.transaction

transactions()

transactions(): Promise<GetTransactionsResponse>
Defined in: packages/wallets/src/wallets/wallet.ts:394 Get the wallet transactions

Returns

Promise<GetTransactionsResponse> The transactions

Throws

If the transactions cannot be retrieved

Inherited from

Wallet.transactions

transfers()

transfers(params): Promise<WalletsActivityResponseUnstableDto>
Defined in: packages/wallets/src/wallets/wallet.ts:422 Get the wallet transfers

Parameters

Returns

Promise<WalletsActivityResponseUnstableDto> The transfers

Throws

If the transfers cannot be retrieved

Inherited from

Wallet.transfers

useSigner()

useSigner(signer): Promise<void>
Defined in: packages/wallets/src/wallets/wallet.ts:822 Set the active signer for this wallet. Accepts a signer config object. The locator is inferred internally. Works for both registered signers and the recovery signer. For passkey signers: if no id is provided, the wallet will auto-select the passkey if exactly one passkey signer is registered. If multiple passkeys exist, an id must be specified. For device signers: if no device key is found locally, the signer will be created automatically during the next transaction (via recovery). For external-wallet signers: the config object must include an onSign callback (applies to both registered and recovery signers).

Parameters

Returns

Promise<void>

Inherited from

Wallet.useSigner

waitForInit()

waitForInit(): Promise<void>
Defined in: packages/wallets/src/wallets/wallet.ts:178 Wait for the wallet’s internal signer initialization to complete. After this resolves, needsRecovery() reflects the true state.

Returns

Promise<void>

Inherited from

Wallet.waitForInit

from()

static from(wallet): SolanaWallet
Defined in: packages/wallets/src/wallets/solana.ts:36

Parameters

Returns

SolanaWallet