A TypeScript library for parsing Bitcoin Descriptors, including Miniscript-based ones. Streamlines creating Partially Signed Bitcoin Transactions (PSBTs) from Descriptors. Features BIP32, single-signature, and Hardware Wallet signing capabilities, and facilitates finalizing transactions.
Major Renaming & Refactoring: Transitioned the main class name from "Descriptor" to "Output". Shifted primary input parameters from "expression" to "descriptor" for better alignment with library principles.
Finalizers & Ledger Improvements: Introduced notable improvements for Ledger Hardware Wallet usage and PSBT finalizers. Notably, deprecated updatePsbt in favor of updatePsbtAsInput to streamline and simplify operations. Consolidated Ledger function parameters into the LedgerManager type for enhanced usability.
Deprecated Functionality: While deprecated functionalities remain in 2.0.0 for backward compatibility, it's recommended to transition to the new functions and classes to avoid potential warnings.
Testing Enhancements: Maintained old test cases (with a -deprecated suffix) and introduced new tests to validate the functionality of the updated API.
Documentation Overhaul: Conducted extensive documentation using typedoc and updated the README.md for better clarity and ease of reference.
Bug Fixes: Resolved a critical bug concerning buffer comparisons in src/descriptors.ts that ensures accurate descriptor comparisons. For more details, refer to issue-20.
Summary of Changes in v2.0.0
Major Renaming & Refactoring: Transitioned the main class name from "Descriptor" to "Output". Shifted primary input parameters from "expression" to "descriptor" for better alignment with library principles.
Finalizers & Ledger Improvements: Introduced notable improvements for Ledger Hardware Wallet usage and PSBT finalizers. Notably, deprecated
updatePsbt
in favor ofupdatePsbtAsInput
to streamline and simplify operations. Consolidated Ledger function parameters into theLedgerManager
type for enhanced usability.Deprecated Functionality: While deprecated functionalities remain in 2.0.0 for backward compatibility, it's recommended to transition to the new functions and classes to avoid potential warnings.
Testing Enhancements: Maintained old test cases (with a
-deprecated
suffix) and introduced new tests to validate the functionality of the updated API.Documentation Overhaul: Conducted extensive documentation using typedoc and updated the README.md for better clarity and ease of reference.
Bug Fixes: Resolved a critical bug concerning buffer comparisons in
src/descriptors.ts
that ensures accurate descriptor comparisons. For more details, refer to issue-20.