Table of Contents

Namespace NArk.Core.Wallet

Classes

CompositeArkadeWalletSigner

An IArkadeWalletSigner composed of one or more IDescriptorSigningSources. For every signing call the composite resolves the first source whose CanProvideAsync(OutputDescriptor, CancellationToken) returns true and dispatches the operation to it. Source order is significant — earlier sources take precedence — so callers should register the cheapest / most-local source first and any fallbacks (e.g. remote-signer transports) last.

DefaultWalletProvider

Default implementation of IWalletProvider.

Signing capability is answered by asking — never by tagging the wallet: GetSignerAsync(string, CancellationToken) returns a local signer when Secret is present, a remote-signer proxy when an IRemoteSignerTransport is registered and claims the wallet, and null otherwise (watch-only). Address derivation always works from AccountDescriptor alone, regardless of signer availability.

DelegatingAddressProvider

Wraps an existing IArkadeAddressProvider to override contract derivation for Receive and SendToSelf purposes, producing ArkDelegateContract instead of ArkPaymentContract. Boarding contracts pass through unchanged.

DelegatingWalletProvider

Decorator on IWalletProvider that wraps address providers to produce ArkDelegateContract for HD wallets. The delegator pubkey and server info are fetched lazily and cached.

HierarchicalDeterministicAddressProvider
SingleKeyAddressProvider
WalletFactory

Factory for creating wallet info records from secrets (nsec or mnemonic), and watch-only wallets from an account descriptor.