@did-btcr2/bitcoin 0.1.0
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/LICENSE +373 -0
- package/README.md +3 -0
- package/dist/cjs/bitcoin.browser.js +82 -0
- package/dist/cjs/bitcoin.browser.js.map +1 -0
- package/dist/cjs/bitcoin.node.js +85 -0
- package/dist/cjs/bitcoin.node.js.map +1 -0
- package/dist/cjs/constants.js +20 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/errors.js +14 -0
- package/dist/cjs/errors.js.map +1 -0
- package/dist/cjs/index.browser.js +10 -0
- package/dist/cjs/index.browser.js.map +1 -0
- package/dist/cjs/index.node.js +10 -0
- package/dist/cjs/index.node.js.map +1 -0
- package/dist/cjs/interface.js +2 -0
- package/dist/cjs/interface.js.map +1 -0
- package/dist/cjs/network.js +17 -0
- package/dist/cjs/network.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/rest-client.js +294 -0
- package/dist/cjs/rest-client.js.map +1 -0
- package/dist/cjs/rpc-client.js +722 -0
- package/dist/cjs/rpc-client.js.map +1 -0
- package/dist/cjs/taproot.js +219 -0
- package/dist/cjs/taproot.js.map +1 -0
- package/dist/cjs/types.js +62 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/bitcoin.browser.js +82 -0
- package/dist/esm/bitcoin.browser.js.map +1 -0
- package/dist/esm/bitcoin.node.js +85 -0
- package/dist/esm/bitcoin.node.js.map +1 -0
- package/dist/esm/constants.js +20 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/errors.js +14 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/index.browser.js +10 -0
- package/dist/esm/index.browser.js.map +1 -0
- package/dist/esm/index.node.js +10 -0
- package/dist/esm/index.node.js.map +1 -0
- package/dist/esm/interface.js +2 -0
- package/dist/esm/interface.js.map +1 -0
- package/dist/esm/network.js +17 -0
- package/dist/esm/network.js.map +1 -0
- package/dist/esm/rest-client.js +294 -0
- package/dist/esm/rest-client.js.map +1 -0
- package/dist/esm/rpc-client.js +722 -0
- package/dist/esm/rpc-client.js.map +1 -0
- package/dist/esm/taproot.js +219 -0
- package/dist/esm/taproot.js.map +1 -0
- package/dist/esm/types.js +62 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/types/bitcoin.browser.d.ts +45 -0
- package/dist/types/bitcoin.browser.d.ts.map +1 -0
- package/dist/types/bitcoin.node.d.ts +47 -0
- package/dist/types/bitcoin.node.d.ts.map +1 -0
- package/dist/types/constants.d.ts +19 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/errors.d.ts +8 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/index.browser.d.ts +9 -0
- package/dist/types/index.browser.d.ts.map +1 -0
- package/dist/types/index.node.d.ts +9 -0
- package/dist/types/index.node.d.ts.map +1 -0
- package/dist/types/interface.d.ts +86 -0
- package/dist/types/interface.d.ts.map +1 -0
- package/dist/types/network.d.ts +2 -0
- package/dist/types/network.d.ts.map +1 -0
- package/dist/types/rest-client.d.ts +273 -0
- package/dist/types/rest-client.d.ts.map +1 -0
- package/dist/types/rpc-client.d.ts +506 -0
- package/dist/types/rpc-client.d.ts.map +1 -0
- package/dist/types/taproot.d.ts +34 -0
- package/dist/types/taproot.d.ts.map +1 -0
- package/dist/types/types.d.ts +841 -0
- package/dist/types/types.d.ts.map +1 -0
- package/package.json +118 -0
- package/src/bitcoin.browser.ts +117 -0
- package/src/bitcoin.node.ts +121 -0
- package/src/constants.ts +19 -0
- package/src/errors.ts +13 -0
- package/src/index.browser.ts +9 -0
- package/src/index.node.ts +9 -0
- package/src/interface.ts +160 -0
- package/src/network.ts +17 -0
- package/src/rest-client.ts +420 -0
- package/src/rpc-client.ts +888 -0
- package/src/taproot.ts +237 -0
- package/src/types.ts +1041 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc-client.js","sourceRoot":"","sources":["../../src/rpc-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import * as tinysecp from 'tiny-secp256k1';
|
|
2
|
+
import { payments, script, opcodes } from 'bitcoinjs-lib';
|
|
3
|
+
import { PublicKey } from '@did-btcr2/keypair';
|
|
4
|
+
/**
|
|
5
|
+
* Aggregate an array of public keys by point addition
|
|
6
|
+
*/
|
|
7
|
+
function aggregatePubkeys(pubkeys) {
|
|
8
|
+
if (pubkeys.length === 1)
|
|
9
|
+
return pubkeys[0];
|
|
10
|
+
return pubkeys.reduce((sum, pk) => {
|
|
11
|
+
const added = tinysecp.pointAdd(sum, pk);
|
|
12
|
+
if (!added)
|
|
13
|
+
throw new Error('Point addition failed');
|
|
14
|
+
return added;
|
|
15
|
+
}, pubkeys[0]);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Build a P2TR script leaf for a k-of-n multisig with optional locktime/sequence
|
|
19
|
+
*/
|
|
20
|
+
function buildTapLeafScript(pubkeys, k, locktime, sequence) {
|
|
21
|
+
const ops = [];
|
|
22
|
+
// absolute timelock
|
|
23
|
+
if (locktime !== undefined) {
|
|
24
|
+
ops.push(script.number.encode(locktime));
|
|
25
|
+
ops.push(opcodes.OP_CHECKLOCKTIMEVERIFY);
|
|
26
|
+
ops.push(opcodes.OP_DROP);
|
|
27
|
+
}
|
|
28
|
+
// relative timelock
|
|
29
|
+
if (sequence !== undefined) {
|
|
30
|
+
ops.push(script.number.encode(sequence));
|
|
31
|
+
ops.push(opcodes.OP_CHECKSEQUENCEVERIFY);
|
|
32
|
+
ops.push(opcodes.OP_DROP);
|
|
33
|
+
}
|
|
34
|
+
// push each key as x-only pubkey
|
|
35
|
+
for (const pk of pubkeys) {
|
|
36
|
+
const [xOnly] = PublicKey.xOnly(pk);
|
|
37
|
+
ops.push(xOnly);
|
|
38
|
+
}
|
|
39
|
+
// push threshold k and total keys n
|
|
40
|
+
ops.push(script.number.encode(k));
|
|
41
|
+
ops.push(script.number.encode(pubkeys.length));
|
|
42
|
+
ops.push(opcodes.OP_CHECKMULTISIG);
|
|
43
|
+
return script.compile(ops);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Build a P2TR script leaf for a aggregated MuSig key (key-path only)
|
|
47
|
+
*/
|
|
48
|
+
function buildMusigLeafScript(pubkeys) {
|
|
49
|
+
const agg = aggregatePubkeys(pubkeys);
|
|
50
|
+
const [xOnly] = PublicKey.xOnly(agg);
|
|
51
|
+
// In a taproot script path, OP_CHECKSIG runs schnorr
|
|
52
|
+
return script.compile([xOnly, opcodes.OP_CHECKSIG]);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Recursively combine an array of leaves into a balanced Merkle tree structure
|
|
56
|
+
*/
|
|
57
|
+
function buildMerkleTree(nodes) {
|
|
58
|
+
if (nodes.length === 1)
|
|
59
|
+
return { output: nodes[0] };
|
|
60
|
+
const next = [];
|
|
61
|
+
for (let i = 0; i < nodes.length; i += 2) {
|
|
62
|
+
if (i + 1 === nodes.length) {
|
|
63
|
+
next.push({ output: nodes[i] });
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
next.push([
|
|
67
|
+
{ output: nodes[i] },
|
|
68
|
+
{ output: nodes[i + 1] },
|
|
69
|
+
]);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return buildMerkleTree(next);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Generate combinations of length k from an array
|
|
76
|
+
*/
|
|
77
|
+
function* combinations(array, k) {
|
|
78
|
+
const n = array.length;
|
|
79
|
+
if (k > n || k < 0)
|
|
80
|
+
return;
|
|
81
|
+
const indices = Array.from({ length: k }, (_, i) => i);
|
|
82
|
+
while (true) {
|
|
83
|
+
yield indices.map(i => array[i]);
|
|
84
|
+
let i = k - 1;
|
|
85
|
+
while (i >= 0 && indices[i] === i + n - k) {
|
|
86
|
+
i--;
|
|
87
|
+
}
|
|
88
|
+
if (i < 0)
|
|
89
|
+
break;
|
|
90
|
+
indices[i]++;
|
|
91
|
+
for (let j = i + 1; j < k; j++) {
|
|
92
|
+
indices[j] = indices[j - 1] + 1;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* TapRootMultiSig: builds Taproot outputs and trees for multisig and MuSig branches
|
|
98
|
+
*/
|
|
99
|
+
export class TapRootMultiSig {
|
|
100
|
+
points;
|
|
101
|
+
k;
|
|
102
|
+
defaultInternalPubkey;
|
|
103
|
+
constructor(points, k) {
|
|
104
|
+
if (points.length < k || k < 1) {
|
|
105
|
+
throw new Error(`${k} is invalid for ${points.length} keys`);
|
|
106
|
+
}
|
|
107
|
+
this.points = points;
|
|
108
|
+
this.k = k;
|
|
109
|
+
// MuSig aggregation for default internal key
|
|
110
|
+
this.defaultInternalPubkey = aggregatePubkeys(points);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Single multisig leaf as the only script path
|
|
114
|
+
*/
|
|
115
|
+
singleLeaf(locktime, sequence) {
|
|
116
|
+
const leaf = buildTapLeafScript(this.points, this.k, locktime, sequence);
|
|
117
|
+
return payments.p2tr({
|
|
118
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
119
|
+
scriptTree: { output: leaf },
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* All k-of-n multisig combinations as separate leaf scripts, combined into one tree
|
|
124
|
+
*/
|
|
125
|
+
multiLeafTree(locktime, sequence) {
|
|
126
|
+
const leaves = [];
|
|
127
|
+
for (const combo of combinations(this.points, this.k)) {
|
|
128
|
+
leaves.push(buildTapLeafScript(combo, this.k, locktime, sequence));
|
|
129
|
+
}
|
|
130
|
+
const tree = buildMerkleTree(leaves);
|
|
131
|
+
return payments.p2tr({
|
|
132
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
133
|
+
scriptTree: tree,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* MuSig key-path scripts for each k-of-n combination in the script tree
|
|
138
|
+
*/
|
|
139
|
+
musigTree() {
|
|
140
|
+
const leaves = [];
|
|
141
|
+
for (const combo of combinations(this.points, this.k)) {
|
|
142
|
+
leaves.push(buildMusigLeafScript(combo));
|
|
143
|
+
}
|
|
144
|
+
const tree = buildMerkleTree(leaves);
|
|
145
|
+
return payments.p2tr({
|
|
146
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
147
|
+
scriptTree: tree,
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* A two-branch tree: one branch is the singleLeaf script, the other is the muSig tree
|
|
152
|
+
*/
|
|
153
|
+
musigAndSingleLeafTree(locktime, sequence) {
|
|
154
|
+
const single = buildTapLeafScript(this.points, this.k, locktime, sequence);
|
|
155
|
+
const musigLeaves = [];
|
|
156
|
+
for (const combo of combinations(this.points, this.k)) {
|
|
157
|
+
musigLeaves.push(buildMusigLeafScript(combo));
|
|
158
|
+
}
|
|
159
|
+
const tree = {
|
|
160
|
+
output: single,
|
|
161
|
+
scriptTree: buildMerkleTree(musigLeaves),
|
|
162
|
+
};
|
|
163
|
+
return payments.p2tr({
|
|
164
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
165
|
+
scriptTree: tree,
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Nested tree of singleLeaf, multiLeafTree, and musigTree
|
|
170
|
+
*/
|
|
171
|
+
everythingTree(locktime, sequence) {
|
|
172
|
+
const single = buildTapLeafScript(this.points, this.k, locktime, sequence);
|
|
173
|
+
const multiLeaves = [];
|
|
174
|
+
for (const combo of combinations(this.points, this.k)) {
|
|
175
|
+
multiLeaves.push(buildTapLeafScript(combo, this.k, locktime, sequence));
|
|
176
|
+
}
|
|
177
|
+
const multiTree = buildMerkleTree(multiLeaves);
|
|
178
|
+
const musigLeaves = [];
|
|
179
|
+
for (const combo of combinations(this.points, this.k)) {
|
|
180
|
+
musigLeaves.push(buildMusigLeafScript(combo));
|
|
181
|
+
}
|
|
182
|
+
const musigTree = buildMerkleTree(musigLeaves);
|
|
183
|
+
const tree = {
|
|
184
|
+
output: single,
|
|
185
|
+
scriptTree: [multiTree, musigTree],
|
|
186
|
+
};
|
|
187
|
+
return payments.p2tr({
|
|
188
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
189
|
+
scriptTree: tree,
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Degrading multisig: k-of-n initially, then (k-1)-of-n after delay, ... until 1-of-n
|
|
194
|
+
*/
|
|
195
|
+
degradingMultisigTree(sequenceBlockInterval, sequenceTimeInterval) {
|
|
196
|
+
const leaves = [];
|
|
197
|
+
for (let num = this.k; num >= 1; num--) {
|
|
198
|
+
let seq;
|
|
199
|
+
if (num === this.k) {
|
|
200
|
+
seq = undefined;
|
|
201
|
+
}
|
|
202
|
+
else if (sequenceBlockInterval != null) {
|
|
203
|
+
seq = sequenceBlockInterval * (this.k - num);
|
|
204
|
+
}
|
|
205
|
+
else if (sequenceTimeInterval != null) {
|
|
206
|
+
seq = sequenceTimeInterval * (this.k - num);
|
|
207
|
+
}
|
|
208
|
+
for (const combo of combinations(this.points, num)) {
|
|
209
|
+
leaves.push(buildTapLeafScript(combo, num, undefined, seq));
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
const tree = buildMerkleTree(leaves);
|
|
213
|
+
return payments.p2tr({
|
|
214
|
+
internalPubkey: this.defaultInternalPubkey,
|
|
215
|
+
scriptTree: tree,
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=taproot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taproot.js","sourceRoot":"","sources":["../../src/taproot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export class RpcClientConfig {
|
|
2
|
+
network;
|
|
3
|
+
headers;
|
|
4
|
+
host;
|
|
5
|
+
logger;
|
|
6
|
+
password;
|
|
7
|
+
timeout;
|
|
8
|
+
username;
|
|
9
|
+
version;
|
|
10
|
+
wallet;
|
|
11
|
+
allowDefaultWallet;
|
|
12
|
+
constructor(options = {
|
|
13
|
+
headers: {},
|
|
14
|
+
host: 'localhost',
|
|
15
|
+
logger: console,
|
|
16
|
+
password: '',
|
|
17
|
+
timeout: 30000,
|
|
18
|
+
username: '',
|
|
19
|
+
version: '0.21.1',
|
|
20
|
+
wallet: '',
|
|
21
|
+
allowDefaultWallet: false,
|
|
22
|
+
}) {
|
|
23
|
+
this.headers = options.headers;
|
|
24
|
+
this.host = options.host;
|
|
25
|
+
this.logger = options.logger;
|
|
26
|
+
this.password = options.password;
|
|
27
|
+
this.timeout = options.timeout;
|
|
28
|
+
this.username = options.username;
|
|
29
|
+
this.version = options.version;
|
|
30
|
+
this.wallet = options.wallet;
|
|
31
|
+
this.allowDefaultWallet = options.allowDefaultWallet;
|
|
32
|
+
}
|
|
33
|
+
static initialize(options) {
|
|
34
|
+
return new RpcClientConfig(options);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
;
|
|
38
|
+
;
|
|
39
|
+
/**
|
|
40
|
+
* Defines verbosity levels for block and transaction outputs.
|
|
41
|
+
* Used to specify the format of returned block or transaction data.
|
|
42
|
+
* @enum {number} VerbosityLevel for block and transaction outputs.
|
|
43
|
+
*/
|
|
44
|
+
export var VerbosityLevel;
|
|
45
|
+
(function (VerbosityLevel) {
|
|
46
|
+
/** Return block or transaction data in raw hex-encoded format */
|
|
47
|
+
VerbosityLevel[VerbosityLevel["hex"] = 0] = "hex";
|
|
48
|
+
/** Return block or transaction data in JSON object format */
|
|
49
|
+
VerbosityLevel[VerbosityLevel["json"] = 1] = "json";
|
|
50
|
+
/**
|
|
51
|
+
* Return block or transaction data in JSON object format with additional information.
|
|
52
|
+
* Returns block data with information about each transaction.
|
|
53
|
+
* Returns transaction data with information about the transaction including fee and prevout information.
|
|
54
|
+
*/
|
|
55
|
+
VerbosityLevel[VerbosityLevel["jsonext"] = 2] = "jsonext";
|
|
56
|
+
/**
|
|
57
|
+
* Return block data in JSON object format with additional information.
|
|
58
|
+
* Returns block data with information about each transaction, including prevout information for inputs.
|
|
59
|
+
*/
|
|
60
|
+
VerbosityLevel[VerbosityLevel["jsonextprev"] = 3] = "jsonextprev";
|
|
61
|
+
})(VerbosityLevel || (VerbosityLevel = {}));
|
|
62
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AA6CA,MAAM,OAAO,eAAe;IAC1B,OAAO,CAAU;IACjB,OAAO,CAA0B;IACjC,IAAI,CAAU;IACd,MAAM,CAAO;IACb,QAAQ,CAAU;IAClB,OAAO,CAAU;IACjB,QAAQ,CAAU;IAClB,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,kBAAkB,CAAW;IAE7B,YAAY,UAAyB;QACnC,OAAO,EAAc,EAAE;QACvB,IAAI,EAAiB,WAAW;QAChC,MAAM,EAAe,OAAO;QAC5B,QAAQ,EAAa,EAAE;QACvB,OAAO,EAAc,KAAK;QAC1B,QAAQ,EAAa,EAAE;QACvB,OAAO,EAAc,QAAQ;QAC7B,MAAM,EAAe,EAAE;QACvB,kBAAkB,EAAG,KAAK;KAC3B;QACC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACvD,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,OAAuB;QAC9C,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;CACF;AAiZA,CAAC;AAKD,CAAC;AA2gBF;;;;GAIG;AACH,MAAM,CAAN,IAAY,cAgBX;AAhBD,WAAY,cAAc;IACtB,iEAAiE;IACjE,iDAAO,CAAA;IACP,6DAA6D;IAC7D,mDAAQ,CAAA;IACR;;;;OAIG;IACH,yDAAW,CAAA;IACX;;;OAGG;IACH,iEAAe,CAAA;AACnB,CAAC,EAhBW,cAAc,KAAd,cAAc,QAgBzB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { networks } from 'bitcoinjs-lib';
|
|
2
|
+
import { BitcoinRest } from './rest-client.js';
|
|
3
|
+
import { AvailableNetworks, BitcoinClientConfig } from './types.js';
|
|
4
|
+
export type BitcoinNetworkConfig = {
|
|
5
|
+
name: keyof AvailableNetworks;
|
|
6
|
+
rest: BitcoinRest;
|
|
7
|
+
config: BitcoinClientConfig;
|
|
8
|
+
data: networks.Network;
|
|
9
|
+
};
|
|
10
|
+
export type BitcoinNetworkConfigMap = {
|
|
11
|
+
[key in keyof AvailableNetworks]?: BitcoinNetworkConfig;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* General class to house the Bitcoin client connections, client config and various utility methods.
|
|
15
|
+
* @name Bitcoin
|
|
16
|
+
* @type {Bitcoin}
|
|
17
|
+
*/
|
|
18
|
+
export declare class Bitcoin {
|
|
19
|
+
network: BitcoinNetworkConfig;
|
|
20
|
+
mainnet?: BitcoinNetworkConfig;
|
|
21
|
+
testnet?: BitcoinNetworkConfig;
|
|
22
|
+
signet?: BitcoinNetworkConfig;
|
|
23
|
+
mutinynet?: BitcoinNetworkConfig;
|
|
24
|
+
regtest?: BitcoinNetworkConfig;
|
|
25
|
+
/**
|
|
26
|
+
* Creates an instance of the Bitcoin class.
|
|
27
|
+
* @param {BitcoinNetworkConfigMap} configs Optional configuration object for the Bitcoin client. If not provided, it will
|
|
28
|
+
* be loaded from the BITCOIN_CLIENT_CONFIG environment variables.
|
|
29
|
+
* @throws {MethodError} If no configs is passed and BITCOIN_NETWORK_CONFIG is missing or invalid.
|
|
30
|
+
*/
|
|
31
|
+
constructor(configs?: BitcoinNetworkConfigMap);
|
|
32
|
+
/**
|
|
33
|
+
* Converts Bitcoin (BTC) to satoshis (SAT).
|
|
34
|
+
* @param {number} btc - The amount in BTC.
|
|
35
|
+
* @returns {number} The amount in SAT.
|
|
36
|
+
*/
|
|
37
|
+
static btcToSats(btc: number): number;
|
|
38
|
+
/**
|
|
39
|
+
* Converts satoshis (SAT) to Bitcoin (BTC).
|
|
40
|
+
* @param {number} sats - The amount in SAT.
|
|
41
|
+
* @returns {number} The amount in BTC.
|
|
42
|
+
*/
|
|
43
|
+
static satsToBtc(sats: number): number;
|
|
44
|
+
}
|
|
45
|
+
export declare const bitcoin: Bitcoin;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitcoin.browser.d.ts","sourceRoot":"","sources":["../../src/bitcoin.browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,iBAAiB,CAAC;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;KACnC,GAAG,IAAI,MAAM,iBAAiB,CAAC,CAAC,EAAE,oBAAoB;CACxD,CAAC;AAEF;;;;GAIG;AACH,qBAAa,OAAO;IACX,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAEtC;;;;;OAKG;gBACS,OAAO,CAAC,EAAE,uBAAuB;IA4D7C;;;;OAIG;WACW,SAAS,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAI7C;;;;OAIG;WACW,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM;CAG/C;AAED,eAAO,MAAM,OAAO,SAAgB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { networks } from 'bitcoinjs-lib';
|
|
2
|
+
import { BitcoinRest } from './rest-client.js';
|
|
3
|
+
import { BitcoinRpc } from './rpc-client.js';
|
|
4
|
+
import { AvailableNetworks, BitcoinClientConfig } from './types.js';
|
|
5
|
+
export type BitcoinNetworkConfig = {
|
|
6
|
+
name: keyof AvailableNetworks;
|
|
7
|
+
rpc: BitcoinRpc;
|
|
8
|
+
rest: BitcoinRest;
|
|
9
|
+
config: BitcoinClientConfig;
|
|
10
|
+
data: networks.Network;
|
|
11
|
+
};
|
|
12
|
+
export type BitcoinNetworkConfigMap = {
|
|
13
|
+
[key in keyof AvailableNetworks]?: BitcoinNetworkConfig;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* General class to house the Bitcoin client connections, client config and various utility methods.
|
|
17
|
+
* @name Bitcoin
|
|
18
|
+
* @type {Bitcoin}
|
|
19
|
+
*/
|
|
20
|
+
export declare class Bitcoin {
|
|
21
|
+
network: BitcoinNetworkConfig;
|
|
22
|
+
mainnet?: BitcoinNetworkConfig;
|
|
23
|
+
testnet?: BitcoinNetworkConfig;
|
|
24
|
+
signet?: BitcoinNetworkConfig;
|
|
25
|
+
mutinynet?: BitcoinNetworkConfig;
|
|
26
|
+
regtest?: BitcoinNetworkConfig;
|
|
27
|
+
/**
|
|
28
|
+
* Creates an instance of the Bitcoin class.
|
|
29
|
+
* @param {BitcoinNetworkConfigMap} configs Optional configuration object for the Bitcoin client. If not provided, it will
|
|
30
|
+
* be loaded from the BITCOIN_CLIENT_CONFIG environment variables.
|
|
31
|
+
* @throws {MethodError} If no configs is passed and BITCOIN_NETWORK_CONFIG is missing or invalid.
|
|
32
|
+
*/
|
|
33
|
+
constructor(configs?: BitcoinNetworkConfigMap);
|
|
34
|
+
/**
|
|
35
|
+
* Converts Bitcoin (BTC) to satoshis (SAT).
|
|
36
|
+
* @param {number} btc - The amount in BTC.
|
|
37
|
+
* @returns {number} The amount in SAT.
|
|
38
|
+
*/
|
|
39
|
+
static btcToSats(btc: number): number;
|
|
40
|
+
/**
|
|
41
|
+
* Converts satoshis (SAT) to Bitcoin (BTC).
|
|
42
|
+
* @param {number} sats - The amount in SAT.
|
|
43
|
+
* @returns {number} The amount in BTC.
|
|
44
|
+
*/
|
|
45
|
+
static satsToBtc(sats: number): number;
|
|
46
|
+
}
|
|
47
|
+
export declare const bitcoin: Bitcoin;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitcoin.node.d.ts","sourceRoot":"","sources":["../../src/bitcoin.node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,iBAAiB,CAAC;IAC9B,GAAG,EAAE,UAAU,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;KACnC,GAAG,IAAI,MAAM,iBAAiB,CAAC,CAAC,EAAE,oBAAoB;CACxD,CAAC;AAEF;;;;GAIG;AACH,qBAAa,OAAO;IACX,OAAO,EAAE,oBAAoB,CAAC;IAC9B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAEtC;;;;;OAKG;gBACS,OAAO,CAAC,EAAE,uBAAuB;IA8D7C;;;;OAIG;WACW,SAAS,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAI7C;;;;OAIG;WACW,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM;CAG/C;AAED,eAAO,MAAM,OAAO,SAAgB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const INITIAL_BLOCK_REWARD = 50;
|
|
2
|
+
export declare const HALVING_INTERVAL = 150;
|
|
3
|
+
export declare const COINBASE_MATURITY_DELAY = 100;
|
|
4
|
+
export declare const DEFAULT_RPC_CLIENT_CONFIG: {
|
|
5
|
+
network: string;
|
|
6
|
+
host: string;
|
|
7
|
+
port: number;
|
|
8
|
+
username: string;
|
|
9
|
+
password: string;
|
|
10
|
+
allowDefaultWallet: boolean;
|
|
11
|
+
version: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const DEFAULT_REST_CLIENT_CONFIG: {
|
|
14
|
+
network: string;
|
|
15
|
+
host: string;
|
|
16
|
+
};
|
|
17
|
+
export declare const DEFAULT_BLOCK_CONFIRMATIONS = 7;
|
|
18
|
+
export declare const TXIN_WITNESS_COINBASE = "0000000000000000000000000000000000000000000000000000000000000000";
|
|
19
|
+
export declare const GENESIS_TX_ID = "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,yBAAyB;;;;;;;;CAQrC,CAAC;AACF,eAAO,MAAM,0BAA0B;;;CAGtC,CAAC;AACF,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,qBAAqB,qEAAqE,CAAC;AACxG,eAAO,MAAM,aAAa,qEAAqE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,SAAgB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,SAAgB,IAAI,CAAC,EAAE,GAAG,CAAC;gBACf,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;CAM/D"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './bitcoin.browser.js';
|
|
2
|
+
export * from './constants.js';
|
|
3
|
+
export * from './errors.js';
|
|
4
|
+
export * from './interface.js';
|
|
5
|
+
export * from './network.js';
|
|
6
|
+
export * from './rest-client.js';
|
|
7
|
+
export * from './rpc-client.js';
|
|
8
|
+
export * from './taproot.js';
|
|
9
|
+
export * from './types.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './bitcoin.node.js';
|
|
2
|
+
export * from './constants.js';
|
|
3
|
+
export * from './errors.js';
|
|
4
|
+
export * from './interface.js';
|
|
5
|
+
export * from './network.js';
|
|
6
|
+
export * from './rest-client.js';
|
|
7
|
+
export * from './rpc-client.js';
|
|
8
|
+
export * from './taproot.js';
|
|
9
|
+
export * from './types.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../../src/index.node.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { AddMultiSigAddressParams, BatchOption, BlockResponse, BumpFeeOption, BumpFeeResult, ChainInfo, CreateMultiSigResult, CreateRawTxInputs, CreateRawTxOutputs, CreateWalletParams, CreateWalletResult, DecodedRawTransaction, FeeEstimateMode, FundRawTxOptions, GetBlockParams, MempoolInfo, MiningInfo, PeerInfo, RawTransactionResponse, ScriptDecoded, ValidateAddressResult } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Interface for the Bitcoin Core RPC client.
|
|
4
|
+
*/
|
|
5
|
+
export interface IBitcoinRpc {
|
|
6
|
+
/** Executes multiple commands in a batch request. */
|
|
7
|
+
command?<R extends ReturnType<any>>(methods: BatchOption[]): Promise<ReadonlyArray<R>>;
|
|
8
|
+
/** Marks a transaction and its in-wallet descendants as abandoned, allowing their inputs to be respent. */
|
|
9
|
+
abandonTransaction(txid: string): Promise<void>;
|
|
10
|
+
/** Stops the current wallet rescan triggered by an RPC call, such as by an importprivkey call. */
|
|
11
|
+
abortRescan(): Promise<void>;
|
|
12
|
+
/** Adds a multi-signature address with n required signatures and a set of keys. */
|
|
13
|
+
addMultiSigAddress({ nrequired, keys, account }: AddMultiSigAddressParams): Promise<string>;
|
|
14
|
+
/** Adds a witness address for SegWit compatibility. */
|
|
15
|
+
addWitnessAddress(address: string): Promise<void>;
|
|
16
|
+
/** Backs up the wallet file to a specified destination. */
|
|
17
|
+
backupWallet(destination: string): Promise<void>;
|
|
18
|
+
/** Increases the fee of an unconfirmed transaction to improve its confirmation time. */
|
|
19
|
+
bumpFee(txid: string, options?: BumpFeeOption): Promise<BumpFeeResult>;
|
|
20
|
+
/** Removes all banned nodes from the ban list. */
|
|
21
|
+
clearBanned(): Promise<void>;
|
|
22
|
+
/** Combines multiple raw transactions into a single transaction. */
|
|
23
|
+
combineRawTransaction(txs: string[]): Promise<string>;
|
|
24
|
+
/** Creates a multi-signature address with n required signatures and a set of keys. */
|
|
25
|
+
createMultiSig(nrequired: number, keys: string[]): Promise<CreateMultiSigResult>;
|
|
26
|
+
/** Creates a raw transaction spending specified inputs to specified outputs. */
|
|
27
|
+
createRawTransaction(inputs: CreateRawTxInputs[], outputs: CreateRawTxOutputs[], locktime?: number, replacable?: boolean): Promise<string>;
|
|
28
|
+
/** Creates a new wallet with various optional parameters. */
|
|
29
|
+
createWallet({ wallet_name, disable_private_keys, blank, passphrase, avoid_reuse, descriptors, load_on_startup, }: CreateWalletParams): Promise<CreateWalletResult>;
|
|
30
|
+
/** Decodes a raw transaction hex string. */
|
|
31
|
+
decodeRawTransaction(hexstring: string): Promise<DecodedRawTransaction>;
|
|
32
|
+
/** Decodes a hex-encoded script. */
|
|
33
|
+
decodeScript(hexstring: string): Promise<ScriptDecoded>;
|
|
34
|
+
/** Disconnects a node by address or node ID. */
|
|
35
|
+
disconnectNode(address?: string, nodeid?: number): Promise<void>;
|
|
36
|
+
/** Reveals the private key corresponding to an address. */
|
|
37
|
+
dumpPrivKey(address: string): Promise<string>;
|
|
38
|
+
/** Dumps all wallet keys and metadata to a file. */
|
|
39
|
+
dumpWallet(filename: string): Promise<{
|
|
40
|
+
filename: string;
|
|
41
|
+
}>;
|
|
42
|
+
/** Encrypts the wallet with a passphrase. */
|
|
43
|
+
encryptWallet(passphrase: string): Promise<void>;
|
|
44
|
+
/** Estimates the fee rate for a given confirmation target. */
|
|
45
|
+
estimateSmartFee(conf_target: number, estimate_mode?: FeeEstimateMode): Promise<{
|
|
46
|
+
feerate?: number;
|
|
47
|
+
errors?: string[];
|
|
48
|
+
blocks?: number;
|
|
49
|
+
}>;
|
|
50
|
+
/** Funds a raw transaction by adding necessary inputs and change. */
|
|
51
|
+
fundRawTransaction(hexstring: string, options: FundRawTxOptions): Promise<{
|
|
52
|
+
hex: string;
|
|
53
|
+
fee: number;
|
|
54
|
+
changepos: number;
|
|
55
|
+
}>;
|
|
56
|
+
/** Returns the number of blocks in the longest blockchain. */
|
|
57
|
+
getBlockCount(): Promise<number>;
|
|
58
|
+
/** Gets the hash of a block at a given height. */
|
|
59
|
+
getBlockHash(height: number): Promise<string>;
|
|
60
|
+
/** Gets detailed information about a specific block. */
|
|
61
|
+
getBlock({ blockhash, height, verbosity }: GetBlockParams): Promise<BlockResponse | undefined>;
|
|
62
|
+
/** Retrieves general blockchain state info. */
|
|
63
|
+
getBlockchainInfo(): Promise<ChainInfo>;
|
|
64
|
+
/** Gets the number of active connections to other nodes. */
|
|
65
|
+
getConnectionCount(): Promise<number>;
|
|
66
|
+
/** Gets the estimated network difficulty. */
|
|
67
|
+
getDifficulty(): Promise<number>;
|
|
68
|
+
/** Retrieves memory pool statistics. */
|
|
69
|
+
getMempoolInfo(): Promise<MempoolInfo>;
|
|
70
|
+
/** Retrieves mining statistics. */
|
|
71
|
+
getMiningInfo(): Promise<MiningInfo>;
|
|
72
|
+
/** Gets a new Bitcoin address for receiving payments. */
|
|
73
|
+
getNewAddress(account?: string): Promise<string>;
|
|
74
|
+
/** Gets detailed peer connection information. */
|
|
75
|
+
getPeerInfo(): Promise<PeerInfo[]>;
|
|
76
|
+
/** Sends raw transaction hex to the Bitcoin network. */
|
|
77
|
+
sendRawTransaction(hexstring: string, maxfeerate?: number | string, maxBurnAmount?: number | string): Promise<string>;
|
|
78
|
+
/** Sends bitcoins to a specified address. */
|
|
79
|
+
sendToAddress(address: string, amount: number, comment?: string, comment_to?: string, subtreactfeefromamount?: boolean, replaceable?: boolean, conf_target?: number, estimate_mode?: FeeEstimateMode): Promise<RawTransactionResponse>;
|
|
80
|
+
/** Validates a Bitcoin address. */
|
|
81
|
+
validateAddress(address: string): Promise<ValidateAddressResult>;
|
|
82
|
+
/** Verifies a signed message. */
|
|
83
|
+
verifyMessage(address: string, signature: string, message: string): Promise<boolean>;
|
|
84
|
+
/** Locks the wallet, requiring a passphrase to unlock. */
|
|
85
|
+
walletLock(passphrase: string, timeout: number): Promise<void>;
|
|
86
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,CAc5D"}
|