(sigil bitcoin miniscript)
(sigil bitcoin miniscript) — Miniscript, descriptors, and wallet policies
Exports
miniscript-fragmentprocedureMiniscript fragment AST node.
miniscript-fragment?procedureTest if a value is a miniscript-fragment struct.
miniscript-fragment-kindprocedureGet the kind field of a miniscript-fragment struct.
miniscript-fragment-argsprocedureGet the args field of a miniscript-fragment struct.
miniscript-fragment-dataprocedureGet the data field of a miniscript-fragment struct.
Get the data field of a miniscript-fragment struct.
miniscript-type-info-recordprocedureDerived metadata used by descriptor policy and signing flows.
miniscript-type-info-record?procedureTest if a value is a miniscript-type-info-record struct.
miniscript-type-info-record-baseprocedureGet the base field of a miniscript-type-info-record struct.
Get the properties field of a miniscript-type-info-record struct.
Get the satisfaction-items field of a miniscript-type-info-record struct.
Get the requires-signature field of a miniscript-type-info-record struct.
Get the requires-preimage field of a miniscript-type-info-record struct.
Get the has-timelock field of a miniscript-type-info-record struct.
Get the nonmalleable field of a miniscript-type-info-record struct.
%descriptor--typevariableGet the nonmalleable field of a miniscript-type-info-record struct.
descriptorprocedureOutput descriptor AST node.
descriptor?procedureTest if a value is a descriptor struct.
descriptor-kindprocedureGet the kind field of a descriptor struct.
descriptor-argsprocedureGet the args field of a descriptor struct.
descriptor-dataprocedureGet the data field of a descriptor struct.
%musig-key--typevariableGet the data field of a descriptor struct.
musig-keyprocedureBIP390 MuSig key expression placeholder.
musig-key?procedureTest if a value is a musig-key struct.
musig-key-keysprocedureGet the keys field of a musig-key struct.
musig-key-suffixprocedureGet the suffix field of a musig-key struct.
%wallet-policy--typevariableGet the suffix field of a musig-key struct.
wallet-policyprocedureBIP388 wallet policy with descriptor template and key list.
wallet-policy?procedureTest if a value is a wallet-policy struct.
wallet-policy-templateprocedureGet the template field of a wallet-policy struct.
wallet-policy-keysprocedureGet the keys field of a wallet-policy struct.
%descriptor-psbt-plan--typevariableGet the keys field of a wallet-policy struct.
descriptor-psbt-planprocedureDerived descriptor data ready to attach to a PSBT input or output.
descriptor-psbt-plan?procedureTest if a value is a descriptor-psbt-plan struct.
descriptor-psbt-plan-descriptorprocedureGet the descriptor field of a descriptor-psbt-plan struct.
descriptor-psbt-plan-script-pubkeyprocedureGet the script-pubkey field of a descriptor-psbt-plan struct.
descriptor-psbt-plan-redeem-scriptprocedureGet the redeem-script field of a descriptor-psbt-plan struct.
descriptor-psbt-plan-witness-scriptprocedureGet the witness-script field of a descriptor-psbt-plan struct.
Get the taproot-leaf-scripts field of a descriptor-psbt-plan struct.
Get the bip32-derivations field of a descriptor-psbt-plan struct.
Get the taproot-bip32-derivations field of a descriptor-psbt-plan struct.
descriptor-psbt-plan-change?procedureGet the change? field of a descriptor-psbt-plan struct.
taproot-leaf-hashprocedureCompute the BIP341 TapLeaf hash for a tapscript leaf.
taproot-branch-hashprocedureCompute the BIP341 TapBranch hash with lexicographically sorted children.
taproot-output-xonlyprocedureCompute a BIP341 Taproot output x-only public key.
miniscript-pk-kprocedureConstruct a pk_k(key) Miniscript fragment.
miniscript-pk-hprocedureConstruct a pk_h(key) Miniscript fragment.
miniscript-pkprocedureConstruct the pk(key) alias for c:pk_k(key).
miniscript-afterprocedureConstruct an absolute locktime after(n) fragment.
miniscript-olderprocedureConstruct a relative locktime older(n) fragment.
miniscript-sha256procedureConstruct a sha256(hash) preimage fragment.
miniscript-hash256procedureConstruct a hash256(hash) preimage fragment.
miniscript-ripemd160procedureConstruct a ripemd160(hash) preimage fragment.
miniscript-hash160procedureConstruct a hash160(hash) preimage fragment.
miniscript-multiprocedureConstruct a multi(k, keys...) multisig fragment.
miniscript-sortedmultiprocedureConstruct a sortedmulti(k, keys...) multisig fragment.
miniscript-multi-aprocedureConstruct a multi_a(k, keys...) Tapscript CHECKSIGADD fragment.
miniscript-and-vprocedureConstruct an and_v(left, right) fragment.
miniscript-and-bprocedureConstruct an and_b(left, right) fragment.
miniscript-andorprocedureConstruct an andor(left, then, else) fragment.
miniscript-or-bprocedureConstruct an or_b(left, right) fragment.
miniscript-or-cprocedureConstruct an or_c(left, right) fragment.
miniscript-or-dprocedureConstruct an or_d(left, right) fragment.
miniscript-or-iprocedureConstruct an or_i(left, right) fragment.
miniscript-threshprocedureConstruct a thresh(k, fragments...) fragment.
miniscript-wrapperprocedureApply wrapper characters to a Miniscript fragment.
miniscript-parseprocedureParse a Miniscript expression into a fragment AST.
miniscript-type-info?procedureTest if a value is a miniscript-type-info record.
miniscript-type-info-baseprocedureReturn the Miniscript base type symbol.
miniscript-type-info-propertiesprocedureReturn Miniscript satisfaction property symbols.
Return the estimated satisfaction stack item count.
Return true when satisfaction requires a signature.
Return true when satisfaction requires a hash preimage.
miniscript-type-info-has-timelockprocedureReturn true when the fragment contains a timelock.
miniscript-type-info-nonmalleableprocedureReturn true when the fragment is treated as nonmalleable.
miniscript-type-infoprocedureReturn Miniscript base type and signing/satisfaction metadata.
miniscript-typeprocedureReturn the coarse Miniscript base type for a fragment.
miniscript-type-checkprocedureValidate a Miniscript fragment and return its coarse base type.
miniscript->stringprocedureRender a Miniscript fragment to its canonical string form.
miniscript-compileprocedureCompile a supported Miniscript fragment into script bytes.
miniscript-compile-tapscriptprocedureCompile a supported Miniscript fragment into BIP342 tapscript bytes.
taproot-tree-rootprocedureCompile a parsed Taproot script tree into its BIP341 Merkle root.
descriptor-checksumprocedureCompute the BIP380 8-character descriptor checksum.
descriptor-add-checksumprocedureAppend a BIP380 checksum to a descriptor string.
descriptor-checksum-valid?procedureReturn true when a descriptor contains a valid BIP380 checksum.
descriptor-strip-checksumprocedureRemove and validate a checksum when one is present.
descriptor-parseprocedureParse an output descriptor into a descriptor AST.
descriptor->stringprocedureRender a descriptor AST to a canonical descriptor string.
descriptor-script-pubkeyprocedureDerive the scriptPubKey for a descriptor.
Requires concrete public keys for descriptors that directly encode address scripts.
descriptor-deriveprocedureDerive ranged descriptor keys into concrete public keys.
branch selects BIP389 multipath alternatives, and index replaces wildcard path segments.
descriptor-derive-script-pubkeyprocedureDerive a ranged descriptor and return its concrete scriptPubKey.
descriptor-derive-psbt-planprocedureBuild a derived descriptor plan containing script and PSBT key-origin data.
wallet-policy-from-templateprocedureBuild a BIP388 wallet policy from descriptor template text and keys.
wallet-policy-descriptorprocedureExpand a wallet policy into a concrete descriptor.
wallet-policy-derive-psbt-planprocedureExpand and derive a wallet policy into a PSBT planning record.
descriptor-psbt-plan-annotate-inputprocedureAttach descriptor-derived metadata to a PSBT input.
descriptor-psbt-plan-annotate-outputprocedureAttach descriptor-derived metadata to a PSBT output.
descriptor-psbt-plan-sign-inputprocedureAnnotate and sign a standard descriptor PSBT input.
descriptor-psbt-plan-finalize-inputprocedureFinalize a standard descriptor PSBT input.