@btc-vision/bitcoin 7.0.0-alpha.0 → 7.0.0-alpha.10
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/README.md +455 -155
- package/browser/address.d.ts +6 -2
- package/browser/address.d.ts.map +1 -1
- package/browser/block.d.ts.map +1 -1
- package/browser/branded.d.ts +3 -14
- package/browser/branded.d.ts.map +1 -1
- package/browser/chunks/psbt-parallel-BBFlkmiv.js +10717 -0
- package/browser/crypto.d.ts +1 -1
- package/browser/ecc/context.d.ts +25 -24
- package/browser/ecc/context.d.ts.map +1 -1
- package/browser/ecc/index.d.ts +1 -1
- package/browser/ecc/index.d.ts.map +1 -1
- package/browser/ecc/types.d.ts +10 -123
- package/browser/ecc/types.d.ts.map +1 -1
- package/browser/env.d.ts +13 -0
- package/browser/env.d.ts.map +1 -0
- package/browser/index.d.ts +7 -7
- package/browser/index.d.ts.map +1 -1
- package/browser/index.js +2497 -11686
- package/browser/io/BinaryReader.d.ts +15 -15
- package/browser/io/BinaryReader.d.ts.map +1 -1
- package/browser/io/BinaryWriter.d.ts +17 -17
- package/browser/io/BinaryWriter.d.ts.map +1 -1
- package/browser/io/hex.d.ts.map +1 -1
- package/browser/io/index.d.ts +0 -1
- package/browser/io/index.d.ts.map +1 -1
- package/browser/opcodes.d.ts +11 -0
- package/browser/opcodes.d.ts.map +1 -1
- package/browser/payments/bip341.d.ts +1 -1
- package/browser/payments/bip341.d.ts.map +1 -1
- package/browser/payments/embed.d.ts +1 -1
- package/browser/payments/embed.d.ts.map +1 -1
- package/browser/payments/p2ms.d.ts.map +1 -1
- package/browser/payments/p2op.d.ts +1 -1
- package/browser/payments/p2op.d.ts.map +1 -1
- package/browser/payments/p2pk.d.ts +1 -1
- package/browser/payments/p2pk.d.ts.map +1 -1
- package/browser/payments/p2pkh.d.ts +1 -1
- package/browser/payments/p2pkh.d.ts.map +1 -1
- package/browser/payments/p2sh.d.ts.map +1 -1
- package/browser/payments/p2tr.d.ts +2 -2
- package/browser/payments/p2tr.d.ts.map +1 -1
- package/browser/payments/p2wpkh.d.ts +1 -1
- package/browser/payments/p2wpkh.d.ts.map +1 -1
- package/browser/payments/p2wsh.d.ts.map +1 -1
- package/browser/payments/types.d.ts +1 -1
- package/browser/payments/types.d.ts.map +1 -1
- package/browser/psbt/PsbtCache.d.ts +54 -0
- package/browser/psbt/PsbtCache.d.ts.map +1 -0
- package/browser/psbt/PsbtFinalizer.d.ts +21 -0
- package/browser/psbt/PsbtFinalizer.d.ts.map +1 -0
- package/browser/psbt/PsbtSigner.d.ts +32 -0
- package/browser/psbt/PsbtSigner.d.ts.map +1 -0
- package/browser/psbt/PsbtTransaction.d.ts +25 -0
- package/browser/psbt/PsbtTransaction.d.ts.map +1 -0
- package/browser/psbt/bip371.d.ts.map +1 -1
- package/browser/psbt/types.d.ts +5 -71
- package/browser/psbt/types.d.ts.map +1 -1
- package/browser/psbt/validation.d.ts +1 -1
- package/browser/psbt/validation.d.ts.map +1 -1
- package/browser/psbt.d.ts +26 -40
- package/browser/psbt.d.ts.map +1 -1
- package/browser/script.d.ts.map +1 -1
- package/browser/transaction.d.ts +4 -4
- package/browser/transaction.d.ts.map +1 -1
- package/browser/types.d.ts +5 -3
- package/browser/types.d.ts.map +1 -1
- package/browser/workers/WorkerSigningPool.d.ts +24 -17
- package/browser/workers/WorkerSigningPool.d.ts.map +1 -1
- package/browser/workers/WorkerSigningPool.node.d.ts +19 -12
- package/browser/workers/WorkerSigningPool.node.d.ts.map +1 -1
- package/browser/workers/WorkerSigningPool.sequential.d.ts +67 -0
- package/browser/workers/WorkerSigningPool.sequential.d.ts.map +1 -0
- package/browser/workers/WorkerSigningPool.worklet.d.ts +64 -0
- package/browser/workers/WorkerSigningPool.worklet.d.ts.map +1 -0
- package/browser/workers/index.browser.d.ts +16 -0
- package/browser/workers/index.browser.d.ts.map +1 -0
- package/browser/workers/index.d.ts +4 -64
- package/browser/workers/index.d.ts.map +1 -1
- package/browser/workers/index.js +28 -0
- package/browser/workers/index.node.d.ts +17 -0
- package/browser/workers/index.node.d.ts.map +1 -0
- package/browser/workers/index.react-native.d.ts +28 -0
- package/browser/workers/index.react-native.d.ts.map +1 -0
- package/browser/workers/index.shared.d.ts +15 -0
- package/browser/workers/index.shared.d.ts.map +1 -0
- package/browser/workers/psbt-parallel.d.ts +2 -3
- package/browser/workers/psbt-parallel.d.ts.map +1 -1
- package/browser/workers/types.d.ts +17 -0
- package/browser/workers/types.d.ts.map +1 -1
- package/build/address.d.ts +6 -2
- package/build/address.d.ts.map +1 -1
- package/build/address.js +32 -19
- package/build/address.js.map +1 -1
- package/build/bech32utils.js.map +1 -1
- package/build/block.d.ts.map +1 -1
- package/build/block.js +2 -4
- package/build/block.js.map +1 -1
- package/build/branded.d.ts +3 -14
- package/build/branded.d.ts.map +1 -1
- package/build/branded.js +0 -5
- package/build/branded.js.map +1 -1
- package/build/crypto.d.ts +1 -1
- package/build/ecc/context.d.ts +25 -24
- package/build/ecc/context.d.ts.map +1 -1
- package/build/ecc/context.js +29 -101
- package/build/ecc/context.js.map +1 -1
- package/build/ecc/index.d.ts +1 -1
- package/build/ecc/index.d.ts.map +1 -1
- package/build/ecc/types.d.ts +7 -126
- package/build/ecc/types.d.ts.map +1 -1
- package/build/ecc/types.js +4 -1
- package/build/ecc/types.js.map +1 -1
- package/build/env.d.ts +13 -0
- package/build/env.d.ts.map +1 -0
- package/build/env.js +198 -0
- package/build/env.js.map +1 -0
- package/build/index.d.ts +8 -7
- package/build/index.d.ts.map +1 -1
- package/build/index.js +9 -7
- package/build/index.js.map +1 -1
- package/build/io/BinaryReader.d.ts +15 -15
- package/build/io/BinaryReader.d.ts.map +1 -1
- package/build/io/BinaryReader.js +17 -17
- package/build/io/BinaryReader.js.map +1 -1
- package/build/io/BinaryWriter.d.ts +17 -17
- package/build/io/BinaryWriter.d.ts.map +1 -1
- package/build/io/BinaryWriter.js +39 -39
- package/build/io/BinaryWriter.js.map +1 -1
- package/build/io/hex.d.ts.map +1 -1
- package/build/io/hex.js +2 -1
- package/build/io/hex.js.map +1 -1
- package/build/io/index.d.ts +0 -1
- package/build/io/index.d.ts.map +1 -1
- package/build/io/index.js +0 -2
- package/build/io/index.js.map +1 -1
- package/build/opcodes.d.ts +11 -0
- package/build/opcodes.d.ts.map +1 -1
- package/build/opcodes.js +19 -4
- package/build/opcodes.js.map +1 -1
- package/build/payments/bip341.d.ts +1 -2
- package/build/payments/bip341.d.ts.map +1 -1
- package/build/payments/bip341.js +1 -2
- package/build/payments/bip341.js.map +1 -1
- package/build/payments/embed.d.ts +1 -1
- package/build/payments/embed.d.ts.map +1 -1
- package/build/payments/embed.js +14 -14
- package/build/payments/embed.js.map +1 -1
- package/build/payments/p2ms.d.ts.map +1 -1
- package/build/payments/p2ms.js +21 -21
- package/build/payments/p2ms.js.map +1 -1
- package/build/payments/p2op.d.ts +1 -1
- package/build/payments/p2op.d.ts.map +1 -1
- package/build/payments/p2op.js +18 -18
- package/build/payments/p2op.js.map +1 -1
- package/build/payments/p2pk.d.ts +1 -1
- package/build/payments/p2pk.d.ts.map +1 -1
- package/build/payments/p2pk.js +17 -17
- package/build/payments/p2pk.js.map +1 -1
- package/build/payments/p2pkh.d.ts +1 -1
- package/build/payments/p2pkh.d.ts.map +1 -1
- package/build/payments/p2pkh.js +20 -20
- package/build/payments/p2pkh.js.map +1 -1
- package/build/payments/p2sh.d.ts.map +1 -1
- package/build/payments/p2sh.js +22 -20
- package/build/payments/p2sh.js.map +1 -1
- package/build/payments/p2tr.d.ts +2 -2
- package/build/payments/p2tr.d.ts.map +1 -1
- package/build/payments/p2tr.js +25 -26
- package/build/payments/p2tr.js.map +1 -1
- package/build/payments/p2wpkh.d.ts +1 -1
- package/build/payments/p2wpkh.d.ts.map +1 -1
- package/build/payments/p2wpkh.js +20 -20
- package/build/payments/p2wpkh.js.map +1 -1
- package/build/payments/p2wsh.d.ts.map +1 -1
- package/build/payments/p2wsh.js +22 -22
- package/build/payments/p2wsh.js.map +1 -1
- package/build/payments/types.d.ts +1 -1
- package/build/payments/types.d.ts.map +1 -1
- package/build/psbt/PsbtCache.d.ts +54 -0
- package/build/psbt/PsbtCache.d.ts.map +1 -0
- package/build/psbt/PsbtCache.js +249 -0
- package/build/psbt/PsbtCache.js.map +1 -0
- package/build/psbt/PsbtFinalizer.d.ts +21 -0
- package/build/psbt/PsbtFinalizer.d.ts.map +1 -0
- package/build/psbt/PsbtFinalizer.js +157 -0
- package/build/psbt/PsbtFinalizer.js.map +1 -0
- package/build/psbt/PsbtSigner.d.ts +32 -0
- package/build/psbt/PsbtSigner.d.ts.map +1 -0
- package/build/psbt/PsbtSigner.js +192 -0
- package/build/psbt/PsbtSigner.js.map +1 -0
- package/build/psbt/PsbtTransaction.d.ts +25 -0
- package/build/psbt/PsbtTransaction.d.ts.map +1 -0
- package/build/psbt/PsbtTransaction.js +61 -0
- package/build/psbt/PsbtTransaction.js.map +1 -0
- package/build/psbt/bip371.d.ts.map +1 -1
- package/build/psbt/bip371.js +6 -2
- package/build/psbt/bip371.js.map +1 -1
- package/build/psbt/psbtutils.js +1 -1
- package/build/psbt/psbtutils.js.map +1 -1
- package/build/psbt/types.d.ts +5 -71
- package/build/psbt/types.d.ts.map +1 -1
- package/build/psbt/validation.d.ts +1 -1
- package/build/psbt/validation.d.ts.map +1 -1
- package/build/psbt/validation.js +1 -1
- package/build/psbt/validation.js.map +1 -1
- package/build/psbt.d.ts +26 -40
- package/build/psbt.d.ts.map +1 -1
- package/build/psbt.js +180 -808
- package/build/psbt.js.map +1 -1
- package/build/script.d.ts.map +1 -1
- package/build/script.js +4 -4
- package/build/script.js.map +1 -1
- package/build/transaction.d.ts +4 -4
- package/build/transaction.d.ts.map +1 -1
- package/build/transaction.js +6 -5
- package/build/transaction.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/build/types.d.ts +5 -3
- package/build/types.d.ts.map +1 -1
- package/build/types.js +14 -25
- package/build/types.js.map +1 -1
- package/build/workers/WorkerSigningPool.d.ts +24 -17
- package/build/workers/WorkerSigningPool.d.ts.map +1 -1
- package/build/workers/WorkerSigningPool.js +36 -25
- package/build/workers/WorkerSigningPool.js.map +1 -1
- package/build/workers/WorkerSigningPool.node.d.ts +19 -12
- package/build/workers/WorkerSigningPool.node.d.ts.map +1 -1
- package/build/workers/WorkerSigningPool.node.js +60 -28
- package/build/workers/WorkerSigningPool.node.js.map +1 -1
- package/build/workers/WorkerSigningPool.sequential.d.ts +76 -0
- package/build/workers/WorkerSigningPool.sequential.d.ts.map +1 -0
- package/build/workers/WorkerSigningPool.sequential.js +160 -0
- package/build/workers/WorkerSigningPool.sequential.js.map +1 -0
- package/build/workers/WorkerSigningPool.worklet.d.ts +79 -0
- package/build/workers/WorkerSigningPool.worklet.d.ts.map +1 -0
- package/build/workers/WorkerSigningPool.worklet.js +390 -0
- package/build/workers/WorkerSigningPool.worklet.js.map +1 -0
- package/build/workers/index.browser.d.ts +24 -0
- package/build/workers/index.browser.d.ts.map +1 -0
- package/build/workers/index.browser.js +30 -0
- package/build/workers/index.browser.js.map +1 -0
- package/build/workers/index.d.ts +6 -18
- package/build/workers/index.d.ts.map +1 -1
- package/build/workers/index.js +12 -14
- package/build/workers/index.js.map +1 -1
- package/build/workers/index.node.d.ts +38 -0
- package/build/workers/index.node.d.ts.map +1 -0
- package/build/workers/index.node.js +45 -0
- package/build/workers/index.node.js.map +1 -0
- package/build/workers/index.react-native.d.ts +28 -0
- package/build/workers/index.react-native.d.ts.map +1 -0
- package/build/workers/index.react-native.js +67 -0
- package/build/workers/index.react-native.js.map +1 -0
- package/build/workers/index.shared.d.ts +15 -0
- package/build/workers/index.shared.d.ts.map +1 -0
- package/build/workers/index.shared.js +20 -0
- package/build/workers/index.shared.js.map +1 -0
- package/build/workers/psbt-parallel.d.ts +2 -3
- package/build/workers/psbt-parallel.d.ts.map +1 -1
- package/build/workers/psbt-parallel.js +4 -4
- package/build/workers/psbt-parallel.js.map +1 -1
- package/build/workers/types.d.ts +17 -0
- package/build/workers/types.d.ts.map +1 -1
- package/build/workers/types.js.map +1 -1
- package/package.json +48 -9
- package/src/address.ts +53 -21
- package/src/bech32utils.ts +3 -3
- package/src/block.ts +17 -10
- package/src/branded.ts +15 -13
- package/src/crypto.ts +1 -1
- package/src/ecc/context.ts +36 -136
- package/src/ecc/index.ts +2 -2
- package/src/ecc/types.ts +7 -145
- package/src/env.ts +239 -0
- package/src/index.ts +57 -22
- package/src/io/BinaryReader.ts +18 -18
- package/src/io/BinaryWriter.ts +43 -43
- package/src/io/hex.ts +2 -1
- package/src/io/index.ts +0 -3
- package/src/opcodes.ts +21 -4
- package/src/payments/bip341.ts +5 -7
- package/src/payments/embed.ts +19 -19
- package/src/payments/p2ms.ts +34 -27
- package/src/payments/p2op.ts +22 -22
- package/src/payments/p2pk.ts +22 -22
- package/src/payments/p2pkh.ts +28 -28
- package/src/payments/p2sh.ts +33 -30
- package/src/payments/p2tr.ts +40 -40
- package/src/payments/p2wpkh.ts +30 -30
- package/src/payments/p2wsh.ts +29 -29
- package/src/payments/types.ts +1 -1
- package/src/psbt/PsbtCache.ts +325 -0
- package/src/psbt/PsbtFinalizer.ts +213 -0
- package/src/psbt/PsbtSigner.ts +302 -0
- package/src/psbt/PsbtTransaction.ts +82 -0
- package/src/psbt/bip371.ts +7 -3
- package/src/psbt/psbtutils.ts +1 -1
- package/src/psbt/types.ts +5 -94
- package/src/psbt/validation.ts +5 -12
- package/src/psbt.ts +376 -1201
- package/src/script.ts +6 -9
- package/src/transaction.ts +19 -15
- package/src/types.ts +33 -45
- package/src/workers/WorkerSigningPool.node.ts +72 -36
- package/src/workers/WorkerSigningPool.sequential.ts +191 -0
- package/src/workers/WorkerSigningPool.ts +48 -39
- package/src/workers/WorkerSigningPool.worklet.ts +522 -0
- package/src/workers/index.browser.ts +34 -0
- package/src/workers/index.node.ts +50 -0
- package/src/workers/index.react-native.ts +110 -0
- package/src/workers/index.shared.ts +58 -0
- package/src/workers/index.ts +14 -65
- package/src/workers/psbt-parallel.ts +8 -13
- package/src/workers/types.ts +26 -1
- package/test/address.spec.ts +2 -2
- package/test/bitcoin.core.spec.ts +5 -2
- package/test/browser/payments.spec.ts +151 -0
- package/test/browser/psbt.spec.ts +1510 -0
- package/test/browser/script.spec.ts +223 -0
- package/test/browser/setup.ts +13 -0
- package/test/browser/workers-signing.spec.ts +537 -0
- package/test/crypto.spec.ts +2 -2
- package/test/env.spec.ts +418 -0
- package/test/fixtures/core/base58_encode_decode.json +12 -48
- package/test/fixtures/core/base58_keys_invalid.json +50 -150
- package/test/fixtures/core/sighash.json +1 -3
- package/test/fixtures/core/tx_valid.json +133 -501
- package/test/fixtures/embed.json +3 -11
- package/test/fixtures/p2ms.json +21 -91
- package/test/fixtures/p2pk.json +5 -24
- package/test/fixtures/p2pkh.json +7 -36
- package/test/fixtures/p2sh.json +8 -54
- package/test/fixtures/p2tr.json +2 -6
- package/test/fixtures/p2wpkh.json +7 -36
- package/test/fixtures/p2wsh.json +14 -59
- package/test/fixtures/psbt.json +2 -6
- package/test/fixtures/script.json +12 -48
- package/test/integration/addresses.spec.ts +11 -5
- package/test/integration/bip32.spec.ts +1 -1
- package/test/integration/cltv.spec.ts +10 -6
- package/test/integration/csv.spec.ts +10 -9
- package/test/integration/payments.spec.ts +8 -4
- package/test/integration/taproot.spec.ts +26 -6
- package/test/integration/transactions.spec.ts +22 -8
- package/test/payments.spec.ts +1 -1
- package/test/payments.utils.ts +1 -1
- package/test/psbt.spec.ts +250 -64
- package/test/script_signature.spec.ts +1 -1
- package/test/transaction.spec.ts +18 -5
- package/test/tsconfig.json +6 -20
- package/test/workers-pool.spec.ts +65 -23
- package/test/workers-sequential.spec.ts +669 -0
- package/test/workers-signing.spec.ts +7 -3
- package/test/workers-worklet.spec.ts +500 -0
- package/test/workers.spec.ts +6 -7
- package/typedoc.json +39 -0
- package/vite.config.browser.ts +31 -6
- package/vitest.config.browser.ts +68 -0
- package/browser/ecpair.d.ts +0 -99
- package/browser/io/MemoryPool.d.ts +0 -220
- package/browser/io/MemoryPool.d.ts.map +0 -1
- package/build/io/MemoryPool.d.ts +0 -220
- package/build/io/MemoryPool.d.ts.map +0 -1
- package/build/io/MemoryPool.js +0 -309
- package/build/io/MemoryPool.js.map +0 -1
- package/src/ecpair.d.ts +0 -99
- package/src/io/MemoryPool.ts +0 -343
- package/test/taproot-cache.spec.ts +0 -694
package/browser/psbt/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Psbt as PsbtBase, PsbtGlobal, PsbtInput, PsbtOutput } from 'bip174';
|
|
2
2
|
import { Network } from '../networks.js';
|
|
3
|
-
import {
|
|
4
|
-
import { Bytes32, PublicKey, Satoshi, Script
|
|
3
|
+
import { TaprootHashCache, Transaction } from '../transaction.js';
|
|
4
|
+
import { Bytes32, MessageHash, PublicKey, Satoshi, Script } from '../types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Transaction input interface for PSBT.
|
|
7
7
|
*/
|
|
@@ -33,7 +33,7 @@ export interface PsbtTxOutput extends TransactionOutput {
|
|
|
33
33
|
* Signature validation function type.
|
|
34
34
|
* msghash is 32 byte hash of preimage, signature is 64 byte compact signature (r,s 32 bytes each)
|
|
35
35
|
*/
|
|
36
|
-
export type ValidateSigFunction = (pubkey: PublicKey, msghash:
|
|
36
|
+
export type ValidateSigFunction = (pubkey: PublicKey, msghash: MessageHash, signature: Uint8Array) => boolean;
|
|
37
37
|
/**
|
|
38
38
|
* Extended PsbtBase interface with typed inputs and globalMap.
|
|
39
39
|
*/
|
|
@@ -80,72 +80,7 @@ export interface PsbtOutputExtendedScript extends PsbtOutput {
|
|
|
80
80
|
readonly script: Script;
|
|
81
81
|
readonly value: Satoshi;
|
|
82
82
|
}
|
|
83
|
-
|
|
84
|
-
* Base interface for HD signers.
|
|
85
|
-
*/
|
|
86
|
-
interface HDSignerBase {
|
|
87
|
-
/**
|
|
88
|
-
* DER format compressed publicKey Uint8Array
|
|
89
|
-
*/
|
|
90
|
-
readonly publicKey: PublicKey;
|
|
91
|
-
/**
|
|
92
|
-
* The first 4 bytes of the sha256-ripemd160 of the publicKey
|
|
93
|
-
*/
|
|
94
|
-
readonly fingerprint: Uint8Array;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* HD signer interface for synchronous signing.
|
|
98
|
-
*/
|
|
99
|
-
export interface HDSigner extends HDSignerBase {
|
|
100
|
-
/**
|
|
101
|
-
* The path string must match /^m(\/\d+'?)+$/
|
|
102
|
-
* ex. m/44'/0'/0'/1/23 levels with ' must be hard derivations
|
|
103
|
-
*/
|
|
104
|
-
derivePath(path: string): HDSigner;
|
|
105
|
-
/**
|
|
106
|
-
* Input hash (the "message digest") for the signature algorithm
|
|
107
|
-
* Return a 64 byte signature (32 byte r and 32 byte s in that order)
|
|
108
|
-
*/
|
|
109
|
-
sign(hash: Bytes32): Uint8Array;
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* HD signer interface for asynchronous signing.
|
|
113
|
-
*/
|
|
114
|
-
export interface HDSignerAsync extends HDSignerBase {
|
|
115
|
-
derivePath(path: string): HDSignerAsync;
|
|
116
|
-
sign(hash: Bytes32): Promise<Uint8Array>;
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Alternative signer interface with lowR support.
|
|
120
|
-
*/
|
|
121
|
-
export interface SignerAlternative {
|
|
122
|
-
readonly publicKey: PublicKey;
|
|
123
|
-
readonly lowR: boolean;
|
|
124
|
-
sign(hash: Bytes32, lowR?: boolean): Signature;
|
|
125
|
-
verify(hash: Bytes32, signature: Signature): boolean;
|
|
126
|
-
signSchnorr(hash: Bytes32): SchnorrSignature;
|
|
127
|
-
verifySchnorr(hash: Bytes32, signature: SchnorrSignature): boolean;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Basic signer interface for synchronous signing.
|
|
131
|
-
*/
|
|
132
|
-
export interface Signer {
|
|
133
|
-
readonly publicKey: PublicKey;
|
|
134
|
-
readonly network?: Network | undefined;
|
|
135
|
-
sign(hash: Bytes32, lowR?: boolean): Signature;
|
|
136
|
-
signSchnorr?(hash: Bytes32): SchnorrSignature;
|
|
137
|
-
getPublicKey?(): PublicKey;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Basic signer interface for asynchronous signing.
|
|
141
|
-
*/
|
|
142
|
-
export interface SignerAsync {
|
|
143
|
-
readonly publicKey: PublicKey;
|
|
144
|
-
readonly network?: Network | undefined;
|
|
145
|
-
sign(hash: Bytes32, lowR?: boolean): Promise<Signature>;
|
|
146
|
-
signSchnorr?(hash: Bytes32): Promise<SchnorrSignature>;
|
|
147
|
-
getPublicKey?(): PublicKey;
|
|
148
|
-
}
|
|
83
|
+
export type { Signer, SignerAsync, HDSigner, HDSignerAsync } from '@btc-vision/ecpair';
|
|
149
84
|
/**
|
|
150
85
|
* Minimal key pair interface for checking Taproot hashes.
|
|
151
86
|
* Only requires publicKey and optional signSchnorr presence check.
|
|
@@ -158,7 +93,7 @@ export interface TaprootHashCheckSigner {
|
|
|
158
93
|
/**
|
|
159
94
|
* Internal PSBT cache for computed values.
|
|
160
95
|
*/
|
|
161
|
-
export interface
|
|
96
|
+
export interface PsbtCacheInterface {
|
|
162
97
|
nonWitnessUtxoTxCache: Transaction[];
|
|
163
98
|
nonWitnessUtxoBufCache: Uint8Array[];
|
|
164
99
|
txInCache: TxInCacheMap;
|
|
@@ -241,5 +176,4 @@ export type FinalScriptsFunc = (inputIndex: number, input: PsbtInput, script: Sc
|
|
|
241
176
|
export type FinalTaprootScriptsFunc = (inputIndex: number, input: PsbtInput, tapLeafHashToFinalize?: Bytes32) => {
|
|
242
177
|
finalScriptWitness: Uint8Array | undefined;
|
|
243
178
|
};
|
|
244
|
-
export {};
|
|
245
179
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/psbt/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAClF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/psbt/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PsbtInput } from 'bip174';
|
|
2
2
|
import { Payment, PaymentOpts } from '../payments/index.js';
|
|
3
3
|
import { Transaction } from '../transaction.js';
|
|
4
|
-
import { PsbtCache } from './types.js';
|
|
4
|
+
import { PsbtCacheInterface as PsbtCache } from './types.js';
|
|
5
5
|
import { PublicKey, Script } from '../types.js';
|
|
6
6
|
/**
|
|
7
7
|
* Validates that a number is a valid 32-bit unsigned integer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/psbt/validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/psbt/validation.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,KAAK,EAAe,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAK9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,IAAI,SAAS,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI5C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAIjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,CAWlD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC7B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3C,IAAI,CAKN;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAIzE;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,SAAS,EAAE,EACnB,MAAM,EAAE,MAAM,EACd,kBAAkB,CAAC,EAAE,OAAO,GAC7B,IAAI,CAaN;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAS/D;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAI5F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,EAClE,iBAAiB,EAAE,MAAM,GAC1B,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,QAAQ,KAAK,IAAI,CAiB/F;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAtBrB,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,UAAU,OAAO,GAAG,QAAQ,KAAK,IAsBP,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,kBAAkB,QA3BtB,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,UAAU,OAAO,GAAG,QAAQ,KAAK,IA2BJ,CAAC"}
|
package/browser/psbt.d.ts
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
import { KeyValue,
|
|
2
|
-
import { BIP32Interface } from '@btc-vision/bip32';
|
|
3
|
-
import { ECPairInterface } from 'ecpair';
|
|
1
|
+
import { KeyValue, PsbtGlobalUpdate, PsbtInput, PsbtInputUpdate, PsbtOutputUpdate } from 'bip174';
|
|
4
2
|
import { Transaction } from './transaction.js';
|
|
5
|
-
import { Bytes32, PublicKey, Script } from './types.js';
|
|
6
|
-
import {
|
|
7
|
-
export type { TransactionInput, PsbtTxInput, TransactionOutput, PsbtTxOutput, ValidateSigFunction, PsbtBaseExtended, PsbtOptsOptional, PsbtOpts, PsbtInputExtended, PsbtOutputExtended,
|
|
3
|
+
import { Bytes32, MessageHash, PublicKey, Script } from './types.js';
|
|
4
|
+
import { AllScriptType, FinalScriptsFunc, FinalTaprootScriptsFunc, HDSigner, HDSignerAsync, PsbtBaseExtended, PsbtInputExtended, PsbtOptsOptional, PsbtOutputExtended, PsbtTxInput, PsbtTxOutput, Signer, SignerAsync, TaprootHashCheckSigner, ValidateSigFunction } from './psbt/types.js';
|
|
5
|
+
export type { TransactionInput, PsbtTxInput, TransactionOutput, PsbtTxOutput, ValidateSigFunction, PsbtBaseExtended, PsbtOptsOptional, PsbtOpts, PsbtInputExtended, PsbtOutputExtended, PsbtOutputExtendedScript, HDSigner, HDSignerAsync, Signer, SignerAsync, TaprootHashCheckSigner, PsbtCacheInterface, TxCacheNumberKey, ScriptType, AllScriptType, GetScriptReturn, FinalScriptsFunc, FinalTaprootScriptsFunc, } from './psbt/types.js';
|
|
6
|
+
export { getFinalScripts, prepareFinalScripts };
|
|
7
|
+
export { PsbtCache } from './psbt/PsbtCache.js';
|
|
8
|
+
export { PsbtSigner } from './psbt/PsbtSigner.js';
|
|
9
|
+
export { PsbtFinalizer } from './psbt/PsbtFinalizer.js';
|
|
10
|
+
export { PsbtTransaction, transactionFromBuffer } from './psbt/PsbtTransaction.js';
|
|
11
|
+
declare function getFinalScripts(inputIndex: number, input: PsbtInput, script: Script, isSegwit: boolean, isP2SH: boolean, isP2WSH: boolean, canRunChecks?: boolean, solution?: Uint8Array[]): {
|
|
12
|
+
finalScriptSig: Script | undefined;
|
|
13
|
+
finalScriptWitness: Uint8Array | undefined;
|
|
14
|
+
};
|
|
15
|
+
declare function prepareFinalScripts(script: Uint8Array, scriptType: string, partialSig: import('bip174').PartialSig[], isSegwit: boolean, isP2SH: boolean, isP2WSH: boolean, solution?: Uint8Array[]): {
|
|
16
|
+
finalScriptSig: Script | undefined;
|
|
17
|
+
finalScriptWitness: Uint8Array | undefined;
|
|
18
|
+
};
|
|
8
19
|
/**
|
|
9
20
|
* Psbt class can parse and generate a PSBT binary based off of the BIP174.
|
|
10
21
|
* There are 6 roles that this class fulfills. (Explained in BIP174)
|
|
@@ -42,17 +53,10 @@ export type { TransactionInput, PsbtTxInput, TransactionOutput, PsbtTxOutput, Va
|
|
|
42
53
|
* Transaction Extractor: This role will perform some checks before returning a
|
|
43
54
|
* Transaction object. Such as fee rate not being larger than maximumFeeRate etc.
|
|
44
55
|
*/
|
|
45
|
-
/**
|
|
46
|
-
* Psbt class can parse and generate a PSBT binary based off of the BIP174.
|
|
47
|
-
*/
|
|
48
56
|
export declare class Psbt {
|
|
49
57
|
#private;
|
|
50
58
|
data: PsbtBaseExtended;
|
|
51
59
|
constructor(opts?: PsbtOptsOptional, data?: PsbtBaseExtended);
|
|
52
|
-
/** @internal - Exposed for testing. Do not use in production code. */
|
|
53
|
-
get __CACHE(): PsbtCache;
|
|
54
|
-
/** @internal - Exposed for testing. Do not use in production code. */
|
|
55
|
-
get opts(): PsbtOpts;
|
|
56
60
|
get inputCount(): number;
|
|
57
61
|
get version(): number;
|
|
58
62
|
set version(version: number);
|
|
@@ -65,6 +69,7 @@ export declare class Psbt {
|
|
|
65
69
|
static fromBuffer(buffer: Uint8Array, opts?: PsbtOptsOptional): Psbt;
|
|
66
70
|
combine(...those: Psbt[]): this;
|
|
67
71
|
clone(): Psbt;
|
|
72
|
+
get maximumFeeRate(): number;
|
|
68
73
|
setMaximumFeeRate(satoshiPerByte: number): void;
|
|
69
74
|
setVersion(version: number): this;
|
|
70
75
|
setVersionTRUC(): this;
|
|
@@ -73,17 +78,6 @@ export declare class Psbt {
|
|
|
73
78
|
addInputs(inputDatas: PsbtInputExtended[], checkPartialSigs?: boolean): this;
|
|
74
79
|
addInput(inputData: PsbtInputExtended, checkPartialSigs?: boolean): this;
|
|
75
80
|
addOutputs(outputDatas: PsbtOutputExtended[], checkPartialSigs?: boolean): this;
|
|
76
|
-
/**
|
|
77
|
-
* Add an output to the PSBT.
|
|
78
|
-
*
|
|
79
|
-
* **PERFORMANCE WARNING:** Passing an `address` string is ~10x slower than passing
|
|
80
|
-
* a `script` directly due to address parsing overhead (bech32 decode, etc.).
|
|
81
|
-
* For high-performance use cases with many outputs, pre-compute the script using
|
|
82
|
-
* `toOutputScript(address, network)` and pass `{ script, value }` instead.
|
|
83
|
-
*
|
|
84
|
-
* @param outputData - Output data with either `address` or `script`, and `value`
|
|
85
|
-
* @param checkPartialSigs - Whether to check for existing signatures (default: true)
|
|
86
|
-
*/
|
|
87
81
|
addOutput(outputData: PsbtOutputExtended, checkPartialSigs?: boolean): this;
|
|
88
82
|
extractTransaction(disableFeeCheck?: boolean, disableOutputChecks?: boolean): Transaction;
|
|
89
83
|
getFeeRate(disableOutputChecks?: boolean): number;
|
|
@@ -102,12 +96,12 @@ export declare class Psbt {
|
|
|
102
96
|
signAllInputsHDAsync(hdKeyPair: HDSigner | HDSignerAsync, sighashTypes?: number[]): Promise<void>;
|
|
103
97
|
signInputHD(inputIndex: number, hdKeyPair: HDSigner, sighashTypes?: number[]): this;
|
|
104
98
|
signInputHDAsync(inputIndex: number, hdKeyPair: HDSigner | HDSignerAsync, sighashTypes?: number[]): Promise<void>;
|
|
105
|
-
signAllInputs(keyPair: Signer |
|
|
106
|
-
signAllInputsAsync(keyPair: Signer |
|
|
107
|
-
signInput(inputIndex: number, keyPair: Signer |
|
|
108
|
-
signTaprootInput(inputIndex: number, keyPair: Signer |
|
|
109
|
-
signInputAsync(inputIndex: number, keyPair: Signer |
|
|
110
|
-
signTaprootInputAsync(inputIndex: number, keyPair: Signer |
|
|
99
|
+
signAllInputs(keyPair: Signer | HDSigner, sighashTypes?: number[]): this;
|
|
100
|
+
signAllInputsAsync(keyPair: Signer | SignerAsync | HDSigner | HDSignerAsync, sighashTypes?: number[]): Promise<void>;
|
|
101
|
+
signInput(inputIndex: number, keyPair: Signer | HDSigner, sighashTypes?: number[]): this;
|
|
102
|
+
signTaprootInput(inputIndex: number, keyPair: Signer | HDSigner, tapLeafHashToSign?: Uint8Array, sighashTypes?: number[]): this;
|
|
103
|
+
signInputAsync(inputIndex: number, keyPair: Signer | SignerAsync | HDSigner | HDSignerAsync, sighashTypes?: number[]): Promise<void>;
|
|
104
|
+
signTaprootInputAsync(inputIndex: number, keyPair: Signer | SignerAsync | HDSigner | HDSignerAsync, tapLeafHash?: Uint8Array, sighashTypes?: number[]): Promise<void>;
|
|
111
105
|
toBuffer(): Uint8Array;
|
|
112
106
|
toHex(): string;
|
|
113
107
|
toBase64(): string;
|
|
@@ -118,17 +112,9 @@ export declare class Psbt {
|
|
|
118
112
|
addUnknownKeyValToInput(inputIndex: number, keyVal: KeyValue): this;
|
|
119
113
|
addUnknownKeyValToOutput(outputIndex: number, keyVal: KeyValue): this;
|
|
120
114
|
clearFinalizedInput(inputIndex: number): this;
|
|
121
|
-
checkTaprootHashesForSig(inputIndex: number, input: PsbtInput, keyPair: Signer |
|
|
122
|
-
hash:
|
|
115
|
+
checkTaprootHashesForSig(inputIndex: number, input: PsbtInput, keyPair: Signer | SignerAsync | HDSigner | HDSignerAsync | TaprootHashCheckSigner, tapLeafHashToSign?: Uint8Array, allowedSighashTypes?: number[]): {
|
|
116
|
+
hash: MessageHash;
|
|
123
117
|
leafHash?: Bytes32;
|
|
124
118
|
}[];
|
|
125
119
|
}
|
|
126
|
-
export declare function getFinalScripts(inputIndex: number, input: PsbtInput, script: Script, isSegwit: boolean, isP2SH: boolean, isP2WSH: boolean, canRunChecks?: boolean, solution?: Uint8Array[]): {
|
|
127
|
-
finalScriptSig: Script | undefined;
|
|
128
|
-
finalScriptWitness: Uint8Array | undefined;
|
|
129
|
-
};
|
|
130
|
-
export declare function prepareFinalScripts(script: Uint8Array, scriptType: string, partialSig: PartialSig[], isSegwit: boolean, isP2SH: boolean, isP2WSH: boolean, solution?: Uint8Array[]): {
|
|
131
|
-
finalScriptSig: Script | undefined;
|
|
132
|
-
finalScriptWitness: Uint8Array | undefined;
|
|
133
|
-
};
|
|
134
120
|
//# sourceMappingURL=psbt.d.ts.map
|
package/browser/psbt.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"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"}
|
package/browser/script.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"AAOA,OAAO,
|
|
1
|
+
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../src/script.ts"],"names":[],"mappings":"AAOA,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAIhD,OAAO,EAAE,OAAO,EAAE,CAAC;AAgBnB,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEhD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAExD;AAsBD;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM,CAkD1D;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,IAAI,CA6CvF;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM,CAwBxD;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmB3C;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,GAAG,UAAU,EAAE,CAYhE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAE7D;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAKtE;AAED,eAAO,MAAM,MAAM,qBAAe,CAAC;AACnC,eAAO,MAAM,SAAS,wBAAkB,CAAC"}
|
package/browser/transaction.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bytes32, Satoshi, Script } from './types.js';
|
|
1
|
+
import { Bytes32, MessageHash, Satoshi, Script } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Cache for Taproot sighash intermediate values.
|
|
4
4
|
* These are identical for all inputs with SIGHASH_ALL, so compute once and reuse.
|
|
@@ -116,7 +116,7 @@ export declare class Transaction {
|
|
|
116
116
|
* @param hashType - Signature hash type
|
|
117
117
|
* @returns 32-byte hash for signing
|
|
118
118
|
*/
|
|
119
|
-
hashForSignature(inIndex: number, prevOutScript: Script, hashType: number):
|
|
119
|
+
hashForSignature(inIndex: number, prevOutScript: Script, hashType: number): MessageHash;
|
|
120
120
|
/**
|
|
121
121
|
* Hash transaction for signing a Taproot (witness v1) input.
|
|
122
122
|
*
|
|
@@ -128,7 +128,7 @@ export declare class Transaction {
|
|
|
128
128
|
* @param annex - Optional annex data
|
|
129
129
|
* @returns 32-byte hash for signing
|
|
130
130
|
*/
|
|
131
|
-
hashForWitnessV1(inIndex: number, prevOutScripts: readonly Script[], values: readonly Satoshi[], hashType: number, leafHash?: Bytes32, annex?: Uint8Array, taprootCache?: TaprootHashCache):
|
|
131
|
+
hashForWitnessV1(inIndex: number, prevOutScripts: readonly Script[], values: readonly Satoshi[], hashType: number, leafHash?: Bytes32, annex?: Uint8Array, taprootCache?: TaprootHashCache): MessageHash;
|
|
132
132
|
/**
|
|
133
133
|
* Pre-compute intermediate hashes for Taproot signing.
|
|
134
134
|
* Call this once before signing multiple inputs to avoid O(n^2) performance.
|
|
@@ -147,7 +147,7 @@ export declare class Transaction {
|
|
|
147
147
|
* @param hashType - Signature hash type
|
|
148
148
|
* @returns 32-byte hash for signing
|
|
149
149
|
*/
|
|
150
|
-
hashForWitnessV0(inIndex: number, prevOutScript: Script, value: Satoshi, hashType: number):
|
|
150
|
+
hashForWitnessV0(inIndex: number, prevOutScript: Script, value: Satoshi, hashType: number): MessageHash;
|
|
151
151
|
/**
|
|
152
152
|
* Get the transaction hash.
|
|
153
153
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../src/transaction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../src/transaction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AA4BxE;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IAClB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;;IACpB,MAAM,CAAC,QAAQ,CAAC,gBAAgB,cAAc;IAC9C,MAAM,CAAC,QAAQ,CAAC,eAAe,KAAQ;IACvC,MAAM,CAAC,QAAQ,CAAC,WAAW,KAAQ;IACnC,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAQ;IACpC,MAAM,CAAC,QAAQ,CAAC,cAAc,KAAQ;IACtC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,OAAQ;IAC5C,MAAM,CAAC,QAAQ,CAAC,mBAAmB,KAAQ;IAC3C,MAAM,CAAC,QAAQ,CAAC,kBAAkB,OAAQ;IAC1C,MAAM,CAAC,QAAQ,CAAC,2BAA2B,KAAQ;IACnD,MAAM,CAAC,QAAQ,CAAC,yBAAyB,KAAQ;IAEjD,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK;IACjC,MAAM,CAAC,QAAQ,CAAC,cAAc,SAAS;IACvC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,QAAQ;IAE5C,OAAO,EAAE,MAAM,CAAK;IACpB,QAAQ,EAAE,MAAM,CAAK;IACrB,GAAG,EAAE,KAAK,EAAE,CAAM;IAClB,IAAI,EAAE,MAAM,EAAE,CAAM;IAEpB;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,WAAW;IA4DxE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAIxC;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAU7C,UAAU,IAAI,OAAO;IAIrB;;;;;;;;OAQG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BrF;;;;;;OAMG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM;IAiBvD,YAAY,IAAI,OAAO;IAMvB,MAAM,IAAI,MAAM;IAMhB,WAAW,IAAI,MAAM;IAIrB,UAAU,CAAC,cAAc,GAAE,OAAc,GAAG,MAAM;IAqBlD,KAAK,IAAI,WAAW;IAyBpB;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW;IAmFvF;;;;;;;;;;OAUG;IACH,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,SAAS,MAAM,EAAE,EACjC,MAAM,EAAE,SAAS,OAAO,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,OAAO,EAClB,KAAK,CAAC,EAAE,UAAU,EAClB,YAAY,CAAC,EAAE,gBAAgB,GAChC,WAAW;IAkKd;;;;;;;OAOG;IACH,mBAAmB,CACf,cAAc,EAAE,SAAS,MAAM,EAAE,EACjC,MAAM,EAAE,SAAS,OAAO,EAAE,GAC3B,gBAAgB;IAiDnB;;;;;;;;OAQG;IACH,gBAAgB,CACZ,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,GACjB,WAAW;IA8Fd;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO;IAMtC;;;;OAIG;IACH,KAAK,IAAI,MAAM;IAKf;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,UAAU;IAIjE;;;;OAIG;IACH,KAAK,IAAI,MAAM;IAIf;;;;;OAKG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAWtD;;;;;OAKG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;CAgEzD"}
|
package/browser/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type { Bytes32, Bytes20, PublicKey, XOnlyPublicKey, Satoshi, PrivateKey, Signature, SchnorrSignature, Script, } from './branded.js';
|
|
1
|
+
import { Bytes20, Bytes32, MessageHash, PrivateKey, PublicKey, Satoshi, SchnorrSignature, Script, Signature, XOnlyPublicKey } from './branded.js';
|
|
2
|
+
export type { Bytes32, Bytes20, PublicKey, XOnlyPublicKey, Satoshi, PrivateKey, Signature, SchnorrSignature, MessageHash, Script, } from './branded.js';
|
|
3
3
|
export declare const SATOSHI_MAX: bigint;
|
|
4
4
|
export declare const TAPLEAF_VERSION_MASK = 254;
|
|
5
5
|
export declare function isUInt8(value: unknown): value is number;
|
|
@@ -27,12 +27,14 @@ export interface Tapleaf {
|
|
|
27
27
|
export type Taptree = [Taptree | Tapleaf, Taptree | Tapleaf] | Tapleaf;
|
|
28
28
|
export declare function isTapleaf(value: unknown): value is Tapleaf;
|
|
29
29
|
export declare function isTaptree(value: unknown): value is Taptree;
|
|
30
|
-
export type { XOnlyPointAddTweakResult, EccLib, Parity } from './ecc/types.js';
|
|
30
|
+
export type { CryptoBackend, XOnlyPointAddTweakResult, EccLib, Parity } from './ecc/types.js';
|
|
31
31
|
export type StackElement = Uint8Array | number;
|
|
32
32
|
export type Stack = readonly StackElement[];
|
|
33
33
|
export type StackFunction = () => Stack;
|
|
34
34
|
export declare function stacksEqual(a: Uint8Array[], b: Uint8Array[]): boolean;
|
|
35
35
|
export declare function toBytes32(value: Uint8Array): Bytes32;
|
|
36
|
+
export declare function isMessageHash(value: unknown): value is MessageHash;
|
|
37
|
+
export declare function toMessageHash(value: Uint8Array): MessageHash;
|
|
36
38
|
export declare function toBytes20(value: Uint8Array): Bytes20;
|
|
37
39
|
export declare function toSatoshi(value: bigint): Satoshi;
|
|
38
40
|
export declare function assertXOnlyPublicKey(value: unknown, name: string): asserts value is XOnlyPublicKey;
|
package/browser/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ParallelSignerKeyPair, ParallelSigningResult, SigningTask, WorkerPoolConfig } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Worker-based parallel signing pool.
|
|
4
4
|
*
|
|
@@ -27,22 +27,6 @@ export declare class WorkerSigningPool {
|
|
|
27
27
|
* @param config - Pool configuration
|
|
28
28
|
*/
|
|
29
29
|
private constructor();
|
|
30
|
-
/**
|
|
31
|
-
* Gets the singleton pool instance.
|
|
32
|
-
*
|
|
33
|
-
* @param config - Optional configuration (only used on first call)
|
|
34
|
-
* @returns The singleton pool instance
|
|
35
|
-
*
|
|
36
|
-
* @example
|
|
37
|
-
* ```typescript
|
|
38
|
-
* const pool = WorkerSigningPool.getInstance({ workerCount: 8 });
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
static getInstance(config?: WorkerPoolConfig): WorkerSigningPool;
|
|
42
|
-
/**
|
|
43
|
-
* Resets the singleton instance (for testing).
|
|
44
|
-
*/
|
|
45
|
-
static resetInstance(): void;
|
|
46
30
|
/**
|
|
47
31
|
* Number of workers in the pool.
|
|
48
32
|
*/
|
|
@@ -59,6 +43,22 @@ export declare class WorkerSigningPool {
|
|
|
59
43
|
* Whether workers are being preserved between batches.
|
|
60
44
|
*/
|
|
61
45
|
get isPreservingWorkers(): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Gets the singleton pool instance.
|
|
48
|
+
*
|
|
49
|
+
* @param config - Optional configuration (only used on first call)
|
|
50
|
+
* @returns The singleton pool instance
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* const pool = WorkerSigningPool.getInstance({ workerCount: 8 });
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
static getInstance(config?: WorkerPoolConfig): WorkerSigningPool;
|
|
58
|
+
/**
|
|
59
|
+
* Resets the singleton instance (for testing).
|
|
60
|
+
*/
|
|
61
|
+
static resetInstance(): void;
|
|
62
62
|
/**
|
|
63
63
|
* Enables worker preservation between signing batches.
|
|
64
64
|
*
|
|
@@ -124,6 +124,12 @@ export declare class WorkerSigningPool {
|
|
|
124
124
|
* ```
|
|
125
125
|
*/
|
|
126
126
|
signBatch(tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair): Promise<ParallelSigningResult>;
|
|
127
|
+
/**
|
|
128
|
+
* Disposes of the pool by shutting down all workers.
|
|
129
|
+
*
|
|
130
|
+
* Enables `await using pool = ...` syntax for automatic cleanup.
|
|
131
|
+
*/
|
|
132
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
127
133
|
/**
|
|
128
134
|
* Shuts down the pool and terminates all workers.
|
|
129
135
|
*
|
|
@@ -132,6 +138,7 @@ export declare class WorkerSigningPool {
|
|
|
132
138
|
* @returns Promise that resolves when all workers are terminated
|
|
133
139
|
*/
|
|
134
140
|
shutdown(): Promise<void>;
|
|
141
|
+
[Symbol.dispose](): void;
|
|
135
142
|
}
|
|
136
143
|
/**
|
|
137
144
|
* Convenience function to get the singleton pool instance.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerSigningPool.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"WorkerSigningPool.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAIR,qBAAqB,EACrB,qBAAqB,EAGrB,WAAW,EACX,gBAAgB,EAEnB,MAAM,YAAY,CAAC;AAyBpB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,iBAAiB;;IAmD1B;;;;OAIG;IACH,OAAO;IAKP;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED;;;;;;;;;;OAUG;WACW,WAAW,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,iBAAiB;IAOvE;;OAEG;WACW,aAAa,IAAI,IAAI;IAOnC;;;;;;;;;;;;;;;;;;OAkBG;IACI,eAAe,IAAI,IAAI;IAI9B;;;;;OAKG;IACI,cAAc,IAAI,IAAI;IAI7B;;;;;;;OAOG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBxC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,SAAS,CAClB,KAAK,EAAE,SAAS,WAAW,EAAE,EAC7B,OAAO,EAAE,qBAAqB,GAC/B,OAAO,CAAC,qBAAqB,CAAC;IA4FjC;;;;OAIG;IACU,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IAInD;;;;;;OAMG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B/B,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CA2OlC;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAE3E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ParallelSignerKeyPair, ParallelSigningResult, SigningTask, WorkerPoolConfig } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* ECC library types for Node.js worker.
|
|
4
4
|
*/
|
|
@@ -51,17 +51,6 @@ export declare class NodeWorkerSigningPool {
|
|
|
51
51
|
* @param config - Pool configuration
|
|
52
52
|
*/
|
|
53
53
|
private constructor();
|
|
54
|
-
/**
|
|
55
|
-
* Gets the singleton pool instance.
|
|
56
|
-
*
|
|
57
|
-
* @param config - Optional configuration (only used on first call)
|
|
58
|
-
* @returns The singleton pool instance
|
|
59
|
-
*/
|
|
60
|
-
static getInstance(config?: NodeWorkerPoolConfig): NodeWorkerSigningPool;
|
|
61
|
-
/**
|
|
62
|
-
* Resets the singleton instance (for testing).
|
|
63
|
-
*/
|
|
64
|
-
static resetInstance(): void;
|
|
65
54
|
/**
|
|
66
55
|
* Number of workers in the pool.
|
|
67
56
|
*/
|
|
@@ -78,6 +67,17 @@ export declare class NodeWorkerSigningPool {
|
|
|
78
67
|
* Whether workers are being preserved between batches.
|
|
79
68
|
*/
|
|
80
69
|
get isPreservingWorkers(): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Gets the singleton pool instance.
|
|
72
|
+
*
|
|
73
|
+
* @param config - Optional configuration (only used on first call)
|
|
74
|
+
* @returns The singleton pool instance
|
|
75
|
+
*/
|
|
76
|
+
static getInstance(config?: NodeWorkerPoolConfig): NodeWorkerSigningPool;
|
|
77
|
+
/**
|
|
78
|
+
* Resets the singleton instance (for testing).
|
|
79
|
+
*/
|
|
80
|
+
static resetInstance(): void;
|
|
81
81
|
/**
|
|
82
82
|
* Enables worker preservation between signing batches.
|
|
83
83
|
*/
|
|
@@ -102,12 +102,19 @@ export declare class NodeWorkerSigningPool {
|
|
|
102
102
|
* @returns Promise resolving to signing results
|
|
103
103
|
*/
|
|
104
104
|
signBatch(tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair): Promise<ParallelSigningResult>;
|
|
105
|
+
/**
|
|
106
|
+
* Disposes of the pool by shutting down all workers.
|
|
107
|
+
*
|
|
108
|
+
* Enables `await using pool = ...` syntax for automatic cleanup.
|
|
109
|
+
*/
|
|
110
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
105
111
|
/**
|
|
106
112
|
* Shuts down the pool and terminates all workers.
|
|
107
113
|
*
|
|
108
114
|
* @returns Promise that resolves when all workers are terminated
|
|
109
115
|
*/
|
|
110
116
|
shutdown(): Promise<void>;
|
|
117
|
+
[Symbol.dispose](): void;
|
|
111
118
|
}
|
|
112
119
|
/**
|
|
113
120
|
* Convenience function to get the singleton pool instance.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerSigningPool.node.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.node.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"WorkerSigningPool.node.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.node.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAIR,qBAAqB,EACrB,qBAAqB,EAGrB,WAAW,EACX,gBAAgB,EAEnB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,eAAO,MAAM,cAAc;IACvB,gDAAgD;;IAEhD,iDAAiD;;CAE3C,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;CACxC;AA+BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,qBAAqB;;IAmD9B;;;;OAIG;IACH,OAAO;IAQP;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED;;;;;OAKG;WACW,WAAW,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,qBAAqB;IAO/E;;OAEG;WACW,aAAa,IAAI,IAAI;IAOnC;;OAEG;IACI,eAAe,IAAI,IAAI;IAI9B;;OAEG;IACI,cAAc,IAAI,IAAI;IAI7B;;;;OAIG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBxC;;;;;;;;OAQG;IACU,SAAS,CAClB,KAAK,EAAE,SAAS,WAAW,EAAE,EAC7B,OAAO,EAAE,qBAAqB,GAC/B,OAAO,CAAC,qBAAqB,CAAC;IAsFjC;;;;OAIG;IACU,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IAInD;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB/B,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;CA8gBlC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,qBAAqB,CAEvF"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ParallelSignerKeyPair, ParallelSigningResult, SigningTask, WorkerPoolConfig } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Sequential signing pool — signs inputs one-by-one on the main thread.
|
|
4
|
+
*
|
|
5
|
+
* Provides the same public API as WorkerSigningPool but without any
|
|
6
|
+
* threading. Intended for React Native or other environments where
|
|
7
|
+
* Web Workers and worker_threads are unavailable.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { SequentialSigningPool } from '@btc-vision/bitcoin/workers';
|
|
12
|
+
*
|
|
13
|
+
* const pool = SequentialSigningPool.getInstance();
|
|
14
|
+
* const result = await pool.signBatch(tasks, keyPair);
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare class SequentialSigningPool {
|
|
18
|
+
#private;
|
|
19
|
+
private constructor();
|
|
20
|
+
/**
|
|
21
|
+
* Number of workers — always 0 for sequential pool.
|
|
22
|
+
*/
|
|
23
|
+
get workerCount(): number;
|
|
24
|
+
/**
|
|
25
|
+
* Idle workers — always 0.
|
|
26
|
+
*/
|
|
27
|
+
get idleWorkerCount(): number;
|
|
28
|
+
/**
|
|
29
|
+
* Busy workers — always 0.
|
|
30
|
+
*/
|
|
31
|
+
get busyWorkerCount(): number;
|
|
32
|
+
/**
|
|
33
|
+
* Whether workers are preserved — always false (no workers to preserve).
|
|
34
|
+
*/
|
|
35
|
+
get isPreservingWorkers(): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Gets the singleton instance.
|
|
38
|
+
*/
|
|
39
|
+
static getInstance(config?: WorkerPoolConfig): SequentialSigningPool;
|
|
40
|
+
/**
|
|
41
|
+
* Resets the singleton instance (for testing).
|
|
42
|
+
*/
|
|
43
|
+
static resetInstance(): void;
|
|
44
|
+
/**
|
|
45
|
+
* No-op — no workers to preserve.
|
|
46
|
+
*/
|
|
47
|
+
preserveWorkers(): void;
|
|
48
|
+
/**
|
|
49
|
+
* No-op — no workers to release.
|
|
50
|
+
*/
|
|
51
|
+
releaseWorkers(): void;
|
|
52
|
+
/**
|
|
53
|
+
* No-op — no initialization required.
|
|
54
|
+
*/
|
|
55
|
+
initialize(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Signs tasks sequentially on the main thread.
|
|
58
|
+
*/
|
|
59
|
+
signBatch(tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair): Promise<ParallelSigningResult>;
|
|
60
|
+
/**
|
|
61
|
+
* No-op — no workers to shut down.
|
|
62
|
+
*/
|
|
63
|
+
shutdown(): Promise<void>;
|
|
64
|
+
[Symbol.dispose](): void;
|
|
65
|
+
[Symbol.asyncDispose](): Promise<void>;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=WorkerSigningPool.sequential.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkerSigningPool.sequential.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.sequential.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACR,qBAAqB,EACrB,qBAAqB,EAErB,WAAW,EACX,gBAAgB,EACnB,MAAM,YAAY,CAAC;AAKpB;;;;;;;;;;;;;;GAcG;AACH,qBAAa,qBAAqB;;IAG9B,OAAO;IAKP;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED;;OAEG;WACW,WAAW,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,qBAAqB;IAO3E;;OAEG;WACW,aAAa,IAAI,IAAI;IAInC;;OAEG;IACI,eAAe,IAAI,IAAI;IAI9B;;OAEG;IACI,cAAc,IAAI,IAAI;IAI7B;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC;;OAEG;IAEU,SAAS,CAClB,KAAK,EAAE,SAAS,WAAW,EAAE,EAC7B,OAAO,EAAE,qBAAqB,GAC/B,OAAO,CAAC,qBAAqB,CAAC;IA2DjC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IAIlB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtD"}
|