CrossmintWallet, exposes lifecycle operations
(getWallet, createWallet, ensureLoaded, refresh, clear),
surfaces OTP challenges via otp, and provides create*Wallet*
convenience methods that wire a runtime wallet with a signer of your
choosing (device, non-custodial, external, passkey).
Obtain one from CrossmintClient.createWalletController and pair it with
CrossmintWalletHost (headless) or CrossmintWalletProvider
(opt-in Material UI) so the hidden signer bridge has a place to mount.
Extends ChangeNotifier — listen to the controller for wallet-state
changes. Mutations go through the controller’s public API; observation
can additionally go through state for a narrower, read-only surface.
Constructors
CrossmintWalletController
CrossmintClient.createWalletController over calling this directly.
Properties
client
config
otp
state
Listenable while still routing all mutations through the controller’s public API (getWallet, createWallet, refresh, clear, …).
currentWallet
null if none is loaded.
status
onAuthRequired
pendingOtpChallenge
CrossmintWalletOtpController.pendingChallenge.
otpChallengeListenable
CrossmintWalletOtpController.challengeListenable.
requireCurrentWallet
CrossmintWalletException when none is loaded.
Methods
getWallet
null when no wallet matches. Listeners fire on state changes.
loadWallet
createWallet
crossmintValidatePasskeySigners and fires CrossmintWalletLifecycleCallbacks.onWalletCreationStart if set.
ensureLoaded
refresh
null when nothing is loaded.
clear
sendOtp
CrossmintWalletOtpController.sendOtp.
verifyOtp
CrossmintWalletOtpController.verifyOtp.
rejectOtp
CrossmintWalletOtpController.reject.
createEvmWallet
CrossmintEvmWallet. Throws CrossmintWalletException if no wallet is loaded.
createSolanaWallet
CrossmintSolanaWallet. Device signers are not supported on Solana.
createStellarWallet
CrossmintStellarWallet.
createEvmWalletWithDeviceSigner
createEvmWalletWithNonCustodialSigner
CrossmintWalletHost (or CrossmintWalletProvider) mounted in the widget tree.
createSolanaWalletWithNonCustodialSigner
createStellarWalletWithNonCustodialSigner
createStellarWalletWithDeviceSigner
createEvmWalletWithExternalWalletSigner
onSign to perform signatures.
createSolanaWalletWithExternalWalletSigner
createStellarWalletWithExternalWalletSigner
createEvmWalletWithPasskeySigner
createSolanaWalletWithPasskeySigner
createEvmWalletWithPasskeySigner for passkey selection semantics.
createStellarWalletWithPasskeySigner
createEvmWalletWithPasskeySigner for passkey selection semantics.

