@aztec/archiver 0.28.1 → 0.30.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 (55) hide show
  1. package/dest/archiver/archiver.d.ts +13 -53
  2. package/dest/archiver/archiver.d.ts.map +1 -1
  3. package/dest/archiver/archiver.js +60 -199
  4. package/dest/archiver/archiver_store.d.ts +21 -67
  5. package/dest/archiver/archiver_store.d.ts.map +1 -1
  6. package/dest/archiver/archiver_store_test_suite.d.ts.map +1 -1
  7. package/dest/archiver/archiver_store_test_suite.js +60 -199
  8. package/dest/archiver/config.d.ts.map +1 -1
  9. package/dest/archiver/config.js +6 -2
  10. package/dest/archiver/data_retrieval.d.ts +10 -32
  11. package/dest/archiver/data_retrieval.d.ts.map +1 -1
  12. package/dest/archiver/data_retrieval.js +13 -67
  13. package/dest/archiver/eth_log_handlers.d.ts +7 -38
  14. package/dest/archiver/eth_log_handlers.d.ts.map +1 -1
  15. package/dest/archiver/eth_log_handlers.js +9 -77
  16. package/dest/archiver/kv_archiver_store/block_store.d.ts +5 -4
  17. package/dest/archiver/kv_archiver_store/block_store.d.ts.map +1 -1
  18. package/dest/archiver/kv_archiver_store/block_store.js +12 -15
  19. package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts +15 -56
  20. package/dest/archiver/kv_archiver_store/kv_archiver_store.d.ts.map +1 -1
  21. package/dest/archiver/kv_archiver_store/kv_archiver_store.js +23 -87
  22. package/dest/archiver/kv_archiver_store/message_store.d.ts +12 -43
  23. package/dest/archiver/kv_archiver_store/message_store.d.ts.map +1 -1
  24. package/dest/archiver/kv_archiver_store/message_store.js +32 -141
  25. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts +8 -41
  26. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.d.ts.map +1 -1
  27. package/dest/archiver/memory_archiver_store/l1_to_l2_message_store.js +22 -79
  28. package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts +20 -81
  29. package/dest/archiver/memory_archiver_store/memory_archiver_store.d.ts.map +1 -1
  30. package/dest/archiver/memory_archiver_store/memory_archiver_store.js +30 -143
  31. package/dest/index.d.ts.map +1 -1
  32. package/dest/index.js +3 -15
  33. package/dest/rpc/archiver_client.d.ts.map +1 -1
  34. package/dest/rpc/archiver_client.js +2 -6
  35. package/dest/rpc/archiver_server.d.ts.map +1 -1
  36. package/dest/rpc/archiver_server.js +2 -6
  37. package/package.json +9 -9
  38. package/src/archiver/archiver.ts +80 -267
  39. package/src/archiver/archiver_store.ts +22 -76
  40. package/src/archiver/archiver_store_test_suite.ts +78 -243
  41. package/src/archiver/config.ts +6 -0
  42. package/src/archiver/data_retrieval.ts +19 -101
  43. package/src/archiver/eth_log_handlers.ts +14 -108
  44. package/src/archiver/kv_archiver_store/block_store.ts +13 -14
  45. package/src/archiver/kv_archiver_store/kv_archiver_store.ts +23 -93
  46. package/src/archiver/kv_archiver_store/message_store.ts +38 -169
  47. package/src/archiver/memory_archiver_store/l1_to_l2_message_store.ts +21 -90
  48. package/src/archiver/memory_archiver_store/memory_archiver_store.ts +33 -161
  49. package/src/index.ts +1 -15
  50. package/src/rpc/archiver_client.ts +0 -8
  51. package/src/rpc/archiver_server.ts +0 -8
  52. package/dest/archiver/kv_archiver_store/contract_store.d.ts +0 -26
  53. package/dest/archiver/kv_archiver_store/contract_store.d.ts.map +0 -1
  54. package/dest/archiver/kv_archiver_store/contract_store.js +0 -49
  55. package/src/archiver/kv_archiver_store/contract_store.ts +0 -55
@@ -1,10 +1,11 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
- import { Body, ExtendedContractData, GetUnencryptedLogsResponse, L1ToL2Message, L2Block, L2BlockL2Logs, LogFilter, LogType, NewInboxLeaf, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
2
+ import { Body, GetUnencryptedLogsResponse, InboxLeaf, L2Block, L2BlockL2Logs, LogFilter, LogType, TxEffect, TxHash, TxReceipt } from '@aztec/circuit-types';
3
3
  import { Fr } from '@aztec/circuits.js';
4
4
  import { AztecAddress } from '@aztec/foundation/aztec-address';
5
5
  import { AztecKVStore } from '@aztec/kv-store';
6
6
  import { ContractClassPublic, ContractInstanceWithAddress } from '@aztec/types/contracts';
7
7
  import { ArchiverDataStore, ArchiverL1SynchPoint } from '../archiver_store.js';
8
+ import { DataRetrieval } from '../data_retrieval.js';
8
9
  /**
9
10
  * LMDB implementation of the ArchiverDataStore interface.
10
11
  */
@@ -31,10 +32,10 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
31
32
  getBlockBodies(txsEffectsHashes: Buffer[]): Promise<Body[]>;
32
33
  /**
33
34
  * Append new blocks to the store's list.
34
- * @param blocks - The L2 blocks to be added to the store.
35
+ * @param blocks - The L2 blocks to be added to the store and the last processed L1 block.
35
36
  * @returns True if the operation is successful.
36
37
  */
37
- addBlocks(blocks: L2Block[]): Promise<boolean>;
38
+ addBlocks(blocks: DataRetrieval<L2Block>): Promise<boolean>;
38
39
  /**
39
40
  * Gets up to `limit` amount of L2 blocks starting from `from`.
40
41
  *
@@ -64,52 +65,23 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
64
65
  */
65
66
  addLogs(encryptedLogs: L2BlockL2Logs | undefined, unencryptedLogs: L2BlockL2Logs | undefined, blockNumber: number): Promise<boolean>;
66
67
  /**
67
- * Append new L1 to L2 messages to the store.
68
- * @param messages - The L1 to L2 messages to be added to the store.
69
- * @param lastMessageL1BlockNumber - The L1 block number in which the last message was emitted.
68
+ * Append L1 to L2 messages to the store.
69
+ * @param messages - The L1 to L2 messages to be added to the store and the last processed L1 block.
70
70
  * @returns True if the operation is successful.
71
71
  */
72
- addNewL1ToL2Messages(messages: NewInboxLeaf[], lastMessageL1BlockNumber: bigint): Promise<boolean>;
72
+ addL1ToL2Messages(messages: DataRetrieval<InboxLeaf>): Promise<boolean>;
73
73
  /**
74
- * Append new pending L1 to L2 messages to the store.
75
- * @param messages - The L1 to L2 messages to be added to the store.
76
- * @param l1BlockNumber - The L1 block number for which to add the messages.
77
- * @returns True if the operation is successful.
78
- */
79
- addPendingL1ToL2Messages(messages: L1ToL2Message[], l1BlockNumber: bigint): Promise<boolean>;
80
- /**
81
- * Remove pending L1 to L2 messages from the store (if they were cancelled).
82
- * @param messages - The entry keys to be removed from the store.
83
- * @param l1BlockNumber - The L1 block number for which to remove the messages.
84
- * @returns True if the operation is successful.
85
- */
86
- cancelPendingL1ToL2EntryKeys(messages: Fr[], l1BlockNumber: bigint): Promise<boolean>;
87
- /**
88
- * Messages that have been published in an L2 block are confirmed.
89
- * Add them to the confirmed store, also remove them from the pending store.
90
- * @param entryKeys - The entry keys to be removed from the store.
91
- * @param blockNumber - The block for which to add the messages.
92
- * @returns True if the operation is successful.
93
- */
94
- confirmL1ToL2EntryKeys(entryKeys: Fr[]): Promise<boolean>;
95
- /**
96
- * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
97
- * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
98
- * @returns The requested L1 to L2 entry keys.
99
- */
100
- getPendingL1ToL2EntryKeys(limit: number): Promise<Fr[]>;
101
- /**
102
- * Gets the confirmed L1 to L2 message corresponding to the given entry key.
103
- * @param entryKey - The entry key to look up.
104
- * @returns The requested L1 to L2 message or throws if not found.
74
+ * Gets the L1 to L2 message index in the L1 to L2 message tree.
75
+ * @param l1ToL2Message - The L1 to L2 message.
76
+ * @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
105
77
  */
106
- getConfirmedL1ToL2Message(entryKey: Fr): Promise<L1ToL2Message>;
78
+ getL1ToL2MessageIndex(l1ToL2Message: Fr): Promise<bigint | undefined>;
107
79
  /**
108
- * Gets new L1 to L2 message (to be) included in a given block.
80
+ * Gets L1 to L2 message (to be) included in a given block.
109
81
  * @param blockNumber - L2 block number to get messages for.
110
82
  * @returns The L1 to L2 messages/leaves of the messages subtree (throws if not found).
111
83
  */
112
- getNewL1ToL2Messages(blockNumber: bigint): Promise<Fr[]>;
84
+ getL1ToL2Messages(blockNumber: bigint): Promise<Fr[]>;
113
85
  /**
114
86
  * Gets up to `limit` amount of logs starting from `from`.
115
87
  * @param start - Number of the L2 block to which corresponds the first logs to be returned.
@@ -124,27 +96,14 @@ export declare class KVArchiverDataStore implements ArchiverDataStore {
124
96
  * @returns The requested logs.
125
97
  */
126
98
  getUnencryptedLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
127
- /**
128
- * Add new extended contract data from an L2 block to the store's list.
129
- * @param data - List of contracts' data to be added.
130
- * @param blockNum - Number of the L2 block the contract data was deployed in.
131
- * @returns True if the operation is successful.
132
- */
133
- addExtendedContractData(data: ExtendedContractData[], blockNum: number): Promise<boolean>;
134
- /**
135
- * Get the extended contract data for this contract.
136
- * @param contractAddress - The contract data address.
137
- * @returns The extended contract data or undefined if not found.
138
- */
139
- getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
140
99
  /**
141
100
  * Gets the number of the latest L2 block processed.
142
101
  * @returns The number of the latest L2 block processed.
143
102
  */
144
- getBlockNumber(): Promise<number>;
103
+ getSynchedL2BlockNumber(): Promise<number>;
145
104
  /**
146
105
  * Gets the last L1 block number processed by the archiver
147
106
  */
148
- getL1BlockNumber(): Promise<ArchiverL1SynchPoint>;
107
+ getSynchedL1BlockNumbers(): Promise<ArchiverL1SynchPoint>;
149
108
  }
150
109
  //# sourceMappingURL=kv_archiver_store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/kv_archiver_store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kv_archiver_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/kv_archiver_store.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,IAAI,EACJ,0BAA0B,EAC1B,SAAS,EACT,OAAO,EACP,aAAa,EACb,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1F,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQrD;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;;gBAU/C,EAAE,EAAE,YAAY,EAAE,eAAe,GAAE,MAAa;IAS5D,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAIlE,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAIpC,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAItF,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvF,oBAAoB,CAAC,IAAI,EAAE,2BAA2B,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvG;;;;OAIG;IACH,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrD;;;;;OAKG;IACH,cAAc,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAI3D;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3D;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAS3D;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAI1D;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAInE;;;;;;OAMG;IACH,OAAO,CACL,aAAa,EAAE,aAAa,GAAG,SAAS,EACxC,eAAe,EAAE,aAAa,GAAG,SAAS,EAC1C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC;IAInB;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE;;;;OAIG;IACI,qBAAqB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI5E;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;IAQrD;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQjF;;;;OAIG;IACH,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAQ1E;;;OAGG;IACH,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI1C;;OAEG;IACH,wBAAwB,IAAI,OAAO,CAAC,oBAAoB,CAAC;CAQ1D"}
@@ -1,11 +1,10 @@
1
- var _KVArchiverDataStore_blockStore, _KVArchiverDataStore_blockBodyStore, _KVArchiverDataStore_logStore, _KVArchiverDataStore_contractStore, _KVArchiverDataStore_messageStore, _KVArchiverDataStore_contractClassStore, _KVArchiverDataStore_contractInstanceStore, _KVArchiverDataStore_log;
1
+ var _KVArchiverDataStore_blockStore, _KVArchiverDataStore_blockBodyStore, _KVArchiverDataStore_logStore, _KVArchiverDataStore_messageStore, _KVArchiverDataStore_contractClassStore, _KVArchiverDataStore_contractInstanceStore, _KVArchiverDataStore_log;
2
2
  import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
3
  import { createDebugLogger } from '@aztec/foundation/log';
4
4
  import { BlockBodyStore } from './block_body_store.js';
5
5
  import { BlockStore } from './block_store.js';
6
6
  import { ContractClassStore } from './contract_class_store.js';
7
7
  import { ContractInstanceStore } from './contract_instance_store.js';
8
- import { ContractStore } from './contract_store.js';
9
8
  import { LogStore } from './log_store.js';
10
9
  import { MessageStore } from './message_store.js';
11
10
  /**
@@ -16,7 +15,6 @@ export class KVArchiverDataStore {
16
15
  _KVArchiverDataStore_blockStore.set(this, void 0);
17
16
  _KVArchiverDataStore_blockBodyStore.set(this, void 0);
18
17
  _KVArchiverDataStore_logStore.set(this, void 0);
19
- _KVArchiverDataStore_contractStore.set(this, void 0);
20
18
  _KVArchiverDataStore_messageStore.set(this, void 0);
21
19
  _KVArchiverDataStore_contractClassStore.set(this, void 0);
22
20
  _KVArchiverDataStore_contractInstanceStore.set(this, void 0);
@@ -24,7 +22,6 @@ export class KVArchiverDataStore {
24
22
  __classPrivateFieldSet(this, _KVArchiverDataStore_blockBodyStore, new BlockBodyStore(db), "f");
25
23
  __classPrivateFieldSet(this, _KVArchiverDataStore_blockStore, new BlockStore(db, __classPrivateFieldGet(this, _KVArchiverDataStore_blockBodyStore, "f")), "f");
26
24
  __classPrivateFieldSet(this, _KVArchiverDataStore_logStore, new LogStore(db, __classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f"), logsMaxPageSize), "f");
27
- __classPrivateFieldSet(this, _KVArchiverDataStore_contractStore, new ContractStore(db, __classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f")), "f");
28
25
  __classPrivateFieldSet(this, _KVArchiverDataStore_messageStore, new MessageStore(db), "f");
29
26
  __classPrivateFieldSet(this, _KVArchiverDataStore_contractClassStore, new ContractClassStore(db), "f");
30
27
  __classPrivateFieldSet(this, _KVArchiverDataStore_contractInstanceStore, new ContractInstanceStore(db), "f");
@@ -63,7 +60,7 @@ export class KVArchiverDataStore {
63
60
  }
64
61
  /**
65
62
  * Append new blocks to the store's list.
66
- * @param blocks - The L2 blocks to be added to the store.
63
+ * @param blocks - The L2 blocks to be added to the store and the last processed L1 block.
67
64
  * @returns True if the operation is successful.
68
65
  */
69
66
  addBlocks(blocks) {
@@ -112,71 +109,29 @@ export class KVArchiverDataStore {
112
109
  return __classPrivateFieldGet(this, _KVArchiverDataStore_logStore, "f").addLogs(encryptedLogs, unencryptedLogs, blockNumber);
113
110
  }
114
111
  /**
115
- * Append new L1 to L2 messages to the store.
116
- * @param messages - The L1 to L2 messages to be added to the store.
117
- * @param lastMessageL1BlockNumber - The L1 block number in which the last message was emitted.
112
+ * Append L1 to L2 messages to the store.
113
+ * @param messages - The L1 to L2 messages to be added to the store and the last processed L1 block.
118
114
  * @returns True if the operation is successful.
119
115
  */
120
- addNewL1ToL2Messages(messages, lastMessageL1BlockNumber) {
121
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").addNewL1ToL2Messages(messages, lastMessageL1BlockNumber));
116
+ addL1ToL2Messages(messages) {
117
+ return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").addL1ToL2Messages(messages));
122
118
  }
123
119
  /**
124
- * Append new pending L1 to L2 messages to the store.
125
- * @param messages - The L1 to L2 messages to be added to the store.
126
- * @param l1BlockNumber - The L1 block number for which to add the messages.
127
- * @returns True if the operation is successful.
128
- */
129
- addPendingL1ToL2Messages(messages, l1BlockNumber) {
130
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").addPendingMessages(messages, l1BlockNumber));
131
- }
132
- /**
133
- * Remove pending L1 to L2 messages from the store (if they were cancelled).
134
- * @param messages - The entry keys to be removed from the store.
135
- * @param l1BlockNumber - The L1 block number for which to remove the messages.
136
- * @returns True if the operation is successful.
137
- */
138
- cancelPendingL1ToL2EntryKeys(messages, l1BlockNumber) {
139
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").cancelPendingMessages(messages, l1BlockNumber));
140
- }
141
- /**
142
- * Messages that have been published in an L2 block are confirmed.
143
- * Add them to the confirmed store, also remove them from the pending store.
144
- * @param entryKeys - The entry keys to be removed from the store.
145
- * @param blockNumber - The block for which to add the messages.
146
- * @returns True if the operation is successful.
120
+ * Gets the L1 to L2 message index in the L1 to L2 message tree.
121
+ * @param l1ToL2Message - The L1 to L2 message.
122
+ * @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
147
123
  */
148
- confirmL1ToL2EntryKeys(entryKeys) {
149
- return __classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").confirmPendingMessages(entryKeys);
124
+ getL1ToL2MessageIndex(l1ToL2Message) {
125
+ return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getL1ToL2MessageIndex(l1ToL2Message));
150
126
  }
151
127
  /**
152
- * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
153
- * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
154
- * @returns The requested L1 to L2 entry keys.
155
- */
156
- getPendingL1ToL2EntryKeys(limit) {
157
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getPendingEntryKeysByFee(limit));
158
- }
159
- /**
160
- * Gets the confirmed L1 to L2 message corresponding to the given entry key.
161
- * @param entryKey - The entry key to look up.
162
- * @returns The requested L1 to L2 message or throws if not found.
163
- */
164
- getConfirmedL1ToL2Message(entryKey) {
165
- try {
166
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getConfirmedMessage(entryKey));
167
- }
168
- catch (err) {
169
- return Promise.reject(err);
170
- }
171
- }
172
- /**
173
- * Gets new L1 to L2 message (to be) included in a given block.
128
+ * Gets L1 to L2 message (to be) included in a given block.
174
129
  * @param blockNumber - L2 block number to get messages for.
175
130
  * @returns The L1 to L2 messages/leaves of the messages subtree (throws if not found).
176
131
  */
177
- getNewL1ToL2Messages(blockNumber) {
132
+ getL1ToL2Messages(blockNumber) {
178
133
  try {
179
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getNewL1ToL2Messages(blockNumber));
134
+ return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getL1ToL2Messages(blockNumber));
180
135
  }
181
136
  catch (err) {
182
137
  return Promise.reject(err);
@@ -210,43 +165,24 @@ export class KVArchiverDataStore {
210
165
  return Promise.reject(err);
211
166
  }
212
167
  }
213
- /**
214
- * Add new extended contract data from an L2 block to the store's list.
215
- * @param data - List of contracts' data to be added.
216
- * @param blockNum - Number of the L2 block the contract data was deployed in.
217
- * @returns True if the operation is successful.
218
- */
219
- addExtendedContractData(data, blockNum) {
220
- return __classPrivateFieldGet(this, _KVArchiverDataStore_contractStore, "f").addExtendedContractData(data, blockNum);
221
- }
222
- /**
223
- * Get the extended contract data for this contract.
224
- * @param contractAddress - The contract data address.
225
- * @returns The extended contract data or undefined if not found.
226
- */
227
- getExtendedContractData(contractAddress) {
228
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_contractStore, "f").getExtendedContractData(contractAddress));
229
- }
230
168
  /**
231
169
  * Gets the number of the latest L2 block processed.
232
170
  * @returns The number of the latest L2 block processed.
233
171
  */
234
- getBlockNumber() {
235
- return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f").getBlockNumber());
172
+ getSynchedL2BlockNumber() {
173
+ return Promise.resolve(__classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f").getSynchedL2BlockNumber());
236
174
  }
237
175
  /**
238
176
  * Gets the last L1 block number processed by the archiver
239
177
  */
240
- getL1BlockNumber() {
241
- const addedBlock = __classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f").getL1BlockNumber();
242
- const { addedMessages, cancelledMessages, newMessages } = __classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getL1BlockNumber();
178
+ getSynchedL1BlockNumbers() {
179
+ const blocks = __classPrivateFieldGet(this, _KVArchiverDataStore_blockStore, "f").getSynchedL1BlockNumber();
180
+ const messages = __classPrivateFieldGet(this, _KVArchiverDataStore_messageStore, "f").getSynchedL1BlockNumber();
243
181
  return Promise.resolve({
244
- addedBlock,
245
- addedMessages,
246
- newMessages,
247
- cancelledMessages,
182
+ blocks,
183
+ messages,
248
184
  });
249
185
  }
250
186
  }
251
- _KVArchiverDataStore_blockStore = new WeakMap(), _KVArchiverDataStore_blockBodyStore = new WeakMap(), _KVArchiverDataStore_logStore = new WeakMap(), _KVArchiverDataStore_contractStore = new WeakMap(), _KVArchiverDataStore_messageStore = new WeakMap(), _KVArchiverDataStore_contractClassStore = new WeakMap(), _KVArchiverDataStore_contractInstanceStore = new WeakMap(), _KVArchiverDataStore_log = new WeakMap();
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ZfYXJjaGl2ZXJfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUva3ZfYXJjaGl2ZXJfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnQkEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFLMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRDs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBbUI7SUFXOUIsWUFBWSxFQUFnQixFQUFFLGtCQUEwQixJQUFJO1FBVjVELGtEQUF3QjtRQUN4QixzREFBZ0M7UUFDaEMsZ0RBQW9CO1FBQ3BCLHFEQUE4QjtRQUM5QixvREFBNEI7UUFDNUIsMERBQXdDO1FBQ3hDLDZEQUE4QztRQUU5QyxtQ0FBTyxpQkFBaUIsQ0FBQywyQkFBMkIsQ0FBQyxFQUFDO1FBR3BELHVCQUFBLElBQUksdUNBQW1CLElBQUksY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFBLENBQUM7UUFDOUMsdUJBQUEsSUFBSSxtQ0FBZSxJQUFJLFVBQVUsQ0FBQyxFQUFFLEVBQUUsdUJBQUEsSUFBSSwyQ0FBZ0IsQ0FBQyxNQUFBLENBQUM7UUFDNUQsdUJBQUEsSUFBSSxpQ0FBYSxJQUFJLFFBQVEsQ0FBQyxFQUFFLEVBQUUsdUJBQUEsSUFBSSx1Q0FBWSxFQUFFLGVBQWUsQ0FBQyxNQUFBLENBQUM7UUFDckUsdUJBQUEsSUFBSSxzQ0FBa0IsSUFBSSxhQUFhLENBQUMsRUFBRSxFQUFFLHVCQUFBLElBQUksdUNBQVksQ0FBQyxNQUFBLENBQUM7UUFDOUQsdUJBQUEsSUFBSSxxQ0FBaUIsSUFBSSxZQUFZLENBQUMsRUFBRSxDQUFDLE1BQUEsQ0FBQztRQUMxQyx1QkFBQSxJQUFJLDJDQUF1QixJQUFJLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxNQUFBLENBQUM7UUFDdEQsdUJBQUEsSUFBSSw4Q0FBMEIsSUFBSSxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsTUFBQSxDQUFDO0lBQzlELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFNO1FBQ3JCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyx1QkFBQSxJQUFJLCtDQUFvQixDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQUEsSUFBSSwrQ0FBb0IsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELG1CQUFtQixDQUFDLE9BQXFCO1FBQ3ZDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyx1QkFBQSxJQUFJLGtEQUF1QixDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUEyQixFQUFFLFlBQW9CO1FBQ3hFLE9BQU8sQ0FBQyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLHVCQUFBLElBQUksK0NBQW9CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pHLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBbUMsRUFBRSxZQUFvQjtRQUNsRixPQUFPLENBQUMsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyx1QkFBQSxJQUFJLGtEQUF1QixDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGNBQWMsQ0FBQyxXQUFtQjtRQUNoQyxPQUFPLHVCQUFBLElBQUksMkNBQWdCLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGNBQWMsQ0FBQyxnQkFBMEI7UUFDdkMsT0FBTyx1QkFBQSxJQUFJLDJDQUFnQixDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsU0FBUyxDQUFDLE1BQWlCO1FBQ3pCLE9BQU8sdUJBQUEsSUFBSSx1Q0FBWSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsU0FBUyxDQUFDLEtBQWEsRUFBRSxLQUFhO1FBQ3BDLElBQUksQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLHVCQUFBLElBQUksdUNBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRSxDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLGdIQUFnSDtZQUNoSCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLE1BQWM7UUFDeEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUksdUNBQVksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG1CQUFtQixDQUFDLE1BQWM7UUFDaEMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUksdUNBQVksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxPQUFPLENBQ0wsYUFBd0MsRUFDeEMsZUFBMEMsRUFDMUMsV0FBbUI7UUFFbkIsT0FBTyx1QkFBQSxJQUFJLHFDQUFVLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsb0JBQW9CLENBQUMsUUFBd0IsRUFBRSx3QkFBZ0M7UUFDN0UsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUkseUNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsd0JBQXdCLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILHdCQUF3QixDQUFDLFFBQXlCLEVBQUUsYUFBcUI7UUFDdkUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUkseUNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCw0QkFBNEIsQ0FBQyxRQUFjLEVBQUUsYUFBcUI7UUFDaEUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUkseUNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsc0JBQXNCLENBQUMsU0FBZTtRQUNwQyxPQUFPLHVCQUFBLElBQUkseUNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHlCQUF5QixDQUFDLEtBQWE7UUFDckMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUkseUNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gseUJBQXlCLENBQUMsUUFBWTtRQUNwQyxJQUFJLENBQUM7WUFDSCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQUEsSUFBSSx5Q0FBYyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsb0JBQW9CLENBQUMsV0FBbUI7UUFDdEMsSUFBSSxDQUFDO1lBQ0gsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUkseUNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQy9FLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsT0FBTyxDQUFDLEtBQWEsRUFBRSxLQUFhLEVBQUUsT0FBZ0I7UUFDcEQsSUFBSSxDQUFDO1lBQ0gsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsdUJBQUEsSUFBSSxxQ0FBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxrQkFBa0IsQ0FBQyxNQUFpQjtRQUNsQyxJQUFJLENBQUM7WUFDSCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQUEsSUFBSSxxQ0FBVSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILHVCQUF1QixDQUFDLElBQTRCLEVBQUUsUUFBZ0I7UUFDcEUsT0FBTyx1QkFBQSxJQUFJLDBDQUFlLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsdUJBQXVCLENBQUMsZUFBNkI7UUFDbkQsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUksMENBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjO1FBQ1osT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLHVCQUFBLElBQUksdUNBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQjtRQUNkLE1BQU0sVUFBVSxHQUFHLHVCQUFBLElBQUksdUNBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3ZELE1BQU0sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLEdBQUcsdUJBQUEsSUFBSSx5Q0FBYyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDaEcsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQ3JCLFVBQVU7WUFDVixhQUFhO1lBQ2IsV0FBVztZQUNYLGlCQUFpQjtTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YifQ==
187
+ _KVArchiverDataStore_blockStore = new WeakMap(), _KVArchiverDataStore_blockBodyStore = new WeakMap(), _KVArchiverDataStore_logStore = new WeakMap(), _KVArchiverDataStore_messageStore = new WeakMap(), _KVArchiverDataStore_contractClassStore = new WeakMap(), _KVArchiverDataStore_contractInstanceStore = new WeakMap(), _KVArchiverDataStore_log = new WeakMap();
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ZfYXJjaGl2ZXJfc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXJjaGl2ZXIva3ZfYXJjaGl2ZXJfc3RvcmUva3ZfYXJjaGl2ZXJfc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFjQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU0xRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sbUJBQW1CO0lBVTlCLFlBQVksRUFBZ0IsRUFBRSxrQkFBMEIsSUFBSTtRQVQ1RCxrREFBd0I7UUFDeEIsc0RBQWdDO1FBQ2hDLGdEQUFvQjtRQUNwQixvREFBNEI7UUFDNUIsMERBQXdDO1FBQ3hDLDZEQUE4QztRQUU5QyxtQ0FBTyxpQkFBaUIsQ0FBQywyQkFBMkIsQ0FBQyxFQUFDO1FBR3BELHVCQUFBLElBQUksdUNBQW1CLElBQUksY0FBYyxDQUFDLEVBQUUsQ0FBQyxNQUFBLENBQUM7UUFDOUMsdUJBQUEsSUFBSSxtQ0FBZSxJQUFJLFVBQVUsQ0FBQyxFQUFFLEVBQUUsdUJBQUEsSUFBSSwyQ0FBZ0IsQ0FBQyxNQUFBLENBQUM7UUFDNUQsdUJBQUEsSUFBSSxpQ0FBYSxJQUFJLFFBQVEsQ0FBQyxFQUFFLEVBQUUsdUJBQUEsSUFBSSx1Q0FBWSxFQUFFLGVBQWUsQ0FBQyxNQUFBLENBQUM7UUFDckUsdUJBQUEsSUFBSSxx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
@@ -1,6 +1,7 @@
1
- import { L1ToL2Message, NewInboxLeaf } from '@aztec/circuit-types';
1
+ import { InboxLeaf } from '@aztec/circuit-types';
2
2
  import { Fr } from '@aztec/circuits.js';
3
3
  import { AztecKVStore } from '@aztec/kv-store';
4
+ import { DataRetrieval } from '../data_retrieval.js';
4
5
  /**
5
6
  * LMDB implementation of the ArchiverDataStore interface.
6
7
  */
@@ -9,54 +10,22 @@ export declare class MessageStore {
9
10
  private db;
10
11
  constructor(db: AztecKVStore);
11
12
  /**
12
- * Gets the last L1 block number that emitted new messages and the block that cancelled messages.
13
+ * Gets the last L1 block number that emitted new messages.
13
14
  * @returns The last L1 block number processed
14
15
  */
15
- getL1BlockNumber(): {
16
- newMessages: bigint;
17
- addedMessages: bigint;
18
- cancelledMessages: bigint;
19
- };
16
+ getSynchedL1BlockNumber(): bigint;
20
17
  /**
21
- * Append new L1 to L2 messages to the store.
22
- * @param messages - The L1 to L2 messages to be added to the store.
23
- * @param lastMessageL1BlockNumber - The L1 block number in which the last message was emitted.
18
+ * Append L1 to L2 messages to the store.
19
+ * @param messages - The L1 to L2 messages to be added to the store and the last processed L1 block.
24
20
  * @returns True if the operation is successful.
25
21
  */
26
- addNewL1ToL2Messages(messages: NewInboxLeaf[], lastMessageL1BlockNumber: bigint): Promise<boolean>;
22
+ addL1ToL2Messages(messages: DataRetrieval<InboxLeaf>): Promise<boolean>;
27
23
  /**
28
- * Append new pending L1 to L2 messages to the store.
29
- * @param messages - The L1 to L2 messages to be added to the store.
30
- * @param l1BlockNumber - The L1 block number for which to add the messages.
31
- * @returns True if the operation is successful.
32
- */
33
- addPendingMessages(messages: L1ToL2Message[], l1BlockNumber: bigint): Promise<boolean>;
34
- /**
35
- * Remove pending L1 to L2 messages from the store (if they were cancelled).
36
- * @param entryKeys - The entry keys to be removed from the store.
37
- * @param l1BlockNumber - The L1 block number for which to remove the messages.
38
- * @returns True if the operation is successful.
39
- */
40
- cancelPendingMessages(entryKeys: Fr[], l1BlockNumber: bigint): Promise<boolean>;
41
- /**
42
- * Messages that have been published in an L2 block are confirmed.
43
- * Add them to the confirmed store, also remove them from the pending store.
44
- * @param entryKeys - The entry keys to be removed from the store.
45
- * @returns True if the operation is successful.
46
- */
47
- confirmPendingMessages(entryKeys: Fr[]): Promise<boolean>;
48
- /**
49
- * Gets the confirmed L1 to L2 message corresponding to the given entry key.
50
- * @param entryKey - The entry key to look up.
51
- * @returns The requested L1 to L2 message or throws if not found.
52
- */
53
- getConfirmedMessage(entryKey: Fr): L1ToL2Message;
54
- /**
55
- * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
56
- * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
57
- * @returns The requested L1 to L2 entry keys.
24
+ * Gets the L1 to L2 message index in the L1 to L2 message tree.
25
+ * @param l1ToL2Message - The L1 to L2 message.
26
+ * @returns The index of the L1 to L2 message in the L1 to L2 message tree (undefined if not found).
58
27
  */
59
- getPendingEntryKeysByFee(limit: number): Fr[];
60
- getNewL1ToL2Messages(blockNumber: bigint): Fr[];
28
+ getL1ToL2MessageIndex(l1ToL2Message: Fr): Promise<bigint | undefined>;
29
+ getL1ToL2Messages(blockNumber: bigint): Fr[];
61
30
  }
62
31
  //# sourceMappingURL=message_store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/message_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,EAAE,EAA+B,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAgB,YAAY,EAA4B,MAAM,iBAAiB,CAAC;AAcvF;;GAEG;AACH,qBAAa,YAAY;;IAaX,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IASpC;;;OAGG;IACH,gBAAgB;;;;;IAShB;;;;;OAKG;IACH,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,wBAAwB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBlG;;;;;OAKG;IACH,kBAAkB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4BtF;;;;;OAKG;IACH,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAsB/E;;;;;OAKG;IACH,sBAAsB,CAAC,SAAS,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBzD;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,EAAE,GAAG,aAAa;IAahD;;;;OAIG;IACH,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,EAAE;IAgB7C,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,EAAE,EAAE;CAoBhD"}
1
+ {"version":3,"file":"message_store.d.ts","sourceRoot":"","sources":["../../../src/archiver/kv_archiver_store/message_store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,EAAE,EAIH,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,YAAY,EAA4B,MAAM,iBAAiB,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;GAEG;AACH,qBAAa,YAAY;;IASX,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IAMpC;;;OAGG;IACH,uBAAuB,IAAI,MAAM;IAIjC;;;;OAIG;IACH,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BvE;;;;OAIG;IACI,qBAAqB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK5E,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,EAAE,EAAE;CAoB7C"}