@btc-vision/transaction 1.0.113 → 1.0.114

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 (134) hide show
  1. package/browser/_version.d.ts +1 -1
  2. package/browser/abi/ABICoder.d.ts +31 -0
  3. package/browser/buffer/BinaryReader.d.ts +37 -0
  4. package/browser/buffer/BinaryWriter.d.ts +46 -0
  5. package/browser/deterministic/AddressMap.d.ts +10 -0
  6. package/browser/deterministic/AddressSet.d.ts +13 -0
  7. package/browser/deterministic/DeterministicMap.d.ts +17 -0
  8. package/browser/deterministic/DeterministicSet.d.ts +13 -0
  9. package/browser/deterministic/Map.d.ts +14 -0
  10. package/browser/event/NetEvent.d.ts +5 -0
  11. package/browser/generators/AddressGenerator.d.ts +3 -0
  12. package/browser/index.js +1 -1
  13. package/browser/keypair/Address.d.ts +23 -0
  14. package/browser/keypair/AddressVerificator.d.ts +1 -2
  15. package/browser/keypair/EcKeyPair.d.ts +9 -9
  16. package/browser/keypair/Wallet.d.ts +11 -5
  17. package/browser/metadata/ContractBaseMetadata.d.ts +3 -4
  18. package/browser/metadata/contracts/wBTC.d.ts +2 -3
  19. package/browser/metadata/tokens.d.ts +1 -1
  20. package/browser/opnet.d.ts +11 -0
  21. package/browser/transaction/TransactionFactory.d.ts +6 -6
  22. package/browser/transaction/browser/BrowserSignerBase.d.ts +3 -4
  23. package/browser/transaction/browser/extensions/UnisatSigner.d.ts +3 -4
  24. package/browser/transaction/browser/types/Unisat.d.ts +2 -3
  25. package/browser/transaction/builders/CustomScriptTransaction.d.ts +4 -5
  26. package/browser/transaction/builders/DeploymentTransaction.d.ts +4 -2
  27. package/browser/transaction/builders/MultiSignTransaction.d.ts +4 -5
  28. package/browser/transaction/builders/TransactionBuilder.d.ts +5 -6
  29. package/browser/transaction/builders/WrapTransaction.d.ts +2 -2
  30. package/browser/transaction/interfaces/ITransactionParameters.d.ts +6 -6
  31. package/browser/transaction/processor/PsbtTransaction.d.ts +3 -4
  32. package/browser/transaction/shared/P2TR_MS.d.ts +1 -2
  33. package/browser/utils/BufferHelper.d.ts +11 -0
  34. package/browser/utils/types.d.ts +12 -0
  35. package/browser/utxo/OPNetLimitedProvider.d.ts +1 -2
  36. package/build/_version.d.ts +1 -1
  37. package/build/_version.js +1 -1
  38. package/build/abi/ABICoder.d.ts +31 -0
  39. package/build/abi/ABICoder.js +137 -0
  40. package/build/buffer/BinaryReader.d.ts +37 -0
  41. package/build/buffer/BinaryReader.js +192 -0
  42. package/build/buffer/BinaryWriter.d.ts +46 -0
  43. package/build/buffer/BinaryWriter.js +258 -0
  44. package/build/deterministic/AddressMap.d.ts +10 -0
  45. package/build/deterministic/AddressMap.js +46 -0
  46. package/build/deterministic/AddressSet.d.ts +13 -0
  47. package/build/deterministic/AddressSet.js +44 -0
  48. package/build/deterministic/DeterministicMap.d.ts +17 -0
  49. package/build/deterministic/DeterministicMap.js +83 -0
  50. package/build/deterministic/DeterministicSet.d.ts +13 -0
  51. package/build/deterministic/DeterministicSet.js +46 -0
  52. package/build/deterministic/Map.d.ts +14 -0
  53. package/build/deterministic/Map.js +56 -0
  54. package/build/event/NetEvent.d.ts +5 -0
  55. package/build/event/NetEvent.js +6 -0
  56. package/build/generators/AddressGenerator.d.ts +3 -0
  57. package/build/generators/AddressGenerator.js +8 -1
  58. package/build/keypair/Address.d.ts +23 -0
  59. package/build/keypair/Address.js +129 -0
  60. package/build/keypair/AddressVerificator.d.ts +1 -2
  61. package/build/keypair/AddressVerificator.js +7 -2
  62. package/build/keypair/EcKeyPair.d.ts +9 -9
  63. package/build/keypair/EcKeyPair.js +9 -2
  64. package/build/keypair/Wallet.d.ts +11 -5
  65. package/build/keypair/Wallet.js +14 -1
  66. package/build/metadata/ContractBaseMetadata.d.ts +3 -4
  67. package/build/metadata/contracts/wBTC.d.ts +2 -3
  68. package/build/metadata/contracts/wBTC.js +4 -6
  69. package/build/metadata/tokens.d.ts +1 -1
  70. package/build/metadata/tokens.js +19 -15
  71. package/build/opnet.d.ts +11 -0
  72. package/build/opnet.js +11 -0
  73. package/build/transaction/TransactionFactory.d.ts +6 -6
  74. package/build/transaction/TransactionFactory.js +3 -2
  75. package/build/transaction/browser/BrowserSignerBase.d.ts +3 -4
  76. package/build/transaction/browser/extensions/UnisatSigner.d.ts +3 -4
  77. package/build/transaction/browser/types/Unisat.d.ts +2 -3
  78. package/build/transaction/builders/CustomScriptTransaction.d.ts +4 -5
  79. package/build/transaction/builders/DeploymentTransaction.d.ts +4 -2
  80. package/build/transaction/builders/DeploymentTransaction.js +6 -2
  81. package/build/transaction/builders/MultiSignTransaction.d.ts +4 -5
  82. package/build/transaction/builders/TransactionBuilder.d.ts +5 -6
  83. package/build/transaction/builders/UnwrapSegwitTransaction.js +2 -1
  84. package/build/transaction/builders/UnwrapTransaction.js +2 -1
  85. package/build/transaction/builders/WrapTransaction.d.ts +2 -2
  86. package/build/transaction/builders/WrapTransaction.js +5 -6
  87. package/build/transaction/interfaces/ITransactionParameters.d.ts +6 -6
  88. package/build/transaction/processor/PsbtTransaction.d.ts +3 -4
  89. package/build/transaction/shared/P2TR_MS.d.ts +1 -2
  90. package/build/utils/BufferHelper.d.ts +11 -0
  91. package/build/utils/BufferHelper.js +50 -0
  92. package/build/utils/types.d.ts +12 -0
  93. package/build/utils/types.js +1 -0
  94. package/build/utxo/OPNetLimitedProvider.d.ts +1 -2
  95. package/build/utxo/OPNetLimitedProvider.js +1 -1
  96. package/build/verification/TapscriptVerificator.js +3 -2
  97. package/package.json +3 -2
  98. package/src/_version.ts +1 -1
  99. package/src/abi/ABICoder.ts +158 -0
  100. package/src/buffer/BinaryReader.ts +260 -0
  101. package/src/buffer/BinaryWriter.ts +331 -0
  102. package/src/deterministic/AddressMap.ts +57 -0
  103. package/src/deterministic/AddressSet.ts +62 -0
  104. package/src/deterministic/DeterministicMap.ts +88 -0
  105. package/src/deterministic/DeterministicSet.ts +56 -0
  106. package/src/deterministic/Map.ts +66 -0
  107. package/src/event/NetEvent.ts +6 -0
  108. package/src/generators/AddressGenerator.ts +15 -1
  109. package/src/keypair/Address.ts +235 -0
  110. package/src/keypair/AddressVerificator.ts +9 -5
  111. package/src/keypair/EcKeyPair.ts +39 -37
  112. package/src/keypair/Wallet.ts +61 -12
  113. package/src/metadata/ContractBaseMetadata.ts +3 -4
  114. package/src/metadata/contracts/wBTC.ts +8 -9
  115. package/src/metadata/tokens.ts +21 -16
  116. package/src/opnet.ts +13 -0
  117. package/src/transaction/TransactionFactory.ts +11 -10
  118. package/src/transaction/browser/BrowserSignerBase.ts +3 -4
  119. package/src/transaction/browser/extensions/UnisatSigner.ts +6 -7
  120. package/src/transaction/browser/types/Unisat.ts +2 -3
  121. package/src/transaction/builders/CustomScriptTransaction.ts +4 -5
  122. package/src/transaction/builders/DeploymentTransaction.ts +17 -4
  123. package/src/transaction/builders/MultiSignTransaction.ts +4 -5
  124. package/src/transaction/builders/TransactionBuilder.ts +8 -9
  125. package/src/transaction/builders/UnwrapSegwitTransaction.ts +3 -1
  126. package/src/transaction/builders/UnwrapTransaction.ts +3 -17
  127. package/src/transaction/builders/WrapTransaction.ts +7 -8
  128. package/src/transaction/interfaces/ITransactionParameters.ts +7 -6
  129. package/src/transaction/processor/PsbtTransaction.ts +3 -4
  130. package/src/transaction/shared/P2TR_MS.ts +2 -3
  131. package/src/utils/BufferHelper.ts +71 -0
  132. package/src/utils/types.ts +19 -0
  133. package/src/utxo/OPNetLimitedProvider.ts +3 -8
  134. package/src/verification/TapscriptVerificator.ts +4 -2
@@ -1 +1 @@
1
- export declare const version = "1.0.113";
1
+ export declare const version = "1.0.114";
@@ -0,0 +1,31 @@
1
+ export declare enum ABIDataTypes {
2
+ UINT8 = "UINT8",
3
+ UINT16 = "UINT16",
4
+ UINT32 = "UINT32",
5
+ UINT64 = "UINT64",
6
+ BOOL = "BOOL",
7
+ ADDRESS = "ADDRESS",
8
+ STRING = "STRING",
9
+ BYTES32 = "BYTES32",
10
+ UINT256 = "UINT256",
11
+ TUPLE = "TUPLE",
12
+ BYTES = "BYTES",
13
+ ADDRESS_UINT256_TUPLE = "ADDRESS_UINT256_TUPLE",
14
+ ARRAY_OF_ADDRESSES = "ARRAY_OF_ADDRESSES",
15
+ ARRAY_OF_UINT256 = "ARRAY_OF_UINT256",
16
+ ARRAY_OF_UINT64 = "ARRAY_OF_UINT64",
17
+ ARRAY_OF_UINT32 = "ARRAY_OF_UINT32",
18
+ ARRAY_OF_UINT16 = "ARRAY_OF_UINT16",
19
+ ARRAY_OF_UINT8 = "ARRAY_OF_UINT8",
20
+ ARRAY_OF_STRING = "ARRAY_OF_STRING",
21
+ ARRAY_OF_BYTES = "ARRAY_OF_BYTES"
22
+ }
23
+ export declare class ABICoder {
24
+ decodeData(data: Uint8Array, types: ABIDataTypes[]): unknown[];
25
+ encodePointer(key: string): bigint;
26
+ encodePointerHash(pointer: number, sub: bigint): Uint8Array;
27
+ encodeSelector(selectorIdentifier: string): string;
28
+ numericSelectorToHex(selector: number): string;
29
+ private bigIntToUint8Array;
30
+ private sha256;
31
+ }
@@ -0,0 +1,37 @@
1
+ import { BufferLike, i32, Selector, u16, u32, u8 } from '../utils/types.js';
2
+ import { Address } from '../keypair/Address.js';
3
+ import { AddressMap } from '../deterministic/AddressMap.js';
4
+ export declare class BinaryReader {
5
+ private buffer;
6
+ private currentOffset;
7
+ constructor(bytes: BufferLike);
8
+ static stringCompare(a: string, b: string): number;
9
+ static bigintCompare(a: bigint, b: bigint): number;
10
+ static numberCompare(a: number, b: number): number;
11
+ setBuffer(bytes: BufferLike): void;
12
+ readAddressArray(): Address[];
13
+ readU256Array(): bigint[];
14
+ readU64Array(): bigint[];
15
+ readU32Array(): u32[];
16
+ readU16Array(): u16[];
17
+ readU8Array(): u8[];
18
+ readStringArray(): string[];
19
+ readBytesArray(): Uint8Array[];
20
+ readBytesWithLength(maxLength?: number): Uint8Array;
21
+ readTuple(): bigint[];
22
+ readU8(): u8;
23
+ readU16(): u16;
24
+ readU32(le?: boolean): u32;
25
+ readU64(): bigint;
26
+ readAddressValueTuple(): AddressMap<bigint>;
27
+ readU256(): bigint;
28
+ readBytes(length: u32, zeroStop?: boolean): Uint8Array;
29
+ readString(length: u16): string;
30
+ readSelector(): Selector;
31
+ readStringWithLength(): string;
32
+ readBoolean(): boolean;
33
+ readAddress(): Address;
34
+ getOffset(): u16;
35
+ setOffset(offset: u16): void;
36
+ verifyEnd(size: i32): void;
37
+ }
@@ -0,0 +1,46 @@
1
+ import { Selector, u16, u32, u64, u8 } from '../utils/types.js';
2
+ import { Address } from '../keypair/Address.js';
3
+ import { BinaryReader } from './BinaryReader.js';
4
+ import { AddressMap } from '../deterministic/AddressMap.js';
5
+ export declare class BinaryWriter {
6
+ private currentOffset;
7
+ private buffer;
8
+ constructor(length?: number);
9
+ writeU8(value: u8): void;
10
+ writeU16(value: u16): void;
11
+ writeU32(value: u32, le?: boolean): void;
12
+ writeU64(value: u64): void;
13
+ writeSelector(value: Selector): void;
14
+ writeBoolean(value: boolean): void;
15
+ writeU256(bigIntValue: bigint): void;
16
+ writeBytes(value: Uint8Array | Buffer): void;
17
+ writeString(value: string): void;
18
+ writeAddress(value: Address): void;
19
+ writeStringWithLength(value: string): void;
20
+ getBuffer(clear?: boolean): Uint8Array;
21
+ reset(): void;
22
+ writeTuple(values: bigint[]): void;
23
+ toBytesReader(): BinaryReader;
24
+ getOffset(): u32;
25
+ setOffset(offset: u32): void;
26
+ clear(): void;
27
+ allocSafe(size: u32): void;
28
+ writeABISelector(name: string, selector: Selector): void;
29
+ writeAddressValueTupleMap(map: AddressMap<bigint>): void;
30
+ writeLimitedAddressBytesMap(map: AddressMap<Uint8Array[]>): void;
31
+ writeBytesWithLength(value: Uint8Array): void;
32
+ writeAddressArray(value: Address[]): void;
33
+ writeU32Array(value: u32[]): void;
34
+ writeU256Array(value: bigint[]): void;
35
+ writeStringArray(value: string[]): void;
36
+ writeU16Array(value: u16[]): void;
37
+ writeU8Array(value: u8[]): void;
38
+ writeU64Array(value: bigint[]): void;
39
+ writeBytesArray(value: Uint8Array[]): void;
40
+ writeSelectorArray(value: Selector[]): void;
41
+ private getChecksum;
42
+ private writeMethodSelectorMap;
43
+ private fromAddress;
44
+ private resize;
45
+ private getDefaultBuffer;
46
+ }
@@ -0,0 +1,10 @@
1
+ import { i32 } from '../utils/types.js';
2
+ import { Address } from '../keypair/Address.js';
3
+ import { Map } from './Map.js';
4
+ export declare class AddressMap<V> extends Map<Address, V> {
5
+ set(key: Address, value: V): void;
6
+ indexOf(address: Address): i32;
7
+ has(key: Address): boolean;
8
+ get(key: Address): V;
9
+ delete(key: Address): boolean;
10
+ }
@@ -0,0 +1,13 @@
1
+ import { i32 } from '../utils/types.js';
2
+ import { Address } from '../keypair/Address.js';
3
+ export declare class AddressSet {
4
+ private keys;
5
+ constructor(keys?: Address[]);
6
+ add(address: Address): void;
7
+ contains(address: Address): boolean;
8
+ remove(address: Address): void;
9
+ size(): i32;
10
+ clone(): AddressSet;
11
+ clear(): void;
12
+ combine(set: AddressSet): AddressSet;
13
+ }
@@ -0,0 +1,17 @@
1
+ export declare class DeterministicMap<K, V> {
2
+ #private;
3
+ private compareFn;
4
+ private map;
5
+ constructor(compareFn: (a: K, b: K) => number);
6
+ get size(): number;
7
+ static fromMap<K, V>(map: Map<K, V>, compareFn: (a: K, b: K) => number): DeterministicMap<K, V>;
8
+ set(key: K, value: V): void;
9
+ get(key: K): V | undefined;
10
+ keys(): IterableIterator<K>;
11
+ values(): IterableIterator<V>;
12
+ has(key: K): boolean;
13
+ delete(key: K): boolean;
14
+ clear(): void;
15
+ forEach(callback: (value: V, key: K, map: DeterministicMap<K, V>) => void): void;
16
+ [Symbol.iterator](): IterableIterator<[K, V]>;
17
+ }
@@ -0,0 +1,13 @@
1
+ export declare class DeterministicSet<T> {
2
+ private compareFn;
3
+ private elements;
4
+ constructor(compareFn: (a: T, b: T) => number);
5
+ add(value: T): void;
6
+ delete(value: T): boolean;
7
+ has(value: T): boolean;
8
+ clear(): void;
9
+ forEach(callback: (value: T, set: DeterministicSet<T>) => void): void;
10
+ static fromSet<T>(set: Set<T>, compareFn: (a: T, b: T) => number): DeterministicSet<T>;
11
+ get size(): number;
12
+ [Symbol.iterator](): IterableIterator<T>;
13
+ }
@@ -0,0 +1,14 @@
1
+ import { i32 } from '../utils/types.js';
2
+ export declare class Map<K, V> {
3
+ protected _keys: K[];
4
+ protected _values: V[];
5
+ get size(): i32;
6
+ keys(): K[];
7
+ values(): V[];
8
+ set(key: K, value: V): void;
9
+ indexOf(key: K): i32;
10
+ get(key: K): V;
11
+ has(key: K): boolean;
12
+ delete(key: K): boolean;
13
+ clear(): void;
14
+ }
@@ -0,0 +1,5 @@
1
+ export declare class NetEvent {
2
+ readonly eventType: string;
3
+ readonly eventData: Uint8Array;
4
+ constructor(eventType: string, eventData: Uint8Array);
5
+ }
@@ -1,5 +1,8 @@
1
1
  import { Network } from 'bitcoinjs-lib';
2
2
  export declare class AddressGenerator {
3
3
  static generatePKSH(sha256Hash: Buffer, network: Network): string;
4
+ static generateTaprootAddress(pubKey: Buffer, network: {
5
+ bech32: string;
6
+ }): string;
4
7
  private static toSegwitAddress;
5
8
  }