dxs-stas-sdk 1.0.1 → 1.0.3

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 (160) hide show
  1. package/dist/base.d.ts +2 -0
  2. package/dist/base.d.ts.map +1 -0
  3. package/dist/base.js +7 -0
  4. package/dist/base.js.map +1 -0
  5. package/dist/bitcoin/address.d.ts +12 -0
  6. package/dist/bitcoin/address.d.ts.map +1 -0
  7. package/dist/bitcoin/address.js +31 -0
  8. package/dist/bitcoin/address.js.map +1 -0
  9. package/dist/bitcoin/destination.d.ts +8 -0
  10. package/dist/bitcoin/destination.d.ts.map +1 -0
  11. package/dist/bitcoin/destination.js +3 -0
  12. package/dist/bitcoin/destination.js.map +1 -0
  13. package/dist/bitcoin/index.d.ts +16 -0
  14. package/dist/bitcoin/index.d.ts.map +1 -0
  15. package/dist/bitcoin/index.js +32 -0
  16. package/dist/bitcoin/index.js.map +1 -0
  17. package/dist/bitcoin/mnemonic.d.ts +14 -0
  18. package/dist/bitcoin/mnemonic.d.ts.map +1 -0
  19. package/dist/bitcoin/mnemonic.js +36 -0
  20. package/dist/bitcoin/mnemonic.js.map +1 -0
  21. package/dist/bitcoin/network.d.ts +8 -0
  22. package/dist/bitcoin/network.d.ts.map +1 -0
  23. package/dist/bitcoin/network.js +10 -0
  24. package/dist/bitcoin/network.js.map +1 -0
  25. package/dist/bitcoin/op-codes.d.ts +123 -0
  26. package/dist/bitcoin/op-codes.d.ts.map +1 -0
  27. package/dist/bitcoin/op-codes.js +127 -0
  28. package/dist/bitcoin/op-codes.js.map +1 -0
  29. package/dist/bitcoin/out-point.d.ts +21 -0
  30. package/dist/bitcoin/out-point.d.ts.map +1 -0
  31. package/dist/bitcoin/out-point.js +31 -0
  32. package/dist/bitcoin/out-point.js.map +1 -0
  33. package/dist/bitcoin/payment.d.ts +8 -0
  34. package/dist/bitcoin/payment.d.ts.map +1 -0
  35. package/dist/bitcoin/payment.js +3 -0
  36. package/dist/bitcoin/payment.js.map +1 -0
  37. package/dist/bitcoin/private-key.d.ts +13 -0
  38. package/dist/bitcoin/private-key.d.ts.map +1 -0
  39. package/dist/bitcoin/private-key.js +34 -0
  40. package/dist/bitcoin/private-key.js.map +1 -0
  41. package/dist/bitcoin/script-type.d.ts +10 -0
  42. package/dist/bitcoin/script-type.d.ts.map +1 -0
  43. package/dist/bitcoin/script-type.js +14 -0
  44. package/dist/bitcoin/script-type.js.map +1 -0
  45. package/dist/bitcoin/sig-hash-type.d.ts +8 -0
  46. package/dist/bitcoin/sig-hash-type.d.ts.map +1 -0
  47. package/dist/bitcoin/sig-hash-type.js +12 -0
  48. package/dist/bitcoin/sig-hash-type.js.map +1 -0
  49. package/dist/bitcoin/token-scheme.d.ts +11 -0
  50. package/dist/bitcoin/token-scheme.d.ts.map +1 -0
  51. package/dist/bitcoin/token-scheme.js +20 -0
  52. package/dist/bitcoin/token-scheme.js.map +1 -0
  53. package/dist/bitcoin/transaction-input.d.ts +11 -0
  54. package/dist/bitcoin/transaction-input.d.ts.map +1 -0
  55. package/dist/bitcoin/transaction-input.js +23 -0
  56. package/dist/bitcoin/transaction-input.js.map +1 -0
  57. package/dist/bitcoin/transaction-output.d.ts +17 -0
  58. package/dist/bitcoin/transaction-output.d.ts.map +1 -0
  59. package/dist/bitcoin/transaction-output.js +89 -0
  60. package/dist/bitcoin/transaction-output.js.map +1 -0
  61. package/dist/bitcoin/transaction.d.ts +14 -0
  62. package/dist/bitcoin/transaction.d.ts.map +1 -0
  63. package/dist/bitcoin/transaction.js +18 -0
  64. package/dist/bitcoin/transaction.js.map +1 -0
  65. package/dist/bitcoin/wallet.d.ts +22 -0
  66. package/dist/bitcoin/wallet.d.ts.map +1 -0
  67. package/dist/bitcoin/wallet.js +37 -0
  68. package/dist/bitcoin/wallet.js.map +1 -0
  69. package/dist/buffer/buffer-reader.d.ts +15 -0
  70. package/dist/buffer/buffer-reader.d.ts.map +1 -0
  71. package/dist/buffer/buffer-reader.js +65 -0
  72. package/dist/buffer/buffer-reader.js.map +1 -0
  73. package/dist/buffer/buffer-utils.d.ts +20 -0
  74. package/dist/buffer/buffer-utils.d.ts.map +1 -0
  75. package/dist/buffer/buffer-utils.js +106 -0
  76. package/dist/buffer/buffer-utils.js.map +1 -0
  77. package/dist/buffer/buffer-writer.d.ts +15 -0
  78. package/dist/buffer/buffer-writer.d.ts.map +1 -0
  79. package/dist/buffer/buffer-writer.js +54 -0
  80. package/dist/buffer/buffer-writer.js.map +1 -0
  81. package/dist/buffer/index.d.ts +4 -0
  82. package/dist/buffer/index.d.ts.map +1 -0
  83. package/dist/buffer/index.js +20 -0
  84. package/dist/buffer/index.js.map +1 -0
  85. package/dist/hashes.d.ts +6 -0
  86. package/dist/hashes.d.ts.map +1 -0
  87. package/dist/hashes.js +15 -0
  88. package/dist/hashes.js.map +1 -0
  89. package/dist/index.d.ts +9 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +25 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/script/build/null-data-builder.d.ts +6 -0
  94. package/dist/script/build/null-data-builder.d.ts.map +1 -0
  95. package/dist/script/build/null-data-builder.js +22 -0
  96. package/dist/script/build/null-data-builder.js.map +1 -0
  97. package/dist/script/build/p2pkh-builder.d.ts +9 -0
  98. package/dist/script/build/p2pkh-builder.d.ts.map +1 -0
  99. package/dist/script/build/p2pkh-builder.js +33 -0
  100. package/dist/script/build/p2pkh-builder.js.map +1 -0
  101. package/dist/script/build/p2stas-builder.d.ts +7 -0
  102. package/dist/script/build/p2stas-builder.d.ts.map +1 -0
  103. package/dist/script/build/p2stas-builder.js +32 -0
  104. package/dist/script/build/p2stas-builder.js.map +1 -0
  105. package/dist/script/build/script-builder.d.ts +23 -0
  106. package/dist/script/build/script-builder.d.ts.map +1 -0
  107. package/dist/script/build/script-builder.js +107 -0
  108. package/dist/script/build/script-builder.js.map +1 -0
  109. package/dist/script/index.d.ts +9 -0
  110. package/dist/script/index.d.ts.map +1 -0
  111. package/dist/script/index.js +25 -0
  112. package/dist/script/index.js.map +1 -0
  113. package/dist/script/read/script-reader.d.ts +11 -0
  114. package/dist/script/read/script-reader.d.ts.map +1 -0
  115. package/dist/script/read/script-reader.js +73 -0
  116. package/dist/script/read/script-reader.js.map +1 -0
  117. package/dist/script/script-samples.d.ts +6 -0
  118. package/dist/script/script-samples.d.ts.map +1 -0
  119. package/dist/script/script-samples.js +25 -0
  120. package/dist/script/script-samples.js.map +1 -0
  121. package/dist/script/script-token.d.ts +14 -0
  122. package/dist/script/script-token.d.ts.map +1 -0
  123. package/dist/script/script-token.js +50 -0
  124. package/dist/script/script-token.js.map +1 -0
  125. package/dist/script/script-utils.d.ts +5 -0
  126. package/dist/script/script-utils.d.ts.map +1 -0
  127. package/dist/script/script-utils.js +13 -0
  128. package/dist/script/script-utils.js.map +1 -0
  129. package/dist/stas-bundle-factory.d.ts +28 -0
  130. package/dist/stas-bundle-factory.d.ts.map +1 -0
  131. package/dist/stas-bundle-factory.js +223 -0
  132. package/dist/stas-bundle-factory.js.map +1 -0
  133. package/dist/transaction/build/input-builder.d.ts +32 -0
  134. package/dist/transaction/build/input-builder.d.ts.map +1 -0
  135. package/dist/transaction/build/input-builder.js +192 -0
  136. package/dist/transaction/build/input-builder.js.map +1 -0
  137. package/dist/transaction/build/output-builder.d.ts +10 -0
  138. package/dist/transaction/build/output-builder.d.ts.map +1 -0
  139. package/dist/transaction/build/output-builder.js +20 -0
  140. package/dist/transaction/build/output-builder.js.map +1 -0
  141. package/dist/transaction/build/transaction-builder.d.ts +34 -0
  142. package/dist/transaction/build/transaction-builder.d.ts.map +1 -0
  143. package/dist/transaction/build/transaction-builder.js +116 -0
  144. package/dist/transaction/build/transaction-builder.js.map +1 -0
  145. package/dist/transaction/index.d.ts +5 -0
  146. package/dist/transaction/index.d.ts.map +1 -0
  147. package/dist/transaction/index.js +21 -0
  148. package/dist/transaction/index.js.map +1 -0
  149. package/dist/transaction/read/transaction-reader.d.ts +12 -0
  150. package/dist/transaction/read/transaction-reader.d.ts.map +1 -0
  151. package/dist/transaction/read/transaction-reader.js +41 -0
  152. package/dist/transaction/read/transaction-reader.js.map +1 -0
  153. package/dist/transaction-factory.d.ts +39 -0
  154. package/dist/transaction-factory.d.ts.map +1 -0
  155. package/dist/transaction-factory.js +93 -0
  156. package/dist/transaction-factory.js.map +1 -0
  157. package/index.ts +1 -0
  158. package/package.json +4 -2
  159. package/src/stas-bundle-factory.ts +2 -0
  160. package/src/transaction/build/transaction-builder.ts +11 -1
package/dist/base.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const bs58check: import("@scure/base").BytesCoder;
2
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,kCAAsB,CAAC"}
package/dist/base.js ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bs58check = void 0;
4
+ const sha256_1 = require("@noble/hashes/sha256");
5
+ const base_1 = require("@scure/base");
6
+ exports.bs58check = (0, base_1.base58check)(sha256_1.sha256);
7
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,sCAA0C;AAE7B,QAAA,SAAS,GAAG,IAAA,kBAAW,EAAC,eAAM,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /// <reference types="node" />
2
+ import { Network } from "./network";
3
+ export declare class Address {
4
+ Value: string;
5
+ Hash160: Buffer;
6
+ Network: Network;
7
+ constructor(hash160: Buffer);
8
+ static fromBase58: (address: string) => Address;
9
+ static fromPublicKey: (publicKey: Buffer) => Address;
10
+ static fromHash160Hex: (hash160: string) => Address;
11
+ }
12
+ //# sourceMappingURL=address.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../src/bitcoin/address.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,OAAO,EAAY,MAAM,WAAW,CAAC;AAE9C,qBAAa,OAAO;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAoB;gBAKxB,OAAO,EAAE,MAAM;IAY3B,MAAM,CAAC,UAAU,YAAa,MAAM,aAUlC;IAEF,MAAM,CAAC,aAAa,cAAe,MAAM,aAAqC;IAE9E,MAAM,CAAC,cAAc,YAAa,MAAM,aACG;CAC5C"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Address = void 0;
4
+ const base_1 = require("../base");
5
+ const buffer_utils_1 = require("../buffer/buffer-utils");
6
+ const hashes_1 = require("../hashes");
7
+ const network_1 = require("./network");
8
+ class Address {
9
+ constructor(hash160) {
10
+ this.Network = network_1.Networks.Mainnet;
11
+ if (hash160.length !== 20)
12
+ throw new Error("Invalid hash160");
13
+ const buffer = Buffer.allocUnsafe(21);
14
+ buffer.writeUInt8(this.Network.pubKeyHash, 0);
15
+ hash160.copy(buffer, 1);
16
+ this.Value = base_1.bs58check.encode(buffer);
17
+ this.Hash160 = hash160;
18
+ }
19
+ }
20
+ exports.Address = Address;
21
+ Address.fromBase58 = (address) => {
22
+ const buffer = (0, buffer_utils_1.toBuffer)(base_1.bs58check.decode(address));
23
+ if (buffer[0] !== network_1.Networks.Mainnet.pubKeyHash)
24
+ throw new Error("Only mainnet supported");
25
+ const hash160 = Buffer.allocUnsafe(20);
26
+ buffer.copy(hash160, 0, 1);
27
+ return new Address(hash160);
28
+ };
29
+ Address.fromPublicKey = (publicKey) => new Address((0, hashes_1.hash160)(publicKey));
30
+ Address.fromHash160Hex = (hash160) => new Address(Buffer.from(hash160, "hex"));
31
+ //# sourceMappingURL=address.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/bitcoin/address.ts"],"names":[],"mappings":";;;AAAA,kCAAoC;AACpC,yDAAkD;AAClD,sCAAoC;AACpC,uCAA8C;AAE9C,MAAa,OAAO;IAQlB,YAAY,OAAe;QAL3B,YAAO,GAAY,kBAAQ,CAAC,OAAO,CAAC;QAMlC,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAEtC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAExB,IAAI,CAAC,KAAK,GAAG,gBAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;;AAlBH,0BAoCC;AAhBQ,kBAAU,GAAG,CAAC,OAAe,EAAE,EAAE;IACtC,MAAM,MAAM,GAAG,IAAA,uBAAQ,EAAC,gBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,kBAAQ,CAAC,OAAO,CAAC,UAAU;QAC3C,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEK,qBAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,IAAA,gBAAO,EAAC,SAAS,CAAC,CAAC,CAAC;AAEvE,sBAAc,GAAG,CAAC,OAAe,EAAE,EAAE,CAC1C,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="node" />
2
+ import { Address } from "./address";
3
+ export type TDestination = {
4
+ Address: Address;
5
+ Satoshis: number;
6
+ Data?: Buffer[];
7
+ };
8
+ //# sourceMappingURL=destination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destination.d.ts","sourceRoot":"","sources":["../../src/bitcoin/destination.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=destination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destination.js","sourceRoot":"","sources":["../../src/bitcoin/destination.ts"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ export * from "./address";
2
+ export * from "./destination";
3
+ export * from "./mnemonic";
4
+ export * from "./network";
5
+ export * from "./op-codes";
6
+ export * from "./out-point";
7
+ export * from "./payment";
8
+ export * from "./private-key";
9
+ export * from "./script-type";
10
+ export * from "./sig-hash-type";
11
+ export * from "./token-scheme";
12
+ export * from "./transaction-input";
13
+ export * from "./transaction-output";
14
+ export * from "./transaction";
15
+ export * from "./wallet";
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bitcoin/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./address"), exports);
18
+ __exportStar(require("./destination"), exports);
19
+ __exportStar(require("./mnemonic"), exports);
20
+ __exportStar(require("./network"), exports);
21
+ __exportStar(require("./op-codes"), exports);
22
+ __exportStar(require("./out-point"), exports);
23
+ __exportStar(require("./payment"), exports);
24
+ __exportStar(require("./private-key"), exports);
25
+ __exportStar(require("./script-type"), exports);
26
+ __exportStar(require("./sig-hash-type"), exports);
27
+ __exportStar(require("./token-scheme"), exports);
28
+ __exportStar(require("./transaction-input"), exports);
29
+ __exportStar(require("./transaction-output"), exports);
30
+ __exportStar(require("./transaction"), exports);
31
+ __exportStar(require("./wallet"), exports);
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bitcoin/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,gDAA8B;AAC9B,6CAA2B;AAC3B,4CAA0B;AAC1B,6CAA2B;AAC3B,8CAA4B;AAC5B,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,kDAAgC;AAChC,iDAA+B;AAC/B,sDAAoC;AACpC,uDAAqC;AACrC,gDAA8B;AAC9B,2CAAyB"}
@@ -0,0 +1,14 @@
1
+ export { wordlist } from "@scure/bip39/wordlists/english";
2
+ export type TWords = {
3
+ [idxs: string]: string;
4
+ };
5
+ export declare class Mnemonic {
6
+ phrase: string;
7
+ words: TWords;
8
+ constructor(phrase: string, words: TWords);
9
+ static generate: () => Mnemonic;
10
+ static fromWords: (words: TWords) => Mnemonic;
11
+ static fromPhrase: (phrase: string) => Mnemonic;
12
+ static fromRandomText: (text: string) => Mnemonic | undefined;
13
+ }
14
+ //# sourceMappingURL=mnemonic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mnemonic.d.ts","sourceRoot":"","sources":["../../src/bitcoin/mnemonic.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE1D,MAAM,MAAM,MAAM,GAAG;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEhD,qBAAa,QAAQ;IACA,MAAM,EAAE,MAAM;IAAS,KAAK,EAAE,MAAM;gBAApC,MAAM,EAAE,MAAM,EAAS,KAAK,EAAE,MAAM;IAEvD,OAAc,QAAQ,QAAO,QAAQ,CACkB;IAEvD,OAAc,SAAS,UAAW,MAAM,KAAG,QAAQ,CAIjD;IAEF,OAAc,UAAU,WAAY,MAAM,KAAG,QAAQ,CAQnD;IAEF,OAAc,cAAc,SAAU,MAAM,KAAG,QAAQ,GAAG,SAAS,CASjE;CACH"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Mnemonic = exports.wordlist = void 0;
4
+ const bip39_1 = require("@scure/bip39");
5
+ const english_1 = require("@scure/bip39/wordlists/english");
6
+ var english_2 = require("@scure/bip39/wordlists/english");
7
+ Object.defineProperty(exports, "wordlist", { enumerable: true, get: function () { return english_2.wordlist; } });
8
+ class Mnemonic {
9
+ constructor(phrase, words) {
10
+ this.phrase = phrase;
11
+ this.words = words;
12
+ }
13
+ }
14
+ exports.Mnemonic = Mnemonic;
15
+ Mnemonic.generate = () => Mnemonic.fromPhrase((0, bip39_1.generateMnemonic)(english_1.wordlist, 128));
16
+ Mnemonic.fromWords = (words) => {
17
+ var phrase = Object.values(words).join(" ");
18
+ return new Mnemonic(phrase, words);
19
+ };
20
+ Mnemonic.fromPhrase = (phrase) => {
21
+ var words = phrase.split(" ").reduce((a, v, i) => {
22
+ a[`${i}`] = v;
23
+ return a;
24
+ }, {});
25
+ return new Mnemonic(phrase, words);
26
+ };
27
+ Mnemonic.fromRandomText = (text) => {
28
+ const sanitized = text
29
+ .replace(/\r?\n|\r/g, " ")
30
+ .replace(/\s{2,}/g, " ")
31
+ .replace(/^\s+/, "")
32
+ .replace(/\s+$/, "");
33
+ if ((0, bip39_1.validateMnemonic)(sanitized, english_1.wordlist))
34
+ return Mnemonic.fromPhrase(sanitized);
35
+ };
36
+ //# sourceMappingURL=mnemonic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mnemonic.js","sourceRoot":"","sources":["../../src/bitcoin/mnemonic.ts"],"names":[],"mappings":";;;AAAA,wCAAkE;AAClE,4DAA0D;AAE1D,0DAA0D;AAAjD,mGAAA,QAAQ,OAAA;AAIjB,MAAa,QAAQ;IACnB,YAAmB,MAAc,EAAS,KAAa;QAApC,WAAM,GAAN,MAAM,CAAQ;QAAS,UAAK,GAAL,KAAK,CAAQ;IAAG,CAAC;;AAD7D,4BAgCC;AA7Be,iBAAQ,GAAG,GAAa,EAAE,CACtC,QAAQ,CAAC,UAAU,CAAC,IAAA,wBAAgB,EAAC,kBAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;AAEzC,kBAAS,GAAG,CAAC,KAAa,EAAY,EAAE;IACpD,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5C,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC;AAEY,mBAAU,GAAG,CAAC,MAAc,EAAY,EAAE;IACtD,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACvD,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAEd,OAAO,CAAC,CAAC;IACX,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC;AAEY,uBAAc,GAAG,CAAC,IAAY,EAAwB,EAAE;IACpE,MAAM,SAAS,GAAG,IAAI;SACnB,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;SACzB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEvB,IAAI,IAAA,wBAAgB,EAAC,SAAS,EAAE,kBAAQ,CAAC;QACvC,OAAO,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export type Network = {
2
+ pubKeyHash: number;
3
+ wif: number;
4
+ };
5
+ export declare const Networks: {
6
+ [name: string]: Network;
7
+ };
8
+ //# sourceMappingURL=network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/bitcoin/network.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;CAK/C,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Networks = void 0;
4
+ exports.Networks = {
5
+ Mainnet: {
6
+ pubKeyHash: 0x00,
7
+ wif: 0x80,
8
+ },
9
+ };
10
+ //# sourceMappingURL=network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/bitcoin/network.ts"],"names":[],"mappings":";;;AAKa,QAAA,QAAQ,GAAgC;IACnD,OAAO,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,GAAG,EAAE,IAAI;KACV;CACF,CAAC"}
@@ -0,0 +1,123 @@
1
+ export declare enum OpCode {
2
+ OP_0 = 0,
3
+ OP_PUSHDATA1 = 76,
4
+ OP_PUSHDATA2 = 77,
5
+ OP_PUSHDATA4 = 78,
6
+ OP_1NEGATE = 79,
7
+ OP_RESERVED = 80,
8
+ OP_TRUE = 81,
9
+ OP_1 = 81,
10
+ OP_2 = 82,
11
+ OP_3 = 83,
12
+ OP_4 = 84,
13
+ OP_5 = 85,
14
+ OP_6 = 86,
15
+ OP_7 = 87,
16
+ OP_8 = 88,
17
+ OP_9 = 89,
18
+ OP_10 = 90,
19
+ OP_11 = 91,
20
+ OP_12 = 92,
21
+ OP_13 = 93,
22
+ OP_14 = 94,
23
+ OP_15 = 95,
24
+ OP_16 = 96,
25
+ OP_NOP = 97,
26
+ OP_VER = 98,
27
+ OP_IF = 99,
28
+ OP_NOTIF = 100,
29
+ OP_VERIF = 101,
30
+ OP_VERNOTIF = 102,
31
+ OP_ELSE = 103,
32
+ OP_ENDIF = 104,
33
+ OP_VERIFY = 105,
34
+ OP_RETURN = 106,
35
+ OP_TOALTSTACK = 107,
36
+ OP_FROMALTSTACK = 108,
37
+ OP_2DROP = 109,
38
+ OP_2DUP = 110,
39
+ OP_3DUP = 111,
40
+ OP_2OVER = 112,
41
+ OP_2ROT = 113,
42
+ OP_2SWAP = 114,
43
+ OP_IFDUP = 115,
44
+ OP_DEPTH = 116,
45
+ OP_DROP = 117,
46
+ OP_DUP = 118,
47
+ OP_NIP = 119,
48
+ OP_OVER = 120,
49
+ OP_PICK = 121,
50
+ OP_ROLL = 122,
51
+ OP_ROT = 123,
52
+ OP_SWAP = 124,
53
+ OP_TUCK = 125,
54
+ OP_CAT = 126,
55
+ OP_SPLIT = 127,
56
+ OP_NUM2BIN = 128,
57
+ OP_BIN2NUM = 129,
58
+ OP_SIZE = 130,
59
+ OP_INVERT = 131,
60
+ OP_AND = 132,
61
+ OP_OR = 133,
62
+ OP_XOR = 134,
63
+ OP_EQUAL = 135,
64
+ OP_EQUALVERIFY = 136,
65
+ OP_RESERVED1 = 137,
66
+ OP_RESERVED2 = 138,
67
+ OP_1ADD = 139,
68
+ OP_1SUB = 140,
69
+ OP_2MUL = 141,
70
+ OP_2DIV = 142,
71
+ OP_NEGATE = 143,
72
+ OP_ABS = 144,
73
+ OP_NOT = 145,
74
+ OP_0NOTEQUAL = 146,
75
+ OP_ADD = 147,
76
+ OP_SUB = 148,
77
+ OP_MUL = 149,
78
+ OP_DIV = 150,
79
+ OP_MOD = 151,
80
+ OP_LSHIFT = 152,
81
+ OP_RSHIFT = 153,
82
+ OP_BOOLAND = 154,
83
+ OP_BOOLOR = 155,
84
+ OP_NUMEQUAL = 156,
85
+ OP_NUMEQUALVERIFY = 157,
86
+ OP_NUMNOTEQUAL = 158,
87
+ OP_LESSTHAN = 159,
88
+ OP_GREATERTHAN = 160,
89
+ OP_LESSTHANOREQUAL = 161,
90
+ OP_GREATERTHANOREQUAL = 162,
91
+ OP_MIN = 163,
92
+ OP_MAX = 164,
93
+ OP_WITHIN = 165,
94
+ OP_RIPEMD160 = 166,
95
+ OP_SHA1 = 167,
96
+ OP_SHA256 = 168,
97
+ OP_HASH160 = 169,
98
+ OP_HASH256 = 170,
99
+ OP_CODESEPARATOR = 171,
100
+ OP_CHECKSIG = 172,
101
+ OP_CHECKSIGVERIFY = 173,
102
+ OP_CHECKMULTISIG = 174,
103
+ OP_CHECKMULTISIGVERIFY = 175,
104
+ OP_NOP1 = 176,
105
+ OP_NOP2 = 177,
106
+ OP_CHECKLOCKTIMEVERIFY = 177,
107
+ OP_NOP3 = 178,
108
+ OP_CHECKSEQUENCEVERIFY = 178,
109
+ OP_NOP4 = 179,
110
+ OP_NOP5 = 180,
111
+ OP_NOP6 = 181,
112
+ OP_NOP7 = 182,
113
+ OP_NOP8 = 183,
114
+ OP_NOP9 = 184,
115
+ OP_NOP10 = 185,
116
+ OP_SMALLDATA = 249,
117
+ OP_SMALLINTEGER = 250,
118
+ OP_PUBKEYS = 251,
119
+ OP_PUBKEYHASH = 253,
120
+ OP_PUBKEY = 254,
121
+ OP_INVALIDOPCODE = 255
122
+ }
123
+ //# sourceMappingURL=op-codes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"op-codes.d.ts","sourceRoot":"","sources":["../../src/bitcoin/op-codes.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM;IAEhB,IAAI,IAAO;IACX,YAAY,KAAO;IACnB,YAAY,KAAO;IACnB,YAAY,KAAO;IACnB,UAAU,KAAO;IACjB,WAAW,KAAO;IAClB,OAAO,KAAO;IACd,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,IAAI,KAAO;IACX,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,KAAK,KAAO;IAGZ,MAAM,KAAO;IACb,MAAM,KAAO;IACb,KAAK,KAAO;IACZ,QAAQ,MAAO;IACf,QAAQ,MAAO;IACf,WAAW,MAAO;IAClB,OAAO,MAAO;IACd,QAAQ,MAAO;IACf,SAAS,MAAO;IAChB,SAAS,MAAO;IAGhB,aAAa,MAAO;IACpB,eAAe,MAAO;IACtB,QAAQ,MAAO;IACf,OAAO,MAAO;IACd,OAAO,MAAO;IACd,QAAQ,MAAO;IACf,OAAO,MAAO;IACd,QAAQ,MAAO;IACf,QAAQ,MAAO;IACf,QAAQ,MAAO;IACf,OAAO,MAAO;IACd,MAAM,MAAO;IACb,MAAM,MAAO;IACb,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,MAAM,MAAO;IACb,OAAO,MAAO;IACd,OAAO,MAAO;IAGd,MAAM,MAAO;IACb,QAAQ,MAAO;IACf,UAAU,MAAO;IACjB,UAAU,MAAO;IACjB,OAAO,MAAO;IAGd,SAAS,MAAO;IAChB,MAAM,MAAO;IACb,KAAK,MAAO;IACZ,MAAM,MAAO;IACb,QAAQ,MAAO;IACf,cAAc,MAAO;IACrB,YAAY,MAAO;IACnB,YAAY,MAAO;IAGnB,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,SAAS,MAAO;IAChB,MAAM,MAAO;IACb,MAAM,MAAO;IACb,YAAY,MAAO;IAEnB,MAAM,MAAO;IACb,MAAM,MAAO;IACb,MAAM,MAAO;IACb,MAAM,MAAO;IACb,MAAM,MAAO;IACb,SAAS,MAAO;IAChB,SAAS,MAAO;IAEhB,UAAU,MAAO;IACjB,SAAS,MAAO;IAChB,WAAW,MAAO;IAClB,iBAAiB,MAAO;IACxB,cAAc,MAAO;IACrB,WAAW,MAAO;IAClB,cAAc,MAAO;IACrB,kBAAkB,MAAO;IACzB,qBAAqB,MAAO;IAC5B,MAAM,MAAO;IACb,MAAM,MAAO;IAEb,SAAS,MAAO;IAGhB,YAAY,MAAO;IACnB,OAAO,MAAO;IACd,SAAS,MAAO;IAChB,UAAU,MAAO;IACjB,UAAU,MAAO;IACjB,gBAAgB,MAAO;IACvB,WAAW,MAAO;IAClB,iBAAiB,MAAO;IACxB,gBAAgB,MAAO;IACvB,sBAAsB,MAAO;IAG7B,OAAO,MAAO;IACd,OAAO,MAAO;IACd,sBAAsB,MAAO;IAC7B,OAAO,MAAO;IACd,sBAAsB,MAAO;IAC7B,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,OAAO,MAAO;IACd,QAAQ,MAAO;IAGf,YAAY,MAAO;IACnB,eAAe,MAAO;IACtB,UAAU,MAAO;IACjB,aAAa,MAAO;IACpB,SAAS,MAAO;IAEhB,gBAAgB,MAAO;CACxB"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpCode = void 0;
4
+ var OpCode;
5
+ (function (OpCode) {
6
+ OpCode[OpCode["OP_0"] = 0] = "OP_0";
7
+ OpCode[OpCode["OP_PUSHDATA1"] = 76] = "OP_PUSHDATA1";
8
+ OpCode[OpCode["OP_PUSHDATA2"] = 77] = "OP_PUSHDATA2";
9
+ OpCode[OpCode["OP_PUSHDATA4"] = 78] = "OP_PUSHDATA4";
10
+ OpCode[OpCode["OP_1NEGATE"] = 79] = "OP_1NEGATE";
11
+ OpCode[OpCode["OP_RESERVED"] = 80] = "OP_RESERVED";
12
+ OpCode[OpCode["OP_TRUE"] = 81] = "OP_TRUE";
13
+ OpCode[OpCode["OP_1"] = 81] = "OP_1";
14
+ OpCode[OpCode["OP_2"] = 82] = "OP_2";
15
+ OpCode[OpCode["OP_3"] = 83] = "OP_3";
16
+ OpCode[OpCode["OP_4"] = 84] = "OP_4";
17
+ OpCode[OpCode["OP_5"] = 85] = "OP_5";
18
+ OpCode[OpCode["OP_6"] = 86] = "OP_6";
19
+ OpCode[OpCode["OP_7"] = 87] = "OP_7";
20
+ OpCode[OpCode["OP_8"] = 88] = "OP_8";
21
+ OpCode[OpCode["OP_9"] = 89] = "OP_9";
22
+ OpCode[OpCode["OP_10"] = 90] = "OP_10";
23
+ OpCode[OpCode["OP_11"] = 91] = "OP_11";
24
+ OpCode[OpCode["OP_12"] = 92] = "OP_12";
25
+ OpCode[OpCode["OP_13"] = 93] = "OP_13";
26
+ OpCode[OpCode["OP_14"] = 94] = "OP_14";
27
+ OpCode[OpCode["OP_15"] = 95] = "OP_15";
28
+ OpCode[OpCode["OP_16"] = 96] = "OP_16";
29
+ OpCode[OpCode["OP_NOP"] = 97] = "OP_NOP";
30
+ OpCode[OpCode["OP_VER"] = 98] = "OP_VER";
31
+ OpCode[OpCode["OP_IF"] = 99] = "OP_IF";
32
+ OpCode[OpCode["OP_NOTIF"] = 100] = "OP_NOTIF";
33
+ OpCode[OpCode["OP_VERIF"] = 101] = "OP_VERIF";
34
+ OpCode[OpCode["OP_VERNOTIF"] = 102] = "OP_VERNOTIF";
35
+ OpCode[OpCode["OP_ELSE"] = 103] = "OP_ELSE";
36
+ OpCode[OpCode["OP_ENDIF"] = 104] = "OP_ENDIF";
37
+ OpCode[OpCode["OP_VERIFY"] = 105] = "OP_VERIFY";
38
+ OpCode[OpCode["OP_RETURN"] = 106] = "OP_RETURN";
39
+ OpCode[OpCode["OP_TOALTSTACK"] = 107] = "OP_TOALTSTACK";
40
+ OpCode[OpCode["OP_FROMALTSTACK"] = 108] = "OP_FROMALTSTACK";
41
+ OpCode[OpCode["OP_2DROP"] = 109] = "OP_2DROP";
42
+ OpCode[OpCode["OP_2DUP"] = 110] = "OP_2DUP";
43
+ OpCode[OpCode["OP_3DUP"] = 111] = "OP_3DUP";
44
+ OpCode[OpCode["OP_2OVER"] = 112] = "OP_2OVER";
45
+ OpCode[OpCode["OP_2ROT"] = 113] = "OP_2ROT";
46
+ OpCode[OpCode["OP_2SWAP"] = 114] = "OP_2SWAP";
47
+ OpCode[OpCode["OP_IFDUP"] = 115] = "OP_IFDUP";
48
+ OpCode[OpCode["OP_DEPTH"] = 116] = "OP_DEPTH";
49
+ OpCode[OpCode["OP_DROP"] = 117] = "OP_DROP";
50
+ OpCode[OpCode["OP_DUP"] = 118] = "OP_DUP";
51
+ OpCode[OpCode["OP_NIP"] = 119] = "OP_NIP";
52
+ OpCode[OpCode["OP_OVER"] = 120] = "OP_OVER";
53
+ OpCode[OpCode["OP_PICK"] = 121] = "OP_PICK";
54
+ OpCode[OpCode["OP_ROLL"] = 122] = "OP_ROLL";
55
+ OpCode[OpCode["OP_ROT"] = 123] = "OP_ROT";
56
+ OpCode[OpCode["OP_SWAP"] = 124] = "OP_SWAP";
57
+ OpCode[OpCode["OP_TUCK"] = 125] = "OP_TUCK";
58
+ OpCode[OpCode["OP_CAT"] = 126] = "OP_CAT";
59
+ OpCode[OpCode["OP_SPLIT"] = 127] = "OP_SPLIT";
60
+ OpCode[OpCode["OP_NUM2BIN"] = 128] = "OP_NUM2BIN";
61
+ OpCode[OpCode["OP_BIN2NUM"] = 129] = "OP_BIN2NUM";
62
+ OpCode[OpCode["OP_SIZE"] = 130] = "OP_SIZE";
63
+ OpCode[OpCode["OP_INVERT"] = 131] = "OP_INVERT";
64
+ OpCode[OpCode["OP_AND"] = 132] = "OP_AND";
65
+ OpCode[OpCode["OP_OR"] = 133] = "OP_OR";
66
+ OpCode[OpCode["OP_XOR"] = 134] = "OP_XOR";
67
+ OpCode[OpCode["OP_EQUAL"] = 135] = "OP_EQUAL";
68
+ OpCode[OpCode["OP_EQUALVERIFY"] = 136] = "OP_EQUALVERIFY";
69
+ OpCode[OpCode["OP_RESERVED1"] = 137] = "OP_RESERVED1";
70
+ OpCode[OpCode["OP_RESERVED2"] = 138] = "OP_RESERVED2";
71
+ OpCode[OpCode["OP_1ADD"] = 139] = "OP_1ADD";
72
+ OpCode[OpCode["OP_1SUB"] = 140] = "OP_1SUB";
73
+ OpCode[OpCode["OP_2MUL"] = 141] = "OP_2MUL";
74
+ OpCode[OpCode["OP_2DIV"] = 142] = "OP_2DIV";
75
+ OpCode[OpCode["OP_NEGATE"] = 143] = "OP_NEGATE";
76
+ OpCode[OpCode["OP_ABS"] = 144] = "OP_ABS";
77
+ OpCode[OpCode["OP_NOT"] = 145] = "OP_NOT";
78
+ OpCode[OpCode["OP_0NOTEQUAL"] = 146] = "OP_0NOTEQUAL";
79
+ OpCode[OpCode["OP_ADD"] = 147] = "OP_ADD";
80
+ OpCode[OpCode["OP_SUB"] = 148] = "OP_SUB";
81
+ OpCode[OpCode["OP_MUL"] = 149] = "OP_MUL";
82
+ OpCode[OpCode["OP_DIV"] = 150] = "OP_DIV";
83
+ OpCode[OpCode["OP_MOD"] = 151] = "OP_MOD";
84
+ OpCode[OpCode["OP_LSHIFT"] = 152] = "OP_LSHIFT";
85
+ OpCode[OpCode["OP_RSHIFT"] = 153] = "OP_RSHIFT";
86
+ OpCode[OpCode["OP_BOOLAND"] = 154] = "OP_BOOLAND";
87
+ OpCode[OpCode["OP_BOOLOR"] = 155] = "OP_BOOLOR";
88
+ OpCode[OpCode["OP_NUMEQUAL"] = 156] = "OP_NUMEQUAL";
89
+ OpCode[OpCode["OP_NUMEQUALVERIFY"] = 157] = "OP_NUMEQUALVERIFY";
90
+ OpCode[OpCode["OP_NUMNOTEQUAL"] = 158] = "OP_NUMNOTEQUAL";
91
+ OpCode[OpCode["OP_LESSTHAN"] = 159] = "OP_LESSTHAN";
92
+ OpCode[OpCode["OP_GREATERTHAN"] = 160] = "OP_GREATERTHAN";
93
+ OpCode[OpCode["OP_LESSTHANOREQUAL"] = 161] = "OP_LESSTHANOREQUAL";
94
+ OpCode[OpCode["OP_GREATERTHANOREQUAL"] = 162] = "OP_GREATERTHANOREQUAL";
95
+ OpCode[OpCode["OP_MIN"] = 163] = "OP_MIN";
96
+ OpCode[OpCode["OP_MAX"] = 164] = "OP_MAX";
97
+ OpCode[OpCode["OP_WITHIN"] = 165] = "OP_WITHIN";
98
+ OpCode[OpCode["OP_RIPEMD160"] = 166] = "OP_RIPEMD160";
99
+ OpCode[OpCode["OP_SHA1"] = 167] = "OP_SHA1";
100
+ OpCode[OpCode["OP_SHA256"] = 168] = "OP_SHA256";
101
+ OpCode[OpCode["OP_HASH160"] = 169] = "OP_HASH160";
102
+ OpCode[OpCode["OP_HASH256"] = 170] = "OP_HASH256";
103
+ OpCode[OpCode["OP_CODESEPARATOR"] = 171] = "OP_CODESEPARATOR";
104
+ OpCode[OpCode["OP_CHECKSIG"] = 172] = "OP_CHECKSIG";
105
+ OpCode[OpCode["OP_CHECKSIGVERIFY"] = 173] = "OP_CHECKSIGVERIFY";
106
+ OpCode[OpCode["OP_CHECKMULTISIG"] = 174] = "OP_CHECKMULTISIG";
107
+ OpCode[OpCode["OP_CHECKMULTISIGVERIFY"] = 175] = "OP_CHECKMULTISIGVERIFY";
108
+ OpCode[OpCode["OP_NOP1"] = 176] = "OP_NOP1";
109
+ OpCode[OpCode["OP_NOP2"] = 177] = "OP_NOP2";
110
+ OpCode[OpCode["OP_CHECKLOCKTIMEVERIFY"] = 177] = "OP_CHECKLOCKTIMEVERIFY";
111
+ OpCode[OpCode["OP_NOP3"] = 178] = "OP_NOP3";
112
+ OpCode[OpCode["OP_CHECKSEQUENCEVERIFY"] = 178] = "OP_CHECKSEQUENCEVERIFY";
113
+ OpCode[OpCode["OP_NOP4"] = 179] = "OP_NOP4";
114
+ OpCode[OpCode["OP_NOP5"] = 180] = "OP_NOP5";
115
+ OpCode[OpCode["OP_NOP6"] = 181] = "OP_NOP6";
116
+ OpCode[OpCode["OP_NOP7"] = 182] = "OP_NOP7";
117
+ OpCode[OpCode["OP_NOP8"] = 183] = "OP_NOP8";
118
+ OpCode[OpCode["OP_NOP9"] = 184] = "OP_NOP9";
119
+ OpCode[OpCode["OP_NOP10"] = 185] = "OP_NOP10";
120
+ OpCode[OpCode["OP_SMALLDATA"] = 249] = "OP_SMALLDATA";
121
+ OpCode[OpCode["OP_SMALLINTEGER"] = 250] = "OP_SMALLINTEGER";
122
+ OpCode[OpCode["OP_PUBKEYS"] = 251] = "OP_PUBKEYS";
123
+ OpCode[OpCode["OP_PUBKEYHASH"] = 253] = "OP_PUBKEYHASH";
124
+ OpCode[OpCode["OP_PUBKEY"] = 254] = "OP_PUBKEY";
125
+ OpCode[OpCode["OP_INVALIDOPCODE"] = 255] = "OP_INVALIDOPCODE";
126
+ })(OpCode = exports.OpCode || (exports.OpCode = {}));
127
+ //# sourceMappingURL=op-codes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"op-codes.js","sourceRoot":"","sources":["../../src/bitcoin/op-codes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /// <reference types="node" />
2
+ import { Address } from "./address";
3
+ import { ScriptType } from "./script-type";
4
+ import { Transaction } from "./transaction";
5
+ export declare class OutPoint {
6
+ TxId: string;
7
+ Vout: number;
8
+ LockignScript: Buffer;
9
+ Satoshis: number;
10
+ Address: Address;
11
+ ScriptType: ScriptType;
12
+ Transaction?: Transaction;
13
+ constructor(txId: string, vout: number, lockignScript: Buffer, satoshis: number, address: Address, scriptType: ScriptType);
14
+ static fromTransaction: (transaction: Transaction, vout: number) => OutPointFull;
15
+ static fromHex: (hex: string, vout: number) => OutPointFull;
16
+ toString: () => string;
17
+ }
18
+ export declare class OutPointFull extends OutPoint {
19
+ constructor(transaction: Transaction, vout: number);
20
+ }
21
+ //# sourceMappingURL=out-point.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"out-point.d.ts","sourceRoot":"","sources":["../../src/bitcoin/out-point.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,QAAQ;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;gBAGxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU;IAUxB,MAAM,CAAC,eAAe,gBAAiB,WAAW,QAAQ,MAAM,kBAC1B;IAEtC,MAAM,CAAC,OAAO,QAAS,MAAM,QAAQ,MAAM,kBACc;IAEzD,QAAQ,eAAqC;CAC9C;AAED,qBAAa,YAAa,SAAQ,QAAQ;gBAC5B,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;CAoBnD"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutPointFull = exports.OutPoint = void 0;
4
+ const transaction_1 = require("../transaction");
5
+ const script_type_1 = require("./script-type");
6
+ class OutPoint {
7
+ constructor(txId, vout, lockignScript, satoshis, address, scriptType) {
8
+ this.toString = () => `${this.TxId}:${this.Vout}`;
9
+ this.TxId = txId;
10
+ this.Vout = vout;
11
+ this.LockignScript = lockignScript;
12
+ this.Satoshis = satoshis;
13
+ this.Address = address;
14
+ this.ScriptType = scriptType;
15
+ }
16
+ }
17
+ exports.OutPoint = OutPoint;
18
+ OutPoint.fromTransaction = (transaction, vout) => new OutPointFull(transaction, vout);
19
+ OutPoint.fromHex = (hex, vout) => new OutPointFull(transaction_1.TransactionReader.readHex(hex), vout);
20
+ class OutPointFull extends OutPoint {
21
+ constructor(transaction, vout) {
22
+ const output = transaction.Outputs[vout];
23
+ if (output.ScriptType !== script_type_1.ScriptType.p2pkh &&
24
+ output.ScriptType !== script_type_1.ScriptType.p2stas)
25
+ throw new Error("p2pkh or p2stat output must be provided");
26
+ super(transaction.Id, vout, output.LockignScript, output.Satoshis, output.Address, output.ScriptType);
27
+ this.Transaction = transaction;
28
+ }
29
+ }
30
+ exports.OutPointFull = OutPointFull;
31
+ //# sourceMappingURL=out-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"out-point.js","sourceRoot":"","sources":["../../src/bitcoin/out-point.ts"],"names":[],"mappings":";;;AAAA,gDAAmD;AAEnD,+CAA2C;AAG3C,MAAa,QAAQ;IASnB,YACE,IAAY,EACZ,IAAY,EACZ,aAAqB,EACrB,QAAgB,EAChB,OAAgB,EAChB,UAAsB;QAgBxB,aAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAd3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;;AAvBH,4BAgCC;AAPQ,wBAAe,GAAG,CAAC,WAAwB,EAAE,IAAY,EAAE,EAAE,CAClE,IAAI,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AAE/B,gBAAO,GAAG,CAAC,GAAW,EAAE,IAAY,EAAE,EAAE,CAC7C,IAAI,YAAY,CAAC,+BAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;AAK3D,MAAa,YAAa,SAAQ,QAAQ;IACxC,YAAY,WAAwB,EAAE,IAAY;QAChD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzC,IACE,MAAM,CAAC,UAAU,KAAK,wBAAU,CAAC,KAAK;YACtC,MAAM,CAAC,UAAU,KAAK,wBAAU,CAAC,MAAM;YAEvC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAE7D,KAAK,CACH,WAAW,CAAC,EAAE,EACd,IAAI,EACJ,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,OAAQ,EACf,MAAM,CAAC,UAAU,CAClB,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AArBD,oCAqBC"}
@@ -0,0 +1,8 @@
1
+ import { OutPoint } from "./out-point";
2
+ import { PrivateKey } from "./private-key";
3
+ import { Wallet } from "./wallet";
4
+ export type TPayment = {
5
+ OutPoint: OutPoint;
6
+ Owner: PrivateKey | Wallet;
7
+ };
8
+ //# sourceMappingURL=payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/bitcoin/payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,UAAU,GAAG,MAAM,CAAC;CAC5B,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=payment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.js","sourceRoot":"","sources":["../../src/bitcoin/payment.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ /// <reference types="node" />
2
+ import { Address } from "./address";
3
+ export { verify } from "@noble/secp256k1";
4
+ export declare class PrivateKey {
5
+ private _pk;
6
+ Address: Address;
7
+ PublicKey: Buffer;
8
+ constructor(pk: Buffer);
9
+ sign: (message: Uint8Array) => Buffer;
10
+ verify: (signature: Buffer, message: Buffer) => boolean;
11
+ }
12
+ export declare const verifyBitcoinSignedMessage: (message: Buffer, publicKey: Buffer, signature: Buffer) => boolean;
13
+ //# sourceMappingURL=private-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private-key.d.ts","sourceRoot":"","sources":["../../src/bitcoin/private-key.ts"],"names":[],"mappings":";AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAO1C,qBAAa,UAAU;IACrB,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;gBAEN,EAAE,EAAE,MAAM;IAMtB,IAAI,YAAa,UAAU,YAC4B;IAEvD,MAAM,cAAe,MAAM,WAAW,MAAM,aACC;CAC9C;AAED,eAAO,MAAM,0BAA0B,YAC5B,MAAM,aACJ,MAAM,aACN,MAAM,YAalB,CAAC"}