Constructs a SeedIdentity from a 64-byte seed and either a
caller-supplied wildcard descriptor ({ descriptor }) or the
default BIP86 path at the requested network ({ isMainnet }).
Prefer the fromSeed factory for symmetry with
MnemonicIdentity.fromMnemonic.
Throws on a non-wildcard descriptor, an xpub mismatch with the seed, or a missing derivation path.
ReadonlydescriptorWildcard account-descriptor template (e.g.
tr([fp/86'/0'/0']xpub/0/*)). The canonical thing to pass
through the system; consumers materialize a concrete descriptor
at a specific index themselves (see HDDescriptorProvider in
the wallet layer for the rotating-counter use case).
Returns the compressed public key for this identity.
Returns true when descriptor is derived from this identity's seed.
HD descriptors match by account xpub; bare tr(pubkey) descriptors
match by raw pubkey. See descriptorIsOurs.
Sign the provided transaction inputs.
Transaction to sign
OptionalinputIndexes: number[]Optional input indexes to sign. When omitted, the implementation should sign every signable input.
Returns a signer session used for musig2 tree signing flows.
Signs a message with the key derived from descriptor.
Signs each request with the key derived from its descriptor. Each descriptor must share this identity's seed (isOurs).
Converts to a watch-only identity that cannot sign. Carries the template forward, so the readonly side stays HD-capable (can derive descriptors at any index without seed access).
Returns the x-only public key used by Taproot scripts.
StaticfromCreates a SeedIdentity from a raw 64-byte seed.
Pass { isMainnet } for default BIP86 derivation, or
{ descriptor } for a caller-supplied account-descriptor
template (the option's value must end with /*)).
64-byte seed (typically from mnemonicToSeedSync)
Network selection or descriptor template.
Seed-based identity derived from a raw seed and an account descriptor template.
This is the recommended identity type for most applications. It uses standard BIP86 (Taproot) derivation by default; callers that need a different path supply the wildcard template directly.
Prefer this (or
See
MnemonicIdentity) over
SingleKeyfor new integrations —SingleKeyexists for backward compatibility with raw nsec-style keys.The identity holds the wildcard template (e.g.
tr([fp/86'/0'/0']xpub/0/*)) on its public descriptor field. HD rotation reads it directly; consumers that need a concrete descriptor at a specific index materialize it themselves (seeHDDescriptorProviderin the wallet layer).Exposes seed-level primitives (signing, derivation, the template) but is deliberately NOT a
DescriptorProvider. Wrap it explicitly to get one:HDDescriptorProviderfor rotating receive addresses.The split prevents a SeedIdentity from being silently used as a concrete descriptor source, which would defeat HD rotation without any compile-time signal that something was wrong.
Example