@atomicfinance/types 4.1.3 → 4.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +5 -4
- package/.turbo/turbo-lint.log +5 -0
- package/.turbo/turbo-test.log +0 -0
- package/.yalc/@node-dlc/bitcoin/.nyc_output/982e80bf-a70c-452f-b63d-d749ae385531.json +1 -0
- package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/982e80bf-a70c-452f-b63d-d749ae385531.json +1 -0
- package/.yalc/@node-dlc/bitcoin/.nyc_output/processinfo/index.json +1 -0
- package/.yalc/@node-dlc/bitcoin/README.md +11 -0
- package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/amount.spec.ts +330 -0
- package/.yalc/@node-dlc/bitcoin/__tests__/bitcoin/value.spec.ts +320 -0
- package/.yalc/@node-dlc/bitcoin/__tests__/tsconfig.json +8 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Amount.ts.html +290 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58.ts.html +269 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Base58Check.ts.html +182 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinError.ts.html +173 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/BitcoinErrorCode.ts.html +110 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashByteOrder.ts.html +143 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/HashValue.ts.html +350 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LexicographicalSorters.ts.html +191 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/LockTime.ts.html +386 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OpCodes.ts.html +437 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/OutPoint.ts.html +383 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Script.ts.html +1607 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Sequence.ts.html +713 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/SigHashType.ts.html +137 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Stack.ts.html +323 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TimeLockMode.ts.html +128 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Tx.ts.html +1520 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxBuilder.ts.html +971 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxIn.ts.html +425 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/TxOut.ts.html +341 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Value.ts.html +683 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Wif.ts.html +311 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/Witness.ts.html +275 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/base.css +224 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/block-navigation.js +79 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/favicon.png +0 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.html +126 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/index.ts.html +164 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.css +1 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/prettify.js +2 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov-report/sorter.js +170 -0
- package/.yalc/@node-dlc/bitcoin/coverage/lcov.info +123 -0
- package/.yalc/@node-dlc/bitcoin/dist/Amount.d.ts +48 -0
- package/.yalc/@node-dlc/bitcoin/dist/Amount.js +68 -0
- package/.yalc/@node-dlc/bitcoin/dist/Amount.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58.d.ts +22 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58.js +62 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58Check.d.ts +14 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js +36 -0
- package/.yalc/@node-dlc/bitcoin/dist/Base58Check.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.d.ts +6 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js +36 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinError.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.d.ts +10 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js +15 -0
- package/.yalc/@node-dlc/bitcoin/dist/BitcoinErrorCode.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Block.d.ts +19 -0
- package/.yalc/@node-dlc/bitcoin/dist/Block.js +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/Block.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.d.ts +20 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js +25 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashByteOrder.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashValue.d.ts +55 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashValue.js +82 -0
- package/.yalc/@node-dlc/bitcoin/dist/HashValue.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/ICloneable.d.ts +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/ICloneable.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.d.ts +18 -0
- package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js +41 -0
- package/.yalc/@node-dlc/bitcoin/dist/LexicographicalSorters.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/LockTime.d.ts +61 -0
- package/.yalc/@node-dlc/bitcoin/dist/LockTime.js +94 -0
- package/.yalc/@node-dlc/bitcoin/dist/LockTime.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/OpCodes.d.ts +102 -0
- package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js +116 -0
- package/.yalc/@node-dlc/bitcoin/dist/OpCodes.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/OutPoint.d.ts +57 -0
- package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js +88 -0
- package/.yalc/@node-dlc/bitcoin/dist/OutPoint.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Script.d.ts +185 -0
- package/.yalc/@node-dlc/bitcoin/dist/Script.js +404 -0
- package/.yalc/@node-dlc/bitcoin/dist/Script.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.d.ts +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/ScriptCmd.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sequence.d.ts +116 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sequence.js +187 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sequence.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/SigHashType.d.ts +7 -0
- package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js +27 -0
- package/.yalc/@node-dlc/bitcoin/dist/SigHashType.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/SizeResult.d.ts +5 -0
- package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/SizeResult.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sorter.d.ts +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sorter.js +3 -0
- package/.yalc/@node-dlc/bitcoin/dist/Sorter.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Stack.d.ts +15 -0
- package/.yalc/@node-dlc/bitcoin/dist/Stack.js +77 -0
- package/.yalc/@node-dlc/bitcoin/dist/Stack.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.d.ts +15 -0
- package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js +20 -0
- package/.yalc/@node-dlc/bitcoin/dist/TimeLockMode.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Tx.d.ts +150 -0
- package/.yalc/@node-dlc/bitcoin/dist/Tx.js +408 -0
- package/.yalc/@node-dlc/bitcoin/dist/Tx.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.d.ts +110 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js +238 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxBuilder.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxIn.d.ts +71 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxIn.js +79 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxIn.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxOut.d.ts +57 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxOut.js +68 -0
- package/.yalc/@node-dlc/bitcoin/dist/TxOut.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Value.d.ts +122 -0
- package/.yalc/@node-dlc/bitcoin/dist/Value.js +180 -0
- package/.yalc/@node-dlc/bitcoin/dist/Value.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Wif.d.ts +41 -0
- package/.yalc/@node-dlc/bitcoin/dist/Wif.js +62 -0
- package/.yalc/@node-dlc/bitcoin/dist/Wif.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/Witness.d.ts +41 -0
- package/.yalc/@node-dlc/bitcoin/dist/Witness.js +63 -0
- package/.yalc/@node-dlc/bitcoin/dist/Witness.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/dist/index.d.ts +28 -0
- package/.yalc/@node-dlc/bitcoin/dist/index.js +45 -0
- package/.yalc/@node-dlc/bitcoin/dist/index.js.map +1 -0
- package/.yalc/@node-dlc/bitcoin/lib/Amount.ts +70 -0
- package/.yalc/@node-dlc/bitcoin/lib/Base58.ts +63 -0
- package/.yalc/@node-dlc/bitcoin/lib/Base58Check.ts +34 -0
- package/.yalc/@node-dlc/bitcoin/lib/BitcoinError.ts +31 -0
- package/.yalc/@node-dlc/bitcoin/lib/BitcoinErrorCode.ts +10 -0
- package/.yalc/@node-dlc/bitcoin/lib/Block.ts +20 -0
- package/.yalc/@node-dlc/bitcoin/lib/HashByteOrder.ts +21 -0
- package/.yalc/@node-dlc/bitcoin/lib/HashValue.ts +90 -0
- package/.yalc/@node-dlc/bitcoin/lib/ICloneable.ts +3 -0
- package/.yalc/@node-dlc/bitcoin/lib/LexicographicalSorters.ts +37 -0
- package/.yalc/@node-dlc/bitcoin/lib/LockTime.ts +102 -0
- package/.yalc/@node-dlc/bitcoin/lib/OpCodes.ts +119 -0
- package/.yalc/@node-dlc/bitcoin/lib/OutPoint.ts +101 -0
- package/.yalc/@node-dlc/bitcoin/lib/Script.ts +509 -0
- package/.yalc/@node-dlc/bitcoin/lib/ScriptCmd.ts +3 -0
- package/.yalc/@node-dlc/bitcoin/lib/Sequence.ts +211 -0
- package/.yalc/@node-dlc/bitcoin/lib/SigHashType.ts +19 -0
- package/.yalc/@node-dlc/bitcoin/lib/SizeResult.ts +5 -0
- package/.yalc/@node-dlc/bitcoin/lib/Sorter.ts +1 -0
- package/.yalc/@node-dlc/bitcoin/lib/Stack.ts +81 -0
- package/.yalc/@node-dlc/bitcoin/lib/TimeLockMode.ts +16 -0
- package/.yalc/@node-dlc/bitcoin/lib/Tx.ts +480 -0
- package/.yalc/@node-dlc/bitcoin/lib/TxBuilder.ts +297 -0
- package/.yalc/@node-dlc/bitcoin/lib/TxIn.ts +115 -0
- package/.yalc/@node-dlc/bitcoin/lib/TxOut.ts +87 -0
- package/.yalc/@node-dlc/bitcoin/lib/Value.ts +201 -0
- package/.yalc/@node-dlc/bitcoin/lib/Wif.ts +77 -0
- package/.yalc/@node-dlc/bitcoin/lib/Witness.ts +65 -0
- package/.yalc/@node-dlc/bitcoin/lib/index.ts +28 -0
- package/.yalc/@node-dlc/bitcoin/package.json +31 -0
- package/.yalc/@node-dlc/bitcoin/tsconfig.json +8 -0
- package/.yalc/@node-dlc/bitcoin/yalc.sig +1 -0
- package/.yalc/@node-dlc/messaging/.nyc_output/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +1 -0
- package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/83d37f9d-cecf-4c52-a753-115ff80bbca0.json +1 -0
- package/.yalc/@node-dlc/messaging/.nyc_output/processinfo/index.json +1 -0
- package/.yalc/@node-dlc/messaging/README.md +24 -0
- package/.yalc/@node-dlc/messaging/__tests__/_test-utils.ts +13 -0
- package/.yalc/@node-dlc/messaging/__tests__/chain/ChainManager.spec.ts +178 -0
- package/.yalc/@node-dlc/messaging/__tests__/compatibility/dlcspecs-compatibility.spec.ts +439 -0
- package/.yalc/@node-dlc/messaging/__tests__/compatibility/rust-dlc-cross-language.spec.ts +255 -0
- package/.yalc/@node-dlc/messaging/__tests__/compatibility/true-serialization-compatibility.spec.ts +342 -0
- package/.yalc/@node-dlc/messaging/__tests__/dlc_message_test.json +155 -0
- package/.yalc/@node-dlc/messaging/__tests__/irc/IrcMessage.spec.ts +94 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/AddressCache.spec.ts +79 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/BatchFundingGroup.spec.ts +72 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/CetAdaptorSignatures.spec.ts +57 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/ContractDescriptor.spec.ts +266 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/ContractInfo.spec.ts +419 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DigitDecompositionEventDescriptor.spec.ts +59 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcAccept.spec.ts +314 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcCancel.spec.ts +42 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcClose.spec.ts +315 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcInput.spec.ts +111 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcOffer.spec.ts +589 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcSign.spec.ts +118 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/DlcTransactions.spec.ts +157 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/EnumEventDescriptor.spec.ts +50 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/EventDescriptor.spec.ts +93 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/FundingInput.spec.ts +169 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/FundingSignatures.spec.ts +83 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/NegotiationFields.spec.ts +328 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/NodeAnnouncementMessage.spec.ts +115 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleAnnouncement.spec.ts +415 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleAttestation.spec.ts +324 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleEvent.spec.ts +143 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleEventContainer.spec.ts +95 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleIdentifier.spec.ts +48 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OracleInfo.spec.ts +116 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OrderAccept.spec.ts +75 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OrderNegotiationFields.spec.ts +299 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OrderOffer.spec.ts +121 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/OrderPositionInfo.spec.ts +75 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutCurvePiece.spec.ts +220 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/PayoutFunction.spec.ts +101 -0
- package/.yalc/@node-dlc/messaging/__tests__/messages/RoundingIntervals.spec.ts +75 -0
- package/.yalc/@node-dlc/messaging/__tests__/serialize/F64.spec.ts +261 -0
- package/.yalc/@node-dlc/messaging/__tests__/tsconfig.json +8 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/base.css +224 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/block-navigation.js +79 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/favicon.png +0 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/index.html +201 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/MessageType.ts.html +500 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainManager.ts.html +1061 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/ChainMemoryStore.ts.html +182 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/chain/index.html +126 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/Address.ts.html +272 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/domain/index.html +111 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.html +141 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/index.ts.html +215 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/IrcMessage.ts.html +563 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/irc/index.html +111 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/AddressCache.ts.html +302 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/BatchFundingGroup.ts.html +503 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignatures.ts.html +347 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CetAdaptorSignaturesV0.ts.html +356 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/CloseTLV.ts.html +344 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractDescriptor.ts.html +1031 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ContractInfo.ts.html +1397 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcAccept.ts.html +1997 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCancel.ts.html +251 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcClose.ts.html +995 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcCloseMetadata.ts.html +434 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcIds.ts.html +281 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInfo.ts.html +323 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcInput.ts.html +581 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcMessage.ts.html +341 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcOffer.ts.html +2075 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcSign.ts.html +1157 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/DlcTransactions.ts.html +719 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/EventDescriptor.ts.html +962 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingInput.ts.html +860 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignatures.ts.html +374 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/FundingSignaturesV0.ts.html +344 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NegotiationFields.ts.html +848 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/NodeAnnouncementMessage.ts.html +515 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncement.ts.html +608 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAnnouncementV0.ts.html +383 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestation.ts.html +956 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleAttestationV0.ts.html +479 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEvent.ts.html +830 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainer.ts.html +347 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventContainerV0.ts.html +347 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleEventV0.ts.html +503 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifier.ts.html +314 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleIdentifierV0.ts.html +314 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfo.ts.html +1658 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OracleInfoV0.ts.html +308 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderAccept.ts.html +602 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderIrcInfo.ts.html +380 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderMetadata.ts.html +437 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderNegotiationFields.ts.html +710 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderOffer.ts.html +1334 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/OrderPositionInfo.ts.html +521 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutCurvePiece.ts.html +1442 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/PayoutFunction.ts.html +806 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervals.ts.html +464 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/RoundingIntervalsV0.ts.html +428 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/ScriptWitnessV0.ts.html +269 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/messages/index.html +651 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/F64.ts.html +1091 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/deserializeTlv.ts.html +125 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/getTlv.ts.html +143 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/serialize/index.html +141 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/util.ts.html +191 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/index.html +111 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/lib/validation/validate.ts.html +182 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/prettify.css +1 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/prettify.js +2 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov-report/sorter.js +170 -0
- package/.yalc/@node-dlc/messaging/coverage/lcov.info +5617 -0
- package/.yalc/@node-dlc/messaging/dist/MessageType.d.ts +101 -0
- package/.yalc/@node-dlc/messaging/dist/MessageType.js +118 -0
- package/.yalc/@node-dlc/messaging/dist/MessageType.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.d.ts +50 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js +212 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainManager.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.d.ts +14 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.js +28 -0
- package/.yalc/@node-dlc/messaging/dist/chain/ChainMemoryStore.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.d.ts +11 -0
- package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.js +3 -0
- package/.yalc/@node-dlc/messaging/dist/chain/DlcStore.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.d.ts +48 -0
- package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.js +3 -0
- package/.yalc/@node-dlc/messaging/dist/chain/IChainFilterChainClient.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/domain/Address.d.ts +24 -0
- package/.yalc/@node-dlc/messaging/dist/domain/Address.js +46 -0
- package/.yalc/@node-dlc/messaging/dist/domain/Address.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/index.d.ts +45 -0
- package/.yalc/@node-dlc/messaging/dist/index.js +64 -0
- package/.yalc/@node-dlc/messaging/dist/index.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.d.ts +43 -0
- package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.js +116 -0
- package/.yalc/@node-dlc/messaging/dist/irc/IrcMessage.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.d.ts +15 -0
- package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.js +51 -0
- package/.yalc/@node-dlc/messaging/dist/messages/AddressCache.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.d.ts +61 -0
- package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.js +113 -0
- package/.yalc/@node-dlc/messaging/dist/messages/BatchFundingGroup.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.d.ts +40 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.js +67 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignatures.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.d.ts +42 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js +68 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CetAdaptorSignaturesV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.d.ts +38 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js +59 -0
- package/.yalc/@node-dlc/messaging/dist/messages/CloseTLV.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.d.ts +121 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js +221 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractDescriptor.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.d.ts +135 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js +308 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ContractInfo.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.d.ts +160 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js +469 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcAccept.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.d.ts +31 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.js +51 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCancel.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.d.ts +68 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js +214 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcClose.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.d.ts +44 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.js +74 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcCloseMetadata.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.d.ts +26 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.js +58 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcIds.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.d.ts +31 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.js +61 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInfo.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.d.ts +56 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js +135 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcInput.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.d.ts +23 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.js +54 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcMessage.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.d.ts +146 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js +463 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcOffer.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.d.ts +96 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js +275 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcSign.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.d.ts +69 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.js +149 -0
- package/.yalc/@node-dlc/messaging/dist/messages/DlcTransactions.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.d.ts +107 -0
- package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js +212 -0
- package/.yalc/@node-dlc/messaging/dist/messages/EventDescriptor.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.d.ts +69 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js +193 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingInput.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.d.ts +36 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.js +78 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignatures.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.d.ts +34 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js +72 -0
- package/.yalc/@node-dlc/messaging/dist/messages/FundingSignaturesV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.d.ts +6 -0
- package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.js +3 -0
- package/.yalc/@node-dlc/messaging/dist/messages/IWireMessage.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.d.ts +86 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js +189 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NegotiationFields.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.d.ts +57 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.js +127 -0
- package/.yalc/@node-dlc/messaging/dist/messages/NodeAnnouncementMessage.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.d.ts +76 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.js +131 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncement.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.d.ts +47 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js +76 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAnnouncementV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.d.ts +68 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.js +239 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestation.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.d.ts +48 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js +100 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleAttestationV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.d.ts +90 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.js +189 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEvent.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.d.ts +32 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.js +67 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainer.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.d.ts +32 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js +67 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventContainerV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.d.ts +54 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js +100 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleEventV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.d.ts +32 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.js +58 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifier.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.d.ts +32 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.js +58 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleIdentifierV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.d.ts +163 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js +393 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfo.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.d.ts +35 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js +58 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OracleInfoV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.d.ts +66 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js +140 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderAccept.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.d.ts +42 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.js +74 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderIrcInfo.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.d.ts +56 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.js +87 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderMetadata.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.d.ts +81 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js +161 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderNegotiationFields.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.d.ts +97 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js +296 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderOffer.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.d.ts +44 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js +111 -0
- package/.yalc/@node-dlc/messaging/dist/messages/OrderPositionInfo.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.d.ts +129 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js +332 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutCurvePiece.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.d.ts +66 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js +173 -0
- package/.yalc/@node-dlc/messaging/dist/messages/PayoutFunction.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.d.ts +52 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js +96 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervals.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.d.ts +47 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js +86 -0
- package/.yalc/@node-dlc/messaging/dist/messages/RoundingIntervalsV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.d.ts +29 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.js +50 -0
- package/.yalc/@node-dlc/messaging/dist/messages/ScriptWitnessV0.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/messages/Tlv.d.ts +15 -0
- package/.yalc/@node-dlc/messaging/dist/messages/Tlv.js +32 -0
- package/.yalc/@node-dlc/messaging/dist/messages/Tlv.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/F64.d.ts +146 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/F64.js +294 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/F64.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.d.ts +9 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.js +11 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/deserializeTlv.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.d.ts +4 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.js +23 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/getTlv.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.d.ts +8 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.js +33 -0
- package/.yalc/@node-dlc/messaging/dist/serialize/readTlvs.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/util.d.ts +13 -0
- package/.yalc/@node-dlc/messaging/dist/util.js +42 -0
- package/.yalc/@node-dlc/messaging/dist/util.js.map +1 -0
- package/.yalc/@node-dlc/messaging/dist/validation/validate.d.ts +4 -0
- package/.yalc/@node-dlc/messaging/dist/validation/validate.js +31 -0
- package/.yalc/@node-dlc/messaging/dist/validation/validate.js.map +1 -0
- package/.yalc/@node-dlc/messaging/lib/MessageType.ts +140 -0
- package/.yalc/@node-dlc/messaging/lib/chain/ChainManager.ts +327 -0
- package/.yalc/@node-dlc/messaging/lib/chain/ChainMemoryStore.ts +34 -0
- package/.yalc/@node-dlc/messaging/lib/chain/DlcStore.ts +11 -0
- package/.yalc/@node-dlc/messaging/lib/chain/IChainFilterChainClient.ts +57 -0
- package/.yalc/@node-dlc/messaging/lib/domain/Address.ts +64 -0
- package/.yalc/@node-dlc/messaging/lib/index.ts +45 -0
- package/.yalc/@node-dlc/messaging/lib/irc/IrcMessage.ts +161 -0
- package/.yalc/@node-dlc/messaging/lib/messages/AddressCache.ts +74 -0
- package/.yalc/@node-dlc/messaging/lib/messages/BatchFundingGroup.ts +141 -0
- package/.yalc/@node-dlc/messaging/lib/messages/CetAdaptorSignatures.ts +89 -0
- package/.yalc/@node-dlc/messaging/lib/messages/ContractDescriptor.ts +317 -0
- package/.yalc/@node-dlc/messaging/lib/messages/ContractInfo.ts +439 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcAccept.ts +639 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcCancel.ts +57 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcClose.ts +305 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcCloseMetadata.ts +118 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcIds.ts +67 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcInfo.ts +81 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcInput.ts +167 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcMessage.ts +87 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcOffer.ts +665 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcSign.ts +359 -0
- package/.yalc/@node-dlc/messaging/lib/messages/DlcTransactions.ts +213 -0
- package/.yalc/@node-dlc/messaging/lib/messages/EventDescriptor.ts +294 -0
- package/.yalc/@node-dlc/messaging/lib/messages/FundingInput.ts +260 -0
- package/.yalc/@node-dlc/messaging/lib/messages/FundingSignatures.ts +98 -0
- package/.yalc/@node-dlc/messaging/lib/messages/IWireMessage.ts +6 -0
- package/.yalc/@node-dlc/messaging/lib/messages/NegotiationFields.ts +256 -0
- package/.yalc/@node-dlc/messaging/lib/messages/NodeAnnouncementMessage.ts +145 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleAnnouncement.ts +176 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleAttestation.ts +292 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleEvent.ts +250 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleEventContainer.ts +89 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleIdentifier.ts +78 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OracleInfo.ts +526 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderAccept.ts +174 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderIrcInfo.ts +100 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderMetadata.ts +119 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderNegotiationFields.ts +210 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderOffer.ts +418 -0
- package/.yalc/@node-dlc/messaging/lib/messages/OrderPositionInfo.ts +147 -0
- package/.yalc/@node-dlc/messaging/lib/messages/PayoutCurvePiece.ts +454 -0
- package/.yalc/@node-dlc/messaging/lib/messages/PayoutFunction.ts +242 -0
- package/.yalc/@node-dlc/messaging/lib/messages/RoundingIntervals.ts +128 -0
- package/.yalc/@node-dlc/messaging/lib/messages/ScriptWitnessV0.ts +63 -0
- package/.yalc/@node-dlc/messaging/lib/messages/Tlv.ts +40 -0
- package/.yalc/@node-dlc/messaging/lib/serialize/F64.ts +337 -0
- package/.yalc/@node-dlc/messaging/lib/serialize/deserializeTlv.ts +15 -0
- package/.yalc/@node-dlc/messaging/lib/serialize/getTlv.ts +21 -0
- package/.yalc/@node-dlc/messaging/lib/serialize/readTlvs.ts +37 -0
- package/.yalc/@node-dlc/messaging/lib/util.ts +37 -0
- package/.yalc/@node-dlc/messaging/lib/validation/validate.ts +34 -0
- package/.yalc/@node-dlc/messaging/package.json +42 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_3_test.json +212 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_3_of_5_test.json +470 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_3_of_5_test.json +1519 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_5_of_5_test.json +547 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_3_of_5_test.json +4763 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_and_numerical_with_diff_5_of_5_test.json +2171 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/enum_single_oracle_test.json +166 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_hyperbola_test.json +504 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/single_oracle_numerical_test.json +264 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_five_oracle_numerical_with_diff_test.json +4384 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_test.json +326 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/three_of_three_oracle_numerical_with_diff_test.json +654 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_test.json +1140 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs/two_of_five_oracle_numerical_with_diff_test.json +2224 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_3_test.json +210 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_3_of_5_test.json +468 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_3_of_5_test.json +1517 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_5_of_5_test.json +545 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_3_of_5_test.json +4761 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_and_numerical_with_diff_5_of_5_test.json +2169 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/enum_single_oracle_test.json +164 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_hyperbola_test.json +502 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/single_oracle_numerical_test.json +262 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_five_oracle_numerical_with_diff_test.json +4382 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_test.json +324 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/three_of_three_oracle_numerical_with_diff_test.json +652 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_test.json +1138 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250718_132453/two_of_five_oracle_numerical_with_diff_test.json +2222 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_3_test.json +212 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_3_of_5_test.json +470 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_3_of_5_test.json +1519 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_5_of_5_test.json +547 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_3_of_5_test.json +4763 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_and_numerical_with_diff_5_of_5_test.json +2171 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/enum_single_oracle_test.json +166 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_hyperbola_test.json +504 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/single_oracle_numerical_test.json +264 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_five_oracle_numerical_with_diff_test.json +4384 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_test.json +326 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/three_of_three_oracle_numerical_with_diff_test.json +654 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_test.json +1140 -0
- package/.yalc/@node-dlc/messaging/test_vectors/dlcspecs_backup_20250719_185952/two_of_five_oracle_numerical_with_diff_test.json +2224 -0
- package/.yalc/@node-dlc/messaging/test_vectors/oracle/external_oracle_announcements.json +0 -0
- package/.yalc/@node-dlc/messaging/test_vectors/oracle/oracle_message_test_vectors.json +115 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/accept_msg.json +1465 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_fee_test.json +12362 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_fee_test_scripts.json +57 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_test.json +2766 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/dlc_tx_test.json +2899 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/offer_msg.json +163 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/offer_msg_disjoint.json +352 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/segment_chunk_msg.json +12635 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/segment_start_msg.json +4022 -0
- package/.yalc/@node-dlc/messaging/test_vectors/rust-dlc/sign_msg.json +383 -0
- package/.yalc/@node-dlc/messaging/tsconfig.json +7 -0
- package/.yalc/@node-dlc/messaging/yalc.sig +1 -0
- package/.yalc/@node-dlc/noise/.eslintrc +6 -0
- package/.yalc/@node-dlc/noise/.nyc_output/cce169d2-1730-4a39-9e05-4edcd8b14961.json +1 -0
- package/.yalc/@node-dlc/noise/.nyc_output/processinfo/cce169d2-1730-4a39-9e05-4edcd8b14961.json +1 -0
- package/.yalc/@node-dlc/noise/.nyc_output/processinfo/index.json +1 -0
- package/.yalc/@node-dlc/noise/README.md +165 -0
- package/.yalc/@node-dlc/noise/__integration__/ping-pong.spec.ts +85 -0
- package/.yalc/@node-dlc/noise/__tests__/noise-server.spec.ts +82 -0
- package/.yalc/@node-dlc/noise/__tests__/noise-socket.spec.ts +574 -0
- package/.yalc/@node-dlc/noise/__tests__/noise-state.spec.ts +485 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/base.css +224 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/block-navigation.js +79 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/favicon.png +0 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/handshake-state.ts.html +230 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/index.html +201 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/index.ts.html +344 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-error.ts.html +89 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-server.ts.html +485 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-socket.ts.html +1223 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/noise-state.ts.html +1523 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/prettify.css +1 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/prettify.js +2 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/read-state.ts.html +95 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/.yalc/@node-dlc/noise/coverage/lcov-report/sorter.js +170 -0
- package/.yalc/@node-dlc/noise/coverage/lcov.info +565 -0
- package/.yalc/@node-dlc/noise/dist/handshake-state.d.ts +46 -0
- package/.yalc/@node-dlc/noise/dist/handshake-state.js +51 -0
- package/.yalc/@node-dlc/noise/dist/handshake-state.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/index.d.ts +46 -0
- package/.yalc/@node-dlc/noise/dist/index.js +69 -0
- package/.yalc/@node-dlc/noise/dist/index.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-error.d.ts +3 -0
- package/.yalc/@node-dlc/noise/dist/noise-error.js +11 -0
- package/.yalc/@node-dlc/noise/dist/noise-error.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.d.ts +23 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.js +3 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-listen-options.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-options.d.ts +13 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-options.js +3 -0
- package/.yalc/@node-dlc/noise/dist/noise-server-options.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-server.d.ts +71 -0
- package/.yalc/@node-dlc/noise/dist/noise-server.js +125 -0
- package/.yalc/@node-dlc/noise/dist/noise-server.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket-options.d.ts +28 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket-options.js +3 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket-options.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket.d.ts +98 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket.js +278 -0
- package/.yalc/@node-dlc/noise/dist/noise-socket.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-state-options.d.ts +16 -0
- package/.yalc/@node-dlc/noise/dist/noise-state-options.js +3 -0
- package/.yalc/@node-dlc/noise/dist/noise-state-options.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/noise-state.d.ts +164 -0
- package/.yalc/@node-dlc/noise/dist/noise-state.js +304 -0
- package/.yalc/@node-dlc/noise/dist/noise-state.js.map +1 -0
- package/.yalc/@node-dlc/noise/dist/read-state.d.ts +5 -0
- package/.yalc/@node-dlc/noise/dist/read-state.js +10 -0
- package/.yalc/@node-dlc/noise/dist/read-state.js.map +1 -0
- package/.yalc/@node-dlc/noise/lib/handshake-state.ts +50 -0
- package/.yalc/@node-dlc/noise/lib/index.ts +88 -0
- package/.yalc/@node-dlc/noise/lib/noise-error.ts +3 -0
- package/.yalc/@node-dlc/noise/lib/noise-server-listen-options.ts +25 -0
- package/.yalc/@node-dlc/noise/lib/noise-server-options.ts +13 -0
- package/.yalc/@node-dlc/noise/lib/noise-server.ts +135 -0
- package/.yalc/@node-dlc/noise/lib/noise-socket-options.ts +32 -0
- package/.yalc/@node-dlc/noise/lib/noise-socket.ts +381 -0
- package/.yalc/@node-dlc/noise/lib/noise-state-options.ts +18 -0
- package/.yalc/@node-dlc/noise/lib/noise-state.ts +481 -0
- package/.yalc/@node-dlc/noise/lib/read-state.ts +5 -0
- package/.yalc/@node-dlc/noise/package.json +35 -0
- package/.yalc/@node-dlc/noise/tsconfig-build.json +7 -0
- package/.yalc/@node-dlc/noise/tsconfig.json +4 -0
- package/.yalc/@node-dlc/noise/yalc.sig +1 -0
- package/CHANGELOG.md +12 -0
- package/package.json +1 -1
- package/yalc.lock +20 -0
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
import { BufferWriter } from '@node-dlc/bufio';
|
|
2
|
+
import { hash256, sign, sigToDER } from '@node-dlc/crypto';
|
|
3
|
+
|
|
4
|
+
import { LockTime } from './LockTime';
|
|
5
|
+
import { OutPoint } from './OutPoint';
|
|
6
|
+
import { Script } from './Script';
|
|
7
|
+
import { Sequence } from './Sequence';
|
|
8
|
+
import { Tx } from './Tx';
|
|
9
|
+
import { TxIn } from './TxIn';
|
|
10
|
+
import { TxOut } from './TxOut';
|
|
11
|
+
import { Value } from './Value';
|
|
12
|
+
|
|
13
|
+
export class TxBuilder {
|
|
14
|
+
private _version: number;
|
|
15
|
+
private _locktime: LockTime;
|
|
16
|
+
private _inputs: TxIn[];
|
|
17
|
+
private _outputs: TxOut[];
|
|
18
|
+
private _hashPrevOuts: Buffer;
|
|
19
|
+
private _hashSequence: Buffer;
|
|
20
|
+
private _hashOutputs: Buffer;
|
|
21
|
+
|
|
22
|
+
constructor() {
|
|
23
|
+
this._inputs = [];
|
|
24
|
+
this._outputs = [];
|
|
25
|
+
this._version = 2;
|
|
26
|
+
this._locktime = new LockTime();
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Gets or sets the transaction version. Valid transaction versions
|
|
31
|
+
* are > 1.
|
|
32
|
+
*/
|
|
33
|
+
public get version(): number {
|
|
34
|
+
return this._version;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public set version(val: number) {
|
|
38
|
+
this._version = val;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Gets or sets the absolute locktime for the transaction
|
|
43
|
+
*/
|
|
44
|
+
public get locktime(): LockTime {
|
|
45
|
+
return this._locktime;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
public set locktime(val: LockTime) {
|
|
49
|
+
this._locktime = val;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Gets the inputs
|
|
54
|
+
*/
|
|
55
|
+
public get inputs(): TxIn[] {
|
|
56
|
+
return this._inputs;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Gets the outputs
|
|
61
|
+
*/
|
|
62
|
+
public get outputs(): TxOut[] {
|
|
63
|
+
return this._outputs;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Adds a new transaction input
|
|
68
|
+
* @param outpoint the previous output represented as an outpoint
|
|
69
|
+
*/
|
|
70
|
+
public addInput(
|
|
71
|
+
outpoint: TxIn | string | OutPoint,
|
|
72
|
+
sequence?: Sequence,
|
|
73
|
+
): void {
|
|
74
|
+
if (outpoint instanceof TxIn) {
|
|
75
|
+
this._inputs.push(outpoint.clone());
|
|
76
|
+
} else {
|
|
77
|
+
outpoint =
|
|
78
|
+
outpoint instanceof OutPoint ? outpoint : OutPoint.fromString(outpoint);
|
|
79
|
+
this._inputs.push(new TxIn(outpoint, undefined, sequence));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Adds a transaction output
|
|
85
|
+
* @param value value sent to the lock script. When represented as a
|
|
86
|
+
* number, the value is in Bitcoin.
|
|
87
|
+
* @param scriptPubKey the locking script encumbering the funds send
|
|
88
|
+
* to this output
|
|
89
|
+
*/
|
|
90
|
+
public addOutput(value: TxOut | number | Value, scriptPubKey?: Script): void {
|
|
91
|
+
if (value instanceof TxOut) {
|
|
92
|
+
this._outputs.push(value.clone());
|
|
93
|
+
} else {
|
|
94
|
+
value = value instanceof Value ? value : Value.fromBitcoin(value);
|
|
95
|
+
this._outputs.push(new TxOut(value, scriptPubKey));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Creates a signature hash including all inputs and all outputs,
|
|
101
|
+
* which is referred to as SIGHASH_ALL. The scriptSig of all inputs
|
|
102
|
+
* is removed (as it is never signed), however we commit to the
|
|
103
|
+
* signatory input using the scriptPubKey from the prevOut or the
|
|
104
|
+
* redeemScript. The hash is constructed as the serialization of
|
|
105
|
+
* all information (with the input scriptSig replaced as just
|
|
106
|
+
* described) and then appending a 4-byte LE sighash type. We then
|
|
107
|
+
* take the hash256 of that serialized transaction.
|
|
108
|
+
*
|
|
109
|
+
* @param input signatory input index
|
|
110
|
+
* @param commitScript the scriptSig used for the signature input
|
|
111
|
+
*/
|
|
112
|
+
public hashLegacy(input: number, commitScript: Script): Buffer {
|
|
113
|
+
const writer = new BufferWriter();
|
|
114
|
+
|
|
115
|
+
// write the version
|
|
116
|
+
writer.writeUInt32LE(this.version);
|
|
117
|
+
|
|
118
|
+
// sign all inputs as sorted by the sorting function
|
|
119
|
+
const inputs = this._inputs;
|
|
120
|
+
writer.writeVarInt(inputs.length);
|
|
121
|
+
for (let i = 0; i < inputs.length; i++) {
|
|
122
|
+
// blank out scriptSig for non-signatory inputs
|
|
123
|
+
let scriptSig = new Script();
|
|
124
|
+
|
|
125
|
+
// use the commit script for signatory input
|
|
126
|
+
if (i === input) {
|
|
127
|
+
scriptSig = commitScript;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
// write the input
|
|
131
|
+
const vin = new TxIn(inputs[i].outpoint, scriptSig, inputs[i].sequence);
|
|
132
|
+
writer.writeBytes(vin.serialize());
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// sign all outputs as sorted by the sorting function
|
|
136
|
+
const outputs = this._outputs;
|
|
137
|
+
writer.writeVarInt(outputs.length);
|
|
138
|
+
for (const vout of outputs) {
|
|
139
|
+
writer.writeBytes(vout.serialize());
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// write the sequence
|
|
143
|
+
writer.writeBytes(this.locktime.serialize());
|
|
144
|
+
|
|
145
|
+
// write the sighash type 0x01 as 4-bytes little endian
|
|
146
|
+
writer.writeUInt32LE(1);
|
|
147
|
+
|
|
148
|
+
// return hashed value
|
|
149
|
+
return hash256(writer.toBuffer());
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Creates a signature hash using the new segregated witness digets
|
|
154
|
+
* alorithm defined in BIP143. The current version only supports
|
|
155
|
+
* SIGHASH_ALL and does not account for OP_CODESEPARATOR.
|
|
156
|
+
*
|
|
157
|
+
* This algorithm has side-effects in that it caches hashPrevOut,
|
|
158
|
+
* hashSequence, and hashOutput values used. This means transaction
|
|
159
|
+
* should not change after signing, though the code does not yet
|
|
160
|
+
* enforce this.
|
|
161
|
+
*
|
|
162
|
+
* @param index signatory input index
|
|
163
|
+
* @param commitScript the scriptSig used for the signature input
|
|
164
|
+
* @param value the value of the input
|
|
165
|
+
*/
|
|
166
|
+
public hashSegwitv0(
|
|
167
|
+
index: number,
|
|
168
|
+
commitScript: Script,
|
|
169
|
+
value: Value,
|
|
170
|
+
): Buffer {
|
|
171
|
+
const writer = new BufferWriter();
|
|
172
|
+
|
|
173
|
+
// Combines the previous outputs for all inputs in the
|
|
174
|
+
// transaction by serializing and hash256 the concated values:
|
|
175
|
+
// prevtx: 32-byte IBO
|
|
176
|
+
// prevIdx: 4-byte LE
|
|
177
|
+
if (this._hashPrevOuts === undefined) {
|
|
178
|
+
const hashWriter = new BufferWriter(
|
|
179
|
+
Buffer.alloc(this._inputs.length * 36),
|
|
180
|
+
);
|
|
181
|
+
for (const input of this._inputs) {
|
|
182
|
+
hashWriter.writeBytes(input.outpoint.serialize());
|
|
183
|
+
}
|
|
184
|
+
this._hashPrevOuts = hash256(hashWriter.toBuffer());
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
// Combines the nSequence values for all inputs in the
|
|
188
|
+
// transaction and then hash256 the values
|
|
189
|
+
if (this._hashSequence === undefined) {
|
|
190
|
+
const hashWriter = new BufferWriter(
|
|
191
|
+
Buffer.alloc(this._inputs.length * 4),
|
|
192
|
+
);
|
|
193
|
+
for (const input of this._inputs) {
|
|
194
|
+
hashWriter.writeBytes(input.sequence.serialize());
|
|
195
|
+
}
|
|
196
|
+
this._hashSequence = hash256(hashWriter.toBuffer());
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
// Combines the outputs for the transaction according by
|
|
200
|
+
// concatenating the serialization of the outputs into a single
|
|
201
|
+
// byte array and then hash256 the values.
|
|
202
|
+
if (this._hashOutputs === undefined) {
|
|
203
|
+
const hashWriter = new BufferWriter();
|
|
204
|
+
for (const vout of this._outputs) {
|
|
205
|
+
hashWriter.writeBytes(vout.serialize());
|
|
206
|
+
}
|
|
207
|
+
this._hashOutputs = hash256(hashWriter.toBuffer());
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
writer.writeUInt32LE(this.version);
|
|
211
|
+
writer.writeBytes(this._hashPrevOuts);
|
|
212
|
+
writer.writeBytes(this._hashSequence);
|
|
213
|
+
|
|
214
|
+
const vin = this._inputs[index];
|
|
215
|
+
writer.writeBytes(vin.outpoint.serialize());
|
|
216
|
+
writer.writeBytes(commitScript.serialize());
|
|
217
|
+
writer.writeUInt64LE(value.sats);
|
|
218
|
+
writer.writeBytes(vin.sequence.serialize());
|
|
219
|
+
|
|
220
|
+
writer.writeBytes(this._hashOutputs);
|
|
221
|
+
writer.writeBytes(this.locktime.serialize());
|
|
222
|
+
writer.writeUInt32LE(1); // SIGHASH_ALL
|
|
223
|
+
|
|
224
|
+
return hash256(writer.toBuffer());
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* Signs an input and returns the DER encoded signature. The
|
|
229
|
+
* script that is committed to will depend on the type of the
|
|
230
|
+
* signature. This is usually the locking script used in the prior
|
|
231
|
+
* output, but in the case of p2sh transactions, this is the
|
|
232
|
+
* redeem script, or the underlying script that is hashed in the
|
|
233
|
+
* prior output.
|
|
234
|
+
*
|
|
235
|
+
* @param input index of input that should be signed
|
|
236
|
+
* @param commitScript Script that is committed during signature
|
|
237
|
+
* @param privateKey 32-byte private key
|
|
238
|
+
*/
|
|
239
|
+
public sign(input: number, commitScript: Script, privateKey: Buffer): Buffer {
|
|
240
|
+
// create the hash of the transaction for the input
|
|
241
|
+
const hash = this.hashLegacy(input, commitScript);
|
|
242
|
+
|
|
243
|
+
// sign DER encode signature
|
|
244
|
+
const sig = sign(hash, privateKey);
|
|
245
|
+
const der = sigToDER(sig);
|
|
246
|
+
|
|
247
|
+
// return signature with 1-byte sighash type
|
|
248
|
+
return Buffer.concat([der, Buffer.from([1])]);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* Signs an SegWit v0 input and returns the DER encoded signature.
|
|
253
|
+
* The script that is committed to will depend on the type of the
|
|
254
|
+
* input. This is usually the locking script or redeem script.
|
|
255
|
+
*
|
|
256
|
+
* @param input index of input that should be signed
|
|
257
|
+
* @param commitScript Script that is committed during signature
|
|
258
|
+
* @param privateKey 32-byte private key
|
|
259
|
+
* @param value value of the prior input
|
|
260
|
+
*/
|
|
261
|
+
public signSegWitv0(
|
|
262
|
+
input: number,
|
|
263
|
+
commitScript: Script,
|
|
264
|
+
privateKey: Buffer,
|
|
265
|
+
value: Value,
|
|
266
|
+
): Buffer {
|
|
267
|
+
// create the hash of the transaction for the input
|
|
268
|
+
const hash = this.hashSegwitv0(input, commitScript, value);
|
|
269
|
+
|
|
270
|
+
// sign DER encode signature
|
|
271
|
+
const sig = sign(hash, privateKey);
|
|
272
|
+
const der = sigToDER(sig);
|
|
273
|
+
|
|
274
|
+
// return signature with 1-byte sighash type
|
|
275
|
+
return Buffer.concat([der, Buffer.from([1])]);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/**
|
|
279
|
+
* Returns an immutable transaction
|
|
280
|
+
*/
|
|
281
|
+
public toTx(): Tx {
|
|
282
|
+
return new Tx(
|
|
283
|
+
this.version,
|
|
284
|
+
this._inputs.map((vin) => vin.clone()),
|
|
285
|
+
this._outputs.map((vout) => vout.clone()),
|
|
286
|
+
this.locktime.clone(),
|
|
287
|
+
);
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
public serialize(): Buffer {
|
|
291
|
+
return this.toTx().serialize();
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
public toHex(pretty = false): string {
|
|
295
|
+
return this.toTx().toHex(pretty);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { BufferWriter, StreamReader } from '@node-dlc/bufio';
|
|
2
|
+
|
|
3
|
+
import { ICloneable } from './ICloneable';
|
|
4
|
+
import { OutPoint } from './OutPoint';
|
|
5
|
+
import { Script } from './Script';
|
|
6
|
+
import { Sequence } from './Sequence';
|
|
7
|
+
import { Witness } from './Witness';
|
|
8
|
+
|
|
9
|
+
export class TxIn implements ICloneable<TxIn> {
|
|
10
|
+
/**
|
|
11
|
+
* Parses a TxIn from a a stream reader.
|
|
12
|
+
* @param stream
|
|
13
|
+
*/
|
|
14
|
+
public static parse(reader: StreamReader): TxIn {
|
|
15
|
+
const outpoint = OutPoint.parse(reader);
|
|
16
|
+
const scriptSig = Script.parse(reader);
|
|
17
|
+
const sequence = new Sequence(reader.readUInt32LE());
|
|
18
|
+
return new TxIn(outpoint, scriptSig, sequence);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Parses a hex string serialization of a transaction input. This
|
|
23
|
+
* is a helper function instead of having to do `StreamReader.fromHex`
|
|
24
|
+
* on a string directly.
|
|
25
|
+
* @param hex
|
|
26
|
+
*/
|
|
27
|
+
public static fromHex(hex: string): TxIn {
|
|
28
|
+
const reader = StreamReader.fromHex(hex);
|
|
29
|
+
return this.parse(reader);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* The previous transaction output tuple
|
|
34
|
+
*/
|
|
35
|
+
public outpoint: OutPoint;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* ScriptSig for the input
|
|
39
|
+
*/
|
|
40
|
+
public scriptSig: Script;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* nSequence value for the transaction. Defaults to 0xffffffff which
|
|
44
|
+
* disables the absolute timelock.
|
|
45
|
+
*/
|
|
46
|
+
public sequence: Sequence;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Witness data that is required by the input
|
|
50
|
+
*/
|
|
51
|
+
public witness: Witness[];
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Constructs a new transaction input from the values
|
|
55
|
+
* @param outpoint
|
|
56
|
+
* @param scriptSig
|
|
57
|
+
* @param sequence
|
|
58
|
+
* @param witness
|
|
59
|
+
*/
|
|
60
|
+
constructor(
|
|
61
|
+
outpoint: OutPoint,
|
|
62
|
+
scriptSig: Script = new Script(),
|
|
63
|
+
sequence: Sequence = new Sequence(),
|
|
64
|
+
witness: Witness[] = [],
|
|
65
|
+
) {
|
|
66
|
+
this.outpoint = outpoint;
|
|
67
|
+
this.scriptSig = scriptSig;
|
|
68
|
+
this.sequence = sequence;
|
|
69
|
+
this.witness = witness;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Creates a string of the transaction input that includes all of the
|
|
74
|
+
* properties.
|
|
75
|
+
*/
|
|
76
|
+
public toString(): string {
|
|
77
|
+
return `prev=${this.outpoint.toString()}, scriptSig=${this.scriptSig.toString()}, sequence=${this.sequence.toString()}`; // prettier-ignore
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Creates a JSON object of the transaction input that includes all
|
|
82
|
+
* of the properties.
|
|
83
|
+
*/
|
|
84
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
85
|
+
public toJSON() {
|
|
86
|
+
return {
|
|
87
|
+
outpoint: this.outpoint.toJSON(),
|
|
88
|
+
scriptSig: this.scriptSig.toJSON(),
|
|
89
|
+
sequence: this.sequence.toJSON(),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Returns the byte serialization of the transaction input
|
|
95
|
+
*/
|
|
96
|
+
public serialize(): Buffer {
|
|
97
|
+
const writer = new BufferWriter();
|
|
98
|
+
writer.writeBytes(this.outpoint.serialize());
|
|
99
|
+
writer.writeBytes(this.scriptSig.serialize());
|
|
100
|
+
writer.writeBytes(this.sequence.serialize());
|
|
101
|
+
return writer.toBuffer();
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Clone via deep copy
|
|
106
|
+
*/
|
|
107
|
+
public clone(): TxIn {
|
|
108
|
+
return new TxIn(
|
|
109
|
+
this.outpoint.clone(),
|
|
110
|
+
this.scriptSig.clone(),
|
|
111
|
+
this.sequence.clone(),
|
|
112
|
+
this.witness.map((p) => p.clone()),
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { BufferWriter, StreamReader } from '@node-dlc/bufio';
|
|
2
|
+
|
|
3
|
+
import { ICloneable } from './ICloneable';
|
|
4
|
+
import { Script } from './Script';
|
|
5
|
+
import { Value } from './Value';
|
|
6
|
+
|
|
7
|
+
export class TxOut implements ICloneable<TxOut> {
|
|
8
|
+
/**
|
|
9
|
+
* Parses a TxOut from a stream and returns a new instance of TxOut
|
|
10
|
+
* @param reader
|
|
11
|
+
*/
|
|
12
|
+
public static parse(reader: StreamReader): TxOut {
|
|
13
|
+
const value = Value.fromSats(reader.readBigUInt64LE());
|
|
14
|
+
const scriptPubKey = Script.parse(reader);
|
|
15
|
+
return new TxOut(value, scriptPubKey);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Parses a hex string serialization of a transaction output. This
|
|
20
|
+
* is a helper function instead of having to do `StreamReader.fromHex`
|
|
21
|
+
* on a string directly.
|
|
22
|
+
* @param hex
|
|
23
|
+
*/
|
|
24
|
+
public static fromHex(hex: string): TxOut {
|
|
25
|
+
const reader = StreamReader.fromHex(hex);
|
|
26
|
+
return TxOut.parse(reader);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Value (often in satoshi or bitcoin) that will be locked into the
|
|
31
|
+
* output using the provided scriptPubKey. The combined outputs must
|
|
32
|
+
* be lte the combined input value for in transaction.
|
|
33
|
+
*/
|
|
34
|
+
public value: Value;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* The locking script used to encumbered the value in the output.
|
|
38
|
+
* To claim these funds as an input in another transaction requires
|
|
39
|
+
* providing a ScriptSig that successfully evaluates when combined
|
|
40
|
+
* with the ScriptPubKey.
|
|
41
|
+
*/
|
|
42
|
+
public scriptPubKey: Script;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Constructs a new TxOut from the supplied arguments
|
|
46
|
+
* @param value
|
|
47
|
+
* @param scriptPubKey
|
|
48
|
+
*/
|
|
49
|
+
constructor(value: Value, scriptPubKey: Script) {
|
|
50
|
+
this.value = value;
|
|
51
|
+
this.scriptPubKey = scriptPubKey;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Returns the TxOut as a string
|
|
56
|
+
*/
|
|
57
|
+
public toString(): string {
|
|
58
|
+
return `value="${this.value.sats}", scriptPubKey="${this.scriptPubKey}"`;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Returns the TxOut as a JSON object
|
|
63
|
+
*/
|
|
64
|
+
public toJSON(): { value: string; scriptPubKey: string } {
|
|
65
|
+
return {
|
|
66
|
+
value: this.value.sats.toString(),
|
|
67
|
+
scriptPubKey: this.scriptPubKey.toJSON(),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Returns the serialization of the transaction output into a buffer
|
|
73
|
+
*/
|
|
74
|
+
public serialize(): Buffer {
|
|
75
|
+
const writer = new BufferWriter();
|
|
76
|
+
writer.writeUInt64LE(this.value.sats);
|
|
77
|
+
writer.writeBytes(this.scriptPubKey.serialize());
|
|
78
|
+
return writer.toBuffer();
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Clone via deep copy
|
|
83
|
+
*/
|
|
84
|
+
public clone(): TxOut {
|
|
85
|
+
return new TxOut(this.value.clone(), this.scriptPubKey.clone());
|
|
86
|
+
}
|
|
87
|
+
}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { ICloneable } from './ICloneable';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Represents bitcoin value that can be converted to or from multiple
|
|
5
|
+
* formats.
|
|
6
|
+
*/
|
|
7
|
+
export class Value implements ICloneable<Value> {
|
|
8
|
+
/**
|
|
9
|
+
* Creates a value object from value in bitcoin, eg: 1.12345678
|
|
10
|
+
* @param num
|
|
11
|
+
*/
|
|
12
|
+
public static fromBitcoin(num: number): Value {
|
|
13
|
+
return Value.fromSats(Math.round(num * 1e8));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Creates a value instance from value in satoshis where 1 satoshis
|
|
18
|
+
* equates to 0.00000001 bitcoin.
|
|
19
|
+
* @param num
|
|
20
|
+
*/
|
|
21
|
+
public static fromSats(num: bigint | number): Value {
|
|
22
|
+
return new Value(BigInt(num) * BigInt(1e12));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Creates a value instance from value in millisatoshis, 1/1000 of a
|
|
27
|
+
* satoshi.
|
|
28
|
+
* eg: 123 millisatoshis equates to 0.123 satoshis
|
|
29
|
+
* eg: 123 millisatoshis equates to 0.00000000123 bitcoin
|
|
30
|
+
* @param num
|
|
31
|
+
*/
|
|
32
|
+
public static fromMilliSats(num: bigint | number): Value {
|
|
33
|
+
return new Value(BigInt(num) * BigInt(1e9));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Creates a value instance from value in microsatoshis, 1/1e6 of a
|
|
38
|
+
* satoshi.
|
|
39
|
+
* eg: 123 microsatoshis equates to 0.000123 satoshis
|
|
40
|
+
* eg: 123 microsatoshis equates to 0.00000000000123 bitcoin
|
|
41
|
+
* @param num
|
|
42
|
+
*/
|
|
43
|
+
public static fromMicroSats(num: bigint | number): Value {
|
|
44
|
+
return new Value(BigInt(num) * BigInt(1e6));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Creates a value instance from value in picosatoshis, 1/1e12 of a
|
|
49
|
+
* satoshi.
|
|
50
|
+
* eg: 123 picosatoshis equates to 0.000000000123 satoshis
|
|
51
|
+
* eg: 123 picosatoshis equates to 0.00000000000000000123 bitcoin
|
|
52
|
+
* @param num
|
|
53
|
+
*/
|
|
54
|
+
public static fromPicoSats(num: bigint | number): Value {
|
|
55
|
+
return new Value(BigInt(num));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Generates a value instance of zero
|
|
60
|
+
*/
|
|
61
|
+
public static zero(): Value {
|
|
62
|
+
return new Value(BigInt(0));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
protected _picoSats: bigint;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Gets the value in picosatoshis (1/1e12 satoshis)
|
|
69
|
+
*/
|
|
70
|
+
public get psats(): bigint {
|
|
71
|
+
return this._picoSats;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Gets the value in millionth of satoshis (1/1e6 satoshis)
|
|
76
|
+
*/
|
|
77
|
+
public get microsats(): bigint {
|
|
78
|
+
return this._picoSats / BigInt(1e6);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Gets the value in millisatoshis (1/1000 satoshis)
|
|
83
|
+
*/
|
|
84
|
+
public get msats(): bigint {
|
|
85
|
+
return this._picoSats / BigInt(1e9);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Gets the value in satoshis (1/1e8 bitcoin)
|
|
90
|
+
*/
|
|
91
|
+
public get sats(): bigint {
|
|
92
|
+
return this._picoSats / BigInt(1e12);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Gets the value in bitcoin
|
|
97
|
+
*/
|
|
98
|
+
public get bitcoin(): number {
|
|
99
|
+
return Math.max(0, Number(this.sats) / 1e8);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
protected constructor(picoSats: bigint) {
|
|
103
|
+
this._picoSats = picoSats;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Clone via deep copy
|
|
108
|
+
*/
|
|
109
|
+
public clone(): Value {
|
|
110
|
+
return new Value(this._picoSats);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Adds another value to this instance and returns this instance
|
|
115
|
+
* @param other
|
|
116
|
+
*/
|
|
117
|
+
public add(other: Value): this {
|
|
118
|
+
this._picoSats += other.psats;
|
|
119
|
+
return this;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Adds another value to the current value and returns a new Value instance
|
|
124
|
+
* @param other
|
|
125
|
+
*/
|
|
126
|
+
public addn(other: Value): Value {
|
|
127
|
+
return new Value(this._picoSats + other.psats);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Subtracts another value from this instance and returns this instance
|
|
132
|
+
* @param other
|
|
133
|
+
*/
|
|
134
|
+
public sub(other: Value): this {
|
|
135
|
+
if (this._picoSats < other.psats) {
|
|
136
|
+
throw new Error('Value underflow');
|
|
137
|
+
}
|
|
138
|
+
this._picoSats -= other.psats;
|
|
139
|
+
return this;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Subtracts another value from the current value and returns a new Value instance
|
|
144
|
+
* @param other
|
|
145
|
+
*/
|
|
146
|
+
public subn(other: Value): Value {
|
|
147
|
+
if (this._picoSats < other.psats) {
|
|
148
|
+
throw new Error('Value underflow');
|
|
149
|
+
}
|
|
150
|
+
return new Value(this._picoSats - other.psats);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* Returns true if this value is less than the other value
|
|
155
|
+
* @param other
|
|
156
|
+
*/
|
|
157
|
+
public lt(other: Value): boolean {
|
|
158
|
+
return this._picoSats < other.psats;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Returns true if this value is equal to the other value
|
|
163
|
+
* @param other
|
|
164
|
+
*/
|
|
165
|
+
public eq(other: Value): boolean {
|
|
166
|
+
return this._picoSats === other.psats;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Returns true if this value is greater than the other value
|
|
171
|
+
* @param other
|
|
172
|
+
*/
|
|
173
|
+
public gt(other: Value): boolean {
|
|
174
|
+
return this._picoSats > other.psats;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* Returns true if this value is greater than or equal to the other value
|
|
179
|
+
* @param other
|
|
180
|
+
*/
|
|
181
|
+
public gte(other: Value): boolean {
|
|
182
|
+
return this._picoSats >= other.psats;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Returns true if this value is less than or equal to the other value
|
|
187
|
+
* @param other
|
|
188
|
+
*/
|
|
189
|
+
public lte(other: Value): boolean {
|
|
190
|
+
return this._picoSats <= other.psats;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* Returns a string representation of the value in bitcoin format
|
|
195
|
+
* with 8 decimal places
|
|
196
|
+
*/
|
|
197
|
+
public toString(): string {
|
|
198
|
+
const btc = this.bitcoin;
|
|
199
|
+
return btc.toFixed(8);
|
|
200
|
+
}
|
|
201
|
+
}
|