@aztec/stdlib 3.0.3 → 4.0.0-devnet.1-patch.1

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 (720) hide show
  1. package/dest/abi/abi.d.ts +602 -4
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +7 -7
  4. package/dest/abi/contract_artifact.d.ts +2 -2
  5. package/dest/abi/contract_artifact.d.ts.map +1 -1
  6. package/dest/abi/contract_artifact.js +1 -1
  7. package/dest/abi/function_call.d.ts +47 -9
  8. package/dest/abi/function_call.d.ts.map +1 -1
  9. package/dest/abi/function_call.js +20 -3
  10. package/dest/abi/function_selector.d.ts +2 -1
  11. package/dest/abi/function_selector.d.ts.map +1 -1
  12. package/dest/abi/function_selector.js +7 -0
  13. package/dest/abi/selector.js +3 -1
  14. package/dest/abi/utils.d.ts +7 -1
  15. package/dest/abi/utils.d.ts.map +1 -1
  16. package/dest/abi/utils.js +7 -0
  17. package/dest/auth_witness/auth_witness.d.ts +2 -1
  18. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  19. package/dest/avm/avm.d.ts +62 -62
  20. package/dest/avm/avm.js +1 -1
  21. package/dest/avm/avm_accumulated_data.d.ts +30 -3
  22. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  23. package/dest/avm/avm_accumulated_data.js +5 -2
  24. package/dest/avm/avm_circuit_public_inputs.d.ts +9 -9
  25. package/dest/avm/avm_circuit_public_inputs.js +3 -1
  26. package/dest/avm/avm_proving_request.d.ts +299 -299
  27. package/dest/avm/contract_storage_read.d.ts +13 -1
  28. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  29. package/dest/avm/contract_storage_update_request.d.ts +13 -1
  30. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  31. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -1
  32. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  33. package/dest/avm/public_data_read.d.ts +10 -1
  34. package/dest/avm/public_data_read.d.ts.map +1 -1
  35. package/dest/avm/public_data_update_request.d.ts +10 -1
  36. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  37. package/dest/avm/public_data_update_request.js +3 -1
  38. package/dest/avm/public_data_write.d.ts +7 -1
  39. package/dest/avm/public_data_write.d.ts.map +1 -1
  40. package/dest/avm/public_inner_call_request.d.ts +4 -1
  41. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  42. package/dest/avm/public_inner_call_request.js +3 -1
  43. package/dest/avm/revert_code.d.ts +4 -4
  44. package/dest/avm/revert_code.d.ts.map +1 -1
  45. package/dest/avm/revert_code.js +3 -1
  46. package/dest/aztec-address/index.js +4 -2
  47. package/dest/block/attestation_info.d.ts +5 -5
  48. package/dest/block/attestation_info.d.ts.map +1 -1
  49. package/dest/block/attestation_info.js +4 -4
  50. package/dest/block/block_hash.d.ts +18 -14
  51. package/dest/block/block_hash.d.ts.map +1 -1
  52. package/dest/block/block_hash.js +22 -20
  53. package/dest/block/block_parameter.d.ts +4 -3
  54. package/dest/block/block_parameter.d.ts.map +1 -1
  55. package/dest/block/block_parameter.js +2 -0
  56. package/dest/block/body.d.ts +1 -1
  57. package/dest/block/body.d.ts.map +1 -1
  58. package/dest/block/body.js +5 -2
  59. package/dest/block/checkpointed_l2_block.d.ts +150 -0
  60. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  61. package/dest/block/checkpointed_l2_block.js +46 -0
  62. package/dest/block/in_block.d.ts +9 -9
  63. package/dest/block/in_block.d.ts.map +1 -1
  64. package/dest/block/in_block.js +5 -5
  65. package/dest/block/index.d.ts +2 -4
  66. package/dest/block/index.d.ts.map +1 -1
  67. package/dest/block/index.js +1 -3
  68. package/dest/block/l2_block.d.ts +57 -57
  69. package/dest/block/l2_block.d.ts.map +1 -1
  70. package/dest/block/l2_block.js +64 -108
  71. package/dest/block/l2_block_source.d.ts +344 -90
  72. package/dest/block/l2_block_source.d.ts.map +1 -1
  73. package/dest/block/l2_block_source.js +25 -6
  74. package/dest/block/l2_block_stream/index.d.ts +2 -1
  75. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  76. package/dest/block/l2_block_stream/index.js +1 -0
  77. package/dest/block/l2_block_stream/interfaces.d.ts +15 -5
  78. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  79. package/dest/block/l2_block_stream/l2_block_stream.d.ts +13 -3
  80. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  81. package/dest/block/l2_block_stream/l2_block_stream.js +115 -32
  82. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +24 -16
  83. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  84. package/dest/block/l2_block_stream/l2_tips_memory_store.js +55 -61
  85. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  86. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  87. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  88. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  89. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  90. package/dest/block/test/l2_tips_store_test_suite.js +478 -41
  91. package/dest/block/validate_block_result.d.ts +24 -24
  92. package/dest/block/validate_block_result.d.ts.map +1 -1
  93. package/dest/block/validate_block_result.js +18 -17
  94. package/dest/checkpoint/checkpoint.d.ts +45 -20
  95. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  96. package/dest/checkpoint/checkpoint.js +59 -8
  97. package/dest/checkpoint/checkpoint_info.d.ts +38 -0
  98. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  99. package/dest/checkpoint/checkpoint_info.js +34 -0
  100. package/dest/checkpoint/index.d.ts +2 -1
  101. package/dest/checkpoint/index.d.ts.map +1 -1
  102. package/dest/checkpoint/index.js +1 -0
  103. package/dest/checkpoint/published_checkpoint.d.ts +30 -22
  104. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  105. package/dest/checkpoint/published_checkpoint.js +14 -3
  106. package/dest/config/index.d.ts +2 -1
  107. package/dest/config/index.d.ts.map +1 -1
  108. package/dest/config/index.js +1 -0
  109. package/dest/config/node-rpc-config.js +1 -1
  110. package/dest/config/sequencer-config.d.ts +10 -0
  111. package/dest/config/sequencer-config.d.ts.map +1 -0
  112. package/dest/config/sequencer-config.js +12 -0
  113. package/dest/contract/complete_address.d.ts +4 -1
  114. package/dest/contract/complete_address.d.ts.map +1 -1
  115. package/dest/contract/contract_address.js +1 -1
  116. package/dest/contract/contract_class_id.d.ts +1 -1
  117. package/dest/contract/contract_class_id.js +2 -2
  118. package/dest/contract/contract_deployment_data.d.ts +5 -5
  119. package/dest/contract/index.d.ts +1 -3
  120. package/dest/contract/index.d.ts.map +1 -1
  121. package/dest/contract/index.js +0 -2
  122. package/dest/contract/interfaces/contract_class.d.ts +11 -13
  123. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  124. package/dest/contract/interfaces/contract_class.js +18 -18
  125. package/dest/contract/interfaces/contract_instance.d.ts +28 -29
  126. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  127. package/dest/contract/interfaces/contract_instance.js +5 -5
  128. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -7
  129. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  130. package/dest/contract/interfaces/contract_instance_update.js +5 -5
  131. package/dest/contract/interfaces/node-info.d.ts +3 -1
  132. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  133. package/dest/contract/interfaces/node-info.js +2 -1
  134. package/dest/contract/private_function.d.ts +1 -1
  135. package/dest/contract/private_function.d.ts.map +1 -1
  136. package/dest/contract/private_function.js +2 -3
  137. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  138. package/dest/contract/private_function_membership_proof.js +1 -1
  139. package/dest/database-version/database_version.d.ts +58 -0
  140. package/dest/database-version/database_version.d.ts.map +1 -0
  141. package/dest/database-version/database_version.js +69 -0
  142. package/dest/database-version/version_manager.d.ts +3 -49
  143. package/dest/database-version/version_manager.d.ts.map +1 -1
  144. package/dest/database-version/version_manager.js +1 -64
  145. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +2 -2
  146. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  147. package/dest/delayed_public_mutable/delayed_public_mutable_values.js +7 -10
  148. package/dest/deserialization/index.d.ts +11 -0
  149. package/dest/deserialization/index.d.ts.map +1 -0
  150. package/dest/deserialization/index.js +10 -0
  151. package/dest/epoch-helpers/index.d.ts +7 -1
  152. package/dest/epoch-helpers/index.d.ts.map +1 -1
  153. package/dest/epoch-helpers/index.js +12 -6
  154. package/dest/errors/proving_error.d.ts +2 -2
  155. package/dest/errors/proving_error.d.ts.map +1 -1
  156. package/dest/gas/gas.js +3 -1
  157. package/dest/gas/gas_fees.js +3 -1
  158. package/dest/hash/hash.d.ts +1 -9
  159. package/dest/hash/hash.d.ts.map +1 -1
  160. package/dest/hash/hash.js +2 -14
  161. package/dest/hash/map_slot.d.ts +1 -1
  162. package/dest/hash/map_slot.d.ts.map +1 -1
  163. package/dest/hash/map_slot.js +4 -3
  164. package/dest/interfaces/allowed_element.d.ts +7 -8
  165. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  166. package/dest/interfaces/allowed_element.js +3 -3
  167. package/dest/interfaces/api_limit.d.ts +3 -1
  168. package/dest/interfaces/api_limit.d.ts.map +1 -1
  169. package/dest/interfaces/api_limit.js +2 -0
  170. package/dest/interfaces/archiver.d.ts +6 -6
  171. package/dest/interfaces/archiver.d.ts.map +1 -1
  172. package/dest/interfaces/archiver.js +25 -15
  173. package/dest/interfaces/aztec-node-admin.d.ts +110 -41
  174. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  175. package/dest/interfaces/aztec-node-admin.js +6 -4
  176. package/dest/interfaces/aztec-node.d.ts +77 -79
  177. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  178. package/dest/interfaces/aztec-node.js +16 -17
  179. package/dest/interfaces/block-builder.d.ts +22 -13
  180. package/dest/interfaces/block-builder.d.ts.map +1 -1
  181. package/dest/interfaces/block-builder.js +16 -1
  182. package/dest/interfaces/configs.d.ts +56 -27
  183. package/dest/interfaces/configs.d.ts.map +1 -1
  184. package/dest/interfaces/configs.js +12 -6
  185. package/dest/interfaces/get_logs_response.d.ts +27 -5
  186. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  187. package/dest/interfaces/get_logs_response.js +5 -4
  188. package/dest/interfaces/l2_logs_source.d.ts +21 -8
  189. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  190. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  191. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  192. package/dest/interfaces/p2p.d.ts +7 -9
  193. package/dest/interfaces/p2p.d.ts.map +1 -1
  194. package/dest/interfaces/p2p.js +3 -4
  195. package/dest/interfaces/prover-broker.d.ts +16 -1
  196. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  197. package/dest/interfaces/prover-broker.js +4 -1
  198. package/dest/interfaces/prover-client.d.ts +19 -3
  199. package/dest/interfaces/prover-client.d.ts.map +1 -1
  200. package/dest/interfaces/prover-client.js +16 -4
  201. package/dest/interfaces/proving-job.d.ts +218 -218
  202. package/dest/interfaces/proving-job.d.ts.map +1 -1
  203. package/dest/interfaces/proving-job.js +1 -7
  204. package/dest/interfaces/server_circuit_prover.d.ts +4 -3
  205. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  206. package/dest/interfaces/slasher.d.ts +9 -1
  207. package/dest/interfaces/slasher.d.ts.map +1 -1
  208. package/dest/interfaces/slasher.js +5 -3
  209. package/dest/interfaces/tx_provider.d.ts +3 -3
  210. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  211. package/dest/interfaces/validator.d.ts +161 -26
  212. package/dest/interfaces/validator.d.ts.map +1 -1
  213. package/dest/interfaces/validator.js +12 -7
  214. package/dest/interfaces/world_state.d.ts +17 -8
  215. package/dest/interfaces/world_state.d.ts.map +1 -1
  216. package/dest/kernel/claimed_length_array.js +3 -1
  217. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +6 -5
  218. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  219. package/dest/kernel/hints/build_note_hash_read_request_hints.js +19 -10
  220. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  221. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  222. package/dest/kernel/hints/build_nullifier_read_request_hints.js +16 -8
  223. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  224. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  225. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +1 -3
  226. package/dest/kernel/hints/key_validation_hint.d.ts +2 -1
  227. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  228. package/dest/kernel/hints/key_validation_request.d.ts +2 -1
  229. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  230. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +6 -1
  231. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  232. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +13 -1
  233. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  234. package/dest/kernel/hints/read_request.d.ts +7 -1
  235. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  236. package/dest/kernel/hints/read_request_hints.d.ts +7 -1
  237. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  238. package/dest/kernel/hints/transient_data_squashing_hint.js +3 -1
  239. package/dest/kernel/log_hash.js +3 -1
  240. package/dest/kernel/private_accumulated_data.d.ts +23 -1
  241. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  242. package/dest/kernel/private_call_data.d.ts +25 -1
  243. package/dest/kernel/private_call_data.d.ts.map +1 -1
  244. package/dest/kernel/private_call_request.d.ts +16 -1
  245. package/dest/kernel/private_call_request.d.ts.map +1 -1
  246. package/dest/kernel/private_circuit_public_inputs.d.ts +120 -47
  247. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  248. package/dest/kernel/private_circuit_public_inputs.js +59 -59
  249. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +31 -1
  250. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  251. package/dest/kernel/private_kernel_data.d.ts +7 -1
  252. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  253. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +22 -1
  254. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  255. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +7 -1
  256. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  257. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +4 -1
  258. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  259. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +10 -1
  260. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  261. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -1
  262. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  263. package/dest/kernel/private_log_data.js +5 -2
  264. package/dest/kernel/private_to_avm_accumulated_data.d.ts +2 -2
  265. package/dest/kernel/private_to_avm_accumulated_data.js +5 -2
  266. package/dest/kernel/private_to_public_accumulated_data.js +3 -1
  267. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +17 -1
  268. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  269. package/dest/kernel/private_to_rollup_accumulated_data.js +3 -1
  270. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +16 -1
  271. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  272. package/dest/kernel/private_validation_requests.d.ts +10 -1
  273. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  274. package/dest/kernel/private_validation_requests.js +3 -1
  275. package/dest/kernel/public_call_request.d.ts +22 -1
  276. package/dest/kernel/public_call_request.d.ts.map +1 -1
  277. package/dest/kernel/public_call_request.js +5 -2
  278. package/dest/kernel/utils/optional_number.d.ts +7 -1
  279. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  280. package/dest/keys/derivation.d.ts +3 -3
  281. package/dest/keys/derivation.js +8 -8
  282. package/dest/keys/key_types.d.ts +1 -1
  283. package/dest/keys/public_keys.d.ts +5 -1
  284. package/dest/keys/public_keys.d.ts.map +1 -1
  285. package/dest/keys/utils.d.ts +1 -1
  286. package/dest/keys/utils.d.ts.map +1 -1
  287. package/dest/keys/utils.js +7 -3
  288. package/dest/l1-contracts/slash_factory.d.ts +1 -1
  289. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  290. package/dest/l1-contracts/slash_factory.js +1 -0
  291. package/dest/logs/contract_class_log.js +3 -1
  292. package/dest/logs/extended_contract_class_log.d.ts +3 -1
  293. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  294. package/dest/logs/extended_public_log.d.ts +17 -3
  295. package/dest/logs/extended_public_log.d.ts.map +1 -1
  296. package/dest/logs/index.d.ts +3 -2
  297. package/dest/logs/index.d.ts.map +1 -1
  298. package/dest/logs/index.js +2 -1
  299. package/dest/logs/log_id.d.ts +22 -7
  300. package/dest/logs/log_id.d.ts.map +1 -1
  301. package/dest/logs/log_id.js +23 -13
  302. package/dest/logs/private_log.d.ts +1 -1
  303. package/dest/logs/private_log.d.ts.map +1 -1
  304. package/dest/logs/private_log.js +5 -2
  305. package/dest/logs/public_log.js +3 -1
  306. package/dest/logs/siloed_tag.d.ts +23 -0
  307. package/dest/logs/siloed_tag.d.ts.map +1 -0
  308. package/dest/logs/siloed_tag.js +31 -0
  309. package/dest/logs/tag.d.ts +21 -0
  310. package/dest/logs/tag.d.ts.map +1 -0
  311. package/dest/logs/tag.js +30 -0
  312. package/dest/logs/tx_scoped_l2_log.d.ts +24 -33
  313. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  314. package/dest/logs/tx_scoped_l2_log.js +37 -43
  315. package/dest/messaging/in_hash.d.ts +4 -2
  316. package/dest/messaging/in_hash.d.ts.map +1 -1
  317. package/dest/messaging/in_hash.js +3 -1
  318. package/dest/messaging/inbox_leaf.d.ts +3 -1
  319. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  320. package/dest/messaging/l1_actor.d.ts +7 -1
  321. package/dest/messaging/l1_actor.d.ts.map +1 -1
  322. package/dest/messaging/l1_to_l2_message.d.ts +6 -1
  323. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  324. package/dest/messaging/l2_actor.d.ts +7 -1
  325. package/dest/messaging/l2_actor.d.ts.map +1 -1
  326. package/dest/messaging/l2_to_l1_membership.d.ts +88 -6
  327. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  328. package/dest/messaging/l2_to_l1_membership.js +160 -42
  329. package/dest/messaging/out_hash.d.ts +41 -3
  330. package/dest/messaging/out_hash.d.ts.map +1 -1
  331. package/dest/messaging/out_hash.js +54 -19
  332. package/dest/note/note_dao.d.ts +36 -5
  333. package/dest/note/note_dao.d.ts.map +1 -1
  334. package/dest/note/note_dao.js +15 -12
  335. package/dest/p2p/attestation_utils.d.ts +3 -3
  336. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  337. package/dest/p2p/attestation_utils.js +1 -1
  338. package/dest/p2p/block_proposal.d.ts +102 -23
  339. package/dest/p2p/block_proposal.d.ts.map +1 -1
  340. package/dest/p2p/block_proposal.js +140 -39
  341. package/dest/p2p/checkpoint_attestation.d.ts +81 -0
  342. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  343. package/dest/p2p/{block_attestation.js → checkpoint_attestation.js} +22 -19
  344. package/dest/p2p/checkpoint_proposal.d.ts +174 -0
  345. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  346. package/dest/p2p/checkpoint_proposal.js +238 -0
  347. package/dest/p2p/consensus_payload.d.ts +9 -9
  348. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  349. package/dest/p2p/consensus_payload.js +3 -5
  350. package/dest/p2p/constants.d.ts +5 -0
  351. package/dest/p2p/constants.d.ts.map +1 -0
  352. package/dest/p2p/constants.js +3 -0
  353. package/dest/p2p/gossipable.d.ts +4 -3
  354. package/dest/p2p/gossipable.d.ts.map +1 -1
  355. package/dest/p2p/gossipable.js +16 -5
  356. package/dest/p2p/index.d.ts +5 -2
  357. package/dest/p2p/index.d.ts.map +1 -1
  358. package/dest/p2p/index.js +4 -1
  359. package/dest/p2p/message_validator.d.ts +18 -3
  360. package/dest/p2p/message_validator.d.ts.map +1 -1
  361. package/dest/p2p/message_validator.js +2 -1
  362. package/dest/p2p/signature_utils.d.ts +5 -3
  363. package/dest/p2p/signature_utils.d.ts.map +1 -1
  364. package/dest/p2p/signature_utils.js +3 -1
  365. package/dest/p2p/signed_txs.d.ts +42 -0
  366. package/dest/p2p/signed_txs.d.ts.map +1 -0
  367. package/dest/p2p/signed_txs.js +75 -0
  368. package/dest/p2p/topic_type.d.ts +3 -2
  369. package/dest/p2p/topic_type.d.ts.map +1 -1
  370. package/dest/p2p/topic_type.js +10 -3
  371. package/dest/parity/parity_base_private_inputs.d.ts +3 -1
  372. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  373. package/dest/parity/parity_public_inputs.d.ts +4 -1
  374. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  375. package/dest/parity/parity_root_private_inputs.d.ts +2 -1
  376. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  377. package/dest/proofs/chonk_proof.d.ts +1 -1
  378. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  379. package/dest/proofs/chonk_proof.js +9 -4
  380. package/dest/proofs/proof.d.ts +4 -1
  381. package/dest/proofs/proof.d.ts.map +1 -1
  382. package/dest/proofs/recursive_proof.d.ts +10 -1
  383. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  384. package/dest/rollup/avm_proof_data.d.ts +1 -3
  385. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  386. package/dest/rollup/avm_proof_data.js +1 -9
  387. package/dest/rollup/base_rollup_hints.d.ts +34 -1
  388. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  389. package/dest/rollup/block_constant_data.d.ts +12 -1
  390. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  391. package/dest/rollup/block_headers_hash.js +1 -1
  392. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +4 -1
  393. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  394. package/dest/rollup/block_rollup_public_inputs.d.ts +47 -11
  395. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  396. package/dest/rollup/block_rollup_public_inputs.js +8 -12
  397. package/dest/rollup/block_root_rollup_private_inputs.d.ts +64 -1
  398. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  399. package/dest/rollup/checkpoint_constant_data.d.ts +11 -1
  400. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  401. package/dest/rollup/checkpoint_constant_data.js +4 -1
  402. package/dest/rollup/checkpoint_header.d.ts +46 -12
  403. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  404. package/dest/rollup/checkpoint_header.js +53 -20
  405. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +4 -1
  406. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  407. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +46 -6
  408. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  409. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -3
  410. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +44 -3
  411. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  412. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +13 -2
  413. package/dest/rollup/epoch_constant_data.d.ts +16 -1
  414. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  415. package/dest/rollup/root_rollup_private_inputs.d.ts +6 -1
  416. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  417. package/dest/rollup/root_rollup_public_inputs.d.ts +21 -6
  418. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  419. package/dest/rollup/root_rollup_public_inputs.js +10 -4
  420. package/dest/rollup/tree_snapshot_diff_hints.d.ts +24 -1
  421. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  422. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +4 -1
  423. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  424. package/dest/rollup/tx_rollup_public_inputs.d.ts +29 -1
  425. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  426. package/dest/schemas/schemas.d.ts +5 -3
  427. package/dest/schemas/schemas.d.ts.map +1 -1
  428. package/dest/schemas/schemas.js +2 -1
  429. package/dest/slashing/empire.d.ts +1 -1
  430. package/dest/slashing/empire.d.ts.map +1 -1
  431. package/dest/slashing/empire.js +2 -0
  432. package/dest/slashing/helpers.d.ts +2 -2
  433. package/dest/slashing/helpers.d.ts.map +1 -1
  434. package/dest/slashing/helpers.js +6 -0
  435. package/dest/slashing/tally.d.ts +2 -1
  436. package/dest/slashing/tally.d.ts.map +1 -1
  437. package/dest/slashing/tally.js +6 -2
  438. package/dest/slashing/types.d.ts +10 -7
  439. package/dest/slashing/types.d.ts.map +1 -1
  440. package/dest/slashing/types.js +18 -6
  441. package/dest/snapshots/types.d.ts +1 -1
  442. package/dest/snapshots/types.d.ts.map +1 -1
  443. package/dest/snapshots/types.js +5 -5
  444. package/dest/stats/stats.d.ts +10 -8
  445. package/dest/stats/stats.d.ts.map +1 -1
  446. package/dest/tests/factories.d.ts +39 -10
  447. package/dest/tests/factories.d.ts.map +1 -1
  448. package/dest/tests/factories.js +81 -26
  449. package/dest/tests/jest.js +1 -1
  450. package/dest/tests/mocks.d.ts +76 -20
  451. package/dest/tests/mocks.d.ts.map +1 -1
  452. package/dest/tests/mocks.js +139 -60
  453. package/dest/timetable/index.d.ts +37 -0
  454. package/dest/timetable/index.d.ts.map +1 -0
  455. package/dest/timetable/index.js +39 -0
  456. package/dest/trees/append_only_tree_snapshot.d.ts +13 -1
  457. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  458. package/dest/trees/append_only_tree_snapshot.js +3 -1
  459. package/dest/trees/nullifier_leaf.d.ts +13 -1
  460. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  461. package/dest/trees/nullifier_membership_witness.d.ts +10 -1
  462. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  463. package/dest/trees/public_data_leaf.d.ts +16 -1
  464. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  465. package/dest/trees/public_data_witness.d.ts +11 -1
  466. package/dest/trees/public_data_witness.d.ts.map +1 -1
  467. package/dest/tx/block_header.d.ts +21 -8
  468. package/dest/tx/block_header.d.ts.map +1 -1
  469. package/dest/tx/block_header.js +12 -2
  470. package/dest/tx/call_context.d.ts +13 -1
  471. package/dest/tx/call_context.d.ts.map +1 -1
  472. package/dest/tx/call_context.js +3 -1
  473. package/dest/tx/capsule.d.ts +4 -1
  474. package/dest/tx/capsule.d.ts.map +1 -1
  475. package/dest/tx/execution_payload.d.ts +9 -1
  476. package/dest/tx/execution_payload.d.ts.map +1 -1
  477. package/dest/tx/function_data.d.ts +4 -2
  478. package/dest/tx/function_data.d.ts.map +1 -1
  479. package/dest/tx/global_variable_builder.d.ts +5 -3
  480. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  481. package/dest/tx/global_variables.d.ts +14 -1
  482. package/dest/tx/global_variables.d.ts.map +1 -1
  483. package/dest/tx/global_variables.js +3 -1
  484. package/dest/tx/hashed_values.d.ts +7 -1
  485. package/dest/tx/hashed_values.d.ts.map +1 -1
  486. package/dest/tx/in_tx.d.ts +4 -4
  487. package/dest/tx/index.d.ts +1 -2
  488. package/dest/tx/index.d.ts.map +1 -1
  489. package/dest/tx/index.js +0 -1
  490. package/dest/tx/indexed_tx_effect.d.ts +5 -5
  491. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  492. package/dest/tx/indexed_tx_effect.js +3 -2
  493. package/dest/tx/partial_state_reference.d.ts +4 -1
  494. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  495. package/dest/tx/private_execution_result.d.ts +24 -7
  496. package/dest/tx/private_execution_result.d.ts.map +1 -1
  497. package/dest/tx/private_execution_result.js +4 -21
  498. package/dest/tx/private_tx_constant_data.d.ts +16 -1
  499. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  500. package/dest/tx/profiling.d.ts +149 -26
  501. package/dest/tx/profiling.d.ts.map +1 -1
  502. package/dest/tx/profiling.js +44 -7
  503. package/dest/tx/protocol_contracts.d.ts +1 -1
  504. package/dest/tx/public_call_request_with_calldata.d.ts +7 -1
  505. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  506. package/dest/tx/public_call_request_with_calldata.js +3 -1
  507. package/dest/tx/simulated_tx.d.ts +1031 -7
  508. package/dest/tx/simulated_tx.d.ts.map +1 -1
  509. package/dest/tx/state_reference.d.ts +3 -1
  510. package/dest/tx/state_reference.d.ts.map +1 -1
  511. package/dest/tx/state_reference.js +3 -1
  512. package/dest/tx/tree_snapshots.js +3 -1
  513. package/dest/tx/tx.d.ts +33 -3
  514. package/dest/tx/tx.d.ts.map +1 -1
  515. package/dest/tx/tx.js +18 -6
  516. package/dest/tx/tx_context.d.ts +2 -1
  517. package/dest/tx/tx_context.d.ts.map +1 -1
  518. package/dest/tx/tx_effect.d.ts +32 -6
  519. package/dest/tx/tx_effect.d.ts.map +1 -1
  520. package/dest/tx/tx_effect.js +6 -9
  521. package/dest/tx/tx_execution_request.d.ts +30 -1
  522. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  523. package/dest/tx/tx_execution_request.js +6 -2
  524. package/dest/tx/tx_hash.d.ts +2 -1
  525. package/dest/tx/tx_hash.d.ts.map +1 -1
  526. package/dest/tx/tx_receipt.d.ts +47 -13
  527. package/dest/tx/tx_receipt.d.ts.map +1 -1
  528. package/dest/tx/tx_receipt.js +46 -15
  529. package/dest/tx/tx_request.d.ts +6 -1
  530. package/dest/tx/tx_request.d.ts.map +1 -1
  531. package/dest/tx/validator/empty_validator.d.ts +2 -2
  532. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  533. package/dest/tx/validator/error_texts.d.ts +2 -1
  534. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  535. package/dest/tx/validator/error_texts.js +2 -0
  536. package/dest/tx/validator/tx_validator.d.ts +2 -5
  537. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  538. package/dest/tx/validator/tx_validator.js +4 -4
  539. package/dest/types/shared.d.ts +4 -1
  540. package/dest/types/shared.d.ts.map +1 -1
  541. package/dest/validators/schemas.d.ts +9 -9
  542. package/dest/validators/schemas.d.ts.map +1 -1
  543. package/dest/validators/schemas.js +13 -13
  544. package/dest/vks/verification_key.d.ts +22 -1
  545. package/dest/vks/verification_key.d.ts.map +1 -1
  546. package/dest/vks/vk_data.d.ts +7 -1
  547. package/dest/vks/vk_data.d.ts.map +1 -1
  548. package/dest/zkpassport/index.d.ts +3 -4
  549. package/dest/zkpassport/index.d.ts.map +1 -1
  550. package/dest/zkpassport/index.js +9 -9
  551. package/package.json +27 -13
  552. package/src/abi/abi.ts +39 -33
  553. package/src/abi/contract_artifact.ts +10 -10
  554. package/src/abi/function_call.ts +25 -3
  555. package/src/abi/function_selector.ts +8 -0
  556. package/src/abi/utils.ts +17 -0
  557. package/src/avm/avm.ts +1 -1
  558. package/src/block/attestation_info.ts +9 -6
  559. package/src/block/block_hash.ts +26 -25
  560. package/src/block/block_parameter.ts +4 -2
  561. package/src/block/body.ts +2 -1
  562. package/src/block/checkpointed_l2_block.ts +70 -0
  563. package/src/block/in_block.ts +6 -6
  564. package/src/block/index.ts +1 -3
  565. package/src/block/l2_block.ts +102 -149
  566. package/src/block/l2_block_source.ts +175 -68
  567. package/src/block/l2_block_stream/index.ts +1 -0
  568. package/src/block/l2_block_stream/interfaces.ts +15 -4
  569. package/src/block/l2_block_stream/l2_block_stream.ts +139 -39
  570. package/src/block/l2_block_stream/l2_tips_memory_store.ts +62 -56
  571. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  572. package/src/block/test/l2_tips_store_test_suite.ts +480 -35
  573. package/src/block/validate_block_result.ts +40 -35
  574. package/src/checkpoint/checkpoint.ts +82 -12
  575. package/src/checkpoint/checkpoint_info.ts +52 -0
  576. package/src/checkpoint/index.ts +1 -0
  577. package/src/checkpoint/published_checkpoint.ts +22 -7
  578. package/src/config/index.ts +1 -0
  579. package/src/config/node-rpc-config.ts +1 -1
  580. package/src/config/sequencer-config.ts +19 -0
  581. package/src/contract/contract_address.ts +1 -1
  582. package/src/contract/contract_class_id.ts +2 -2
  583. package/src/contract/index.ts +0 -2
  584. package/src/contract/interfaces/contract_class.ts +59 -46
  585. package/src/contract/interfaces/contract_instance.ts +15 -13
  586. package/src/contract/interfaces/contract_instance_update.ts +11 -9
  587. package/src/contract/interfaces/node-info.ts +3 -0
  588. package/src/contract/private_function.ts +2 -3
  589. package/src/contract/private_function_membership_proof.ts +1 -1
  590. package/src/database-version/database_version.ts +87 -0
  591. package/src/database-version/version_manager.ts +1 -77
  592. package/src/delayed_public_mutable/delayed_public_mutable_values.ts +9 -10
  593. package/src/deserialization/index.ts +21 -0
  594. package/src/epoch-helpers/index.ts +24 -10
  595. package/src/hash/hash.ts +2 -13
  596. package/src/hash/map_slot.ts +3 -2
  597. package/src/interfaces/allowed_element.ts +9 -7
  598. package/src/interfaces/api_limit.ts +2 -0
  599. package/src/interfaces/archiver.ts +33 -23
  600. package/src/interfaces/aztec-node-admin.ts +10 -6
  601. package/src/interfaces/aztec-node.ts +118 -134
  602. package/src/interfaces/block-builder.ts +50 -23
  603. package/src/interfaces/configs.ts +67 -33
  604. package/src/interfaces/get_logs_response.ts +13 -9
  605. package/src/interfaces/l2_logs_source.ts +25 -7
  606. package/src/interfaces/merkle_tree_operations.ts +4 -1
  607. package/src/interfaces/p2p.ts +8 -12
  608. package/src/interfaces/prover-broker.ts +22 -0
  609. package/src/interfaces/prover-client.ts +35 -10
  610. package/src/interfaces/proving-job.ts +2 -11
  611. package/src/interfaces/server_circuit_prover.ts +3 -3
  612. package/src/interfaces/slasher.ts +28 -22
  613. package/src/interfaces/tx_provider.ts +2 -2
  614. package/src/interfaces/validator.ts +92 -31
  615. package/src/interfaces/world_state.ts +16 -9
  616. package/src/kernel/hints/build_note_hash_read_request_hints.ts +20 -12
  617. package/src/kernel/hints/build_nullifier_read_request_hints.ts +17 -14
  618. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +2 -4
  619. package/src/kernel/private_circuit_public_inputs.ts +85 -85
  620. package/src/keys/derivation.ts +8 -8
  621. package/src/keys/key_types.ts +1 -1
  622. package/src/keys/utils.ts +7 -3
  623. package/src/l1-contracts/slash_factory.ts +1 -0
  624. package/src/logs/index.ts +2 -1
  625. package/src/logs/log_id.ts +26 -12
  626. package/src/logs/private_log.ts +2 -1
  627. package/src/logs/siloed_tag.ts +45 -0
  628. package/src/logs/tag.ts +42 -0
  629. package/src/logs/tx_scoped_l2_log.ts +45 -43
  630. package/src/messaging/in_hash.ts +3 -1
  631. package/src/messaging/l1_to_l2_message.ts +1 -0
  632. package/src/messaging/l2_to_l1_membership.ts +178 -52
  633. package/src/messaging/out_hash.ts +62 -21
  634. package/src/note/note_dao.ts +18 -13
  635. package/src/p2p/attestation_utils.ts +3 -3
  636. package/src/p2p/block_proposal.ts +213 -46
  637. package/src/p2p/{block_attestation.ts → checkpoint_attestation.ts} +31 -25
  638. package/src/p2p/checkpoint_proposal.ts +365 -0
  639. package/src/p2p/consensus_payload.ts +5 -7
  640. package/src/p2p/constants.ts +6 -0
  641. package/src/p2p/gossipable.ts +14 -4
  642. package/src/p2p/index.ts +4 -1
  643. package/src/p2p/message_validator.ts +14 -2
  644. package/src/p2p/signature_utils.ts +3 -1
  645. package/src/p2p/signed_txs.ts +88 -0
  646. package/src/p2p/topic_type.ts +4 -3
  647. package/src/proofs/chonk_proof.ts +9 -5
  648. package/src/rollup/avm_proof_data.ts +0 -7
  649. package/src/rollup/block_headers_hash.ts +1 -1
  650. package/src/rollup/block_rollup_public_inputs.ts +5 -11
  651. package/src/rollup/checkpoint_constant_data.ts +1 -0
  652. package/src/rollup/checkpoint_header.ts +67 -20
  653. package/src/rollup/checkpoint_rollup_public_inputs.ts +17 -5
  654. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +14 -1
  655. package/src/rollup/root_rollup_public_inputs.ts +16 -7
  656. package/src/schemas/schemas.ts +4 -0
  657. package/src/slashing/empire.ts +3 -1
  658. package/src/slashing/helpers.ts +8 -0
  659. package/src/slashing/tally.ts +8 -2
  660. package/src/slashing/types.ts +38 -20
  661. package/src/snapshots/types.ts +33 -29
  662. package/src/stats/stats.ts +10 -7
  663. package/src/tests/factories.ts +103 -42
  664. package/src/tests/jest.ts +1 -1
  665. package/src/tests/mocks.ts +226 -92
  666. package/src/timetable/index.ts +66 -0
  667. package/src/tx/block_header.ts +21 -8
  668. package/src/tx/global_variable_builder.ts +9 -2
  669. package/src/tx/global_variables.ts +6 -0
  670. package/src/tx/index.ts +0 -1
  671. package/src/tx/indexed_tx_effect.ts +3 -2
  672. package/src/tx/private_execution_result.ts +2 -17
  673. package/src/tx/profiling.ts +46 -4
  674. package/src/tx/tx.ts +19 -11
  675. package/src/tx/tx_effect.ts +3 -10
  676. package/src/tx/tx_execution_request.ts +2 -0
  677. package/src/tx/tx_receipt.ts +75 -18
  678. package/src/tx/validator/empty_validator.ts +1 -1
  679. package/src/tx/validator/error_texts.ts +3 -0
  680. package/src/tx/validator/tx_validator.ts +9 -7
  681. package/src/validators/schemas.ts +54 -48
  682. package/src/zkpassport/index.ts +11 -12
  683. package/dest/block/l2_block_code_to_purge.d.ts +0 -12
  684. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  685. package/dest/block/l2_block_code_to_purge.js +0 -61
  686. package/dest/block/l2_block_header.d.ts +0 -98
  687. package/dest/block/l2_block_header.d.ts.map +0 -1
  688. package/dest/block/l2_block_header.js +0 -153
  689. package/dest/block/l2_block_new.d.ts +0 -130
  690. package/dest/block/l2_block_new.d.ts.map +0 -1
  691. package/dest/block/l2_block_new.js +0 -151
  692. package/dest/block/published_l2_block.d.ts +0 -130
  693. package/dest/block/published_l2_block.d.ts.map +0 -1
  694. package/dest/block/published_l2_block.js +0 -48
  695. package/dest/contract/contract_class_metadata.d.ts +0 -8
  696. package/dest/contract/contract_class_metadata.d.ts.map +0 -1
  697. package/dest/contract/contract_class_metadata.js +0 -1
  698. package/dest/contract/contract_metadata.d.ts +0 -7
  699. package/dest/contract/contract_metadata.d.ts.map +0 -1
  700. package/dest/contract/contract_metadata.js +0 -1
  701. package/dest/database-version/index.d.ts +0 -2
  702. package/dest/database-version/index.d.ts.map +0 -1
  703. package/dest/database-version/index.js +0 -1
  704. package/dest/logs/log_with_tx_data.d.ts +0 -19
  705. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  706. package/dest/logs/log_with_tx_data.js +0 -49
  707. package/dest/p2p/block_attestation.d.ts +0 -80
  708. package/dest/p2p/block_attestation.d.ts.map +0 -1
  709. package/dest/tx/content_commitment.d.ts +0 -49
  710. package/dest/tx/content_commitment.d.ts.map +0 -1
  711. package/dest/tx/content_commitment.js +0 -90
  712. package/src/block/l2_block_code_to_purge.ts +0 -88
  713. package/src/block/l2_block_header.ts +0 -246
  714. package/src/block/l2_block_new.ts +0 -197
  715. package/src/block/published_l2_block.ts +0 -65
  716. package/src/contract/contract_class_metadata.ts +0 -8
  717. package/src/contract/contract_metadata.ts +0 -7
  718. package/src/database-version/index.ts +0 -1
  719. package/src/logs/log_with_tx_data.ts +0 -46
  720. package/src/tx/content_commitment.ts +0 -113
@@ -17,7 +17,7 @@ import { L2Block } from '../block/l2_block.js';
17
17
  // use a custom comparator because the blockHash property is lazily computed and one instance might not have it
18
18
  return aAsL2Block.toBuffer().equals(bAsL2Block.toBuffer());
19
19
  } else if (aAsL2Block || bAsL2Block) {
20
- // one value is an L2block and the other isn't. Definitely not equal.
20
+ // one value is an L2Block and the other isn't. Definitely not equal.
21
21
  return false;
22
22
  } else {
23
23
  // we don't know what they are, tell Jest to keep looking
@@ -1,29 +1,31 @@
1
- import { BlockNumber, CheckpointNumber } from '@aztec/foundation/branded-types';
1
+ import { type FieldsOf } from '@aztec/foundation/array';
2
+ import { BlockNumber, CheckpointNumber, IndexWithinCheckpoint } from '@aztec/foundation/branded-types';
2
3
  import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
3
4
  import { Fr } from '@aztec/foundation/curves/bn254';
5
+ import { Signature } from '@aztec/foundation/eth-signature';
4
6
  import type { ContractArtifact } from '../abi/abi.js';
7
+ import type { AvmAccumulatedData } from '../avm/avm_accumulated_data.js';
5
8
  import { PublicDataWrite } from '../avm/public_data_write.js';
6
9
  import { AztecAddress } from '../aztec-address/index.js';
7
- import { L2BlockHeader, L2BlockNew } from '../block/index.js';
8
- import { L2Block } from '../block/l2_block.js';
10
+ import { CheckpointedL2Block, L2Block } from '../block/index.js';
9
11
  import type { CommitteeAttestationsAndSigners } from '../block/proposal/attestations_and_signers.js';
10
- import { PublishedL2Block } from '../block/published_l2_block.js';
11
12
  import { Checkpoint } from '../checkpoint/checkpoint.js';
12
13
  import type { ContractInstanceWithAddress } from '../contract/index.js';
13
14
  import { Gas } from '../gas/gas.js';
14
15
  import { GasFees } from '../gas/gas_fees.js';
15
16
  import { GasSettings } from '../gas/gas_settings.js';
16
17
  import type { MerkleTreeReadOperations } from '../interfaces/merkle_tree_operations.js';
17
- import { BlockAttestation } from '../p2p/block_attestation.js';
18
18
  import { BlockProposal } from '../p2p/block_proposal.js';
19
- import { ConsensusPayload } from '../p2p/consensus_payload.js';
19
+ import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
20
+ import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
20
21
  import { ChonkProof } from '../proofs/chonk_proof.js';
22
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
21
23
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
22
24
  import { BlockHeader, GlobalVariables, ProtocolContracts, Tx } from '../tx/index.js';
23
25
  import { TxSimulationResult } from '../tx/simulated_tx.js';
24
26
  import { TxHash } from '../tx/tx_hash.js';
25
27
  export declare const randomTxHash: () => TxHash;
26
- export declare const mockTx: (seed?: number, { numberOfNonRevertiblePublicCallRequests, numberOfRevertiblePublicCallRequests, numberOfRevertibleNullifiers, hasPublicTeardownCallRequest, publicCalldataSize, feePayer, chonkProof, maxPriorityFeesPerGas, gasUsed, chainId, version, vkTreeRoot, protocolContractsHash, }?: {
28
+ export declare const mockTx: (seed?: number, { numberOfNonRevertiblePublicCallRequests, numberOfRevertiblePublicCallRequests, numberOfRevertibleNullifiers, hasPublicTeardownCallRequest, publicCalldataSize, feePayer, chonkProof, maxFeesPerGas, maxPriorityFeesPerGas, gasUsed, chainId, version, vkTreeRoot, protocolContractsHash, anchorBlockHeader, }?: {
27
29
  numberOfNonRevertiblePublicCallRequests?: number | undefined;
28
30
  numberOfRevertiblePublicCallRequests?: number | undefined;
29
31
  numberOfRevertibleNullifiers?: number | undefined;
@@ -31,12 +33,14 @@ export declare const mockTx: (seed?: number, { numberOfNonRevertiblePublicCallRe
31
33
  publicCalldataSize?: number | undefined;
32
34
  feePayer?: AztecAddress | undefined;
33
35
  chonkProof?: ChonkProof | undefined;
36
+ maxFeesPerGas?: GasFees | undefined;
34
37
  maxPriorityFeesPerGas?: GasFees | undefined;
35
38
  gasUsed?: Gas | undefined;
36
39
  chainId?: Fr | undefined;
37
40
  version?: Fr | undefined;
38
41
  vkTreeRoot?: Fr | undefined;
39
42
  protocolContractsHash?: Fr | undefined;
43
+ anchorBlockHeader?: BlockHeader | undefined;
40
44
  }) => Promise<Tx>;
41
45
  export declare const mockTxForRollup: (seed?: number, opts?: {
42
46
  numberOfNonRevertiblePublicCallRequests?: number | undefined;
@@ -46,15 +50,17 @@ export declare const mockTxForRollup: (seed?: number, opts?: {
46
50
  publicCalldataSize?: number | undefined;
47
51
  feePayer?: AztecAddress | undefined;
48
52
  chonkProof?: ChonkProof | undefined;
53
+ maxFeesPerGas?: GasFees | undefined;
49
54
  maxPriorityFeesPerGas?: GasFees | undefined;
50
55
  gasUsed?: Gas | undefined;
51
56
  chainId?: Fr | undefined;
52
57
  version?: Fr | undefined;
53
58
  vkTreeRoot?: Fr | undefined;
54
59
  protocolContractsHash?: Fr | undefined;
60
+ anchorBlockHeader?: BlockHeader | undefined;
55
61
  } | undefined) => Promise<Tx>;
56
62
  /** Mock a processed tx for testing purposes. */
57
- export declare function mockProcessedTx({ seed, anchorBlockHeader, db, chainId, version, gasSettings, vkTreeRoot, protocolContracts, globalVariables, newL1ToL2Snapshot, feePayer, feePaymentPublicDataWrite, gasUsed, privateOnly, ...mockTxOpts }?: {
63
+ export declare function mockProcessedTx({ seed, anchorBlockHeader, db, chainId, version, gasSettings, vkTreeRoot, protocolContracts, globalVariables, newL1ToL2Snapshot, feePayer, feePaymentPublicDataWrite, gasUsed, privateOnly, avmAccumulatedData, ...mockTxOpts }?: {
58
64
  seed?: number;
59
65
  anchorBlockHeader?: BlockHeader;
60
66
  db?: MerkleTreeReadOperations;
@@ -64,18 +70,23 @@ export declare function mockProcessedTx({ seed, anchorBlockHeader, db, chainId,
64
70
  protocolContracts?: ProtocolContracts;
65
71
  feePaymentPublicDataWrite?: PublicDataWrite;
66
72
  privateOnly?: boolean;
73
+ avmAccumulatedData?: Partial<FieldsOf<AvmAccumulatedData>>;
67
74
  } & Parameters<typeof mockTx>[1]): Promise<import("../tx/processed_tx.js").ProcessedTx>;
68
75
  export declare const mockSimulatedTx: (seed?: number) => Promise<TxSimulationResult>;
69
76
  export declare function mockL1ToL2Messages(numL1ToL2Messages: number): Fr[];
70
- export declare function mockCheckpointAndMessages(checkpointNumber: CheckpointNumber, { startBlockNumber, numBlocks, numTxsPerBlock, numL1ToL2Messages, makeBlockOptions, ...options }?: {
77
+ export declare function mockCheckpointAndMessages(checkpointNumber: CheckpointNumber, { startBlockNumber, numBlocks, blocks, numTxsPerBlock, numL1ToL2Messages, makeBlockOptions, previousArchive, maxEffects, ...options }?: {
71
78
  startBlockNumber?: BlockNumber;
72
79
  numBlocks?: number;
73
80
  numTxsPerBlock?: number;
74
81
  numL1ToL2Messages?: number;
75
- makeBlockOptions?: (blockNumber: BlockNumber) => Partial<Parameters<typeof L2BlockNew.random>[1]>;
76
- } & Partial<Parameters<typeof Checkpoint.random>[1]> & Partial<Parameters<typeof L2BlockNew.random>[1]>): Promise<{
82
+ makeBlockOptions?: (blockNumber: BlockNumber) => Partial<Parameters<typeof L2Block.random>[1]>;
83
+ previousArchive?: AppendOnlyTreeSnapshot;
84
+ blocks?: L2Block[];
85
+ maxEffects?: number;
86
+ } & Partial<Parameters<typeof Checkpoint.random>[1]> & Partial<Parameters<typeof L2Block.random>[1]>): Promise<{
77
87
  checkpoint: Checkpoint;
78
88
  messages: Fr[];
89
+ lastArchive: AppendOnlyTreeSnapshot | undefined;
79
90
  }>;
80
91
  export declare const randomContractArtifact: () => ContractArtifact;
81
92
  export declare const randomContractInstanceWithAddress: (opts?: {
@@ -89,18 +100,63 @@ export interface MakeConsensusPayloadOptions {
89
100
  signer?: Secp256k1Signer;
90
101
  attesterSigner?: Secp256k1Signer;
91
102
  proposerSigner?: Secp256k1Signer;
92
- header?: L2BlockHeader;
103
+ header?: CheckpointHeader;
93
104
  archive?: Fr;
94
105
  txHashes?: TxHash[];
95
106
  txs?: Tx[];
96
107
  }
97
- export declare const makeAndSignCommitteeAttestationsAndSigners: (attestationsAndSigners: CommitteeAttestationsAndSigners, signer?: Secp256k1Signer) => import("../block/index.js").Signature;
98
- export declare const makeBlockProposal: (options?: MakeConsensusPayloadOptions | undefined) => BlockProposal;
99
- export declare const makeBlockAttestation: (options?: MakeConsensusPayloadOptions) => BlockAttestation;
100
- export declare const makeAttestationFromCheckpoint: (checkpoint: Checkpoint, attesterSigner?: Secp256k1Signer | undefined, proposerSigner?: Secp256k1Signer | undefined) => BlockAttestation;
101
- export declare const makeBlockAttestationFromBlock: (block: L2Block, attesterSigner?: Secp256k1Signer | undefined, proposerSigner?: Secp256k1Signer | undefined) => BlockAttestation;
102
- export declare const makeBlockAttestationFromPayload: (payload: ConsensusPayload, attesterSigner?: Secp256k1Signer | undefined, proposerSigner?: Secp256k1Signer | undefined) => BlockAttestation;
108
+ export interface MakeBlockProposalOptions {
109
+ signer?: Secp256k1Signer;
110
+ blockHeader?: BlockHeader;
111
+ indexWithinCheckpoint?: IndexWithinCheckpoint;
112
+ inHash?: Fr;
113
+ archiveRoot?: Fr;
114
+ txHashes?: TxHash[];
115
+ txs?: Tx[];
116
+ }
117
+ export interface MakeCheckpointProposalOptions {
118
+ signer?: Secp256k1Signer;
119
+ checkpointHeader?: CheckpointHeader;
120
+ archiveRoot?: Fr;
121
+ /** Options for the lastBlock - if undefined, no lastBlock is included */
122
+ lastBlock?: {
123
+ blockHeader?: BlockHeader;
124
+ indexWithinCheckpoint?: IndexWithinCheckpoint;
125
+ txHashes?: TxHash[];
126
+ txs?: Tx[];
127
+ };
128
+ }
129
+ export declare const makeAndSignCommitteeAttestationsAndSigners: (attestationsAndSigners: CommitteeAttestationsAndSigners, signer?: Secp256k1Signer) => Signature;
130
+ export declare const makeBlockProposal: (options?: MakeBlockProposalOptions | undefined) => Promise<BlockProposal>;
131
+ export declare const makeCheckpointProposal: (options?: MakeCheckpointProposalOptions | undefined) => Promise<CheckpointProposal>;
132
+ /**
133
+ * Options for creating a checkpoint attestation
134
+ */
135
+ export type MakeCheckpointAttestationOptions = {
136
+ header?: CheckpointHeader;
137
+ archive?: Fr;
138
+ attesterSigner?: Secp256k1Signer;
139
+ proposerSigner?: Secp256k1Signer;
140
+ signer?: Secp256k1Signer;
141
+ };
142
+ /**
143
+ * Create a checkpoint attestation for testing
144
+ */
145
+ export declare const makeCheckpointAttestation: (options?: MakeCheckpointAttestationOptions) => CheckpointAttestation;
146
+ /**
147
+ * Create a checkpoint attestation from a checkpoint proposal
148
+ */
149
+ export declare const makeCheckpointAttestationFromProposal: (proposal: CheckpointProposal, attesterSigner?: Secp256k1Signer | undefined) => CheckpointAttestation;
150
+ /**
151
+ * Create a checkpoint attestation from a checkpoint
152
+ */
153
+ export declare const makeCheckpointAttestationFromCheckpoint: (checkpoint: Checkpoint, attesterSigner?: Secp256k1Signer | undefined, proposerSigner?: Secp256k1Signer | undefined) => CheckpointAttestation;
154
+ /**
155
+ * Create a checkpoint attestation from an L2Block
156
+ * Note: This is a compatibility function for tests. L2Block doesn't have a checkpoint header directly.
157
+ */
158
+ export declare const makeCheckpointAttestationFromBlock: (block: L2Block, attesterSigner?: Secp256k1Signer | undefined, proposerSigner?: Secp256k1Signer | undefined) => CheckpointAttestation;
103
159
  export declare function randomPublishedL2Block(l2BlockNumber: number, opts?: {
104
160
  signers?: Secp256k1Signer[];
105
- }): Promise<PublishedL2Block>;
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0cy9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFjLE1BQU0saUNBQWlDLENBQUM7QUFJNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBd0IsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvQyxPQUFPLEtBQUssRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUt6RCxPQUFPLEtBQUssRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBV3hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9B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
161
+ }): Promise<CheckpointedL2Block>;
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0cy9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFjLE1BQU0saUNBQWlDLENBQUM7QUFJbkgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBd0IsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkYsT0FBTyxLQUFLLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNyRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFLekQsT0FBTyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFB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
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,18 @@
1
1
  import { FIXED_DA_GAS, FIXED_L2_GAS, MAX_ENQUEUED_CALLS_PER_TX, MAX_INCLUDE_BY_TIMESTAMP_DURATION, MAX_NULLIFIERS_PER_TX, MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX } from '@aztec/constants';
2
2
  import { makeTuple } from '@aztec/foundation/array';
3
- import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
3
+ import { BlockNumber, CheckpointNumber, IndexWithinCheckpoint, SlotNumber } from '@aztec/foundation/branded-types';
4
4
  import { Buffer32 } from '@aztec/foundation/buffer';
5
5
  import { padArrayEnd, times } from '@aztec/foundation/collection';
6
6
  import { randomBytes } from '@aztec/foundation/crypto/random';
7
7
  import { Secp256k1Signer } from '@aztec/foundation/crypto/secp256k1-signer';
8
8
  import { Fr } from '@aztec/foundation/curves/bn254';
9
+ import { Signature } from '@aztec/foundation/eth-signature';
9
10
  import { PublicTxEffect } from '../avm/avm.js';
10
11
  import { AvmCircuitPublicInputs } from '../avm/avm_circuit_public_inputs.js';
11
12
  import { PublicDataWrite } from '../avm/public_data_write.js';
12
13
  import { RevertCode } from '../avm/revert_code.js';
13
14
  import { AztecAddress } from '../aztec-address/index.js';
14
- import { CommitteeAttestation, L2BlockNew } from '../block/index.js';
15
- import { L2Block } from '../block/l2_block.js';
16
- import { PublishedL2Block } from '../block/published_l2_block.js';
15
+ import { CheckpointedL2Block, CommitteeAttestation, L2Block } from '../block/index.js';
17
16
  import { Checkpoint } from '../checkpoint/checkpoint.js';
18
17
  import { L1PublishedData } from '../checkpoint/published_checkpoint.js';
19
18
  import { computeContractAddressFromInstance } from '../contract/contract_address.js';
@@ -30,27 +29,30 @@ import { PrivateToAvmAccumulatedData } from '../kernel/private_to_avm_accumulate
30
29
  import { PrivateToPublicAccumulatedDataBuilder } from '../kernel/private_to_public_accumulated_data_builder.js';
31
30
  import { PublicCallRequestArrayLengths } from '../kernel/public_call_request.js';
32
31
  import { computeInHashFromL1ToL2Messages } from '../messaging/in_hash.js';
33
- import { BlockAttestation } from '../p2p/block_attestation.js';
34
32
  import { BlockProposal } from '../p2p/block_proposal.js';
33
+ import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
34
+ import { CheckpointProposal } from '../p2p/checkpoint_proposal.js';
35
35
  import { ConsensusPayload } from '../p2p/consensus_payload.js';
36
36
  import { SignatureDomainSeparator, getHashedSignaturePayloadEthSignedMessage } from '../p2p/signature_utils.js';
37
37
  import { ChonkProof } from '../proofs/chonk_proof.js';
38
38
  import { ProvingRequestType } from '../proofs/proving_request_type.js';
39
+ import { CheckpointHeader } from '../rollup/checkpoint_header.js';
39
40
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
40
- import { GlobalVariables, HashedValues, PrivateCallExecutionResult, PrivateExecutionResult, Tx, TxConstantData, makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/index.js';
41
+ import { BlockHeader, GlobalVariables, HashedValues, PrivateCallExecutionResult, PrivateExecutionResult, Tx, TxConstantData, makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/index.js';
41
42
  import { NestedProcessReturnValues, PublicSimulationOutput } from '../tx/public_simulation_output.js';
42
43
  import { TxSimulationResult } from '../tx/simulated_tx.js';
43
44
  import { TxEffect } from '../tx/tx_effect.js';
44
45
  import { TxHash } from '../tx/tx_hash.js';
45
- import { makeAvmCircuitInputs, makeAztecAddress, makeBlockHeader, makeGas, makeGlobalVariables, makeL2BlockHeader, makePrivateToPublicAccumulatedData, makePrivateToRollupAccumulatedData, makeProtocolContracts, makePublicCallRequest, makePublicDataWrite } from './factories.js';
46
+ import { makeAvmCircuitInputs, makeAztecAddress, makeBlockHeader, makeCheckpointHeader, makeGas, makeGlobalVariables, makePrivateToPublicAccumulatedData, makePrivateToRollupAccumulatedData, makeProtocolContracts, makePublicCallRequest, makePublicDataWrite } from './factories.js';
46
47
  export const randomTxHash = ()=>TxHash.random();
47
- export const mockTx = async (seed = 1, { numberOfNonRevertiblePublicCallRequests = MAX_ENQUEUED_CALLS_PER_TX / 2, numberOfRevertiblePublicCallRequests = MAX_ENQUEUED_CALLS_PER_TX / 2, numberOfRevertibleNullifiers = 0, hasPublicTeardownCallRequest = false, publicCalldataSize = 2, feePayer, chonkProof = ChonkProof.random(), maxPriorityFeesPerGas, gasUsed = Gas.empty(), chainId = Fr.ZERO, version = Fr.ZERO, vkTreeRoot = Fr.ZERO, protocolContractsHash = Fr.ZERO } = {})=>{
48
+ export const mockTx = async (seed = 1, { numberOfNonRevertiblePublicCallRequests = MAX_ENQUEUED_CALLS_PER_TX / 2, numberOfRevertiblePublicCallRequests = MAX_ENQUEUED_CALLS_PER_TX / 2, numberOfRevertibleNullifiers = 0, hasPublicTeardownCallRequest = false, publicCalldataSize = 2, feePayer, chonkProof = ChonkProof.random(), maxFeesPerGas = new GasFees(10, 10), maxPriorityFeesPerGas, gasUsed = Gas.empty(), chainId = Fr.ZERO, version = Fr.ZERO, vkTreeRoot = Fr.ZERO, protocolContractsHash = Fr.ZERO, anchorBlockHeader = BlockHeader.empty() } = {})=>{
48
49
  const totalPublicCallRequests = numberOfNonRevertiblePublicCallRequests + numberOfRevertiblePublicCallRequests + (hasPublicTeardownCallRequest ? 1 : 0);
49
50
  const isForPublic = totalPublicCallRequests > 0;
50
51
  const data = PrivateKernelTailCircuitPublicInputs.empty();
51
52
  const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
53
+ data.constants.anchorBlockHeader = anchorBlockHeader;
52
54
  data.constants.txContext.gasSettings = GasSettings.default({
53
- maxFeesPerGas: new GasFees(10, 10),
55
+ maxFeesPerGas,
54
56
  maxPriorityFeesPerGas
55
57
  });
56
58
  data.feePayer = feePayer ?? await AztecAddress.random();
@@ -104,7 +106,7 @@ export const mockTxForRollup = (seed = 1, opts = {})=>mockTx(seed, {
104
106
  gasUsed = Gas.from({
105
107
  daGas: FIXED_DA_GAS,
106
108
  l2Gas: FIXED_L2_GAS
107
- }), privateOnly = false, ...mockTxOpts } = {}) {
109
+ }), privateOnly = false, avmAccumulatedData, ...mockTxOpts } = {}) {
108
110
  seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
109
111
  anchorBlockHeader ??= db?.getInitialHeader() ?? makeBlockHeader(seed);
110
112
  feePayer ??= makeAztecAddress(seed + 0x100);
@@ -166,11 +168,10 @@ gasUsed = Gas.from({
166
168
  avmOutput.previousRevertibleAccumulatedData = new PrivateToAvmAccumulatedData(dataFromPrivate.revertibleAccumulatedData.noteHashes, dataFromPrivate.revertibleAccumulatedData.nullifiers, dataFromPrivate.revertibleAccumulatedData.l2ToL1Msgs);
167
169
  avmOutput.previousRevertibleAccumulatedDataArrayLengths = avmOutput.previousRevertibleAccumulatedData.getArrayLengths();
168
170
  // Assign final data emitted from avm.
169
- avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
170
- avmOutput.accumulatedData.nullifiers = padArrayEnd(nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter((n)=>!n.isEmpty()), Fr.ZERO, MAX_NULLIFIERS_PER_TX);
171
- avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
172
- avmOutput.accumulatedData.publicDataWrites = makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, (i)=>new PublicDataWrite(new Fr(i), new Fr(i + 10)), seed + 0x2000);
173
- avmOutput.accumulatedData.publicDataWrites[0] = feePaymentPublicDataWrite;
171
+ avmOutput.accumulatedData.noteHashes = avmAccumulatedData?.noteHashes ?? revertibleData.noteHashes;
172
+ avmOutput.accumulatedData.nullifiers = avmAccumulatedData?.nullifiers ?? padArrayEnd(nonRevertibleData.nullifiers.concat(revertibleData.nullifiers).filter((n)=>!n.isEmpty()), Fr.ZERO, MAX_NULLIFIERS_PER_TX);
173
+ avmOutput.accumulatedData.l2ToL1Msgs = avmAccumulatedData?.l2ToL1Msgs ?? revertibleData.l2ToL1Msgs;
174
+ avmOutput.accumulatedData.publicDataWrites = avmAccumulatedData?.publicDataWrites ?? makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, (i)=>i === 0 ? feePaymentPublicDataWrite : new PublicDataWrite(new Fr(i), new Fr(i + 10)), seed + 0x2000);
174
175
  avmOutput.accumulatedDataArrayLengths = avmOutput.accumulatedData.getArrayLengths();
175
176
  avmOutput.gasSettings = gasSettings;
176
177
  // Note: The fee is computed from the tx's gas used, which only includes the gas used in private. But this shouldn't
@@ -194,7 +195,7 @@ gasUsed = Gas.from({
194
195
  }, publicTxEffect, gasUsed, RevertCode.OK, undefined /* revertReason */ );
195
196
  }
196
197
  }
197
- const emptyPrivateCallExecutionResult = ()=>new PrivateCallExecutionResult(Buffer.from(''), Buffer.from(''), new Map(), PrivateCircuitPublicInputs.empty(), new Map(), [], new Map(), [], [], [], [], []);
198
+ const emptyPrivateCallExecutionResult = ()=>new PrivateCallExecutionResult(Buffer.from(''), Buffer.from(''), new Map(), PrivateCircuitPublicInputs.empty(), [], new Map(), [], [], [], [], []);
198
199
  const emptyPrivateExecutionResult = ()=>new PrivateExecutionResult(emptyPrivateCallExecutionResult(), Fr.zero(), []);
199
200
  export const mockSimulatedTx = async (seed = 1)=>{
200
201
  const privateExecutionResult = emptyPrivateExecutionResult();
@@ -212,22 +213,35 @@ export function mockL1ToL2Messages(numL1ToL2Messages) {
212
213
  length: numL1ToL2Messages
213
214
  }, ()=>Fr.random());
214
215
  }
215
- export async function mockCheckpointAndMessages(checkpointNumber, { startBlockNumber = BlockNumber(1), numBlocks = 1, numTxsPerBlock = 1, numL1ToL2Messages = 1, makeBlockOptions = ()=>({}), ...options } = {}) {
216
- const slotNumber = options.slotNumber ?? SlotNumber(checkpointNumber * 10);
216
+ export async function mockCheckpointAndMessages(checkpointNumber, { startBlockNumber = BlockNumber(1), numBlocks = 1, blocks, numTxsPerBlock = 1, numL1ToL2Messages = 1, makeBlockOptions = ()=>({}), previousArchive, maxEffects, ...options } = {}) {
217
+ const slotNumber = options.slotNumber ?? SlotNumber(Number(checkpointNumber) * 10);
217
218
  const blocksAndMessages = [];
218
- for(let i = 0; i < numBlocks; i++){
219
+ // Track the previous block's archive to ensure consecutive blocks have consistent archive roots.
220
+ // The current block's header.lastArchive must equal the previous block's archive.
221
+ let lastArchive = previousArchive;
222
+ // Pass maxEffects via txOptions so it reaches TxEffect.random
223
+ const txOptions = maxEffects !== undefined ? {
224
+ maxEffects
225
+ } : {};
226
+ for(let i = 0; i < (blocks?.length ?? numBlocks); i++){
219
227
  const blockNumber = BlockNumber(startBlockNumber + i);
220
228
  const { block, messages } = {
221
- block: await L2BlockNew.random(blockNumber, {
229
+ block: blocks?.[i] ?? await L2Block.random(blockNumber, {
222
230
  checkpointNumber,
223
- indexWithinCheckpoint: i,
231
+ indexWithinCheckpoint: IndexWithinCheckpoint(i),
224
232
  txsPerBlock: numTxsPerBlock,
233
+ txOptions,
225
234
  slotNumber,
226
235
  ...options,
227
- ...makeBlockOptions(blockNumber)
236
+ ...makeBlockOptions(blockNumber),
237
+ ...lastArchive ? {
238
+ lastArchive
239
+ } : {}
228
240
  }),
229
241
  messages: mockL1ToL2Messages(numL1ToL2Messages)
230
242
  };
243
+ // Update lastArchive for the next block
244
+ lastArchive = block.archive;
231
245
  blocksAndMessages.push({
232
246
  block,
233
247
  messages
@@ -242,9 +256,15 @@ export async function mockCheckpointAndMessages(checkpointNumber, { startBlockNu
242
256
  ...options
243
257
  });
244
258
  checkpoint.blocks = blocksAndMessages.map(({ block })=>block);
259
+ // Set the checkpoint's archive to match the last block's archive for proper chaining.
260
+ // When the archiver reconstructs checkpoints from L1, it uses the checkpoint's archive root
261
+ // from the L1 event to set the last block's archive. Without this, the archive chain breaks.
262
+ checkpoint.archive = lastArchive;
263
+ // Return lastArchive so callers can chain it across multiple checkpoints
245
264
  return {
246
265
  checkpoint,
247
- messages
266
+ messages,
267
+ lastArchive
248
268
  };
249
269
  }
250
270
  export const randomContractArtifact = ()=>({
@@ -275,17 +295,18 @@ export const randomDeployedContract = async ()=>{
275
295
  })
276
296
  };
277
297
  };
298
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
278
299
  const makeAndSignConsensusPayload = (domainSeparator, options)=>{
279
- const header = options?.header ?? makeL2BlockHeader(1);
300
+ const header = options?.header ?? makeCheckpointHeader(1);
280
301
  const { signer = Secp256k1Signer.random(), archive = Fr.random() } = options ?? {};
281
302
  const payload = ConsensusPayload.fromFields({
282
- header: header.toCheckpointHeader(),
303
+ header,
283
304
  archive
284
305
  });
285
306
  const hash = getHashedSignaturePayloadEthSignedMessage(payload, domainSeparator);
286
307
  const signature = signer.sign(hash);
287
308
  return {
288
- blockNumber: header.globalVariables.blockNumber,
309
+ blockNumber: header.slotNumber,
289
310
  payload,
290
311
  signature
291
312
  };
@@ -295,7 +316,10 @@ export const makeAndSignCommitteeAttestationsAndSigners = (attestationsAndSigner
295
316
  return signer.sign(hash);
296
317
  };
297
318
  export const makeBlockProposal = (options)=>{
298
- const { payload, signature } = makeAndSignConsensusPayload(SignatureDomainSeparator.blockProposal, options);
319
+ const blockHeader = options?.blockHeader ?? makeBlockHeader(1);
320
+ const indexWithinCheckpoint = options?.indexWithinCheckpoint ?? IndexWithinCheckpoint(0);
321
+ const inHash = options?.inHash ?? Fr.random();
322
+ const archiveRoot = options?.archiveRoot ?? Fr.random();
299
323
  const txHashes = options?.txHashes ?? [
300
324
  0,
301
325
  1,
@@ -304,46 +328,91 @@ export const makeBlockProposal = (options)=>{
304
328
  4,
305
329
  5
306
330
  ].map(()=>TxHash.random());
307
- return new BlockProposal(payload, signature, txHashes, options?.txs ?? []);
331
+ const txs = options?.txs;
332
+ const signer = options?.signer ?? Secp256k1Signer.random();
333
+ return BlockProposal.createProposalFromSigner(blockHeader, indexWithinCheckpoint, inHash, archiveRoot, txHashes, txs, (_payload, _context)=>Promise.resolve(signer.signMessage(_payload)));
308
334
  };
309
- // TODO(https://github.com/AztecProtocol/aztec-packages/issues/8028)
310
- export const makeBlockAttestation = (options = {})=>{
311
- const header = options.header ?? makeL2BlockHeader(1);
312
- const { signer, attesterSigner = signer, proposerSigner = signer, archive = Fr.random() } = options;
313
- const payload = ConsensusPayload.fromFields({
314
- header: header.toCheckpointHeader(),
315
- archive
316
- });
317
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
335
+ export const makeCheckpointProposal = (options)=>{
336
+ const blockHeader = options?.lastBlock?.blockHeader ?? makeBlockHeader(1);
337
+ const checkpointHeader = options?.checkpointHeader ?? makeCheckpointHeader(1);
338
+ const archiveRoot = options?.archiveRoot ?? Fr.random();
339
+ const signer = options?.signer ?? Secp256k1Signer.random();
340
+ // Build lastBlock info if provided
341
+ const lastBlockInfo = options?.lastBlock ? {
342
+ blockHeader,
343
+ indexWithinCheckpoint: options.lastBlock.indexWithinCheckpoint ?? IndexWithinCheckpoint(4),
344
+ txHashes: options.lastBlock.txHashes ?? [
345
+ 0,
346
+ 1,
347
+ 2,
348
+ 3,
349
+ 4,
350
+ 5
351
+ ].map(()=>TxHash.random()),
352
+ txs: options.lastBlock.txs
353
+ } : undefined;
354
+ return CheckpointProposal.createProposalFromSigner(checkpointHeader, archiveRoot, lastBlockInfo, (payload)=>Promise.resolve(signer.signMessage(payload)));
355
+ };
356
+ /**
357
+ * Create a checkpoint attestation for testing
358
+ */ export const makeCheckpointAttestation = (options = {})=>{
359
+ const header = options.header ?? makeCheckpointHeader(1);
360
+ const archive = options.archive ?? Fr.random();
361
+ const { signer, attesterSigner = signer, proposerSigner = signer } = options;
362
+ const payload = new ConsensusPayload(header, archive);
363
+ // Sign as attester
364
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.checkpointAttestation);
365
+ const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
366
+ const attestationSignature = attestationSigner.sign(attestationHash);
367
+ // Sign as proposer - use CheckpointProposal's payload format (serializeToBuffer)
368
+ // This is different from ConsensusPayload's format (ABI encoding)
369
+ const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
370
+ const tempProposal = new CheckpointProposal(header, archive, Signature.empty());
371
+ const proposalHash = getHashedSignaturePayloadEthSignedMessage(tempProposal, SignatureDomainSeparator.checkpointProposal);
372
+ const proposerSignature = proposalSignerToUse.sign(proposalHash);
373
+ return new CheckpointAttestation(payload, attestationSignature, proposerSignature);
374
+ };
375
+ /**
376
+ * Create a checkpoint attestation from a checkpoint proposal
377
+ */ export const makeCheckpointAttestationFromProposal = (proposal, attesterSigner)=>{
378
+ const payload = new ConsensusPayload(proposal.checkpointHeader, proposal.archive);
379
+ // Sign as attester
380
+ const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.checkpointAttestation);
381
+ const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
382
+ const attestationSignature = attestationSigner.sign(attestationHash);
383
+ // Use the proposal's signature as the proposer signature
384
+ return new CheckpointAttestation(payload, attestationSignature, proposal.signature);
318
385
  };
319
- export const makeAttestationFromCheckpoint = (checkpoint, attesterSigner, proposerSigner)=>{
386
+ /**
387
+ * Create a checkpoint attestation from a checkpoint
388
+ */ export const makeCheckpointAttestationFromCheckpoint = (checkpoint, attesterSigner, proposerSigner)=>{
320
389
  const header = checkpoint.header;
321
390
  const archive = checkpoint.archive.root;
322
- const payload = ConsensusPayload.fromFields({
391
+ return makeCheckpointAttestation({
323
392
  header,
324
- archive
393
+ archive,
394
+ attesterSigner,
395
+ proposerSigner
325
396
  });
326
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
327
397
  };
328
- export const makeBlockAttestationFromBlock = (block, attesterSigner, proposerSigner)=>{
329
- const header = block.header;
398
+ /**
399
+ * Create a checkpoint attestation from an L2Block
400
+ * Note: This is a compatibility function for tests. L2Block doesn't have a checkpoint header directly.
401
+ */ export const makeCheckpointAttestationFromBlock = (block, attesterSigner, proposerSigner)=>{
402
+ // For L2Block, we create a minimal checkpoint header for testing purposes
403
+ const header = CheckpointHeader.empty({
404
+ lastArchiveRoot: block.header.lastArchive.root,
405
+ slotNumber: block.slot,
406
+ timestamp: block.timestamp,
407
+ blockHeadersHash: Fr.ZERO
408
+ });
330
409
  const archive = block.archive.root;
331
- const payload = ConsensusPayload.fromFields({
332
- header: header.toCheckpointHeader(),
333
- archive
410
+ return makeCheckpointAttestation({
411
+ header,
412
+ archive,
413
+ attesterSigner,
414
+ proposerSigner
334
415
  });
335
- return makeBlockAttestationFromPayload(payload, attesterSigner, proposerSigner);
336
- };
337
- export const makeBlockAttestationFromPayload = (payload, attesterSigner, proposerSigner)=>{
338
- // Sign as attester
339
- const attestationHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
340
- const attestationSigner = attesterSigner ?? Secp256k1Signer.random();
341
- const attestationSignature = attestationSigner.sign(attestationHash);
342
- // Sign as proposer
343
- const proposalHash = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockProposal);
344
- const proposalSignerToUse = proposerSigner ?? Secp256k1Signer.random();
345
- const proposerSignature = proposalSignerToUse.sign(proposalHash);
346
- return new BlockAttestation(payload, attestationSignature, proposerSignature);
347
416
  };
348
417
  export async function randomPublishedL2Block(l2BlockNumber, opts = {}) {
349
418
  const block = await L2Block.random(BlockNumber(l2BlockNumber));
@@ -353,7 +422,17 @@ export async function randomPublishedL2Block(l2BlockNumber, opts = {}) {
353
422
  blockHash: Buffer32.random().toString()
354
423
  });
355
424
  const signers = opts.signers ?? times(3, ()=>Secp256k1Signer.random());
356
- const atts = await Promise.all(signers.map((signer)=>makeBlockAttestationFromBlock(block, signer)));
425
+ const checkpoint = await Checkpoint.random(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), {
426
+ numBlocks: 0
427
+ });
428
+ checkpoint.blocks = [
429
+ block
430
+ ];
431
+ const atts = signers.map((signer)=>makeCheckpointAttestation({
432
+ signer,
433
+ archive: block.archive.root,
434
+ header: checkpoint.header
435
+ }));
357
436
  const attestations = atts.map((attestation, i)=>new CommitteeAttestation(signers[i].address, attestation.signature));
358
- return new PublishedL2Block(block, l1, attestations);
437
+ return new CheckpointedL2Block(CheckpointNumber.fromBlockNumber(BlockNumber(l2BlockNumber)), block, l1, attestations);
359
438
  }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Timetable constants used for sequencer timing calculations.
3
+ * These define the time budgets for various phases of block production.
4
+ *
5
+ * The sequencer slot is divided into phases:
6
+ * 1. Checkpoint initialization (sync + proposer check)
7
+ * 2. Block building (execution)
8
+ * 3. Checkpoint assembly
9
+ * 4. P2P propagation for proposal and attestations (round-trip)
10
+ * 5. L1 publishing
11
+ */
12
+ /** Time budget for checkpoint initialization (sync + proposer check) in seconds */
13
+ export declare const CHECKPOINT_INITIALIZATION_TIME = 1;
14
+ /** Time budget for assembling a checkpoint after building the last block in seconds */
15
+ export declare const CHECKPOINT_ASSEMBLE_TIME = 1;
16
+ /** Default one-way P2P propagation time for proposals and attestations in seconds */
17
+ export declare const DEFAULT_P2P_PROPAGATION_TIME = 2;
18
+ /** Default L1 publishing time (matches Ethereum slot duration on mainnet) in seconds */
19
+ export declare const DEFAULT_L1_PUBLISHING_TIME = 12;
20
+ /** Minimum execution time for building a block in seconds */
21
+ export declare const MIN_EXECUTION_TIME = 2;
22
+ /**
23
+ * Calculates the maximum number of blocks that can be built in a slot.
24
+ * Used by both the sequencer timetable and p2p gossipsub scoring.
25
+ *
26
+ * @param aztecSlotDurationSec - Aztec slot duration in seconds
27
+ * @param blockDurationSec - Duration per block in seconds (undefined = single block mode)
28
+ * @param opts - Optional overrides for timing constants
29
+ * @returns Maximum number of blocks per slot
30
+ */
31
+ export declare function calculateMaxBlocksPerSlot(aztecSlotDurationSec: number, blockDurationSec: number | undefined, opts?: {
32
+ checkpointInitializationTime?: number;
33
+ checkpointAssembleTime?: number;
34
+ p2pPropagationTime?: number;
35
+ l1PublishingTime?: number;
36
+ }): number;
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aW1ldGFibGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7R0FVRztBQUVILG1GQUFtRjtBQUNuRixlQUFPLE1BQU0sOEJBQThCLElBQUksQ0FBQztBQUVoRCx1RkFBdUY7QUFDdkYsZUFBTyxNQUFNLHdCQUF3QixJQUFJLENBQUM7QUFFMUMscUZBQXFGO0FBQ3JGLGVBQU8sTUFBTSw0QkFBNEIsSUFBSSxDQUFDO0FBRTlDLHdGQUF3RjtBQUN4RixlQUFPLE1BQU0sMEJBQTBCLEtBQUssQ0FBQztBQUU3Qyw2REFBNkQ7QUFDN0QsZUFBTyxNQUFNLGtCQUFrQixJQUFJLENBQUM7QUFFcEM7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLG9CQUFvQixFQUFFLE1BQU0sRUFDNUIsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLFNBQVMsRUFDcEMsSUFBSSxHQUFFO0lBQ0osNEJBQTRCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdEMsc0JBQXNCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDaEMsa0JBQWtCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDNUIsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEIsR0FDTCxNQUFNLENBb0JSIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/timetable/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,mFAAmF;AACnF,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,uFAAuF;AACvF,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,wFAAwF;AACxF,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,oBAAoB,EAAE,MAAM,EAC5B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,IAAI,GAAE;IACJ,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACtB,GACL,MAAM,CAoBR"}