Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt

Use this file to discover all available pages before exploring further.

Abstract Base Class Base class for external-wallet delegated signers — wallets the user owns (e.g. MetaMask, Rainbow, Phantom) where the SDK never holds keys. In Crossmint terminology, an external wallet is a flavor of delegated signer that approves operations through the user’s own wallet UI.
abstract base class CrossmintExternalWalletSigner implements CrossmintWalletApprovalSigner
Signing goes through onSign; the signer is responsible for presenting the user whatever approval UI their wallet provides. The locator defaults to external-wallet:<address> when not provided explicitly.

Constructors

CrossmintExternalWalletSigner

CrossmintExternalWalletSigner({
  required this.address,
  String? locator,
  required this.onSign,
})
Creates an external-wallet signer.

Properties

address

final String address
The wallet address the user controls.

locator

final String locator

onSign

final CrossmintExternalWalletSignCallback onSign
User-provided signing callback. Receives the chain-specific payload and returns the resulting signature string.

Methods

requireSignature

Future<String> requireSignature( String payload, { required String label, })
Invokes onSign and validates the result is non-empty. Used by subclasses to share error wrapping.