@atomiqlabs/chain-starknet 8.0.13 → 8.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/index.d.ts +18 -18
  2. package/dist/index.js +42 -42
  3. package/dist/starknet/StarknetChainType.d.ts +19 -19
  4. package/dist/starknet/StarknetChainType.js +2 -2
  5. package/dist/starknet/StarknetInitializer.d.ts +66 -63
  6. package/dist/starknet/StarknetInitializer.js +101 -101
  7. package/dist/starknet/btcrelay/BtcRelayAbi.d.ts +250 -250
  8. package/dist/starknet/btcrelay/BtcRelayAbi.js +341 -341
  9. package/dist/starknet/btcrelay/StarknetBtcRelay.d.ts +196 -196
  10. package/dist/starknet/btcrelay/StarknetBtcRelay.js +419 -411
  11. package/dist/starknet/btcrelay/headers/StarknetBtcHeader.d.ts +70 -70
  12. package/dist/starknet/btcrelay/headers/StarknetBtcHeader.js +115 -115
  13. package/dist/starknet/btcrelay/headers/StarknetBtcStoredHeader.d.ts +91 -91
  14. package/dist/starknet/btcrelay/headers/StarknetBtcStoredHeader.js +155 -155
  15. package/dist/starknet/chain/StarknetAction.d.ts +19 -19
  16. package/dist/starknet/chain/StarknetAction.js +74 -74
  17. package/dist/starknet/chain/StarknetChainInterface.d.ts +142 -143
  18. package/dist/starknet/chain/StarknetChainInterface.js +198 -199
  19. package/dist/starknet/chain/StarknetModule.d.ts +8 -8
  20. package/dist/starknet/chain/StarknetModule.js +12 -12
  21. package/dist/starknet/chain/modules/ERC20Abi.d.ts +755 -755
  22. package/dist/starknet/chain/modules/ERC20Abi.js +1032 -1032
  23. package/dist/starknet/chain/modules/StarknetAccounts.d.ts +6 -6
  24. package/dist/starknet/chain/modules/StarknetAccounts.js +26 -26
  25. package/dist/starknet/chain/modules/StarknetAddresses.d.ts +10 -10
  26. package/dist/starknet/chain/modules/StarknetAddresses.js +27 -27
  27. package/dist/starknet/chain/modules/StarknetBlocks.d.ts +27 -27
  28. package/dist/starknet/chain/modules/StarknetBlocks.js +82 -82
  29. package/dist/starknet/chain/modules/StarknetEvents.d.ts +47 -47
  30. package/dist/starknet/chain/modules/StarknetEvents.js +90 -90
  31. package/dist/starknet/chain/modules/StarknetFees.d.ts +118 -104
  32. package/dist/starknet/chain/modules/StarknetFees.js +150 -146
  33. package/dist/starknet/chain/modules/StarknetSignatures.d.ts +29 -29
  34. package/dist/starknet/chain/modules/StarknetSignatures.js +72 -72
  35. package/dist/starknet/chain/modules/StarknetTokens.d.ts +66 -66
  36. package/dist/starknet/chain/modules/StarknetTokens.js +99 -99
  37. package/dist/starknet/chain/modules/StarknetTransactions.d.ts +122 -115
  38. package/dist/starknet/chain/modules/StarknetTransactions.js +633 -612
  39. package/dist/starknet/contract/StarknetContractBase.d.ts +14 -13
  40. package/dist/starknet/contract/StarknetContractBase.js +21 -20
  41. package/dist/starknet/contract/StarknetContractModule.d.ts +8 -8
  42. package/dist/starknet/contract/StarknetContractModule.js +11 -11
  43. package/dist/starknet/contract/modules/StarknetContractEvents.d.ts +56 -57
  44. package/dist/starknet/contract/modules/StarknetContractEvents.js +111 -111
  45. package/dist/starknet/events/StarknetChainEvents.d.ts +21 -21
  46. package/dist/starknet/events/StarknetChainEvents.js +61 -61
  47. package/dist/starknet/events/StarknetChainEventsBrowser.d.ts +178 -190
  48. package/dist/starknet/events/StarknetChainEventsBrowser.js +523 -582
  49. package/dist/starknet/provider/RpcProviderWithRetries.d.ts +49 -53
  50. package/dist/starknet/provider/RpcProviderWithRetries.js +94 -94
  51. package/dist/starknet/provider/WebSocketChannelWithRetries.d.ts +21 -21
  52. package/dist/starknet/provider/WebSocketChannelWithRetries.js +46 -46
  53. package/dist/starknet/spv_swap/SpvVaultContractAbi.d.ts +488 -488
  54. package/dist/starknet/spv_swap/SpvVaultContractAbi.js +656 -656
  55. package/dist/starknet/spv_swap/StarknetSpvVaultContract.d.ts +225 -219
  56. package/dist/starknet/spv_swap/StarknetSpvVaultContract.js +663 -621
  57. package/dist/starknet/spv_swap/StarknetSpvVaultData.d.ts +108 -108
  58. package/dist/starknet/spv_swap/StarknetSpvVaultData.js +190 -190
  59. package/dist/starknet/spv_swap/StarknetSpvWithdrawalData.d.ts +56 -56
  60. package/dist/starknet/spv_swap/StarknetSpvWithdrawalData.js +103 -103
  61. package/dist/starknet/swaps/EscrowManagerAbi.d.ts +431 -431
  62. package/dist/starknet/swaps/EscrowManagerAbi.js +583 -583
  63. package/dist/starknet/swaps/StarknetSwapContract.d.ts +309 -278
  64. package/dist/starknet/swaps/StarknetSwapContract.js +755 -579
  65. package/dist/starknet/swaps/StarknetSwapData.d.ts +234 -234
  66. package/dist/starknet/swaps/StarknetSwapData.js +474 -474
  67. package/dist/starknet/swaps/StarknetSwapModule.d.ts +10 -10
  68. package/dist/starknet/swaps/StarknetSwapModule.js +12 -12
  69. package/dist/starknet/swaps/handlers/IHandler.d.ts +13 -13
  70. package/dist/starknet/swaps/handlers/IHandler.js +2 -2
  71. package/dist/starknet/swaps/handlers/claim/ClaimHandlers.d.ts +13 -13
  72. package/dist/starknet/swaps/handlers/claim/ClaimHandlers.js +13 -13
  73. package/dist/starknet/swaps/handlers/claim/HashlockClaimHandler.d.ts +21 -21
  74. package/dist/starknet/swaps/handlers/claim/HashlockClaimHandler.js +44 -44
  75. package/dist/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.d.ts +24 -24
  76. package/dist/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.js +48 -48
  77. package/dist/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.d.ts +25 -25
  78. package/dist/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.js +40 -40
  79. package/dist/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.d.ts +20 -20
  80. package/dist/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.js +30 -30
  81. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.d.ts +42 -45
  82. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.js +50 -54
  83. package/dist/starknet/swaps/handlers/refund/TimelockRefundHandler.d.ts +17 -17
  84. package/dist/starknet/swaps/handlers/refund/TimelockRefundHandler.js +27 -27
  85. package/dist/starknet/swaps/modules/StarknetLpVault.d.ts +67 -67
  86. package/dist/starknet/swaps/modules/StarknetLpVault.js +122 -122
  87. package/dist/starknet/swaps/modules/StarknetSwapClaim.d.ts +52 -52
  88. package/dist/starknet/swaps/modules/StarknetSwapClaim.js +99 -99
  89. package/dist/starknet/swaps/modules/StarknetSwapInit.d.ts +94 -94
  90. package/dist/starknet/swaps/modules/StarknetSwapInit.js +239 -239
  91. package/dist/starknet/swaps/modules/StarknetSwapRefund.d.ts +60 -60
  92. package/dist/starknet/swaps/modules/StarknetSwapRefund.js +126 -126
  93. package/dist/starknet/wallet/StarknetBrowserSigner.d.ts +11 -11
  94. package/dist/starknet/wallet/StarknetBrowserSigner.js +17 -17
  95. package/dist/starknet/wallet/StarknetPersistentSigner.d.ts +76 -76
  96. package/dist/starknet/wallet/StarknetPersistentSigner.js +291 -291
  97. package/dist/starknet/wallet/StarknetSigner.d.ts +72 -72
  98. package/dist/starknet/wallet/StarknetSigner.js +114 -114
  99. package/dist/starknet/wallet/accounts/StarknetKeypairWallet.d.ts +18 -18
  100. package/dist/starknet/wallet/accounts/StarknetKeypairWallet.js +45 -45
  101. package/dist/utils/Utils.d.ts +77 -77
  102. package/dist/utils/Utils.js +304 -303
  103. package/package.json +2 -2
  104. package/src/starknet/StarknetInitializer.ts +6 -3
  105. package/src/starknet/btcrelay/StarknetBtcRelay.ts +19 -6
  106. package/src/starknet/btcrelay/headers/StarknetBtcHeader.ts +7 -7
  107. package/src/starknet/btcrelay/headers/StarknetBtcStoredHeader.ts +6 -6
  108. package/src/starknet/chain/StarknetAction.ts +1 -0
  109. package/src/starknet/chain/StarknetChainInterface.ts +0 -2
  110. package/src/starknet/chain/modules/StarknetFees.ts +15 -2
  111. package/src/starknet/chain/modules/StarknetTransactions.ts +24 -0
  112. package/src/starknet/contract/StarknetContractBase.ts +7 -4
  113. package/src/starknet/contract/StarknetContractModule.ts +1 -1
  114. package/src/starknet/contract/modules/StarknetContractEvents.ts +7 -7
  115. package/src/starknet/events/StarknetChainEventsBrowser.ts +2 -64
  116. package/src/starknet/provider/RpcProviderWithRetries.ts +1 -1
  117. package/src/starknet/spv_swap/StarknetSpvVaultContract.ts +84 -18
  118. package/src/starknet/swaps/StarknetSwapContract.ts +242 -6
  119. package/src/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.ts +0 -4
@@ -1,70 +1,70 @@
1
- import { BtcHeader } from "@atomiqlabs/base";
2
- import { Buffer } from "buffer";
3
- import { BigNumberish } from "starknet";
4
- export type StarknetBtcHeaderType = {
5
- reversed_version: BigNumberish;
6
- previous_blockhash: BigNumberish[];
7
- merkle_root: BigNumberish[];
8
- reversed_timestamp: BigNumberish;
9
- nbits: BigNumberish;
10
- nonce: BigNumberish;
11
- hash?: Buffer;
12
- };
13
- /**
14
- * Representing a new bitcoin blockheader struct to be submitted to the Starknet BTC relay smart contract
15
- *
16
- * @category BTC Relay
17
- */
18
- export declare class StarknetBtcHeader implements BtcHeader {
19
- reversed_version: number;
20
- previous_blockhash: number[];
21
- merkle_root: number[];
22
- reversed_timestamp: number;
23
- nbits: number;
24
- nonce: number;
25
- hash?: Buffer;
26
- /**
27
- * Constructs the bitcoin blockheader from a struct as returned by the starknet.js lib
28
- *
29
- * @param obj Struct as returned by the starknet.js lib
30
- */
31
- constructor(obj: StarknetBtcHeaderType);
32
- /**
33
- * @inheritDoc
34
- */
35
- getMerkleRoot(): Buffer;
36
- /**
37
- * @inheritDoc
38
- */
39
- getNbits(): number;
40
- /**
41
- * @inheritDoc
42
- */
43
- getNonce(): number;
44
- /**
45
- * @inheritDoc
46
- */
47
- getReversedPrevBlockhash(): Buffer;
48
- /**
49
- * @inheritDoc
50
- */
51
- getTimestamp(): number;
52
- /**
53
- * @inheritDoc
54
- */
55
- getVersion(): number;
56
- /**
57
- * @inheritDoc
58
- */
59
- getHash(): Buffer;
60
- /**
61
- * Serializes the bitcoin blockheader struct to an array of felt252 of length 20
62
- */
63
- serialize(): BigNumberish[];
64
- /**
65
- * Deserializes the store bitcoin blockheader from its felt252 array representation
66
- *
67
- * @param span felt252 array encoding the stored blockheader, has to be at least 20 felts long
68
- */
69
- static fromSerializedFeltArray(span: BigNumberish[]): StarknetBtcHeader;
70
- }
1
+ import { BtcHeader } from "@atomiqlabs/base";
2
+ import { Buffer } from "buffer";
3
+ import { BigNumberish } from "starknet";
4
+ export type StarknetBtcHeaderType = {
5
+ reversed_version: BigNumberish;
6
+ previous_blockhash: BigNumberish[];
7
+ merkle_root: BigNumberish[];
8
+ reversed_timestamp: BigNumberish;
9
+ nbits: BigNumberish;
10
+ nonce: BigNumberish;
11
+ hash?: Buffer;
12
+ };
13
+ /**
14
+ * Representing a new bitcoin blockheader struct to be submitted to the Starknet BTC relay smart contract
15
+ *
16
+ * @category BTC Relay
17
+ */
18
+ export declare class StarknetBtcHeader implements BtcHeader {
19
+ private readonly reversed_version;
20
+ private readonly previous_blockhash;
21
+ private readonly merkle_root;
22
+ private readonly reversed_timestamp;
23
+ private readonly nbits;
24
+ private readonly nonce;
25
+ private readonly hash?;
26
+ /**
27
+ * Constructs the bitcoin blockheader from a struct as returned by the starknet.js lib
28
+ *
29
+ * @param obj Struct as returned by the starknet.js lib
30
+ */
31
+ constructor(obj: StarknetBtcHeaderType);
32
+ /**
33
+ * @inheritDoc
34
+ */
35
+ getMerkleRoot(): Buffer;
36
+ /**
37
+ * @inheritDoc
38
+ */
39
+ getNbits(): number;
40
+ /**
41
+ * @inheritDoc
42
+ */
43
+ getNonce(): number;
44
+ /**
45
+ * @inheritDoc
46
+ */
47
+ getReversedPrevBlockhash(): Buffer;
48
+ /**
49
+ * @inheritDoc
50
+ */
51
+ getTimestamp(): number;
52
+ /**
53
+ * @inheritDoc
54
+ */
55
+ getVersion(): number;
56
+ /**
57
+ * @inheritDoc
58
+ */
59
+ getHash(): Buffer;
60
+ /**
61
+ * Serializes the bitcoin blockheader struct to an array of felt252 of length 20
62
+ */
63
+ serialize(): BigNumberish[];
64
+ /**
65
+ * Deserializes the store bitcoin blockheader from its felt252 array representation
66
+ *
67
+ * @param span felt252 array encoding the stored blockheader, has to be at least 20 felts long
68
+ */
69
+ static fromSerializedFeltArray(span: BigNumberish[]): StarknetBtcHeader;
70
+ }
@@ -1,115 +1,115 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StarknetBtcHeader = void 0;
4
- const buffer_1 = require("buffer");
5
- const Utils_1 = require("../../../utils/Utils");
6
- const sha2_1 = require("@noble/hashes/sha2");
7
- /**
8
- * Representing a new bitcoin blockheader struct to be submitted to the Starknet BTC relay smart contract
9
- *
10
- * @category BTC Relay
11
- */
12
- class StarknetBtcHeader {
13
- /**
14
- * Constructs the bitcoin blockheader from a struct as returned by the starknet.js lib
15
- *
16
- * @param obj Struct as returned by the starknet.js lib
17
- */
18
- constructor(obj) {
19
- this.reversed_version = Number(obj.reversed_version);
20
- this.previous_blockhash = obj.previous_blockhash.map(val => Number(val));
21
- this.merkle_root = obj.merkle_root.map(val => Number(val));
22
- this.reversed_timestamp = Number(obj.reversed_timestamp);
23
- this.nbits = Number(obj.nbits);
24
- this.nonce = Number(obj.nonce);
25
- this.hash = obj.hash;
26
- }
27
- /**
28
- * @inheritDoc
29
- */
30
- getMerkleRoot() {
31
- return (0, Utils_1.u32ArrayToBuffer)(this.merkle_root);
32
- }
33
- /**
34
- * @inheritDoc
35
- */
36
- getNbits() {
37
- return (0, Utils_1.u32ReverseEndianness)(this.nbits);
38
- }
39
- /**
40
- * @inheritDoc
41
- */
42
- getNonce() {
43
- return (0, Utils_1.u32ReverseEndianness)(this.nonce);
44
- }
45
- /**
46
- * @inheritDoc
47
- */
48
- getReversedPrevBlockhash() {
49
- return (0, Utils_1.u32ArrayToBuffer)(this.previous_blockhash);
50
- }
51
- /**
52
- * @inheritDoc
53
- */
54
- getTimestamp() {
55
- return (0, Utils_1.u32ReverseEndianness)(this.reversed_timestamp);
56
- }
57
- /**
58
- * @inheritDoc
59
- */
60
- getVersion() {
61
- return (0, Utils_1.u32ReverseEndianness)(this.reversed_version);
62
- }
63
- /**
64
- * @inheritDoc
65
- */
66
- getHash() {
67
- if (this.hash != null)
68
- return this.hash;
69
- const buffer = buffer_1.Buffer.alloc(80);
70
- buffer.writeUInt32BE(this.reversed_version, 0);
71
- (0, Utils_1.u32ArrayToBuffer)(this.previous_blockhash).copy(buffer, 4);
72
- (0, Utils_1.u32ArrayToBuffer)(this.merkle_root).copy(buffer, 36);
73
- buffer.writeUInt32BE(this.reversed_timestamp, 68);
74
- buffer.writeUInt32BE(this.nbits, 72);
75
- buffer.writeUInt32BE(this.nonce, 76);
76
- return buffer_1.Buffer.from((0, sha2_1.sha256)((0, sha2_1.sha256)(buffer)));
77
- }
78
- /**
79
- * Serializes the bitcoin blockheader struct to an array of felt252 of length 20
80
- */
81
- serialize() {
82
- return [
83
- this.reversed_version,
84
- ...this.previous_blockhash,
85
- ...this.merkle_root,
86
- this.reversed_timestamp,
87
- this.nbits,
88
- this.nonce
89
- ];
90
- }
91
- /**
92
- * Deserializes the store bitcoin blockheader from its felt252 array representation
93
- *
94
- * @param span felt252 array encoding the stored blockheader, has to be at least 20 felts long
95
- */
96
- static fromSerializedFeltArray(span) {
97
- if (span.length < 20)
98
- throw new Error("Invalid serialized data size!");
99
- const reversed_version = (0, Utils_1.toHex)(span.shift());
100
- const previous_blockhash = span.splice(0, 8).map(val => (0, Utils_1.toHex)(val));
101
- const merkle_root = span.splice(0, 8).map(val => (0, Utils_1.toHex)(val));
102
- const reversed_timestamp = (0, Utils_1.toHex)(span.shift());
103
- const nbits = (0, Utils_1.toHex)(span.shift());
104
- const nonce = (0, Utils_1.toHex)(span.shift());
105
- return new StarknetBtcHeader({
106
- reversed_version,
107
- previous_blockhash,
108
- merkle_root,
109
- reversed_timestamp,
110
- nbits,
111
- nonce
112
- });
113
- }
114
- }
115
- exports.StarknetBtcHeader = StarknetBtcHeader;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StarknetBtcHeader = void 0;
4
+ const buffer_1 = require("buffer");
5
+ const Utils_1 = require("../../../utils/Utils");
6
+ const sha2_1 = require("@noble/hashes/sha2");
7
+ /**
8
+ * Representing a new bitcoin blockheader struct to be submitted to the Starknet BTC relay smart contract
9
+ *
10
+ * @category BTC Relay
11
+ */
12
+ class StarknetBtcHeader {
13
+ /**
14
+ * Constructs the bitcoin blockheader from a struct as returned by the starknet.js lib
15
+ *
16
+ * @param obj Struct as returned by the starknet.js lib
17
+ */
18
+ constructor(obj) {
19
+ this.reversed_version = Number(obj.reversed_version);
20
+ this.previous_blockhash = obj.previous_blockhash.map(val => Number(val));
21
+ this.merkle_root = obj.merkle_root.map(val => Number(val));
22
+ this.reversed_timestamp = Number(obj.reversed_timestamp);
23
+ this.nbits = Number(obj.nbits);
24
+ this.nonce = Number(obj.nonce);
25
+ this.hash = obj.hash;
26
+ }
27
+ /**
28
+ * @inheritDoc
29
+ */
30
+ getMerkleRoot() {
31
+ return (0, Utils_1.u32ArrayToBuffer)(this.merkle_root);
32
+ }
33
+ /**
34
+ * @inheritDoc
35
+ */
36
+ getNbits() {
37
+ return (0, Utils_1.u32ReverseEndianness)(this.nbits);
38
+ }
39
+ /**
40
+ * @inheritDoc
41
+ */
42
+ getNonce() {
43
+ return (0, Utils_1.u32ReverseEndianness)(this.nonce);
44
+ }
45
+ /**
46
+ * @inheritDoc
47
+ */
48
+ getReversedPrevBlockhash() {
49
+ return (0, Utils_1.u32ArrayToBuffer)(this.previous_blockhash);
50
+ }
51
+ /**
52
+ * @inheritDoc
53
+ */
54
+ getTimestamp() {
55
+ return (0, Utils_1.u32ReverseEndianness)(this.reversed_timestamp);
56
+ }
57
+ /**
58
+ * @inheritDoc
59
+ */
60
+ getVersion() {
61
+ return (0, Utils_1.u32ReverseEndianness)(this.reversed_version);
62
+ }
63
+ /**
64
+ * @inheritDoc
65
+ */
66
+ getHash() {
67
+ if (this.hash != null)
68
+ return this.hash;
69
+ const buffer = buffer_1.Buffer.alloc(80);
70
+ buffer.writeUInt32BE(this.reversed_version, 0);
71
+ (0, Utils_1.u32ArrayToBuffer)(this.previous_blockhash).copy(buffer, 4);
72
+ (0, Utils_1.u32ArrayToBuffer)(this.merkle_root).copy(buffer, 36);
73
+ buffer.writeUInt32BE(this.reversed_timestamp, 68);
74
+ buffer.writeUInt32BE(this.nbits, 72);
75
+ buffer.writeUInt32BE(this.nonce, 76);
76
+ return buffer_1.Buffer.from((0, sha2_1.sha256)((0, sha2_1.sha256)(buffer)));
77
+ }
78
+ /**
79
+ * Serializes the bitcoin blockheader struct to an array of felt252 of length 20
80
+ */
81
+ serialize() {
82
+ return [
83
+ this.reversed_version,
84
+ ...this.previous_blockhash,
85
+ ...this.merkle_root,
86
+ this.reversed_timestamp,
87
+ this.nbits,
88
+ this.nonce
89
+ ];
90
+ }
91
+ /**
92
+ * Deserializes the store bitcoin blockheader from its felt252 array representation
93
+ *
94
+ * @param span felt252 array encoding the stored blockheader, has to be at least 20 felts long
95
+ */
96
+ static fromSerializedFeltArray(span) {
97
+ if (span.length < 20)
98
+ throw new Error("Invalid serialized data size!");
99
+ const reversed_version = (0, Utils_1.toHex)(span.shift());
100
+ const previous_blockhash = span.splice(0, 8).map(val => (0, Utils_1.toHex)(val));
101
+ const merkle_root = span.splice(0, 8).map(val => (0, Utils_1.toHex)(val));
102
+ const reversed_timestamp = (0, Utils_1.toHex)(span.shift());
103
+ const nbits = (0, Utils_1.toHex)(span.shift());
104
+ const nonce = (0, Utils_1.toHex)(span.shift());
105
+ return new StarknetBtcHeader({
106
+ reversed_version,
107
+ previous_blockhash,
108
+ merkle_root,
109
+ reversed_timestamp,
110
+ nbits,
111
+ nonce
112
+ });
113
+ }
114
+ }
115
+ exports.StarknetBtcHeader = StarknetBtcHeader;
@@ -1,91 +1,91 @@
1
- import { BtcStoredHeader } from "@atomiqlabs/base";
2
- import { StarknetBtcHeader, StarknetBtcHeaderType } from "./StarknetBtcHeader";
3
- import { Buffer } from "buffer";
4
- import { BigNumberish, Uint256 } from "starknet";
5
- export type StarknetBtcStoredHeaderType = {
6
- blockheader: StarknetBtcHeader | StarknetBtcHeaderType;
7
- block_hash: BigNumberish[];
8
- chain_work: BigNumberish | Uint256;
9
- block_height: BigNumberish;
10
- last_diff_adjustment: BigNumberish;
11
- prev_block_timestamps: BigNumberish[];
12
- };
13
- /**
14
- * Representing a bitcoin blockheader struct which has already been saved and committed inside the
15
- * Starknet BTC relay smart contract
16
- *
17
- * @category BTC Relay
18
- */
19
- export declare class StarknetBtcStoredHeader implements BtcStoredHeader<StarknetBtcHeader> {
20
- blockheader: StarknetBtcHeader;
21
- block_hash: number[];
22
- chain_work: Uint256;
23
- block_height: number;
24
- last_diff_adjustment: number;
25
- prev_block_timestamps: number[];
26
- /**
27
- * Constructs the bitcoin stored blockheader from a struct as returned by the starknet.js lib
28
- *
29
- * @param obj Struct as returned by the starknet.js lib
30
- */
31
- constructor(obj: StarknetBtcStoredHeaderType);
32
- /**
33
- * @inheritDoc
34
- */
35
- getBlockheight(): number;
36
- /**
37
- * @inheritDoc
38
- */
39
- getChainWork(): Buffer;
40
- /**
41
- * @inheritDoc
42
- */
43
- getHeader(): StarknetBtcHeader;
44
- /**
45
- * @inheritDoc
46
- */
47
- getLastDiffAdjustment(): number;
48
- /**
49
- * @inheritDoc
50
- */
51
- getPrevBlockTimestamps(): number[];
52
- /**
53
- * @inheritDoc
54
- */
55
- getBlockHash(): Buffer;
56
- /**
57
- * Computes prevBlockTimestamps for a next block, shifting the old block timestamps to the left & appending
58
- * this block's timestamp to the end
59
- *
60
- * @private
61
- */
62
- private computeNextBlockTimestamps;
63
- /**
64
- * Computes total chain work after a new header with "nbits" is added to the chain
65
- *
66
- * @param nbits
67
- * @private
68
- */
69
- private computeNextChainWork;
70
- /**
71
- * Computes lastDiffAdjustment, this changes only once every DIFF_ADJUSTMENT_PERIOD blocks
72
- *
73
- * @param headerTimestamp
74
- * @private
75
- */
76
- private computeNextLastDiffAdjustment;
77
- /**
78
- * @inheritDoc
79
- */
80
- computeNext(header: StarknetBtcHeader): StarknetBtcStoredHeader;
81
- /**
82
- * Serializes the bitcoin stored blockheader struct to an array of felt252 of length 42
83
- */
84
- serialize(): BigNumberish[];
85
- /**
86
- * Deserializes the store bitcoin blockheader from its felt252 array representation
87
- *
88
- * @param span felt252 array encoding the stored blockheader, has to be at least 42 felts long
89
- */
90
- static fromSerializedFeltArray(span: BigNumberish[]): StarknetBtcStoredHeader;
91
- }
1
+ import { BtcStoredHeader } from "@atomiqlabs/base";
2
+ import { StarknetBtcHeader, StarknetBtcHeaderType } from "./StarknetBtcHeader";
3
+ import { Buffer } from "buffer";
4
+ import { BigNumberish, Uint256 } from "starknet";
5
+ export type StarknetBtcStoredHeaderType = {
6
+ blockheader: StarknetBtcHeader | StarknetBtcHeaderType;
7
+ block_hash: BigNumberish[];
8
+ chain_work: BigNumberish | Uint256;
9
+ block_height: BigNumberish;
10
+ last_diff_adjustment: BigNumberish;
11
+ prev_block_timestamps: BigNumberish[];
12
+ };
13
+ /**
14
+ * Representing a bitcoin blockheader struct which has already been saved and committed inside the
15
+ * Starknet BTC relay smart contract
16
+ *
17
+ * @category BTC Relay
18
+ */
19
+ export declare class StarknetBtcStoredHeader implements BtcStoredHeader<StarknetBtcHeader> {
20
+ private readonly blockheader;
21
+ private readonly block_hash;
22
+ private readonly chain_work;
23
+ private readonly block_height;
24
+ private readonly last_diff_adjustment;
25
+ private readonly prev_block_timestamps;
26
+ /**
27
+ * Constructs the bitcoin stored blockheader from a struct as returned by the starknet.js lib
28
+ *
29
+ * @param obj Struct as returned by the starknet.js lib
30
+ */
31
+ constructor(obj: StarknetBtcStoredHeaderType);
32
+ /**
33
+ * @inheritDoc
34
+ */
35
+ getBlockheight(): number;
36
+ /**
37
+ * @inheritDoc
38
+ */
39
+ getChainWork(): Buffer;
40
+ /**
41
+ * @inheritDoc
42
+ */
43
+ getHeader(): StarknetBtcHeader;
44
+ /**
45
+ * @inheritDoc
46
+ */
47
+ getLastDiffAdjustment(): number;
48
+ /**
49
+ * @inheritDoc
50
+ */
51
+ getPrevBlockTimestamps(): number[];
52
+ /**
53
+ * @inheritDoc
54
+ */
55
+ getBlockHash(): Buffer;
56
+ /**
57
+ * Computes prevBlockTimestamps for a next block, shifting the old block timestamps to the left & appending
58
+ * this block's timestamp to the end
59
+ *
60
+ * @private
61
+ */
62
+ private computeNextBlockTimestamps;
63
+ /**
64
+ * Computes total chain work after a new header with "nbits" is added to the chain
65
+ *
66
+ * @param nbits
67
+ * @private
68
+ */
69
+ private computeNextChainWork;
70
+ /**
71
+ * Computes lastDiffAdjustment, this changes only once every DIFF_ADJUSTMENT_PERIOD blocks
72
+ *
73
+ * @param headerTimestamp
74
+ * @private
75
+ */
76
+ private computeNextLastDiffAdjustment;
77
+ /**
78
+ * @inheritDoc
79
+ */
80
+ computeNext(header: StarknetBtcHeader): StarknetBtcStoredHeader;
81
+ /**
82
+ * Serializes the bitcoin stored blockheader struct to an array of felt252 of length 42
83
+ */
84
+ serialize(): BigNumberish[];
85
+ /**
86
+ * Deserializes the store bitcoin blockheader from its felt252 array representation
87
+ *
88
+ * @param span felt252 array encoding the stored blockheader, has to be at least 42 felts long
89
+ */
90
+ static fromSerializedFeltArray(span: BigNumberish[]): StarknetBtcStoredHeader;
91
+ }