@aztec/stdlib 4.0.0-devnet.2-patch.3 → 4.0.0-devnet.3-patch.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 (337) hide show
  1. package/dest/abi/buffer.d.ts +14 -4
  2. package/dest/abi/buffer.d.ts.map +1 -1
  3. package/dest/abi/buffer.js +25 -4
  4. package/dest/abi/decoder.d.ts +6 -45
  5. package/dest/abi/decoder.d.ts.map +1 -1
  6. package/dest/abi/decoder.js +17 -70
  7. package/dest/abi/encoder.d.ts +1 -1
  8. package/dest/abi/encoder.d.ts.map +1 -1
  9. package/dest/abi/encoder.js +37 -6
  10. package/dest/abi/event_metadata_definition.d.ts +3 -1
  11. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  12. package/dest/abi/event_metadata_definition.js +1 -1
  13. package/dest/abi/function_selector.js +1 -1
  14. package/dest/abi/function_signature_decoder.d.ts +43 -0
  15. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  16. package/dest/abi/function_signature_decoder.js +66 -0
  17. package/dest/abi/index.d.ts +2 -1
  18. package/dest/abi/index.d.ts.map +1 -1
  19. package/dest/abi/index.js +1 -0
  20. package/dest/abi/utils.d.ts +14 -1
  21. package/dest/abi/utils.d.ts.map +1 -1
  22. package/dest/abi/utils.js +15 -0
  23. package/dest/avm/avm.d.ts +300 -300
  24. package/dest/avm/avm_accumulated_data.js +2 -2
  25. package/dest/avm/avm_circuit_public_inputs.js +2 -2
  26. package/dest/avm/avm_proving_request.d.ts +166 -166
  27. package/dest/avm/revert_code.d.ts +16 -1
  28. package/dest/avm/revert_code.d.ts.map +1 -1
  29. package/dest/avm/revert_code.js +15 -5
  30. package/dest/block/l2_block.d.ts +9 -1
  31. package/dest/block/l2_block.d.ts.map +1 -1
  32. package/dest/block/l2_block.js +12 -2
  33. package/dest/block/l2_block_source.d.ts +16 -8
  34. package/dest/block/l2_block_source.d.ts.map +1 -1
  35. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  36. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  37. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  38. package/dest/checkpoint/checkpoint.d.ts +2 -1
  39. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  40. package/dest/checkpoint/checkpoint.js +9 -4
  41. package/dest/checkpoint/index.d.ts +2 -1
  42. package/dest/checkpoint/index.d.ts.map +1 -1
  43. package/dest/checkpoint/index.js +1 -0
  44. package/dest/checkpoint/validate.d.ts +36 -0
  45. package/dest/checkpoint/validate.d.ts.map +1 -0
  46. package/dest/checkpoint/validate.js +120 -0
  47. package/dest/config/sequencer-config.d.ts +2 -2
  48. package/dest/config/sequencer-config.d.ts.map +1 -1
  49. package/dest/config/sequencer-config.js +11 -0
  50. package/dest/epoch-helpers/index.d.ts +9 -1
  51. package/dest/epoch-helpers/index.d.ts.map +1 -1
  52. package/dest/epoch-helpers/index.js +13 -2
  53. package/dest/gas/gas_fees.d.ts +1 -1
  54. package/dest/gas/gas_fees.d.ts.map +1 -1
  55. package/dest/gas/gas_fees.js +4 -1
  56. package/dest/hash/hash.d.ts +19 -1
  57. package/dest/hash/hash.d.ts.map +1 -1
  58. package/dest/hash/hash.js +29 -0
  59. package/dest/interfaces/allowed_element.d.ts +26 -20
  60. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  61. package/dest/interfaces/allowed_element.js +8 -8
  62. package/dest/interfaces/archiver.d.ts +1 -1
  63. package/dest/interfaces/archiver.d.ts.map +1 -1
  64. package/dest/interfaces/archiver.js +3 -2
  65. package/dest/interfaces/aztec-node-admin.d.ts +67 -27
  66. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  67. package/dest/interfaces/aztec-node.d.ts +12 -6
  68. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  69. package/dest/interfaces/aztec-node.js +5 -2
  70. package/dest/interfaces/block-builder.d.ts +38 -11
  71. package/dest/interfaces/block-builder.d.ts.map +1 -1
  72. package/dest/interfaces/block-builder.js +13 -6
  73. package/dest/interfaces/configs.d.ts +67 -32
  74. package/dest/interfaces/configs.d.ts.map +1 -1
  75. package/dest/interfaces/configs.js +7 -2
  76. package/dest/interfaces/merkle_tree_operations.d.ts +9 -19
  77. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  78. package/dest/interfaces/p2p.d.ts +3 -8
  79. package/dest/interfaces/p2p.d.ts.map +1 -1
  80. package/dest/interfaces/prover-client.d.ts +6 -1
  81. package/dest/interfaces/prover-client.d.ts.map +1 -1
  82. package/dest/interfaces/prover-client.js +7 -1
  83. package/dest/interfaces/validator.d.ts +67 -25
  84. package/dest/interfaces/validator.d.ts.map +1 -1
  85. package/dest/interfaces/validator.js +6 -2
  86. package/dest/interfaces/world_state.d.ts +5 -4
  87. package/dest/interfaces/world_state.d.ts.map +1 -1
  88. package/dest/kernel/claimed_length_array.js +1 -1
  89. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  90. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  91. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  92. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  93. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  94. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  95. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  96. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  97. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  98. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
  99. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  100. package/dest/kernel/padded_side_effects.js +1 -1
  101. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +2 -1
  102. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  103. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +4 -0
  104. package/dest/kernel/private_to_avm_accumulated_data.js +2 -2
  105. package/dest/kernel/private_to_public_accumulated_data.js +2 -2
  106. package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
  107. package/dest/logs/debug_log_store.d.ts +30 -0
  108. package/dest/logs/debug_log_store.d.ts.map +1 -0
  109. package/dest/logs/debug_log_store.js +30 -0
  110. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  111. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  112. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +35 -20
  113. package/dest/logs/index.d.ts +4 -2
  114. package/dest/logs/index.d.ts.map +1 -1
  115. package/dest/logs/index.js +3 -1
  116. package/dest/logs/log_filter.d.ts +4 -1
  117. package/dest/logs/log_filter.d.ts.map +1 -1
  118. package/dest/logs/log_filter.js +2 -1
  119. package/dest/logs/message_context.d.ts +4 -7
  120. package/dest/logs/message_context.d.ts.map +1 -1
  121. package/dest/logs/message_context.js +23 -9
  122. package/dest/logs/pending_tagged_log.d.ts +2 -3
  123. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  124. package/dest/logs/pending_tagged_log.js +2 -2
  125. package/dest/logs/pre_tag.d.ts +16 -11
  126. package/dest/logs/pre_tag.d.ts.map +1 -1
  127. package/dest/logs/pre_tag.js +2 -2
  128. package/dest/logs/private_log.js +1 -1
  129. package/dest/logs/public_log.d.ts +4 -3
  130. package/dest/logs/public_log.d.ts.map +1 -1
  131. package/dest/logs/public_log.js +9 -2
  132. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  133. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  134. package/dest/logs/shared_secret_derivation.js +15 -9
  135. package/dest/logs/siloed_tag.d.ts +8 -3
  136. package/dest/logs/siloed_tag.d.ts.map +1 -1
  137. package/dest/logs/siloed_tag.js +11 -2
  138. package/dest/logs/tag.js +1 -1
  139. package/dest/logs/tagging_index_range.d.ts +40 -0
  140. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  141. package/dest/logs/tagging_index_range.js +8 -0
  142. package/dest/logs/tx_scoped_l2_log.d.ts +3 -1
  143. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  144. package/dest/logs/tx_scoped_l2_log.js +7 -0
  145. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  146. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  147. package/dest/messaging/l1_to_l2_message.js +11 -13
  148. package/dest/messaging/l2_to_l1_membership.d.ts +32 -6
  149. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  150. package/dest/messaging/l2_to_l1_membership.js +69 -26
  151. package/dest/noir/index.d.ts +3 -3
  152. package/dest/noir/index.d.ts.map +1 -1
  153. package/dest/note/note_dao.d.ts +1 -1
  154. package/dest/note/note_dao.d.ts.map +1 -1
  155. package/dest/note/note_dao.js +1 -4
  156. package/dest/p2p/attestation_utils.d.ts +11 -1
  157. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  158. package/dest/p2p/attestation_utils.js +45 -0
  159. package/dest/p2p/checkpoint_proposal.d.ts +1 -6
  160. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  161. package/dest/p2p/checkpoint_proposal.js +13 -23
  162. package/dest/p2p/client_type.d.ts +2 -5
  163. package/dest/p2p/client_type.d.ts.map +1 -1
  164. package/dest/p2p/client_type.js +0 -7
  165. package/dest/p2p/index.d.ts +1 -2
  166. package/dest/p2p/index.d.ts.map +1 -1
  167. package/dest/p2p/index.js +0 -1
  168. package/dest/p2p/peer_error.d.ts +3 -1
  169. package/dest/p2p/peer_error.d.ts.map +1 -1
  170. package/dest/p2p/peer_error.js +5 -0
  171. package/dest/p2p/topic_type.d.ts +3 -4
  172. package/dest/p2p/topic_type.d.ts.map +1 -1
  173. package/dest/p2p/topic_type.js +7 -24
  174. package/dest/parity/parity_base_private_inputs.js +1 -1
  175. package/dest/proofs/chonk_proof.d.ts +1 -1
  176. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  177. package/dest/proofs/chonk_proof.js +7 -1
  178. package/dest/rollup/base_rollup_hints.js +2 -2
  179. package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
  180. package/dest/rollup/checkpoint_rollup_public_inputs.js +1 -1
  181. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
  182. package/dest/rollup/root_rollup_public_inputs.js +1 -1
  183. package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
  184. package/dest/slashing/tally.d.ts +7 -2
  185. package/dest/slashing/tally.d.ts.map +1 -1
  186. package/dest/slashing/tally.js +30 -2
  187. package/dest/tests/factories.d.ts +3 -1
  188. package/dest/tests/factories.d.ts.map +1 -1
  189. package/dest/tests/factories.js +8 -0
  190. package/dest/tests/mocks.d.ts +5 -3
  191. package/dest/tests/mocks.d.ts.map +1 -1
  192. package/dest/tests/mocks.js +18 -13
  193. package/dest/tx/block_header.d.ts +3 -1
  194. package/dest/tx/block_header.d.ts.map +1 -1
  195. package/dest/tx/block_header.js +4 -0
  196. package/dest/tx/capsule.d.ts +6 -2
  197. package/dest/tx/capsule.d.ts.map +1 -1
  198. package/dest/tx/capsule.js +9 -3
  199. package/dest/tx/private_execution_result.d.ts +6 -6
  200. package/dest/tx/private_execution_result.d.ts.map +1 -1
  201. package/dest/tx/private_execution_result.js +6 -6
  202. package/dest/tx/profiling.d.ts +17 -5
  203. package/dest/tx/profiling.d.ts.map +1 -1
  204. package/dest/tx/profiling.js +15 -5
  205. package/dest/tx/protocol_contracts.js +2 -2
  206. package/dest/tx/public_simulation_output.d.ts +4 -2
  207. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  208. package/dest/tx/public_simulation_output.js +7 -3
  209. package/dest/tx/simulated_tx.d.ts +5 -2
  210. package/dest/tx/simulated_tx.d.ts.map +1 -1
  211. package/dest/tx/simulated_tx.js +4 -1
  212. package/dest/tx/tx.d.ts +6 -5
  213. package/dest/tx/tx.d.ts.map +1 -1
  214. package/dest/tx/tx.js +18 -6
  215. package/dest/tx/tx_receipt.d.ts +22 -3
  216. package/dest/tx/tx_receipt.d.ts.map +1 -1
  217. package/dest/tx/tx_receipt.js +15 -4
  218. package/dest/tx/validator/error_texts.d.ts +9 -1
  219. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  220. package/dest/tx/validator/error_texts.js +10 -0
  221. package/dest/update-checker/index.d.ts +3 -2
  222. package/dest/update-checker/index.d.ts.map +1 -1
  223. package/dest/update-checker/index.js +2 -1
  224. package/dest/update-checker/package_version.d.ts +3 -0
  225. package/dest/update-checker/package_version.d.ts.map +1 -0
  226. package/dest/update-checker/package_version.js +24 -0
  227. package/dest/update-checker/version_checker.d.ts +25 -0
  228. package/dest/update-checker/version_checker.d.ts.map +1 -0
  229. package/dest/update-checker/version_checker.js +50 -0
  230. package/dest/validators/errors.d.ts +6 -1
  231. package/dest/validators/errors.d.ts.map +1 -1
  232. package/dest/validators/errors.js +7 -0
  233. package/dest/versioning/versioning.d.ts +4 -2
  234. package/dest/versioning/versioning.d.ts.map +1 -1
  235. package/dest/versioning/versioning.js +4 -1
  236. package/dest/vks/vk_data.js +1 -1
  237. package/package.json +10 -10
  238. package/src/abi/buffer.ts +25 -4
  239. package/src/abi/decoder.ts +36 -82
  240. package/src/abi/encoder.ts +49 -6
  241. package/src/abi/event_metadata_definition.ts +2 -0
  242. package/src/abi/function_selector.ts +1 -1
  243. package/src/abi/function_signature_decoder.ts +77 -0
  244. package/src/abi/index.ts +1 -0
  245. package/src/abi/utils.ts +25 -0
  246. package/src/avm/avm_accumulated_data.ts +6 -6
  247. package/src/avm/avm_circuit_public_inputs.ts +4 -4
  248. package/src/avm/revert_code.ts +15 -0
  249. package/src/block/l2_block.ts +13 -1
  250. package/src/block/l2_block_source.ts +16 -7
  251. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  252. package/src/checkpoint/checkpoint.ts +12 -3
  253. package/src/checkpoint/index.ts +1 -0
  254. package/src/checkpoint/validate.ts +230 -0
  255. package/src/config/sequencer-config.ts +16 -1
  256. package/src/epoch-helpers/index.ts +22 -0
  257. package/src/gas/README.md +123 -0
  258. package/src/gas/gas_fees.ts +7 -1
  259. package/src/hash/hash.ts +34 -0
  260. package/src/interfaces/allowed_element.ts +29 -9
  261. package/src/interfaces/archiver.ts +3 -2
  262. package/src/interfaces/aztec-node.ts +24 -5
  263. package/src/interfaces/block-builder.ts +60 -14
  264. package/src/interfaces/configs.ts +29 -8
  265. package/src/interfaces/merkle_tree_operations.ts +8 -18
  266. package/src/interfaces/p2p.ts +2 -13
  267. package/src/interfaces/prover-client.ts +8 -0
  268. package/src/interfaces/validator.ts +18 -2
  269. package/src/interfaces/world_state.ts +4 -3
  270. package/src/kernel/claimed_length_array.ts +2 -2
  271. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  272. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  273. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  274. package/src/kernel/hints/private_kernel_reset_hints.ts +5 -2
  275. package/src/kernel/hints/read_request_hints.ts +3 -3
  276. package/src/kernel/padded_side_effects.ts +3 -3
  277. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +9 -0
  278. package/src/kernel/private_to_avm_accumulated_data.ts +4 -4
  279. package/src/kernel/private_to_public_accumulated_data.ts +10 -10
  280. package/src/kernel/private_to_rollup_accumulated_data.ts +5 -5
  281. package/src/logs/debug_log_store.ts +54 -0
  282. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +41 -22
  283. package/src/logs/index.ts +3 -1
  284. package/src/logs/log_filter.ts +5 -0
  285. package/src/logs/message_context.ts +17 -7
  286. package/src/logs/pending_tagged_log.ts +1 -3
  287. package/src/logs/pre_tag.ts +5 -5
  288. package/src/logs/private_log.ts +1 -1
  289. package/src/logs/public_log.ts +15 -3
  290. package/src/logs/shared_secret_derivation.ts +21 -10
  291. package/src/logs/siloed_tag.ts +14 -3
  292. package/src/logs/tag.ts +1 -1
  293. package/src/logs/tagging_index_range.ts +24 -0
  294. package/src/logs/tx_scoped_l2_log.ts +16 -0
  295. package/src/messaging/l1_to_l2_message.ts +12 -9
  296. package/src/messaging/l2_to_l1_membership.ts +98 -33
  297. package/src/noir/index.ts +2 -2
  298. package/src/note/note_dao.ts +1 -4
  299. package/src/p2p/attestation_utils.ts +56 -0
  300. package/src/p2p/checkpoint_proposal.ts +23 -37
  301. package/src/p2p/client_type.ts +0 -6
  302. package/src/p2p/index.ts +0 -1
  303. package/src/p2p/peer_error.ts +7 -0
  304. package/src/p2p/topic_type.ts +8 -15
  305. package/src/parity/parity_base_private_inputs.ts +1 -1
  306. package/src/proofs/chonk_proof.ts +9 -1
  307. package/src/rollup/base_rollup_hints.ts +2 -2
  308. package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
  309. package/src/rollup/checkpoint_rollup_public_inputs.ts +2 -2
  310. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
  311. package/src/rollup/root_rollup_public_inputs.ts +2 -2
  312. package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
  313. package/src/slashing/tally.ts +34 -1
  314. package/src/tests/factories.ts +9 -0
  315. package/src/tests/mocks.ts +25 -10
  316. package/src/tx/block_header.ts +6 -0
  317. package/src/tx/capsule.ts +10 -2
  318. package/src/tx/private_execution_result.ts +5 -5
  319. package/src/tx/profiling.ts +14 -5
  320. package/src/tx/protocol_contracts.ts +2 -2
  321. package/src/tx/public_simulation_output.ts +4 -0
  322. package/src/tx/simulated_tx.ts +8 -1
  323. package/src/tx/tx.ts +20 -11
  324. package/src/tx/tx_receipt.ts +17 -2
  325. package/src/tx/validator/error_texts.ts +12 -0
  326. package/src/update-checker/index.ts +2 -1
  327. package/src/update-checker/package_version.ts +30 -0
  328. package/src/update-checker/version_checker.ts +65 -0
  329. package/src/validators/errors.ts +9 -0
  330. package/src/versioning/versioning.ts +4 -1
  331. package/src/vks/vk_data.ts +1 -1
  332. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  333. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  334. package/dest/update-checker/update-checker.d.ts +0 -49
  335. package/dest/update-checker/update-checker.d.ts.map +0 -1
  336. package/dest/update-checker/update-checker.js +0 -130
  337. package/src/update-checker/update-checker.ts +0 -166
@@ -8,6 +8,7 @@ export type L1RollupConstants = {
8
8
  ethereumSlotDuration: number;
9
9
  proofSubmissionEpochs: number;
10
10
  targetCommitteeSize: number;
11
+ rollupManaLimit: number;
11
12
  };
12
13
  export declare const EmptyL1RollupConstants: L1RollupConstants;
13
14
  export declare const L1RollupConstantsSchema: z.ZodObject<{
@@ -18,6 +19,7 @@ export declare const L1RollupConstantsSchema: z.ZodObject<{
18
19
  ethereumSlotDuration: z.ZodNumber;
19
20
  proofSubmissionEpochs: z.ZodNumber;
20
21
  targetCommitteeSize: z.ZodNumber;
22
+ rollupManaLimit: z.ZodNumber;
21
23
  }, "strip", z.ZodTypeAny, {
22
24
  l1StartBlock: bigint;
23
25
  l1GenesisTime: bigint;
@@ -26,6 +28,7 @@ export declare const L1RollupConstantsSchema: z.ZodObject<{
26
28
  ethereumSlotDuration: number;
27
29
  proofSubmissionEpochs: number;
28
30
  targetCommitteeSize: number;
31
+ rollupManaLimit: number;
29
32
  }, {
30
33
  l1StartBlock: string | number | bigint;
31
34
  l1GenesisTime: string | number | bigint;
@@ -34,11 +37,16 @@ export declare const L1RollupConstantsSchema: z.ZodObject<{
34
37
  ethereumSlotDuration: number;
35
38
  proofSubmissionEpochs: number;
36
39
  targetCommitteeSize: number;
40
+ rollupManaLimit: number;
37
41
  }>;
38
42
  /** Returns the timestamp for a given L2 slot. */
39
43
  export declare function getTimestampForSlot(slot: SlotNumber, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'>): bigint;
40
44
  /** Returns the slot number for a given timestamp. */
41
45
  export declare function getSlotAtTimestamp(ts: bigint, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration'>): SlotNumber;
46
+ /** Returns the timestamp of the next L1 slot boundary after the given wall-clock time. */
47
+ export declare function getNextL1SlotTimestamp(nowInSeconds: number, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'ethereumSlotDuration'>): bigint;
48
+ /** Returns the timestamp of the last L1 slot within a given L2 slot. */
49
+ export declare function getLastL1SlotTimestampForL2Slot(slot: SlotNumber, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'ethereumSlotDuration'>): bigint;
42
50
  /** Returns the L2 slot number at the next L1 block based on the current timestamp. */
43
51
  export declare function getSlotAtNextL1Block(currentL1Timestamp: bigint, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'ethereumSlotDuration'>): SlotNumber;
44
52
  /** Returns the epoch number for a given timestamp. */
@@ -68,4 +76,4 @@ export declare function getProofSubmissionDeadlineEpoch(epochNumber: EpochNumber
68
76
  export declare function getProofSubmissionDeadlineTimestamp(epochNumber: EpochNumber, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'epochDuration' | 'proofSubmissionEpochs'>): bigint;
69
77
  /** Returns the timestamp to start building a block for a given L2 slot. Computed as the start timestamp of the slot minus one L1 slot duration. */
70
78
  export declare function getSlotStartBuildTimestamp(slotNumber: SlotNumber, constants: Pick<L1RollupConstants, 'l1GenesisTime' | 'slotDuration' | 'ethereumSlotDuration'>): number;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcG9jaC1oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUl4QixNQUFNLE1BQU0saUJBQWlCLEdBQUc7SUFDOUIsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLFlBQVksRUFBRSxNQUFNLENBQUM7SUFDckIsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixvQkFBb0IsRUFBRSxNQUFNLENBQUM7SUFDN0IscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0lBQzlCLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztDQUM3QixDQUFDO0FBRUYsZUFBTyxNQUFNLHNCQUFzQixFQUFFLGlCQVFwQyxDQUFDO0FBRUYsZUFBTyxNQUFNLHVCQUF1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBVW5DLENBQUM7QUFFRixpREFBaUQ7QUFDakQsd0JBQWdCLG1CQUFtQixDQUNqQyxJQUFJLEVBQUUsVUFBVSxFQUNoQixTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsR0FBRyxjQUFjLENBQUMsVUFHckU7QUFFRCxxREFBcUQ7QUFDckQsd0JBQWdCLGtCQUFrQixDQUNoQyxFQUFFLEVBQUUsTUFBTSxFQUNWLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsQ0FBQyxHQUNuRSxVQUFVLENBSVo7QUFFRCxzRkFBc0Y7QUFDdEYsd0JBQWdCLG9CQUFvQixDQUNsQyxrQkFBa0IsRUFBRSxNQUFNLEVBQzFCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQyxHQUM1RixVQUFVLENBR1o7QUFFRCxzREFBc0Q7QUFDdEQsd0JBQWdCLHlCQUF5QixDQUN2QyxFQUFFLEVBQUUsTUFBTSxFQUNWLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLENBQUMsR0FDckYsV0FBVyxDQUViO0FBRUQsaURBQWlEO0FBQ2pELHdCQUFnQixjQUFjLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxHQUFHLFdBQVcsQ0FFakg7QUFFRCwwRUFBMEU7QUFDMUUsd0JBQWdCLG9CQUFvQixDQUNsQyxXQUFXLEVBQUUsV0FBVyxFQUN4QixTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxHQUNsRCxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FHMUI7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLEdBQUcsc0JBQXNCLENBQUMsR0FDOUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBU2xCO0FBRUQ7O0dBRUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFJdkY7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsK0JBQStCLENBQzdDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsR0FDMUQsV0FBVyxDQUViO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLG1DQUFtQyxDQUNqRCxXQUFXLEVBQUUsV0FBVyxFQUN4QixTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsR0FBRyxjQUFjLEdBQUcsZUFBZSxHQUFHLHVCQUF1QixDQUFDLFVBT2pIO0FBRUQsbUpBQW1KO0FBQ25KLHdCQUFnQiwwQkFBMEIsQ0FDeEMsVUFBVSxFQUFFLFVBQVUsRUFDdEIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEdBQUcsY0FBYyxHQUFHLHNCQUFzQixDQUFDLEdBQzVGLE1BQU0sQ0FFUiJ9
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcG9jaC1oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUl4QixNQUFNLE1BQU0saUJBQWlCLEdBQUc7SUFDOUIsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLFlBQVksRUFBRSxNQUFNLENBQUM7SUFDckIsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUN0QixvQkFBb0IsRUFBRSxNQUFNLENBQUM7SUFDN0IscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0lBQzlCLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztJQUM1QixlQUFlLEVBQUUsTUFBTSxDQUFDO0NBQ3pCLENBQUM7QUFFRixlQUFPLE1BQU0sc0JBQXNCLEVBQUUsaUJBU3BDLENBQUM7QUFFRixlQUFPLE1BQU0sdUJBQXVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFXbkMsQ0FBQztBQUVGLGlEQUFpRDtBQUNqRCx3QkFBZ0IsbUJBQW1CLENBQ2pDLElBQUksRUFBRSxVQUFVLEVBQ2hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsQ0FBQyxVQUdyRTtBQUVELHFEQUFxRDtBQUNyRCx3QkFBZ0Isa0JBQWtCLENBQ2hDLEVBQUUsRUFBRSxNQUFNLEVBQ1YsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEdBQUcsY0FBYyxDQUFDLEdBQ25FLFVBQVUsQ0FJWjtBQUVELDBGQUEwRjtBQUMxRix3QkFBZ0Isc0JBQXNCLENBQ3BDLFlBQVksRUFBRSxNQUFNLEVBQ3BCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLHNCQUFzQixDQUFDLEdBQzNFLE1BQU0sQ0FLUjtBQUVELHdFQUF3RTtBQUN4RSx3QkFBZ0IsK0JBQStCLENBQzdDLElBQUksRUFBRSxVQUFVLEVBQ2hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQyxHQUM1RixNQUFNLENBRVI7QUFFRCxzRkFBc0Y7QUFDdEYsd0JBQWdCLG9CQUFvQixDQUNsQyxrQkFBa0IsRUFBRSxNQUFNLEVBQzFCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQyxHQUM1RixVQUFVLENBR1o7QUFFRCxzREFBc0Q7QUFDdEQsd0JBQWdCLHlCQUF5QixDQUN2QyxFQUFFLEVBQUUsTUFBTSxFQUNWLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLENBQUMsR0FDckYsV0FBVyxDQUViO0FBRUQsaURBQWlEO0FBQ2pELHdCQUFnQixjQUFjLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxHQUFHLFdBQVcsQ0FFakg7QUFFRCwwRUFBMEU7QUFDMUUsd0JBQWdCLG9CQUFvQixDQUNsQyxXQUFXLEVBQUUsV0FBVyxFQUN4QixTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxHQUNsRCxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FHMUI7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLEdBQUcsc0JBQXNCLENBQUMsR0FDOUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBU2xCO0FBRUQ7O0dBRUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxHQUFHLGNBQWMsR0FBRyxlQUFlLENBQUMsVUFJdkY7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsK0JBQStCLENBQzdDLFdBQVcsRUFBRSxXQUFXLEVBQ3hCLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsR0FDMUQsV0FBVyxDQUViO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLG1DQUFtQyxDQUNqRCxXQUFXLEVBQUUsV0FBVyxFQUN4QixTQUFTLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsR0FBRyxjQUFjLEdBQUcsZUFBZSxHQUFHLHVCQUF1QixDQUFDLFVBT2pIO0FBRUQsbUpBQW1KO0FBQ25KLHdCQUFnQiwwQkFBMEIsQ0FDeEMsVUFBVSxFQUFFLFVBQVUsRUFDdEIsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEdBQUcsY0FBYyxHQUFHLHNCQUFzQixDQUFDLEdBQzVGLE1BQU0sQ0FFUiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/epoch-helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,iBAQpC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;EAUnC,CAAC;AAEF,iDAAiD;AACjD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,CAAC,UAGrE;AAED,qDAAqD;AACrD,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,CAAC,GACnE,UAAU,CAIZ;AAED,sFAAsF;AACtF,wBAAgB,oBAAoB,CAClC,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,GAC5F,UAAU,CAGZ;AAED,sDAAsD;AACtD,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC,GACrF,WAAW,CAEb;AAED,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG,WAAW,CAEjH;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAClD,CAAC,UAAU,EAAE,UAAU,CAAC,CAG1B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,sBAAsB,CAAC,GAC9G,CAAC,MAAM,EAAE,MAAM,CAAC,CASlB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC,UAIvF;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,GAC1D,WAAW,CAEb;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CACjD,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,uBAAuB,CAAC,UAOjH;AAED,mJAAmJ;AACnJ,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,GAC5F,MAAM,CAER"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/epoch-helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,iBASpC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWnC,CAAC;AAEF,iDAAiD;AACjD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,CAAC,UAGrE;AAED,qDAAqD;AACrD,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,CAAC,GACnE,UAAU,CAIZ;AAED,0FAA0F;AAC1F,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,sBAAsB,CAAC,GAC3E,MAAM,CAKR;AAED,wEAAwE;AACxE,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,GAC5F,MAAM,CAER;AAED,sFAAsF;AACtF,wBAAgB,oBAAoB,CAClC,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,GAC5F,UAAU,CAGZ;AAED,sDAAsD;AACtD,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC,GACrF,WAAW,CAEb;AAED,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG,WAAW,CAEjH;AAED,0EAA0E;AAC1E,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAClD,CAAC,UAAU,EAAE,UAAU,CAAC,CAG1B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,sBAAsB,CAAC,GAC9G,CAAC,MAAM,EAAE,MAAM,CAAC,CASlB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC,UAIvF;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,GAC1D,WAAW,CAEb;AAED;;;GAGG;AACH,wBAAgB,mCAAmC,CACjD,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,eAAe,GAAG,uBAAuB,CAAC,UAOjH;AAED,mJAAmJ;AACnJ,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,cAAc,GAAG,sBAAsB,CAAC,GAC5F,MAAM,CAER"}
@@ -8,7 +8,8 @@ export const EmptyL1RollupConstants = {
8
8
  slotDuration: 1,
9
9
  ethereumSlotDuration: 1,
10
10
  proofSubmissionEpochs: 1,
11
- targetCommitteeSize: 48
11
+ targetCommitteeSize: 48,
12
+ rollupManaLimit: Number.MAX_SAFE_INTEGER
12
13
  };
13
14
  export const L1RollupConstantsSchema = zodFor()(z.object({
14
15
  l1StartBlock: schemas.BigInt,
@@ -17,7 +18,8 @@ export const L1RollupConstantsSchema = zodFor()(z.object({
17
18
  epochDuration: z.number(),
18
19
  ethereumSlotDuration: z.number(),
19
20
  proofSubmissionEpochs: z.number(),
20
- targetCommitteeSize: z.number()
21
+ targetCommitteeSize: z.number(),
22
+ rollupManaLimit: z.number()
21
23
  }));
22
24
  /** Returns the timestamp for a given L2 slot. */ export function getTimestampForSlot(slot, constants) {
23
25
  return constants.l1GenesisTime + BigInt(slot) * BigInt(constants.slotDuration);
@@ -25,6 +27,15 @@ export const L1RollupConstantsSchema = zodFor()(z.object({
25
27
  /** Returns the slot number for a given timestamp. */ export function getSlotAtTimestamp(ts, constants) {
26
28
  return ts < constants.l1GenesisTime ? SlotNumber.ZERO : SlotNumber.fromBigInt((ts - constants.l1GenesisTime) / BigInt(constants.slotDuration));
27
29
  }
30
+ /** Returns the timestamp of the next L1 slot boundary after the given wall-clock time. */ export function getNextL1SlotTimestamp(nowInSeconds, constants) {
31
+ const now = BigInt(nowInSeconds);
32
+ const elapsed = now - constants.l1GenesisTime;
33
+ const currentL1Slot = elapsed / BigInt(constants.ethereumSlotDuration);
34
+ return constants.l1GenesisTime + (currentL1Slot + 1n) * BigInt(constants.ethereumSlotDuration);
35
+ }
36
+ /** Returns the timestamp of the last L1 slot within a given L2 slot. */ export function getLastL1SlotTimestampForL2Slot(slot, constants) {
37
+ return getTimestampForSlot(slot, constants) + BigInt(constants.slotDuration - constants.ethereumSlotDuration);
38
+ }
28
39
  /** Returns the L2 slot number at the next L1 block based on the current timestamp. */ export function getSlotAtNextL1Block(currentL1Timestamp, constants) {
29
40
  const nextL1BlockTimestamp = currentL1Timestamp + BigInt(constants.ethereumSlotDuration);
30
41
  return getSlotAtTimestamp(nextL1BlockTimestamp, constants);
@@ -49,4 +49,4 @@ export declare class GasFees {
49
49
  };
50
50
  [inspect.custom](): string;
51
51
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX2ZlZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYXMvZ2FzX2ZlZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFDTCxZQUFZLEVBQ1osV0FBVyxFQUlaLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU5QyxxQ0FBcUM7QUFDckMscUJBQWEsT0FBTztJQUNsQixTQUFnQixXQUFXLEVBQUUsT0FBTyxDQUFDO0lBQ3JDLFNBQWdCLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFFckMsWUFBWSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFHckU7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsS0FBSyxJQUFJLE9BQU8sQ0FFZjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxXQUVwQjtJQUVELEdBQUcsQ0FBQyxTQUFTLEVBQUUsYUFBYSxVQU8zQjtJQUVELEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sV0FRMUI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLFdBRXBDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FLeEM7SUFFRCxNQUFNLENBQUMsTUFBTSxZQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsT0FBTyxDQUd4RDtJQUVELFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLFdBRzNDO0lBRUQsUUFBUSxTQUVQO0lBRUQsU0FBUzs7O01BS1I7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtDQUNGIn0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX2ZlZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYXMvZ2FzX2ZlZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFDTCxZQUFZLEVBQ1osV0FBVyxFQUlaLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU5QyxxQ0FBcUM7QUFDckMscUJBQWEsT0FBTztJQUNsQixTQUFnQixXQUFXLEVBQUUsT0FBTyxDQUFDO0lBQ3JDLFNBQWdCLFdBQVcsRUFBRSxPQUFPLENBQUM7SUFFckMsWUFBWSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sRUFHckU7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsS0FBSyxJQUFJLE9BQU8sQ0FFZjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxXQUVwQjtJQUVELEdBQUcsQ0FBQyxTQUFTLEVBQUUsYUFBYSxVQU8zQjtJQUVELEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sV0FjMUI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDLFdBRXBDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FLeEM7SUFFRCxNQUFNLENBQUMsTUFBTSxZQUVaO0lBRUQsTUFBTSxDQUFDLEtBQUssWUFFWDtJQUVELE9BQU8sWUFFTjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsT0FBTyxDQUd4RDtJQUVELFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLFdBRzNDO0lBRUQsUUFBUSxTQUVQO0lBRUQsU0FBUzs7O01BS1I7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"gas_fees.d.ts","sourceRoot":"","sources":["../../src/gas/gas_fees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EAIZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,qCAAqC;AACrC,qBAAa,OAAO;IAClB,SAAgB,WAAW,EAAE,OAAO,CAAC;IACrC,SAAgB,WAAW,EAAE,OAAO,CAAC;IAErC,YAAY,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAGrE;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED,KAAK,IAAI,OAAO,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;IAED,GAAG,CAAC,SAAS,EAAE,aAAa,UAO3B;IAED,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,WAQ1B;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,WAEpC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAKxC;IAED,MAAM,CAAC,MAAM,YAEZ;IAED,MAAM,CAAC,KAAK,YAEX;IAED,OAAO,YAEN;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAGxD;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,WAG3C;IAED,QAAQ,SAEP;IAED,SAAS;;;MAKR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
1
+ {"version":3,"file":"gas_fees.d.ts","sourceRoot":"","sources":["../../src/gas/gas_fees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EAIZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,qCAAqC;AACrC,qBAAa,OAAO;IAClB,SAAgB,WAAW,EAAE,OAAO,CAAC;IACrC,SAAgB,WAAW,EAAE,OAAO,CAAC;IAErC,YAAY,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAGrE;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED,KAAK,IAAI,OAAO,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,OAAO,WAEpB;IAED,GAAG,CAAC,SAAS,EAAE,aAAa,UAO3B;IAED,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,WAc1B;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,WAEpC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAKxC;IAED,MAAM,CAAC,MAAM,YAEZ;IAED,MAAM,CAAC,KAAK,YAEX;IAED,OAAO,YAEN;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAGxD;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,WAG3C;IAED,QAAQ,SAEP;IAED,SAAS;;;MAKR;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
@@ -36,8 +36,11 @@ _computedKey = inspect.custom;
36
36
  return this.clone();
37
37
  } else if (typeof scalar === 'bigint') {
38
38
  return new GasFees(this.feePerDaGas * scalar, this.feePerL2Gas * scalar);
39
+ } else if (Number.isInteger(scalar)) {
40
+ const s = BigInt(scalar);
41
+ return new GasFees(this.feePerDaGas * s, this.feePerL2Gas * s);
39
42
  } else {
40
- return new GasFees(Number(this.feePerDaGas) * scalar, Number(this.feePerL2Gas) * scalar);
43
+ return new GasFees(BigInt(Math.ceil(Number(this.feePerDaGas) * scalar)), BigInt(Math.ceil(Number(this.feePerL2Gas) * scalar)));
41
44
  }
42
45
  }
43
46
  static from(fields) {
@@ -1,3 +1,4 @@
1
+ import { DomainSeparator } from '@aztec/constants';
1
2
  import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import type { EthAddress } from '@aztec/foundation/eth-address';
3
4
  import { AztecAddress } from '../aztec-address/index.js';
@@ -37,6 +38,21 @@ export declare function computeUniqueNoteHash(noteNonce: Fr, siloedNoteHash: Fr)
37
38
  * @returns A siloed nullifier.
38
39
  */
39
40
  export declare function siloNullifier(contract: AztecAddress, innerNullifier: Fr): Promise<Fr>;
41
+ /**
42
+ * Computes the siloed private initialization nullifier for a contract, given its address and initialization hash.
43
+ * @param contract - The contract address.
44
+ * @param initializationHash - The contract's initialization hash.
45
+ * @returns The siloed private initialization nullifier.
46
+ */
47
+ export declare function computeSiloedPrivateInitializationNullifier(contract: AztecAddress, initializationHash: Fr): Promise<Fr>;
48
+ /**
49
+ * Computes the siloed public initialization nullifier for a contract. Not all contracts emit this nullifier: it is only
50
+ * emitted when the contract has public functions that perform initialization checks (i.e. external public functions that
51
+ * are not `#[noinitcheck]` or `#[only_self]`).
52
+ * @param contract - The contract address.
53
+ * @returns The siloed public initialization nullifier.
54
+ */
55
+ export declare function computeSiloedPublicInitializationNullifier(contract: AztecAddress): Promise<Fr>;
40
56
  /**
41
57
  * Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
42
58
  * @param txRequestHash - The hash of the initial tx request.
@@ -45,6 +61,8 @@ export declare function siloNullifier(contract: AztecAddress, innerNullifier: Fr
45
61
  * @dev Must match the implementation in noir-protocol-circuits/crates/types/src/hash.nr > compute_protocol_nullifier
46
62
  */
47
63
  export declare function computeProtocolNullifier(txRequestHash: Fr): Promise<Fr>;
64
+ /** Domain-separates a raw log tag with the given domain separator. */
65
+ export declare function computeLogTag(rawTag: number | bigint | boolean | Fr | Buffer, domSep: DomainSeparator): Promise<Fr>;
48
66
  export declare function computeSiloedPrivateLogFirstField(contract: AztecAddress, field: Fr): Promise<Fr>;
49
67
  /**
50
68
  * Computes a public data tree value ready for insertion.
@@ -93,4 +111,4 @@ export declare function computeL2ToL1MessageHash({ l2Sender, l1Recipient, conten
93
111
  rollupVersion: Fr;
94
112
  chainId: Fr;
95
113
  }): Fr;
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpEOzs7O0dBSUc7QUFDSCx3QkFBc0IsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRzNEO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0Isb0JBQW9CLENBQUMsYUFBYSxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFMUY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsWUFBWSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTlFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IscUJBQXFCLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBRSxjQUFjLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFcEY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBRXJGO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLHdCQUF3QixDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV2RTtBQUVELHdCQUFnQixpQ0FBaUMsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUVoRztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUV4RDtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGtCQUFrQixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBTTFEO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQixtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUvRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RDtBQUVELHdCQUFzQiw2QkFBNkIsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsZUFNdEc7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsRUFDdkMsUUFBUSxFQUNSLFdBQVcsRUFDWCxPQUFPLEVBQ1AsYUFBYSxFQUNiLE9BQU8sRUFDUixFQUFFO0lBQ0QsUUFBUSxFQUFFLFlBQVksQ0FBQztJQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDO0lBQ3hCLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDWixhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLE9BQU8sRUFBRSxFQUFFLENBQUM7Q0FDYixNQUVBIn0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhc2gvaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFvQyxNQUFNLGtCQUFrQixDQUFDO0FBR3JGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQ7Ozs7R0FJRztBQUNILHdCQUFzQixNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FHM0Q7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUxRjtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQixZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFOUU7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUVwRjtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQixhQUFhLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FFckY7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFzQiwyQ0FBMkMsQ0FDL0QsUUFBUSxFQUFFLFlBQVksRUFDdEIsa0JBQWtCLEVBQUUsRUFBRSxHQUNyQixPQUFPLENBQUMsRUFBRSxDQUFDLENBTWI7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBc0IsMENBQTBDLENBQUMsUUFBUSxFQUFFLFlBQVksR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBR3BHO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLHdCQUF3QixDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV2RTtBQUVELHNFQUFzRTtBQUN0RSx3QkFBZ0IsYUFBYSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLE1BQU0sRUFBRSxlQUFlLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUVuSDtBQUVELHdCQUFnQixpQ0FBaUMsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUVoRztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUV4RDtBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RztBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGtCQUFrQixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLENBTTFEO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQixtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUvRDtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUV6RDtBQUVELHdCQUFzQiw2QkFBNkIsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsZUFNdEc7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsRUFDdkMsUUFBUSxFQUNSLFdBQVcsRUFDWCxPQUFPLEVBQ1AsYUFBYSxFQUNiLE9BQU8sRUFDUixFQUFFO0lBQ0QsUUFBUSxFQUFFLFlBQVksQ0FBQztJQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDO0lBQ3hCLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDWixhQUFhLEVBQUUsRUFBRSxDQUFDO0lBQ2xCLE9BQU8sRUFBRSxFQUFFLENBQUM7Q0FDYixNQUVBIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEvE;AAED,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzD;AAED,wBAAsB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,eAMtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,aAAa,EAAE,EAAE,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC;CACb,MAEA"}
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/hash/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAoC,MAAM,kBAAkB,CAAC;AAGrF,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAE1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEpF;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAErF;AAED;;;;;GAKG;AACH,wBAAsB,2CAA2C,CAC/D,QAAQ,EAAE,YAAY,EACtB,kBAAkB,EAAE,EAAE,GACrB,OAAO,CAAC,EAAE,CAAC,CAMb;AAED;;;;;;GAMG;AACH,wBAAsB,0CAA0C,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,CAGpG;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEvE;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,EAAE,CAAC,CAEnH;AAED,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAM1D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAEzD;AAED,wBAAsB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,eAMtG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,OAAO,EAAE,EAAE,CAAC;IACZ,aAAa,EAAE,EAAE,CAAC;IAClB,OAAO,EAAE,EAAE,CAAC;CACb,MAEA"}
package/dest/hash/hash.js CHANGED
@@ -57,6 +57,30 @@ import { AztecAddress } from '../aztec-address/index.js';
57
57
  innerNullifier
58
58
  ], DomainSeparator.SILOED_NULLIFIER);
59
59
  }
60
+ /**
61
+ * Computes the siloed private initialization nullifier for a contract, given its address and initialization hash.
62
+ * @param contract - The contract address.
63
+ * @param initializationHash - The contract's initialization hash.
64
+ * @returns The siloed private initialization nullifier.
65
+ */ export async function computeSiloedPrivateInitializationNullifier(contract, initializationHash) {
66
+ const innerNullifier = await poseidon2HashWithSeparator([
67
+ contract,
68
+ initializationHash
69
+ ], DomainSeparator.PRIVATE_INITIALIZATION_NULLIFIER);
70
+ return siloNullifier(contract, innerNullifier);
71
+ }
72
+ /**
73
+ * Computes the siloed public initialization nullifier for a contract. Not all contracts emit this nullifier: it is only
74
+ * emitted when the contract has public functions that perform initialization checks (i.e. external public functions that
75
+ * are not `#[noinitcheck]` or `#[only_self]`).
76
+ * @param contract - The contract address.
77
+ * @returns The siloed public initialization nullifier.
78
+ */ export async function computeSiloedPublicInitializationNullifier(contract) {
79
+ const innerNullifier = await poseidon2HashWithSeparator([
80
+ contract
81
+ ], DomainSeparator.PUBLIC_INITIALIZATION_NULLIFIER);
82
+ return siloNullifier(contract, innerNullifier);
83
+ }
60
84
  /**
61
85
  * Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
62
86
  * @param txRequestHash - The hash of the initial tx request.
@@ -66,6 +90,11 @@ import { AztecAddress } from '../aztec-address/index.js';
66
90
  */ export function computeProtocolNullifier(txRequestHash) {
67
91
  return siloNullifier(AztecAddress.fromBigInt(NULL_MSG_SENDER_CONTRACT_ADDRESS), txRequestHash);
68
92
  }
93
+ /** Domain-separates a raw log tag with the given domain separator. */ export function computeLogTag(rawTag, domSep) {
94
+ return poseidon2HashWithSeparator([
95
+ new Fr(rawTag)
96
+ ], domSep);
97
+ }
69
98
  export function computeSiloedPrivateLogFirstField(contract, field) {
70
99
  return poseidon2HashWithSeparator([
71
100
  contract,
@@ -2,51 +2,57 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { z } from 'zod';
3
3
  import type { FunctionSelector } from '../abi/function_selector.js';
4
4
  import type { AztecAddress } from '../aztec-address/index.js';
5
- type AllowedInstance = {
6
- address: AztecAddress;
7
- };
8
5
  type AllowedInstanceFunction = {
9
6
  address: AztecAddress;
10
7
  selector: FunctionSelector;
11
- };
12
- type AllowedClass = {
13
- classId: Fr;
8
+ onlySelf?: boolean;
9
+ rejectNullMsgSender?: boolean;
10
+ calldataLength?: number;
14
11
  };
15
12
  type AllowedClassFunction = {
16
13
  classId: Fr;
17
14
  selector: FunctionSelector;
15
+ onlySelf?: boolean;
16
+ rejectNullMsgSender?: boolean;
17
+ calldataLength?: number;
18
18
  };
19
- export type AllowedElement = AllowedInstance | AllowedInstanceFunction | AllowedClass | AllowedClassFunction;
19
+ export type AllowedElement = AllowedInstanceFunction | AllowedClassFunction;
20
20
  export declare const AllowedElementSchema: z.ZodUnion<[z.ZodObject<{
21
21
  address: import("../schemas/index.js").ZodFor<AztecAddress>;
22
22
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
23
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
24
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
25
+ calldataLength: z.ZodOptional<z.ZodNumber>;
23
26
  }, "strip", z.ZodTypeAny, {
24
27
  address: AztecAddress;
25
28
  selector: FunctionSelector;
29
+ onlySelf?: boolean | undefined;
30
+ rejectNullMsgSender?: boolean | undefined;
31
+ calldataLength?: number | undefined;
26
32
  }, {
27
33
  address?: any;
28
34
  selector?: any;
29
- }>, z.ZodObject<{
30
- address: import("../schemas/index.js").ZodFor<AztecAddress>;
31
- }, "strip", z.ZodTypeAny, {
32
- address: AztecAddress;
33
- }, {
34
- address?: any;
35
+ onlySelf?: boolean | undefined;
36
+ rejectNullMsgSender?: boolean | undefined;
37
+ calldataLength?: number | undefined;
35
38
  }>, z.ZodObject<{
36
39
  classId: import("../schemas/index.js").ZodFor<Fr>;
37
40
  selector: import("../schemas/index.js").ZodFor<FunctionSelector>;
41
+ onlySelf: z.ZodOptional<z.ZodBoolean>;
42
+ rejectNullMsgSender: z.ZodOptional<z.ZodBoolean>;
43
+ calldataLength: z.ZodOptional<z.ZodNumber>;
38
44
  }, "strip", z.ZodTypeAny, {
39
45
  classId: Fr;
40
46
  selector: FunctionSelector;
47
+ onlySelf?: boolean | undefined;
48
+ rejectNullMsgSender?: boolean | undefined;
49
+ calldataLength?: number | undefined;
41
50
  }, {
42
51
  classId?: any;
43
52
  selector?: any;
44
- }>, z.ZodObject<{
45
- classId: import("../schemas/index.js").ZodFor<Fr>;
46
- }, "strip", z.ZodTypeAny, {
47
- classId: Fr;
48
- }, {
49
- classId?: any;
53
+ onlySelf?: boolean | undefined;
54
+ rejectNullMsgSender?: boolean | undefined;
55
+ calldataLength?: number | undefined;
50
56
  }>]>;
51
57
  export {};
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssZUFBZSxHQUFHO0lBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQTtDQUFFLENBQUM7QUFDakQsS0FBSyx1QkFBdUIsR0FBRztJQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBQ3JGLEtBQUssWUFBWSxHQUFHO0lBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQTtDQUFFLENBQUM7QUFDcEMsS0FBSyxvQkFBb0IsR0FBRztJQUFFLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDO0FBRXhFLE1BQU0sTUFBTSxjQUFjLEdBQUcsZUFBZSxHQUFHLHVCQUF1QixHQUFHLFlBQVksR0FBRyxvQkFBb0IsQ0FBQztBQUU3RyxlQUFPLE1BQU0sb0JBQW9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFPaEMsQ0FBQyJ9
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb3dlZF9lbGVtZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9hbGxvd2VkX2VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRzlELEtBQUssdUJBQXVCLEdBQUc7SUFDN0IsT0FBTyxFQUFFLFlBQVksQ0FBQztJQUN0QixRQUFRLEVBQUUsZ0JBQWdCLENBQUM7SUFDM0IsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQ25CLG1CQUFtQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzlCLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUN6QixDQUFDO0FBQ0YsS0FBSyxvQkFBb0IsR0FBRztJQUMxQixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osUUFBUSxFQUFFLGdCQUFnQixDQUFDO0lBQzNCLFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNuQixtQkFBbUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUM5QixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDekIsQ0FBQztBQUVGLE1BQU0sTUFBTSxjQUFjLEdBQUcsdUJBQXVCLEdBQUcsb0JBQW9CLENBQUM7QUFFNUUsZUFBTyxNQUFNLG9CQUFvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUJoQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,eAAe,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AACjD,KAAK,uBAAuB,GAAG;IAAE,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACrF,KAAK,YAAY,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAC;AACpC,KAAK,oBAAoB,GAAG;IAAE,OAAO,EAAE,EAAE,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,uBAAuB,GAAG,YAAY,GAAG,oBAAoB,CAAC;AAE7G,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOhC,CAAC"}
1
+ {"version":3,"file":"allowed_element.d.ts","sourceRoot":"","sources":["../../src/interfaces/allowed_element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,EAAE,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,uBAAuB,GAAG,oBAAoB,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBhC,CAAC"}
@@ -3,16 +3,16 @@ import { schemas, zodFor } from '../schemas/index.js';
3
3
  export const AllowedElementSchema = zodFor()(z.union([
4
4
  z.object({
5
5
  address: schemas.AztecAddress,
6
- selector: schemas.FunctionSelector
7
- }),
8
- z.object({
9
- address: schemas.AztecAddress
6
+ selector: schemas.FunctionSelector,
7
+ onlySelf: z.boolean().optional(),
8
+ rejectNullMsgSender: z.boolean().optional(),
9
+ calldataLength: z.number().optional()
10
10
  }),
11
11
  z.object({
12
12
  classId: schemas.Fr,
13
- selector: schemas.FunctionSelector
14
- }),
15
- z.object({
16
- classId: schemas.Fr
13
+ selector: schemas.FunctionSelector,
14
+ onlySelf: z.boolean().optional(),
15
+ rejectNullMsgSender: z.boolean().optional(),
16
+ calldataLength: z.number().optional()
17
17
  })
18
18
  ]));
@@ -58,4 +58,4 @@ export declare const ArchiverSpecificConfigSchema: z.ZodObject<{
58
58
  }>;
59
59
  export type ArchiverApi = Omit<L2BlockSource & L2LogsSource & ContractDataSource & L1ToL2MessageSource, 'start' | 'stop'>;
60
60
  export declare const ArchiverApiSchema: ApiSchemaFor<ArchiverApi>;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQU14QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFLL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBd0V2RCxDQUFDIn0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJjaGl2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnRlcmZhY2VzL2FyY2hpdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFakYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQU14QixPQUFPLEVBQUUsS0FBSyxhQUFhLEVBQWdCLE1BQU0sNkJBQTZCLENBQUM7QUFLL0UsT0FBTyxFQUVMLEtBQUssa0JBQWtCLEVBRXhCLE1BQU0sc0JBQXNCLENBQUM7QUFNOUIsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU9uRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxrRkFBa0Y7SUFDbEYseUJBQXlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFbkMsK0VBQStFO0lBQy9FLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTNCLDJDQUEyQztJQUMzQyxxQkFBcUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUUvQix5Q0FBeUM7SUFDekMsV0FBVyxFQUFFLG1CQUFtQixDQUFDO0lBRWpDLDZFQUE2RTtJQUM3RSxPQUFPLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFakIscUdBQXFHO0lBQ3JHLHNCQUFzQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWhDLHFGQUFxRjtJQUNyRiwrQkFBK0IsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUV6QyxrR0FBa0c7SUFDbEcseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsMEVBQTBFO0lBQzFFLGtDQUFrQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0NBQzlDLENBQUM7QUFFRixlQUFPLE1BQU0sNEJBQTRCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFTdkMsQ0FBQztBQUVILE1BQU0sTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUM1QixhQUFhLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLG1CQUFtQixFQUN2RSxPQUFPLEdBQUcsTUFBTSxDQUNqQixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxXQUFXLENBeUV2RCxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAK/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAwEvD,CAAC"}
1
+ {"version":3,"file":"archiver.d.ts","sourceRoot":"","sources":["../../src/interfaces/archiver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAEjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAE,KAAK,aAAa,EAAgB,MAAM,6BAA6B,CAAC;AAK/E,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAOnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,kFAAkF;IAClF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,yCAAyC;IACzC,WAAW,EAAE,mBAAmB,CAAC;IAEjC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,qGAAqG;IACrG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,qFAAqF;IACrF,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,kGAAkG;IAClG,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,0EAA0E;IAC1E,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EASvC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,aAAa,GAAG,YAAY,GAAG,kBAAkB,GAAG,mBAAmB,EACvE,OAAO,GAAG,MAAM,CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,WAAW,CAyEvD,CAAC"}
@@ -37,6 +37,7 @@ export const ArchiverApiSchema = {
37
37
  getBlockNumber: z.function().args().returns(BlockNumberSchema),
38
38
  getProvenBlockNumber: z.function().args().returns(BlockNumberSchema),
39
39
  getCheckpointedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
40
+ getCheckpointNumber: z.function().args().returns(CheckpointNumberSchema),
40
41
  getFinalizedL2BlockNumber: z.function().args().returns(BlockNumberSchema),
41
42
  getBlock: z.function().args(BlockNumberSchema).returns(L2Block.schema.optional()),
42
43
  getBlockHeader: z.function().args(z.union([
@@ -58,8 +59,8 @@ export const ArchiverApiSchema = {
58
59
  getL2BlockByArchive: z.function().args(schemas.Fr).returns(L2Block.schema.optional()),
59
60
  getTxEffect: z.function().args(TxHash.schema).returns(indexedTxSchema().optional()),
60
61
  getSettledTxReceipt: z.function().args(TxHash.schema).returns(TxReceipt.schema.optional()),
61
- getL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
62
- getL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
62
+ getSyncedL2SlotNumber: z.function().args().returns(schemas.SlotNumber.optional()),
63
+ getSyncedL2EpochNumber: z.function().args().returns(EpochNumberSchema.optional()),
63
64
  getCheckpointsForEpoch: z.function().args(EpochNumberSchema).returns(z.array(Checkpoint.schema)),
64
65
  getCheckpointsDataForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointDataSchema)),
65
66
  getCheckpointedBlocksForEpoch: z.function().args(EpochNumberSchema).returns(z.array(CheckpointedL2Block.schema)),