@teleportdao/bitcoin 3.0.0 → 4.0.0-alpha.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.
Files changed (105) hide show
  1. package/dist/bitcoin-interface-ordinal.d.ts +24 -24
  2. package/dist/bitcoin-interface-ordinal.d.ts.map +1 -1
  3. package/dist/bitcoin-interface-ordinal.js +89 -107
  4. package/dist/bitcoin-interface-ordinal.js.map +1 -1
  5. package/dist/bitcoin-interface-teleswap.d.ts +2 -2
  6. package/dist/bitcoin-interface-teleswap.d.ts.map +1 -1
  7. package/dist/bitcoin-interface-teleswap.js +77 -88
  8. package/dist/bitcoin-interface-teleswap.js.map +1 -1
  9. package/dist/bitcoin-interface-utils.d.ts +7 -4
  10. package/dist/bitcoin-interface-utils.d.ts.map +1 -1
  11. package/dist/bitcoin-interface-utils.js +11 -5
  12. package/dist/bitcoin-interface-utils.js.map +1 -1
  13. package/dist/bitcoin-interface-wallet.d.ts +1 -0
  14. package/dist/bitcoin-interface-wallet.d.ts.map +1 -1
  15. package/dist/bitcoin-interface-wallet.js +87 -95
  16. package/dist/bitcoin-interface-wallet.js.map +1 -1
  17. package/dist/bitcoin-interface.d.ts.map +1 -1
  18. package/dist/bitcoin-interface.js +58 -87
  19. package/dist/bitcoin-interface.js.map +1 -1
  20. package/dist/bitcoin-utils.d.ts +7 -4
  21. package/dist/bitcoin-utils.d.ts.map +1 -1
  22. package/dist/bitcoin-utils.js +93 -54
  23. package/dist/bitcoin-utils.js.map +1 -1
  24. package/dist/bitcoin-wallet-base.d.ts +23 -11
  25. package/dist/bitcoin-wallet-base.d.ts.map +1 -1
  26. package/dist/bitcoin-wallet-base.js +148 -138
  27. package/dist/bitcoin-wallet-base.js.map +1 -1
  28. package/dist/helper/brc20-helper.d.ts.map +1 -1
  29. package/dist/helper/brc20-helper.js +4 -6
  30. package/dist/helper/brc20-helper.js.map +1 -1
  31. package/dist/helper/index.js +17 -7
  32. package/dist/helper/index.js.map +1 -1
  33. package/dist/helper/ordinal-helper.d.ts +3 -9
  34. package/dist/helper/ordinal-helper.d.ts.map +1 -1
  35. package/dist/helper/ordinal-helper.js +20 -85
  36. package/dist/helper/ordinal-helper.js.map +1 -1
  37. package/dist/helper/teleswap-helper.d.ts.map +1 -1
  38. package/dist/helper/teleswap-helper.js +13 -12
  39. package/dist/helper/teleswap-helper.js.map +1 -1
  40. package/dist/index.d.ts +1 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +18 -7
  43. package/dist/index.js.map +1 -1
  44. package/dist/multisig-wallet-helper.d.ts +14 -1
  45. package/dist/multisig-wallet-helper.d.ts.map +1 -1
  46. package/dist/multisig-wallet-helper.js +135 -149
  47. package/dist/multisig-wallet-helper.js.map +1 -1
  48. package/dist/ordinal-wallet.d.ts +27 -19
  49. package/dist/ordinal-wallet.d.ts.map +1 -1
  50. package/dist/ordinal-wallet.js +263 -293
  51. package/dist/ordinal-wallet.js.map +1 -1
  52. package/dist/sign/sign-transaction.d.ts +5 -2
  53. package/dist/sign/sign-transaction.d.ts.map +1 -1
  54. package/dist/sign/sign-transaction.js +32 -39
  55. package/dist/sign/sign-transaction.js.map +1 -1
  56. package/dist/teleswap-wallet.d.ts +1 -0
  57. package/dist/teleswap-wallet.d.ts.map +1 -1
  58. package/dist/teleswap-wallet.js +40 -53
  59. package/dist/teleswap-wallet.js.map +1 -1
  60. package/dist/transaction-builder/bitcoin-transaction-builder.js +21 -21
  61. package/dist/transaction-builder/bitcoin-transaction-builder.js.map +1 -1
  62. package/dist/transaction-builder/coin-select.d.ts +19 -3
  63. package/dist/transaction-builder/coin-select.d.ts.map +1 -1
  64. package/dist/transaction-builder/coin-select.js +193 -181
  65. package/dist/transaction-builder/coin-select.js.map +1 -1
  66. package/dist/transaction-builder/index.d.ts +1 -0
  67. package/dist/transaction-builder/index.d.ts.map +1 -1
  68. package/dist/transaction-builder/index.js +1 -0
  69. package/dist/transaction-builder/index.js.map +1 -1
  70. package/dist/transaction-builder/ordinal-transaction-builder.d.ts +4 -4
  71. package/dist/transaction-builder/ordinal-transaction-builder.d.ts.map +1 -1
  72. package/dist/transaction-builder/ordinal-transaction-builder.js +51 -48
  73. package/dist/transaction-builder/ordinal-transaction-builder.js.map +1 -1
  74. package/dist/transaction-builder/transaction-builder.d.ts +57 -54
  75. package/dist/transaction-builder/transaction-builder.d.ts.map +1 -1
  76. package/dist/transaction-builder/transaction-builder.js +394 -308
  77. package/dist/transaction-builder/transaction-builder.js.map +1 -1
  78. package/dist/utils/networks.js +17 -7
  79. package/dist/utils/networks.js.map +1 -1
  80. package/dist/utils/tools.js +24 -35
  81. package/dist/utils/tools.js.map +1 -1
  82. package/package.json +4 -4
  83. package/src/bitcoin-interface-utils.ts +17 -8
  84. package/src/bitcoin-interface-wallet.ts +15 -1
  85. package/src/bitcoin-utils.ts +52 -3
  86. package/src/bitcoin-wallet-base.ts +67 -23
  87. package/src/helper/ordinal-helper.ts +0 -83
  88. package/src/index.ts +2 -0
  89. package/src/multisig-wallet-helper.ts +296 -0
  90. package/src/sign/sign-transaction.ts +5 -7
  91. package/src/transaction-builder/coin-select.ts +633 -0
  92. package/src/transaction-builder/index.ts +1 -0
  93. package/src/transaction-builder/transaction-builder.ts +424 -279
  94. package/dist/bitcoin-wallet-base copy.d.ts +0 -122
  95. package/dist/bitcoin-wallet-base copy.d.ts.map +0 -1
  96. package/dist/bitcoin-wallet-base copy.js +0 -279
  97. package/dist/bitcoin-wallet-base copy.js.map +0 -1
  98. package/dist/multisig-coordinator-wallet.d.ts +0 -2
  99. package/dist/multisig-coordinator-wallet.d.ts.map +0 -1
  100. package/dist/multisig-coordinator-wallet.js +0 -6
  101. package/dist/multisig-coordinator-wallet.js.map +0 -1
  102. package/dist/multisig-wallet.d.ts +0 -20
  103. package/dist/multisig-wallet.d.ts.map +0 -1
  104. package/dist/multisig-wallet.js +0 -119
  105. package/dist/multisig-wallet.js.map +0 -1
@@ -15,22 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
34
35
  Object.defineProperty(exports, "__esModule", { value: true });
35
36
  exports.OrdinalTransactionBuilder = void 0;
36
37
  const bitcoin = __importStar(require("bitcoinjs-lib"));
@@ -38,37 +39,35 @@ const bip341_1 = require("bitcoinjs-lib/src/payments/bip341");
38
39
  const bitcoin_transaction_builder_1 = require("./bitcoin-transaction-builder");
39
40
  const ordinal_helper_1 = require("../helper/ordinal-helper");
40
41
  class OrdinalTransactionBuilder extends bitcoin_transaction_builder_1.BitcoinTransactionBuilder {
41
- createNftPsbt({ extendedUtxo, nftExtendedUtxo, receiverAddress, feeRate, changeAddress, otherTargets, }) {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- let targets = [
44
- {
45
- address: receiverAddress,
46
- value: nftExtendedUtxo.value,
47
- },
48
- ];
49
- if (otherTargets)
50
- targets.push(...otherTargets);
51
- if (!changeAddress && targets.length === 0)
52
- throw new Error("no target");
53
- let changeObject = {
54
- address: changeAddress,
55
- };
56
- let { inputs, outputs, change, fee } = yield this.filterAndConvertTxDataToStandardFormat({
57
- extendedUtxo: [nftExtendedUtxo, ...extendedUtxo],
58
- targets,
59
- changeObject,
60
- feeRate,
61
- selectType: "inOrder",
62
- });
63
- let unsignedTx = this.createUnsignedTransaction({
64
- inputs,
65
- outputs,
66
- change,
67
- fee,
68
- feeRate,
69
- });
70
- return unsignedTx;
42
+ async createNftPsbt({ extendedUtxo, nftExtendedUtxo, receiverAddress, feeRate, changeAddress, otherTargets, }) {
43
+ let targets = [
44
+ {
45
+ address: receiverAddress,
46
+ value: nftExtendedUtxo.value,
47
+ },
48
+ ];
49
+ if (otherTargets)
50
+ targets.push(...otherTargets);
51
+ if (!changeAddress && targets.length === 0)
52
+ throw new Error("no target");
53
+ let changeObject = {
54
+ address: changeAddress,
55
+ };
56
+ let { inputs, outputs, change, fee } = await this.filterAndConvertTxDataToStandardFormat({
57
+ extendedUtxo: [nftExtendedUtxo, ...extendedUtxo],
58
+ targets,
59
+ changeObject,
60
+ feeRate,
61
+ selectType: "inOrder",
62
+ });
63
+ let unsignedTx = this.createUnsignedTransaction({
64
+ inputs,
65
+ outputs,
66
+ change,
67
+ fee,
68
+ feeRate,
71
69
  });
70
+ return unsignedTx;
72
71
  }
73
72
  createOrdinalAddress(file, publicKey) {
74
73
  const internalPublicKey = (0, ordinal_helper_1.toXOnly)(publicKey).toString("hex");
@@ -97,13 +96,17 @@ class OrdinalTransactionBuilder extends bitcoin_transaction_builder_1.BitcoinTra
97
96
  }
98
97
  createInscribeUnsignedTx(ordinalSpendDetails, inscribeDeposit, receiverAddress, ordinalAmount = 600) {
99
98
  const psbt = new bitcoin.Psbt({ network: this.network })
100
- .addInput(Object.assign(Object.assign({}, inscribeDeposit), { witnessUtxo: { value: inscribeDeposit.value, script: ordinalSpendDetails.ordinalScript }, tapLeafScript: [
99
+ .addInput({
100
+ ...inscribeDeposit,
101
+ witnessUtxo: { value: inscribeDeposit.value, script: ordinalSpendDetails.ordinalScript },
102
+ tapLeafScript: [
101
103
  {
102
104
  leafVersion: ordinalSpendDetails.redeem.redeemVersion,
103
105
  script: ordinalSpendDetails.redeem.output,
104
106
  controlBlock: ordinalSpendDetails.controlBlock,
105
107
  },
106
- ] }))
108
+ ],
109
+ })
107
110
  .addOutput({
108
111
  value: ordinalAmount,
109
112
  address: receiverAddress,
@@ -1 +1 @@
1
- {"version":3,"file":"ordinal-transaction-builder.js","sourceRoot":"","sources":["../../src/transaction-builder/ordinal-transaction-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ordinal-transaction-builder.js","sourceRoot":"","sources":["../../src/transaction-builder/ordinal-transaction-builder.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,4 @@
1
- /// <reference types="node" />
2
1
  import * as bitcoin from "bitcoinjs-lib";
3
- export declare const componentBytes: {
4
- bytePerInput: {
5
- p2pkh: number;
6
- p2wpkh: number;
7
- "p2sh-p2wpkh": number;
8
- p2tr: number;
9
- default: number;
10
- };
11
- baseTxBytes: number;
12
- bytePerOutput: {
13
- p2pkh: number;
14
- p2wpkh: number;
15
- p2sh: number;
16
- p2tr: number;
17
- default: number;
18
- max: number;
19
- };
20
- scriptExtraBytes: {
21
- lessThan255: number;
22
- moreThan255: number;
23
- };
24
- };
25
- export declare const DUST = 1000;
26
2
  export type Utxo = {
27
3
  hash: string;
28
4
  value: number;
@@ -32,10 +8,19 @@ export type SignerInfo = {
32
8
  address: string;
33
9
  publicKey: string;
34
10
  addressType: string;
11
+ publicKeys?: string[];
12
+ numberOfSigners?: number;
35
13
  derivationPath?: string;
36
14
  masterFingerprint?: string;
37
15
  includeHex?: boolean;
38
16
  };
17
+ export type ChangeInfo = {
18
+ address: string;
19
+ publicKey?: string;
20
+ addressType?: string;
21
+ derivationPath?: string;
22
+ masterFingerprint?: string;
23
+ };
39
24
  export type ExtendedUtxo = {
40
25
  signerInfo: SignerInfo;
41
26
  hash: string;
@@ -50,7 +35,11 @@ export type TargetScript = {
50
35
  script: Buffer;
51
36
  value: number;
52
37
  };
53
- export type Target = TargetAddress | TargetScript;
38
+ export type Target = {
39
+ address?: string;
40
+ script?: Buffer;
41
+ value: number;
42
+ };
54
43
  export type ChangeTarget = TargetAddress & {
55
44
  bip32Derivation?: {
56
45
  path: string;
@@ -70,6 +59,7 @@ export type BitcoinJSInputInfo = ExtendedUtxo & {
70
59
  value: number;
71
60
  };
72
61
  redeemScript?: Buffer;
62
+ witnessScript?: Buffer;
73
63
  tapInternalKey?: Buffer;
74
64
  };
75
65
  export type ExtendedUnsignedTransaction = {
@@ -82,9 +72,12 @@ export type ExtendedUnsignedTransaction = {
82
72
  signerInfo: SignerInfo;
83
73
  }[];
84
74
  fee: number;
75
+ feeRate: number;
85
76
  change: TargetAddress | undefined;
77
+ possibleTxId: string | undefined;
86
78
  };
87
79
  export declare abstract class BaseTransactionBuilder {
80
+ MULTISIG_TYPES: string[];
88
81
  testnet: boolean;
89
82
  network: bitcoin.Network;
90
83
  maximumNumberOfOutputsInTransaction: number;
@@ -98,65 +91,70 @@ export declare abstract class BaseTransactionBuilder {
98
91
  dustLimit?: number;
99
92
  maximumNumberOfOutputsInTransaction?: number;
100
93
  });
94
+ isMultiSig(addressType: string): boolean;
101
95
  abstract _getTransactionHex(transactionId: string): Promise<string>;
102
96
  createAddressObject(input: {
103
97
  addressType: string;
104
98
  publicKey: Buffer;
99
+ publicKeys?: Buffer[];
100
+ numberOfSigners?: number;
105
101
  }): bitcoin.payments.Payment;
106
102
  validateAddress(address: string): boolean;
107
103
  getOpReturnTarget(dataHex: string): {
108
- script: Buffer;
104
+ script: Buffer<ArrayBufferLike>;
109
105
  value: number;
110
106
  };
111
- calculateTxSize(inputTypes: string[], outputs: {
107
+ calculateTxSize(inputTypes: {
108
+ addressType: string;
109
+ n?: number;
110
+ m?: number;
111
+ script?: string;
112
+ }[], outputs: {
112
113
  script?: Buffer;
113
114
  address?: string;
114
115
  value: number;
115
116
  }[], changeAddressType?: string): number;
116
- helperHandleInputsAndOutputs({ targets, extendedUtxo, feeRate, changeObject, selectType, }: {
117
+ oldTxFeeCheck(newInputs: ExtendedUtxo[], newOutputs: Target[], newChange: Target | undefined, newFee: number, changeObject: ChangeInfo, feeRate: number, selectType: string, changeAddressType: string): {
118
+ inputs: ExtendedUtxo[];
119
+ outputs: Target[];
120
+ change: ChangeTarget | undefined;
121
+ fee: number;
122
+ };
123
+ helperHandleInputsAndOutputs({ requiredUtxo, targets, extendedUtxo, feeRate, changeObject, selectType, }: {
117
124
  extendedUtxo: ExtendedUtxo[];
118
125
  targets: Target[];
119
126
  feeRate: number;
120
- changeObject?: {
121
- address: string;
122
- publicKey?: string;
123
- addressType?: string;
124
- derivationPath?: string;
125
- masterFingerprint?: string;
126
- };
127
+ changeObject: ChangeInfo;
127
128
  selectType?: "normal" | "accumulative" | "full" | "inOrder";
129
+ requiredUtxo?: ExtendedUtxo[];
128
130
  }): {
129
131
  inputs: ExtendedUtxo[];
130
132
  fee: number;
131
133
  outputs: Target[];
132
134
  change: ChangeTarget | undefined;
133
135
  };
134
- filterAndConvertTxDataToStandardFormat({ extendedUtxo, targets, changeObject, feeRate, selectType, }: {
136
+ filterAndConvertTxDataToStandardFormat({ extendedUtxo, requiredUtxo, targets, changeObject, feeRate, selectType, }: {
135
137
  extendedUtxo: ExtendedUtxo[];
136
138
  targets: Target[];
137
139
  feeRate: number;
138
- changeObject?: {
139
- address: string;
140
- publicKey?: string;
141
- addressType?: string;
142
- derivationPath?: string;
143
- masterFingerprint?: string;
144
- };
140
+ changeObject: ChangeInfo;
145
141
  selectType?: "normal" | "accumulative" | "full" | "inOrder";
142
+ requiredUtxo?: ExtendedUtxo[];
146
143
  }): Promise<{
147
144
  inputs: (ExtendedUtxo & {
148
145
  bip32Derivation?: {
149
146
  path: string;
150
147
  pubkey: Buffer;
151
148
  masterFingerprint: Buffer;
152
- }[] | undefined;
153
- nonWitnessUtxo?: Buffer | undefined;
149
+ }[];
150
+ nonWitnessUtxo?: Buffer;
154
151
  witnessUtxo?: {
155
152
  script: Buffer;
156
153
  value: number;
157
- } | undefined;
158
- redeemScript?: Buffer | undefined;
159
- tapInternalKey?: Buffer | undefined;
154
+ };
155
+ redeemScript?: Buffer;
156
+ witnessScript?: Buffer;
157
+ tapInternalKey?: Buffer;
160
158
  } & {
161
159
  signerInfo: SignerInfo;
162
160
  })[];
@@ -170,14 +168,15 @@ export declare abstract class BaseTransactionBuilder {
170
168
  path: string;
171
169
  pubkey: Buffer;
172
170
  masterFingerprint: Buffer;
173
- }[] | undefined;
174
- nonWitnessUtxo?: Buffer | undefined;
171
+ }[];
172
+ nonWitnessUtxo?: Buffer;
175
173
  witnessUtxo?: {
176
174
  script: Buffer;
177
175
  value: number;
178
- } | undefined;
179
- redeemScript?: Buffer | undefined;
180
- tapInternalKey?: Buffer | undefined;
176
+ };
177
+ redeemScript?: Buffer;
178
+ witnessScript?: Buffer;
179
+ tapInternalKey?: Buffer;
181
180
  } & {
182
181
  signerInfo: SignerInfo;
183
182
  })[]>;
@@ -198,10 +197,11 @@ export declare abstract class BaseTransactionBuilder {
198
197
  signerInfo: SignerInfo;
199
198
  }[];
200
199
  fee: number;
200
+ feeRate: number;
201
201
  change: ChangeTarget | undefined;
202
202
  possibleTxId: string | undefined;
203
203
  };
204
- processUnsignedTransaction({ extendedUtxo, targets, changeAddress, fullAmount, feeRate, selectType, sequenceNumber, }: {
204
+ processUnsignedTransaction({ extendedUtxo, targets, changeAddress, fullAmount, feeRate, selectType, sequenceNumber, requiredUtxo, }: {
205
205
  extendedUtxo: ExtendedUtxo[];
206
206
  targets: Target[];
207
207
  feeRate: number;
@@ -209,6 +209,7 @@ export declare abstract class BaseTransactionBuilder {
209
209
  fullAmount?: boolean;
210
210
  selectType?: "normal" | "accumulative" | "full" | "inOrder";
211
211
  sequenceNumber?: number;
212
+ requiredUtxo?: ExtendedUtxo[];
212
213
  }): Promise<{
213
214
  unsignedTransaction: string;
214
215
  outputs: Target[];
@@ -219,9 +220,11 @@ export declare abstract class BaseTransactionBuilder {
219
220
  signerInfo: SignerInfo;
220
221
  }[];
221
222
  fee: number;
223
+ feeRate: number;
222
224
  change: ChangeTarget | undefined;
223
225
  possibleTxId: string | undefined;
224
226
  }>;
225
227
  getUnsignedPsbtTxId(unsignedPsbt: string): string;
228
+ getTxFromHex(hex: string): bitcoin.Transaction;
226
229
  }
227
230
  //# sourceMappingURL=transaction-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-builder.d.ts","sourceRoot":"","sources":["../../src/transaction-builder/transaction-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction-builder.d.ts","sourceRoot":"","sources":["../../src/transaction-builder/transaction-builder.ts"],"names":[],"mappings":"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"}