@aztec/stdlib 0.0.1-commit.e3c1de76 → 0.0.1-commit.e57c76e

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 (1048) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +14 -4
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +25 -4
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +22 -10
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +20 -3
  26. package/dest/abi/function_selector.d.ts +3 -6
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +2 -4
  29. package/dest/abi/function_signature_decoder.d.ts +43 -0
  30. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  31. package/dest/abi/function_signature_decoder.js +66 -0
  32. package/dest/abi/index.d.ts +2 -1
  33. package/dest/abi/index.d.ts.map +1 -1
  34. package/dest/abi/index.js +1 -0
  35. package/dest/abi/note_selector.d.ts +4 -7
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +1 -3
  38. package/dest/abi/selector.d.ts +2 -2
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +1 -1
  41. package/dest/abi/utils.d.ts +14 -1
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +16 -1
  44. package/dest/auth_witness/auth_witness.d.ts +2 -2
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +3 -3
  47. package/dest/avm/avm.d.ts +1756 -10463
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +6 -3
  50. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  53. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  54. package/dest/avm/avm_proving_request.d.ts +653 -5446
  55. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  56. package/dest/avm/message_pack.js +12 -3
  57. package/dest/avm/public_data_write.d.ts +6 -12
  58. package/dest/avm/public_data_write.d.ts.map +1 -1
  59. package/dest/avm/revert_code.d.ts +6 -7
  60. package/dest/avm/revert_code.d.ts.map +1 -1
  61. package/dest/avm/revert_code.js +13 -21
  62. package/dest/aztec-address/index.d.ts +8 -8
  63. package/dest/aztec-address/index.d.ts.map +1 -1
  64. package/dest/aztec-address/index.js +9 -6
  65. package/dest/block/attestation_info.d.ts +3 -2
  66. package/dest/block/attestation_info.d.ts.map +1 -1
  67. package/dest/block/attestation_info.js +7 -5
  68. package/dest/block/block_data.d.ts +27 -0
  69. package/dest/block/block_data.d.ts.map +1 -0
  70. package/dest/block/block_data.js +12 -0
  71. package/dest/block/block_hash.d.ts +11 -10
  72. package/dest/block/block_hash.d.ts.map +1 -1
  73. package/dest/block/block_hash.js +10 -9
  74. package/dest/block/block_parameter.d.ts +37 -4
  75. package/dest/block/block_parameter.d.ts.map +1 -1
  76. package/dest/block/block_parameter.js +53 -2
  77. package/dest/block/in_block.d.ts +5 -24
  78. package/dest/block/in_block.d.ts.map +1 -1
  79. package/dest/block/in_block.js +1 -1
  80. package/dest/block/index.d.ts +2 -2
  81. package/dest/block/index.d.ts.map +1 -1
  82. package/dest/block/index.js +1 -1
  83. package/dest/block/l2_block.d.ts +21 -41
  84. package/dest/block/l2_block.d.ts.map +1 -1
  85. package/dest/block/l2_block.js +12 -2
  86. package/dest/block/l2_block_info.d.ts +10 -29
  87. package/dest/block/l2_block_info.d.ts.map +1 -1
  88. package/dest/block/l2_block_info.js +6 -5
  89. package/dest/block/l2_block_source.d.ts +216 -338
  90. package/dest/block/l2_block_source.d.ts.map +1 -1
  91. package/dest/block/l2_block_source.js +67 -1
  92. package/dest/block/l2_block_stream/interfaces.d.ts +6 -3
  93. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  94. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -2
  95. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  96. package/dest/block/l2_block_stream/l2_block_stream.js +49 -12
  97. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -1
  98. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_memory_store.js +3 -0
  100. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +4 -1
  101. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  102. package/dest/block/l2_block_stream/l2_tips_store_base.js +43 -11
  103. package/dest/block/proposal/attestations_and_signers.d.ts +19 -30
  104. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  105. package/dest/block/proposal/attestations_and_signers.js +26 -18
  106. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  107. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  108. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  109. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  110. package/dest/block/test/l2_tips_store_test_suite.js +5 -4
  111. package/dest/checkpoint/checkpoint.d.ts +48 -99
  112. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  113. package/dest/checkpoint/checkpoint.js +41 -17
  114. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  115. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  116. package/dest/checkpoint/checkpoint_data.js +38 -0
  117. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  118. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  119. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  120. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  121. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  122. package/dest/checkpoint/digest.d.ts +18 -0
  123. package/dest/checkpoint/digest.d.ts.map +1 -0
  124. package/dest/checkpoint/digest.js +12 -0
  125. package/dest/checkpoint/index.d.ts +6 -1
  126. package/dest/checkpoint/index.d.ts.map +1 -1
  127. package/dest/checkpoint/index.js +5 -0
  128. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  129. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  130. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  131. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  132. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  133. package/dest/checkpoint/published_checkpoint.js +1 -2
  134. package/dest/checkpoint/validate.d.ts +36 -0
  135. package/dest/checkpoint/validate.d.ts.map +1 -0
  136. package/dest/checkpoint/validate.js +120 -0
  137. package/dest/config/chain-config.d.ts +4 -9
  138. package/dest/config/chain-config.d.ts.map +1 -1
  139. package/dest/config/chain-config.js +13 -12
  140. package/dest/config/index.d.ts +2 -1
  141. package/dest/config/index.d.ts.map +1 -1
  142. package/dest/config/index.js +1 -0
  143. package/dest/config/sequencer-config.d.ts +14 -0
  144. package/dest/config/sequencer-config.d.ts.map +1 -0
  145. package/dest/config/sequencer-config.js +38 -0
  146. package/dest/contract/complete_address.d.ts +3 -2
  147. package/dest/contract/complete_address.d.ts.map +1 -1
  148. package/dest/contract/complete_address.js +6 -2
  149. package/dest/contract/contract_address.d.ts +6 -6
  150. package/dest/contract/contract_address.d.ts.map +1 -1
  151. package/dest/contract/contract_address.js +9 -8
  152. package/dest/contract/contract_class.d.ts +2 -3
  153. package/dest/contract/contract_class.d.ts.map +1 -1
  154. package/dest/contract/contract_class_id.d.ts +3 -3
  155. package/dest/contract/contract_class_id.d.ts.map +1 -1
  156. package/dest/contract/contract_class_id.js +7 -6
  157. package/dest/contract/contract_deployment_data.d.ts +15 -61
  158. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  159. package/dest/contract/contract_instance.d.ts +4 -2
  160. package/dest/contract/contract_instance.d.ts.map +1 -1
  161. package/dest/contract/contract_instance.js +10 -3
  162. package/dest/contract/index.d.ts +1 -3
  163. package/dest/contract/index.d.ts.map +1 -1
  164. package/dest/contract/index.js +0 -2
  165. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  166. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  167. package/dest/contract/interfaces/contract_class.js +1 -28
  168. package/dest/contract/interfaces/contract_instance.d.ts +41 -95
  169. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  170. package/dest/contract/interfaces/contract_instance.js +4 -2
  171. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  172. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  173. package/dest/contract/interfaces/node-info.d.ts +3 -1
  174. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  175. package/dest/contract/interfaces/node-info.js +2 -1
  176. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  177. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  178. package/dest/contract/private_function.d.ts +1 -1
  179. package/dest/contract/private_function.d.ts.map +1 -1
  180. package/dest/contract/private_function.js +4 -6
  181. package/dest/database-version/database_version.d.ts +5 -11
  182. package/dest/database-version/database_version.d.ts.map +1 -1
  183. package/dest/database-version/version_manager.d.ts +6 -2
  184. package/dest/database-version/version_manager.d.ts.map +1 -1
  185. package/dest/database-version/version_manager.js +12 -1
  186. package/dest/epoch-helpers/index.d.ts +14 -18
  187. package/dest/epoch-helpers/index.d.ts.map +1 -1
  188. package/dest/epoch-helpers/index.js +18 -2
  189. package/dest/file-store/factory.d.ts +4 -3
  190. package/dest/file-store/factory.d.ts.map +1 -1
  191. package/dest/file-store/factory.js +2 -2
  192. package/dest/file-store/http.d.ts +9 -2
  193. package/dest/file-store/http.d.ts.map +1 -1
  194. package/dest/file-store/http.js +20 -9
  195. package/dest/file-store/index.d.ts +2 -1
  196. package/dest/file-store/index.d.ts.map +1 -1
  197. package/dest/file-store/local.d.ts +3 -3
  198. package/dest/file-store/local.d.ts.map +1 -1
  199. package/dest/file-store/local.js +13 -4
  200. package/dest/file-store/s3.d.ts +1 -1
  201. package/dest/file-store/s3.d.ts.map +1 -1
  202. package/dest/file-store/s3.js +11 -3
  203. package/dest/gas/fee_math.d.ts +49 -0
  204. package/dest/gas/fee_math.d.ts.map +1 -0
  205. package/dest/gas/fee_math.js +80 -0
  206. package/dest/gas/gas.d.ts +9 -14
  207. package/dest/gas/gas.d.ts.map +1 -1
  208. package/dest/gas/gas.js +6 -3
  209. package/dest/gas/gas_fees.d.ts +13 -14
  210. package/dest/gas/gas_fees.d.ts.map +1 -1
  211. package/dest/gas/gas_fees.js +20 -4
  212. package/dest/gas/gas_settings.d.ts +66 -86
  213. package/dest/gas/gas_settings.d.ts.map +1 -1
  214. package/dest/gas/gas_settings.js +56 -9
  215. package/dest/gas/index.d.ts +2 -1
  216. package/dest/gas/index.d.ts.map +1 -1
  217. package/dest/gas/index.js +1 -0
  218. package/dest/ha-signing/config.d.ts +72 -0
  219. package/dest/ha-signing/config.d.ts.map +1 -0
  220. package/dest/ha-signing/config.js +88 -0
  221. package/dest/ha-signing/index.d.ts +4 -0
  222. package/dest/ha-signing/index.d.ts.map +1 -0
  223. package/dest/ha-signing/index.js +3 -0
  224. package/dest/ha-signing/local_config.d.ts +32 -0
  225. package/dest/ha-signing/local_config.d.ts.map +1 -0
  226. package/dest/ha-signing/local_config.js +24 -0
  227. package/dest/ha-signing/types.d.ts +90 -0
  228. package/dest/ha-signing/types.d.ts.map +1 -0
  229. package/dest/ha-signing/types.js +39 -0
  230. package/dest/hash/hash.d.ts +35 -1
  231. package/dest/hash/hash.d.ts.map +1 -1
  232. package/dest/hash/hash.js +78 -11
  233. package/dest/hash/map_slot.js +2 -2
  234. package/dest/interfaces/allowed_element.d.ts +17 -35
  235. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  236. package/dest/interfaces/allowed_element.js +8 -8
  237. package/dest/interfaces/api_limit.d.ts +1 -1
  238. package/dest/interfaces/api_limit.js +1 -1
  239. package/dest/interfaces/archiver.d.ts +22 -32
  240. package/dest/interfaces/archiver.d.ts.map +1 -1
  241. package/dest/interfaces/archiver.js +215 -65
  242. package/dest/interfaces/aztec-node-admin.d.ts +106 -255
  243. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  244. package/dest/interfaces/aztec-node-admin.js +68 -17
  245. package/dest/interfaces/aztec-node-debug.d.ts +21 -0
  246. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  247. package/dest/interfaces/aztec-node-debug.js +21 -0
  248. package/dest/interfaces/aztec-node.d.ts +140 -124
  249. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  250. package/dest/interfaces/aztec-node.js +311 -68
  251. package/dest/interfaces/block-builder.d.ts +41 -12
  252. package/dest/interfaces/block-builder.d.ts.map +1 -1
  253. package/dest/interfaces/block-builder.js +13 -6
  254. package/dest/interfaces/block_response.d.ts +90 -0
  255. package/dest/interfaces/block_response.d.ts.map +1 -0
  256. package/dest/interfaces/block_response.js +30 -0
  257. package/dest/interfaces/chain_tips.d.ts +50 -0
  258. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  259. package/dest/interfaces/chain_tips.js +11 -0
  260. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  261. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  262. package/dest/interfaces/checkpoint_parameter.js +18 -0
  263. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  264. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  265. package/dest/interfaces/checkpoint_response.js +26 -0
  266. package/dest/interfaces/client.d.ts +8 -2
  267. package/dest/interfaces/client.d.ts.map +1 -1
  268. package/dest/interfaces/client.js +7 -1
  269. package/dest/interfaces/configs.d.ts +73 -117
  270. package/dest/interfaces/configs.d.ts.map +1 -1
  271. package/dest/interfaces/configs.js +18 -3
  272. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  273. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  274. package/dest/interfaces/l1_publish_info.js +26 -0
  275. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  276. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  277. package/dest/interfaces/l2_logs_source.js +5 -0
  278. package/dest/interfaces/merkle_tree_operations.d.ts +13 -22
  279. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  280. package/dest/interfaces/p2p-bootstrap.js +8 -2
  281. package/dest/interfaces/p2p.d.ts +18 -13
  282. package/dest/interfaces/p2p.d.ts.map +1 -1
  283. package/dest/interfaces/p2p.js +28 -5
  284. package/dest/interfaces/private_kernel_prover.d.ts +62 -2
  285. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  286. package/dest/interfaces/prover-agent.d.ts +5 -23
  287. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  288. package/dest/interfaces/prover-agent.js +4 -1
  289. package/dest/interfaces/prover-broker.d.ts +16 -1
  290. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  291. package/dest/interfaces/prover-broker.js +4 -1
  292. package/dest/interfaces/prover-client.d.ts +12 -23
  293. package/dest/interfaces/prover-client.d.ts.map +1 -1
  294. package/dest/interfaces/prover-client.js +12 -4
  295. package/dest/interfaces/prover-node.js +22 -8
  296. package/dest/interfaces/proving-job-source.js +24 -4
  297. package/dest/interfaces/proving-job.d.ts +742 -5793
  298. package/dest/interfaces/proving-job.d.ts.map +1 -1
  299. package/dest/interfaces/proving-job.js +1 -1
  300. package/dest/interfaces/public_storage_override.d.ts +22 -0
  301. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  302. package/dest/interfaces/public_storage_override.js +7 -0
  303. package/dest/interfaces/server.d.ts +6 -1
  304. package/dest/interfaces/server.d.ts.map +1 -1
  305. package/dest/interfaces/server.js +5 -0
  306. package/dest/interfaces/slasher.d.ts +27 -59
  307. package/dest/interfaces/slasher.d.ts.map +1 -1
  308. package/dest/interfaces/slasher.js +10 -4
  309. package/dest/interfaces/tx_provider.d.ts +6 -1
  310. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  311. package/dest/interfaces/validator.d.ts +76 -168
  312. package/dest/interfaces/validator.d.ts.map +1 -1
  313. package/dest/interfaces/validator.js +16 -5
  314. package/dest/interfaces/world_state.d.ts +6 -5
  315. package/dest/interfaces/world_state.d.ts.map +1 -1
  316. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  317. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  318. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  319. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  320. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  321. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  322. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  323. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  324. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  325. package/dest/kernel/hints/index.d.ts +2 -2
  326. package/dest/kernel/hints/index.js +2 -2
  327. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  328. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  329. package/dest/kernel/hints/key_validation_request.js +20 -18
  330. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  331. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  332. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  333. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  334. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  335. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  336. package/dest/kernel/index.d.ts +5 -1
  337. package/dest/kernel/index.d.ts.map +1 -1
  338. package/dest/kernel/index.js +4 -0
  339. package/dest/kernel/log_hash.d.ts +6 -2
  340. package/dest/kernel/log_hash.d.ts.map +1 -1
  341. package/dest/kernel/log_hash.js +21 -9
  342. package/dest/kernel/private_circuit_public_inputs.d.ts +10 -10
  343. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  344. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  345. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +4 -4
  346. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  347. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  348. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +23 -0
  349. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  350. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +35 -0
  351. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +24 -0
  352. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  353. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +37 -0
  354. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  355. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  356. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  357. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  358. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  359. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  360. package/dest/kernel/private_kernel_prover_output.d.ts +3 -29
  361. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  362. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  363. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  364. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  365. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  366. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  367. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  368. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  369. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  370. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  371. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  372. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  373. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  374. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  375. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  376. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  377. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  378. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  379. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  380. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  381. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  382. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  383. package/dest/kernel/private_validation_requests.d.ts +3 -3
  384. package/dest/kernel/private_validation_requests.js +9 -9
  385. package/dest/kernel/public_call_request.d.ts +15 -30
  386. package/dest/kernel/public_call_request.d.ts.map +1 -1
  387. package/dest/kernel/public_call_request.js +16 -7
  388. package/dest/keys/derivation.d.ts +9 -5
  389. package/dest/keys/derivation.d.ts.map +1 -1
  390. package/dest/keys/derivation.js +28 -18
  391. package/dest/keys/key_types.d.ts +3 -3
  392. package/dest/keys/key_types.d.ts.map +1 -1
  393. package/dest/keys/public_key.d.ts +22 -3
  394. package/dest/keys/public_key.d.ts.map +1 -1
  395. package/dest/keys/public_key.js +20 -1
  396. package/dest/keys/public_keys.d.ts +55 -82
  397. package/dest/keys/public_keys.d.ts.map +1 -1
  398. package/dest/keys/public_keys.js +102 -74
  399. package/dest/keys/utils.d.ts +1 -1
  400. package/dest/keys/utils.d.ts.map +1 -1
  401. package/dest/keys/utils.js +8 -4
  402. package/dest/kv-store/config.d.ts +14 -0
  403. package/dest/kv-store/config.d.ts.map +1 -0
  404. package/dest/kv-store/config.js +21 -0
  405. package/dest/kv-store/index.d.ts +2 -0
  406. package/dest/kv-store/index.d.ts.map +1 -0
  407. package/dest/kv-store/index.js +1 -0
  408. package/dest/l1-contracts/index.d.ts +2 -2
  409. package/dest/l1-contracts/index.d.ts.map +1 -1
  410. package/dest/l1-contracts/index.js +1 -1
  411. package/dest/logs/app_tagging_secret.d.ts +46 -0
  412. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  413. package/dest/logs/app_tagging_secret.js +109 -0
  414. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  415. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  416. package/dest/logs/app_tagging_secret_kind.js +17 -0
  417. package/dest/logs/contract_class_log.d.ts +16 -34
  418. package/dest/logs/contract_class_log.d.ts.map +1 -1
  419. package/dest/logs/contract_class_log.js +11 -9
  420. package/dest/logs/debug_log_store.d.ts +30 -0
  421. package/dest/logs/debug_log_store.d.ts.map +1 -0
  422. package/dest/logs/debug_log_store.js +30 -0
  423. package/dest/logs/index.d.ts +9 -7
  424. package/dest/logs/index.d.ts.map +1 -1
  425. package/dest/logs/index.js +8 -6
  426. package/dest/logs/log_cursor.d.ts +51 -0
  427. package/dest/logs/log_cursor.d.ts.map +1 -0
  428. package/dest/logs/log_cursor.js +82 -0
  429. package/dest/logs/log_result.d.ts +54 -0
  430. package/dest/logs/log_result.d.ts.map +1 -0
  431. package/dest/logs/log_result.js +56 -0
  432. package/dest/logs/logs_query.d.ts +82 -0
  433. package/dest/logs/logs_query.d.ts.map +1 -0
  434. package/dest/logs/logs_query.js +50 -0
  435. package/dest/logs/message_context.d.ts +6 -8
  436. package/dest/logs/message_context.d.ts.map +1 -1
  437. package/dest/logs/message_context.js +27 -9
  438. package/dest/logs/pending_tagged_log.d.ts +2 -3
  439. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  440. package/dest/logs/pending_tagged_log.js +2 -2
  441. package/dest/logs/pre_tag.d.ts +14 -22
  442. package/dest/logs/pre_tag.d.ts.map +1 -1
  443. package/dest/logs/pre_tag.js +2 -2
  444. package/dest/logs/private_log.d.ts +8 -13
  445. package/dest/logs/private_log.d.ts.map +1 -1
  446. package/dest/logs/private_log.js +6 -3
  447. package/dest/logs/public_log.d.ts +4 -3
  448. package/dest/logs/public_log.d.ts.map +1 -1
  449. package/dest/logs/public_log.js +2 -1
  450. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  451. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  452. package/dest/logs/query_all_logs_by_tags.js +64 -0
  453. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  454. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  455. package/dest/logs/shared_secret_derivation.js +15 -9
  456. package/dest/logs/siloed_tag.d.ts +12 -9
  457. package/dest/logs/siloed_tag.d.ts.map +1 -1
  458. package/dest/logs/siloed_tag.js +18 -7
  459. package/dest/logs/tag.d.ts +5 -6
  460. package/dest/logs/tag.d.ts.map +1 -1
  461. package/dest/logs/tag.js +5 -1
  462. package/dest/logs/tagging_index_range.d.ts +22 -0
  463. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  464. package/dest/logs/tagging_index_range.js +8 -0
  465. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  466. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  467. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  468. package/dest/messaging/index.d.ts +2 -1
  469. package/dest/messaging/index.d.ts.map +1 -1
  470. package/dest/messaging/index.js +1 -0
  471. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  472. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  473. package/dest/messaging/l1_to_l2_message.js +11 -13
  474. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  475. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  476. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  477. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  478. package/dest/messaging/l2_to_l1_membership.js +133 -30
  479. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  480. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  481. package/dest/messaging/l2_to_l1_message.js +21 -12
  482. package/dest/noir/index.d.ts +5 -3
  483. package/dest/noir/index.d.ts.map +1 -1
  484. package/dest/note/index.d.ts +1 -2
  485. package/dest/note/index.d.ts.map +1 -1
  486. package/dest/note/index.js +0 -1
  487. package/dest/note/note.d.ts +2 -2
  488. package/dest/note/note.d.ts.map +1 -1
  489. package/dest/note/note_dao.d.ts +1 -1
  490. package/dest/note/note_dao.d.ts.map +1 -1
  491. package/dest/note/note_dao.js +1 -4
  492. package/dest/p2p/attestation_utils.d.ts +11 -1
  493. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  494. package/dest/p2p/attestation_utils.js +45 -0
  495. package/dest/p2p/block_proposal.d.ts +32 -15
  496. package/dest/p2p/block_proposal.d.ts.map +1 -1
  497. package/dest/p2p/block_proposal.js +58 -42
  498. package/dest/p2p/checkpoint_attestation.d.ts +16 -9
  499. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  500. package/dest/p2p/checkpoint_attestation.js +23 -24
  501. package/dest/p2p/checkpoint_proposal.d.ts +50 -24
  502. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  503. package/dest/p2p/checkpoint_proposal.js +77 -65
  504. package/dest/p2p/client_type.d.ts +2 -5
  505. package/dest/p2p/client_type.d.ts.map +1 -1
  506. package/dest/p2p/client_type.js +0 -7
  507. package/dest/p2p/consensus_payload.d.ts +32 -17
  508. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  509. package/dest/p2p/consensus_payload.js +47 -21
  510. package/dest/p2p/constants.d.ts +3 -1
  511. package/dest/p2p/constants.d.ts.map +1 -1
  512. package/dest/p2p/constants.js +1 -0
  513. package/dest/p2p/gossipable.d.ts +4 -4
  514. package/dest/p2p/gossipable.d.ts.map +1 -1
  515. package/dest/p2p/index.d.ts +1 -2
  516. package/dest/p2p/index.d.ts.map +1 -1
  517. package/dest/p2p/index.js +0 -1
  518. package/dest/p2p/peer_error.d.ts +3 -1
  519. package/dest/p2p/peer_error.d.ts.map +1 -1
  520. package/dest/p2p/peer_error.js +5 -0
  521. package/dest/p2p/signature_utils.d.ts +28 -19
  522. package/dest/p2p/signature_utils.d.ts.map +1 -1
  523. package/dest/p2p/signature_utils.js +118 -21
  524. package/dest/p2p/signed_txs.d.ts +15 -13
  525. package/dest/p2p/signed_txs.d.ts.map +1 -1
  526. package/dest/p2p/signed_txs.js +26 -24
  527. package/dest/p2p/topic_type.d.ts +3 -4
  528. package/dest/p2p/topic_type.d.ts.map +1 -1
  529. package/dest/p2p/topic_type.js +7 -24
  530. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  531. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  532. package/dest/parity/parity_base_private_inputs.js +7 -5
  533. package/dest/parity/parity_public_inputs.d.ts +8 -4
  534. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  535. package/dest/parity/parity_public_inputs.js +6 -3
  536. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  537. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  538. package/dest/proofs/chonk_proof.d.ts +57 -7
  539. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  540. package/dest/proofs/chonk_proof.js +112 -15
  541. package/dest/proofs/recursive_proof.d.ts +2 -2
  542. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  543. package/dest/rollup/block_headers_hash.d.ts +1 -1
  544. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  545. package/dest/rollup/block_headers_hash.js +8 -2
  546. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  547. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  548. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  549. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  550. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  551. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  552. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  553. package/dest/rollup/checkpoint_header.d.ts +2 -2
  554. package/dest/rollup/checkpoint_header.js +2 -2
  555. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  556. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  557. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  558. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  559. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  560. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  561. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  562. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  563. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  564. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  565. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  566. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  567. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  568. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  569. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  570. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  571. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  572. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  573. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  574. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  575. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  576. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  577. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  578. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  579. package/dest/schemas/schemas.d.ts +32 -78
  580. package/dest/schemas/schemas.d.ts.map +1 -1
  581. package/dest/schemas/schemas.js +2 -2
  582. package/dest/slashing/helpers.d.ts +2 -2
  583. package/dest/slashing/helpers.d.ts.map +1 -1
  584. package/dest/slashing/helpers.js +16 -7
  585. package/dest/slashing/index.d.ts +2 -3
  586. package/dest/slashing/index.d.ts.map +1 -1
  587. package/dest/slashing/index.js +1 -2
  588. package/dest/slashing/serialization.d.ts +2 -6
  589. package/dest/slashing/serialization.d.ts.map +1 -1
  590. package/dest/slashing/serialization.js +0 -60
  591. package/dest/slashing/types.d.ts +21 -111
  592. package/dest/slashing/types.d.ts.map +1 -1
  593. package/dest/slashing/types.js +28 -24
  594. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  595. package/dest/slashing/votes.d.ts.map +1 -0
  596. package/dest/slashing/{tally.js → votes.js} +35 -3
  597. package/dest/snapshots/types.d.ts +15 -78
  598. package/dest/snapshots/types.d.ts.map +1 -1
  599. package/dest/stats/stats.d.ts +2 -2
  600. package/dest/stats/stats.d.ts.map +1 -1
  601. package/dest/tests/factories.d.ts +25 -30
  602. package/dest/tests/factories.d.ts.map +1 -1
  603. package/dest/tests/factories.js +94 -86
  604. package/dest/tests/mocks.d.ts +15 -7
  605. package/dest/tests/mocks.d.ts.map +1 -1
  606. package/dest/tests/mocks.js +68 -70
  607. package/dest/timetable/index.d.ts +84 -0
  608. package/dest/timetable/index.d.ts.map +1 -0
  609. package/dest/timetable/index.js +209 -0
  610. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  611. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  612. package/dest/trees/append_only_tree_snapshot.js +6 -3
  613. package/dest/trees/nullifier_leaf.d.ts +19 -42
  614. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  615. package/dest/trees/nullifier_leaf.js +3 -0
  616. package/dest/trees/nullifier_membership_witness.d.ts +16 -59
  617. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  618. package/dest/trees/nullifier_membership_witness.js +2 -14
  619. package/dest/trees/public_data_leaf.d.ts +22 -53
  620. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  621. package/dest/trees/public_data_leaf.js +7 -6
  622. package/dest/trees/public_data_witness.d.ts +16 -58
  623. package/dest/trees/public_data_witness.d.ts.map +1 -1
  624. package/dest/tx/block_header.d.ts +7 -4
  625. package/dest/tx/block_header.d.ts.map +1 -1
  626. package/dest/tx/block_header.js +13 -6
  627. package/dest/tx/call_context.d.ts +4 -14
  628. package/dest/tx/call_context.d.ts.map +1 -1
  629. package/dest/tx/capsule.d.ts +7 -3
  630. package/dest/tx/capsule.d.ts.map +1 -1
  631. package/dest/tx/capsule.js +9 -3
  632. package/dest/tx/fee_provider.d.ts +10 -0
  633. package/dest/tx/fee_provider.d.ts.map +1 -0
  634. package/dest/tx/fee_provider.js +1 -0
  635. package/dest/tx/function_data.d.ts +4 -10
  636. package/dest/tx/function_data.d.ts.map +1 -1
  637. package/dest/tx/global_variable_builder.d.ts +3 -4
  638. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  639. package/dest/tx/global_variables.d.ts +19 -52
  640. package/dest/tx/global_variables.d.ts.map +1 -1
  641. package/dest/tx/global_variables.js +8 -12
  642. package/dest/tx/hashed_values.d.ts +4 -3
  643. package/dest/tx/hashed_values.d.ts.map +1 -1
  644. package/dest/tx/hashed_values.js +6 -3
  645. package/dest/tx/in_tx.d.ts +5 -17
  646. package/dest/tx/in_tx.d.ts.map +1 -1
  647. package/dest/tx/index.d.ts +2 -1
  648. package/dest/tx/index.d.ts.map +1 -1
  649. package/dest/tx/index.js +1 -0
  650. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  651. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  652. package/dest/tx/indexed_tx_effect.js +9 -6
  653. package/dest/tx/partial_state_reference.d.ts +22 -65
  654. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  655. package/dest/tx/partial_state_reference.js +6 -3
  656. package/dest/tx/private_execution_result.d.ts +11 -21
  657. package/dest/tx/private_execution_result.d.ts.map +1 -1
  658. package/dest/tx/private_execution_result.js +6 -6
  659. package/dest/tx/profiling.d.ts +70 -356
  660. package/dest/tx/profiling.d.ts.map +1 -1
  661. package/dest/tx/profiling.js +19 -9
  662. package/dest/tx/protocol_contracts.d.ts +5 -9
  663. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  664. package/dest/tx/protocol_contracts.js +2 -2
  665. package/dest/tx/proven_tx.d.ts +30 -74
  666. package/dest/tx/proven_tx.d.ts.map +1 -1
  667. package/dest/tx/proven_tx.js +6 -0
  668. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  669. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  670. package/dest/tx/public_call_request_with_calldata.js +6 -3
  671. package/dest/tx/public_simulation_output.d.ts +4 -2
  672. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  673. package/dest/tx/public_simulation_output.js +7 -3
  674. package/dest/tx/simulated_tx.d.ts +68 -1144
  675. package/dest/tx/simulated_tx.d.ts.map +1 -1
  676. package/dest/tx/simulated_tx.js +17 -12
  677. package/dest/tx/state_reference.d.ts +30 -117
  678. package/dest/tx/state_reference.d.ts.map +1 -1
  679. package/dest/tx/state_reference.js +6 -4
  680. package/dest/tx/tree_snapshots.d.ts +27 -84
  681. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  682. package/dest/tx/tree_snapshots.js +6 -4
  683. package/dest/tx/tx.d.ts +19 -17
  684. package/dest/tx/tx.d.ts.map +1 -1
  685. package/dest/tx/tx.js +48 -29
  686. package/dest/tx/tx_constant_data.d.ts +4 -3
  687. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  688. package/dest/tx/tx_constant_data.js +6 -3
  689. package/dest/tx/tx_context.d.ts +32 -131
  690. package/dest/tx/tx_context.d.ts.map +1 -1
  691. package/dest/tx/tx_context.js +6 -6
  692. package/dest/tx/tx_hash.d.ts +6 -4
  693. package/dest/tx/tx_hash.d.ts.map +1 -1
  694. package/dest/tx/tx_hash.js +13 -5
  695. package/dest/tx/tx_receipt.d.ts +151 -51
  696. package/dest/tx/tx_receipt.d.ts.map +1 -1
  697. package/dest/tx/tx_receipt.js +145 -51
  698. package/dest/tx/tx_request.js +2 -2
  699. package/dest/tx/validator/empty_validator.d.ts +2 -2
  700. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  701. package/dest/tx/validator/error_texts.d.ts +10 -2
  702. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  703. package/dest/tx/validator/error_texts.js +11 -1
  704. package/dest/tx/validator/tx_validator.d.ts +6 -28
  705. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  706. package/dest/tx/validator/tx_validator.js +0 -4
  707. package/dest/types/shared.d.ts +4 -12
  708. package/dest/types/shared.d.ts.map +1 -1
  709. package/dest/types/shared.js +6 -12
  710. package/dest/update-checker/dev_version.d.ts +3 -0
  711. package/dest/update-checker/dev_version.d.ts.map +1 -0
  712. package/dest/update-checker/dev_version.js +1 -0
  713. package/dest/update-checker/index.d.ts +4 -2
  714. package/dest/update-checker/index.d.ts.map +1 -1
  715. package/dest/update-checker/index.js +3 -1
  716. package/dest/update-checker/package_version.d.ts +6 -0
  717. package/dest/update-checker/package_version.d.ts.map +1 -0
  718. package/dest/update-checker/package_version.js +13 -0
  719. package/dest/update-checker/version_checker.d.ts +25 -0
  720. package/dest/update-checker/version_checker.d.ts.map +1 -0
  721. package/dest/update-checker/version_checker.js +50 -0
  722. package/dest/validators/errors.d.ts +6 -1
  723. package/dest/validators/errors.d.ts.map +1 -1
  724. package/dest/validators/errors.js +7 -0
  725. package/dest/validators/schemas.d.ts +147 -614
  726. package/dest/validators/schemas.d.ts.map +1 -1
  727. package/dest/validators/schemas.js +9 -6
  728. package/dest/validators/types.d.ts +21 -4
  729. package/dest/validators/types.d.ts.map +1 -1
  730. package/dest/versioning/versioning.d.ts +4 -2
  731. package/dest/versioning/versioning.d.ts.map +1 -1
  732. package/dest/versioning/versioning.js +5 -2
  733. package/dest/vks/verification_key.d.ts +4 -139
  734. package/dest/vks/verification_key.d.ts.map +1 -1
  735. package/dest/vks/verification_key.js +5 -126
  736. package/dest/world-state/genesis_data.d.ts +13 -0
  737. package/dest/world-state/genesis_data.d.ts.map +1 -0
  738. package/dest/world-state/genesis_data.js +7 -0
  739. package/dest/world-state/index.d.ts +2 -1
  740. package/dest/world-state/index.d.ts.map +1 -1
  741. package/dest/world-state/index.js +1 -0
  742. package/dest/world-state/world_state_revision.d.ts +15 -26
  743. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  744. package/dest/world-state/world_state_revision.js +7 -1
  745. package/package.json +27 -14
  746. package/src/abi/abi.ts +78 -21
  747. package/src/abi/authorization_selector.ts +2 -8
  748. package/src/abi/buffer.ts +25 -4
  749. package/src/abi/contract_artifact.ts +11 -6
  750. package/src/abi/decoder.ts +36 -82
  751. package/src/abi/encoder.ts +85 -6
  752. package/src/abi/event_metadata_definition.ts +2 -0
  753. package/src/abi/event_selector.ts +2 -8
  754. package/src/abi/function_call.ts +25 -3
  755. package/src/abi/function_selector.ts +4 -13
  756. package/src/abi/function_signature_decoder.ts +77 -0
  757. package/src/abi/index.ts +1 -0
  758. package/src/abi/note_selector.ts +3 -12
  759. package/src/abi/selector.ts +1 -1
  760. package/src/abi/utils.ts +31 -4
  761. package/src/auth_witness/auth_witness.ts +3 -3
  762. package/src/avm/avm.ts +5 -0
  763. package/src/avm/message_pack.ts +12 -3
  764. package/src/avm/revert_code.ts +20 -25
  765. package/src/aztec-address/index.ts +15 -12
  766. package/src/block/attestation_info.ts +11 -11
  767. package/src/block/block_data.ts +25 -0
  768. package/src/block/block_hash.ts +21 -14
  769. package/src/block/block_parameter.ts +72 -4
  770. package/src/block/in_block.ts +1 -1
  771. package/src/block/index.ts +1 -1
  772. package/src/block/l2_block.ts +13 -1
  773. package/src/block/l2_block_info.ts +8 -6
  774. package/src/block/l2_block_source.ts +214 -123
  775. package/src/block/l2_block_stream/interfaces.ts +6 -2
  776. package/src/block/l2_block_stream/l2_block_stream.ts +49 -17
  777. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -0
  778. package/src/block/l2_block_stream/l2_tips_store_base.ts +53 -19
  779. package/src/block/proposal/attestations_and_signers.ts +32 -17
  780. package/src/block/test/l2_tips_store_test_suite.ts +10 -3
  781. package/src/checkpoint/checkpoint.ts +54 -17
  782. package/src/checkpoint/checkpoint_data.ts +91 -0
  783. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  784. package/src/checkpoint/digest.ts +28 -0
  785. package/src/checkpoint/index.ts +5 -0
  786. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  787. package/src/checkpoint/published_checkpoint.ts +3 -1
  788. package/src/checkpoint/validate.ts +230 -0
  789. package/src/config/chain-config.ts +13 -16
  790. package/src/config/index.ts +1 -0
  791. package/src/config/sequencer-config.ts +65 -0
  792. package/src/contract/complete_address.ts +7 -3
  793. package/src/contract/contract_address.ts +10 -10
  794. package/src/contract/contract_class.ts +3 -3
  795. package/src/contract/contract_class_id.ts +7 -6
  796. package/src/contract/contract_instance.ts +11 -2
  797. package/src/contract/index.ts +0 -2
  798. package/src/contract/interfaces/contract_class.ts +2 -82
  799. package/src/contract/interfaces/contract_instance.ts +6 -2
  800. package/src/contract/interfaces/node-info.ts +3 -0
  801. package/src/contract/private_function.ts +5 -3
  802. package/src/database-version/version_manager.ts +17 -0
  803. package/src/epoch-helpers/index.ts +30 -0
  804. package/src/file-store/factory.ts +13 -4
  805. package/src/file-store/http.ts +29 -10
  806. package/src/file-store/index.ts +1 -0
  807. package/src/file-store/local.ts +15 -5
  808. package/src/file-store/s3.ts +12 -3
  809. package/src/gas/README.md +154 -0
  810. package/src/gas/fee_math.ts +120 -0
  811. package/src/gas/gas.ts +8 -3
  812. package/src/gas/gas_fees.ts +29 -10
  813. package/src/gas/gas_settings.ts +73 -15
  814. package/src/gas/index.ts +1 -0
  815. package/src/ha-signing/config.ts +152 -0
  816. package/src/ha-signing/index.ts +29 -0
  817. package/src/ha-signing/local_config.ts +46 -0
  818. package/src/ha-signing/types.ts +126 -0
  819. package/src/hash/hash.ts +76 -11
  820. package/src/hash/map_slot.ts +2 -2
  821. package/src/interfaces/allowed_element.ts +29 -9
  822. package/src/interfaces/api_limit.ts +1 -1
  823. package/src/interfaces/archiver.ts +90 -88
  824. package/src/interfaces/aztec-node-admin.ts +57 -18
  825. package/src/interfaces/aztec-node-debug.ts +40 -0
  826. package/src/interfaces/aztec-node.ts +344 -266
  827. package/src/interfaces/block-builder.ts +63 -14
  828. package/src/interfaces/block_response.ts +92 -0
  829. package/src/interfaces/chain_tips.ts +24 -0
  830. package/src/interfaces/checkpoint_parameter.ts +20 -0
  831. package/src/interfaces/checkpoint_response.ts +84 -0
  832. package/src/interfaces/client.ts +7 -1
  833. package/src/interfaces/configs.ts +75 -8
  834. package/src/interfaces/l1_publish_info.ts +40 -0
  835. package/src/interfaces/l2_logs_source.ts +13 -39
  836. package/src/interfaces/merkle_tree_operations.ts +12 -21
  837. package/src/interfaces/p2p-bootstrap.ts +2 -2
  838. package/src/interfaces/p2p.ts +38 -29
  839. package/src/interfaces/private_kernel_prover.ts +88 -0
  840. package/src/interfaces/prover-agent.ts +1 -1
  841. package/src/interfaces/prover-broker.ts +22 -0
  842. package/src/interfaces/prover-client.ts +17 -5
  843. package/src/interfaces/prover-node.ts +7 -7
  844. package/src/interfaces/proving-job-source.ts +4 -4
  845. package/src/interfaces/proving-job.ts +3 -3
  846. package/src/interfaces/public_storage_override.ts +26 -0
  847. package/src/interfaces/server.ts +5 -0
  848. package/src/interfaces/slasher.ts +21 -10
  849. package/src/interfaces/tx_provider.ts +6 -0
  850. package/src/interfaces/validator.ts +87 -36
  851. package/src/interfaces/world_state.ts +5 -4
  852. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  853. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  854. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  855. package/src/kernel/hints/index.ts +2 -2
  856. package/src/kernel/hints/key_validation_request.ts +18 -16
  857. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  858. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  859. package/src/kernel/index.ts +4 -0
  860. package/src/kernel/log_hash.ts +29 -9
  861. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  862. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  863. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +49 -0
  864. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +52 -0
  865. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  866. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  867. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  868. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  869. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  870. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  871. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  872. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  873. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  874. package/src/kernel/private_validation_requests.ts +8 -8
  875. package/src/kernel/public_call_request.ts +22 -7
  876. package/src/keys/derivation.ts +33 -21
  877. package/src/keys/key_types.ts +6 -2
  878. package/src/keys/public_key.ts +26 -2
  879. package/src/keys/public_keys.ts +125 -111
  880. package/src/keys/utils.ts +8 -4
  881. package/src/kv-store/config.ts +29 -0
  882. package/src/kv-store/index.ts +1 -0
  883. package/src/l1-contracts/index.ts +1 -1
  884. package/src/logs/app_tagging_secret.ts +137 -0
  885. package/src/logs/app_tagging_secret_kind.ts +21 -0
  886. package/src/logs/contract_class_log.ts +15 -5
  887. package/src/logs/debug_log_store.ts +54 -0
  888. package/src/logs/index.ts +8 -6
  889. package/src/logs/log_cursor.ts +110 -0
  890. package/src/logs/log_result.ts +104 -0
  891. package/src/logs/logs_query.ts +138 -0
  892. package/src/logs/message_context.ts +22 -8
  893. package/src/logs/pending_tagged_log.ts +1 -3
  894. package/src/logs/pre_tag.ts +3 -6
  895. package/src/logs/private_log.ts +9 -3
  896. package/src/logs/public_log.ts +4 -2
  897. package/src/logs/query_all_logs_by_tags.ts +98 -0
  898. package/src/logs/shared_secret_derivation.ts +21 -10
  899. package/src/logs/siloed_tag.ts +28 -14
  900. package/src/logs/tag.ts +9 -9
  901. package/src/logs/tagging_index_range.ts +18 -0
  902. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  903. package/src/messaging/index.ts +1 -0
  904. package/src/messaging/l1_to_l2_message.ts +12 -9
  905. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  906. package/src/messaging/l2_to_l1_membership.ts +192 -38
  907. package/src/messaging/l2_to_l1_message.ts +29 -9
  908. package/src/noir/index.ts +4 -2
  909. package/src/note/index.ts +0 -1
  910. package/src/note/note_dao.ts +1 -4
  911. package/src/p2p/attestation_utils.ts +56 -0
  912. package/src/p2p/block_proposal.ts +112 -39
  913. package/src/p2p/checkpoint_attestation.ts +33 -32
  914. package/src/p2p/checkpoint_proposal.ts +159 -86
  915. package/src/p2p/client_type.ts +0 -6
  916. package/src/p2p/consensus_payload.ts +68 -24
  917. package/src/p2p/constants.ts +3 -0
  918. package/src/p2p/gossipable.ts +4 -4
  919. package/src/p2p/index.ts +0 -1
  920. package/src/p2p/peer_error.ts +7 -0
  921. package/src/p2p/signature_utils.ts +110 -25
  922. package/src/p2p/signed_txs.ts +46 -28
  923. package/src/p2p/topic_type.ts +8 -15
  924. package/src/parity/parity_base_private_inputs.ts +10 -4
  925. package/src/parity/parity_public_inputs.ts +9 -2
  926. package/src/proofs/chonk_proof.ts +132 -12
  927. package/src/rollup/block_headers_hash.ts +11 -2
  928. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  929. package/src/rollup/checkpoint_header.ts +2 -2
  930. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  931. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  932. package/src/schemas/schemas.ts +6 -1
  933. package/src/slashing/helpers.ts +21 -9
  934. package/src/slashing/index.ts +1 -2
  935. package/src/slashing/serialization.ts +1 -81
  936. package/src/slashing/types.ts +38 -49
  937. package/src/slashing/{tally.ts → votes.ts} +41 -2
  938. package/src/stats/stats.ts +4 -0
  939. package/src/tests/factories.ts +120 -119
  940. package/src/tests/mocks.ts +106 -84
  941. package/src/timetable/index.ts +304 -0
  942. package/src/trees/append_only_tree_snapshot.ts +8 -3
  943. package/src/trees/nullifier_leaf.ts +4 -0
  944. package/src/trees/nullifier_membership_witness.ts +2 -12
  945. package/src/trees/public_data_leaf.ts +11 -5
  946. package/src/tx/block_header.ts +18 -7
  947. package/src/tx/capsule.ts +10 -2
  948. package/src/tx/fee_provider.ts +10 -0
  949. package/src/tx/global_variable_builder.ts +2 -3
  950. package/src/tx/global_variables.ts +13 -21
  951. package/src/tx/hashed_values.ts +8 -3
  952. package/src/tx/index.ts +1 -0
  953. package/src/tx/indexed_tx_effect.ts +18 -6
  954. package/src/tx/partial_state_reference.ts +8 -3
  955. package/src/tx/private_execution_result.ts +5 -5
  956. package/src/tx/profiling.ts +18 -9
  957. package/src/tx/protocol_contracts.ts +2 -2
  958. package/src/tx/proven_tx.ts +6 -0
  959. package/src/tx/public_call_request_with_calldata.ts +8 -3
  960. package/src/tx/public_simulation_output.ts +4 -0
  961. package/src/tx/simulated_tx.ts +30 -22
  962. package/src/tx/state_reference.ts +9 -4
  963. package/src/tx/tree_snapshots.ts +9 -4
  964. package/src/tx/tx.ts +63 -35
  965. package/src/tx/tx_constant_data.ts +8 -3
  966. package/src/tx/tx_context.ts +8 -3
  967. package/src/tx/tx_hash.ts +20 -5
  968. package/src/tx/tx_receipt.ts +269 -74
  969. package/src/tx/tx_request.ts +2 -2
  970. package/src/tx/validator/empty_validator.ts +1 -1
  971. package/src/tx/validator/error_texts.ts +13 -1
  972. package/src/tx/validator/tx_validator.ts +2 -6
  973. package/src/types/shared.ts +8 -13
  974. package/src/update-checker/dev_version.ts +2 -0
  975. package/src/update-checker/index.ts +3 -1
  976. package/src/update-checker/package_version.ts +17 -0
  977. package/src/update-checker/version_checker.ts +65 -0
  978. package/src/validators/errors.ts +9 -0
  979. package/src/validators/schemas.ts +13 -4
  980. package/src/validators/types.ts +25 -5
  981. package/src/versioning/versioning.ts +5 -2
  982. package/src/vks/verification_key.ts +5 -184
  983. package/src/world-state/genesis_data.ts +27 -0
  984. package/src/world-state/index.ts +1 -0
  985. package/src/world-state/world_state_revision.ts +9 -1
  986. package/dest/abi/mocked_keys.d.ts +0 -2
  987. package/dest/abi/mocked_keys.d.ts.map +0 -1
  988. package/dest/abi/mocked_keys.js +0 -1
  989. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  990. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  991. package/dest/block/checkpointed_l2_block.js +0 -46
  992. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  993. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  994. package/dest/contract/private_function_membership_proof.js +0 -124
  995. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  996. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  997. package/dest/contract/utility_function_membership_proof.js +0 -87
  998. package/dest/interfaces/get_logs_response.d.ts +0 -90
  999. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1000. package/dest/interfaces/get_logs_response.js +0 -12
  1001. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1002. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1003. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1004. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1005. package/dest/l1-contracts/slash_factory.js +0 -158
  1006. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1007. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1008. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1009. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1010. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1011. package/dest/logs/extended_contract_class_log.js +0 -67
  1012. package/dest/logs/extended_public_log.d.ts +0 -100
  1013. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1014. package/dest/logs/extended_public_log.js +0 -73
  1015. package/dest/logs/log_filter.d.ts +0 -22
  1016. package/dest/logs/log_filter.d.ts.map +0 -1
  1017. package/dest/logs/log_filter.js +0 -11
  1018. package/dest/logs/log_id.d.ts +0 -82
  1019. package/dest/logs/log_id.d.ts.map +0 -1
  1020. package/dest/logs/log_id.js +0 -92
  1021. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1022. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1023. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1024. package/dest/note/notes_filter.d.ts +0 -27
  1025. package/dest/note/notes_filter.d.ts.map +0 -1
  1026. package/dest/note/notes_filter.js +0 -11
  1027. package/dest/slashing/empire.d.ts +0 -31
  1028. package/dest/slashing/empire.d.ts.map +0 -1
  1029. package/dest/slashing/empire.js +0 -85
  1030. package/dest/slashing/tally.d.ts.map +0 -1
  1031. package/dest/update-checker/update-checker.d.ts +0 -49
  1032. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1033. package/dest/update-checker/update-checker.js +0 -130
  1034. package/src/abi/mocked_keys.ts +0 -2
  1035. package/src/block/checkpointed_l2_block.ts +0 -70
  1036. package/src/contract/private_function_membership_proof.ts +0 -167
  1037. package/src/contract/utility_function_membership_proof.ts +0 -118
  1038. package/src/interfaces/get_logs_response.ts +0 -35
  1039. package/src/l1-contracts/slash_factory.ts +0 -180
  1040. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1041. package/src/logs/extended_contract_class_log.ts +0 -87
  1042. package/src/logs/extended_public_log.ts +0 -94
  1043. package/src/logs/log_filter.ts +0 -31
  1044. package/src/logs/log_id.ts +0 -122
  1045. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1046. package/src/note/notes_filter.ts +0 -38
  1047. package/src/slashing/empire.ts +0 -102
  1048. package/src/update-checker/update-checker.ts +0 -166
@@ -1,6 +1,23 @@
1
- import type { EpochNumber } from '@aztec/foundation/branded-types';
1
+ import { type EpochNumber } from '@aztec/foundation/branded-types';
2
2
  import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { SiblingPath } from '@aztec/foundation/trees';
4
+ import { z } from 'zod';
5
+ import type { AztecNode } from '../interfaces/aztec-node.js';
6
+ import { TxHash } from '../tx/tx_hash.js';
7
+ import type { TxReceipt } from '../tx/tx_receipt.js';
8
+ /**
9
+ * Provides access to the L1 Outbox's per-epoch roots so the witness helper can pick the smallest
10
+ * partial-proof root that covers a tx's checkpoint. Implemented by `OutboxContract` in the
11
+ * ethereum package.
12
+ */
13
+ export interface OutboxRootsReader {
14
+ /**
15
+ * Returns the array of roots stored for `epoch`. Slot `i` holds the root inserted for
16
+ * `numCheckpointsInEpoch = i + 1`, or `Fr.ZERO` if no proof of that depth has landed yet. The
17
+ * returned array length is `MAX_CHECKPOINTS_PER_EPOCH`.
18
+ */
19
+ getRoots(epoch: EpochNumber): Promise<Fr[]>;
20
+ }
4
21
  /**
5
22
  * # L2-to-L1 Message Tree Structure and Leaf IDs
6
23
  *
@@ -30,10 +47,10 @@ import { SiblingPath } from '@aztec/foundation/trees';
30
47
  * - Compression: If a block has no messages (out hash = 0), that branch is ignored
31
48
  *
32
49
  * 4. **Epoch Tree**
33
- * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to AZTEC_MAX_EPOCH_DURATION)
50
+ * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to OUT_HASH_TREE_LEAF_COUNT)
34
51
  * - Root: Epoch out hash (set in the root rollup's public inputs and inserted into the Outbox on L1 when the epoch is proven)
35
52
  * - Type: Unbalanced, non-compressed
36
- * - **Important**: Padded with zeros up to AZTEC_MAX_EPOCH_DURATION to allow for proofs of partial epochs
53
+ * - **Important**: Padded with zeros up to OUT_HASH_TREE_LEAF_COUNT to allow for proofs of partial epochs
37
54
  *
38
55
  * ## Combined Membership Proof
39
56
  * To prove a message exists in an epoch, we combine the sibling paths from all 4 trees:
@@ -84,14 +101,60 @@ import { SiblingPath } from '@aztec/foundation/trees';
84
101
  * @returns The unique leaf ID used for tracking message consumption on L1
85
102
  */
86
103
  export declare function getL2ToL1MessageLeafId(membershipWitness: Pick<L2ToL1MembershipWitness, 'leafIndex' | 'siblingPath'>): bigint;
87
- export interface MessageRetrieval {
88
- getL2ToL1Messages(epoch: EpochNumber): Promise<Fr[][][][]>;
89
- }
90
104
  export type L2ToL1MembershipWitness = {
105
+ epochNumber: EpochNumber;
106
+ /**
107
+ * The number of checkpoints covered by the partial-proof root this witness was built against
108
+ * (1-indexed; equal to `roots-array-index + 1` on the Outbox). Pass this through to
109
+ * `Outbox.consume` so the contract reads the matching root slot.
110
+ */
111
+ numCheckpointsInEpoch: number;
112
+ root: Fr;
113
+ leafIndex: bigint;
114
+ siblingPath: SiblingPath<number>;
115
+ };
116
+ /**
117
+ * Zod schema for {@link L2ToL1MembershipWitness}. The sibling-path length varies with the shape of
118
+ * the per-epoch tree, so we use the unsized `SiblingPath.schema` here rather than a fixed-height
119
+ * `schemaFor`.
120
+ */
121
+ export declare const L2ToL1MembershipWitnessSchema: z.ZodType<L2ToL1MembershipWitness, unknown, z.core.$ZodTypeInternals<L2ToL1MembershipWitness, unknown>>;
122
+ /**
123
+ * Computes the L2 to L1 membership witness for a given message in a transaction.
124
+ *
125
+ * Queries the L1 Outbox to find the smallest partial-proof root that covers the tx's checkpoint,
126
+ * then builds the witness against that root by including only the first `numCheckpointsInEpoch`
127
+ * checkpoints of the epoch in the tree (the remaining slots are zero-padded, matching the shape
128
+ * the rollup proved). Returns `undefined` if the tx is not yet in a block/epoch or if the Outbox
129
+ * holds no root yet that covers the tx's checkpoint.
130
+ *
131
+ * @param node - The Aztec node to query for block/tx/epoch data.
132
+ * @param outboxOrRoots - Either an `OutboxRootsReader` (the helper will fetch the per-epoch roots),
133
+ * or an already-resolved roots array of length `MAX_CHECKPOINTS_PER_EPOCH`. Pass the array when
134
+ * you already read the outbox (e.g. inside a tight loop that resolves witnesses for many
135
+ * messages in the same epoch) to avoid redundant L1 reads.
136
+ * @param message - The L2 to L1 message hash to prove membership of.
137
+ * @param txHashOrReceipt - Either the tx hash, or the already-fetched `TxReceipt`. Passing the
138
+ * receipt skips an internal `getTxReceipt` call.
139
+ * @param messageIndexInTx - Optional index of the message within the transaction's L2-to-L1 messages.
140
+ * If not provided, the message is found by scanning the tx's messages (throws if duplicates exist).
141
+ */
142
+ export declare function computeL2ToL1MembershipWitness(node: Pick<AztecNode, 'getL2ToL1Messages' | 'getTxReceipt' | 'getBlock' | 'getCheckpointsData'>, outboxOrRoots: OutboxRootsReader | Fr[], message: Fr, txHashOrReceipt: TxHash | Pick<TxReceipt, 'txHash' | 'epochNumber' | 'blockNumber' | 'txIndexInBlock'>, messageIndexInTx?: number): Promise<L2ToL1MembershipWitness | undefined>;
143
+ /**
144
+ * Computes a membership witness for a message in the epoch's L2-to-L1 message tree, given explicit position indices.
145
+ *
146
+ * @param messagesInEpoch - All L2-to-L1 messages in the epoch, organized as checkpoints → blocks → txs → messages.
147
+ * @param message - The message hash to prove membership of.
148
+ * @param checkpointIndex - Index of the checkpoint within the epoch's message array.
149
+ * @param blockIndex - Index of the block within the checkpoint.
150
+ * @param txIndex - Index of the transaction within the block.
151
+ * @param messageIndexInTx - Optional index of the message within the transaction's messages.
152
+ * If not provided, the message is found by scanning (throws if duplicates exist within the tx).
153
+ */
154
+ /** @internal Exported for testing only. */
155
+ export declare function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch: Fr[][][][], message: Fr, checkpointIndex: number, blockIndex: number, txIndex: number, messageIndexInTx?: number): {
91
156
  root: Fr;
92
157
  leafIndex: bigint;
93
158
  siblingPath: SiblingPath<number>;
94
159
  };
95
- export declare function computeL2ToL1MembershipWitness(messageRetriever: MessageRetrieval, epoch: EpochNumber, message: Fr): Promise<L2ToL1MembershipWitness | undefined>;
96
- export declare function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch: Fr[][][][], message: Fr): L2ToL1MembershipWitness;
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVtYmVyc2hpcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZW1iZXJzaGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUE0RCxNQUFNLHlCQUF5QixDQUFDO0FBRWhIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3RUc7QUFFSDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixzQkFBc0IsQ0FDcEMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFdBQVcsR0FBRyxhQUFhLENBQUMsR0FDNUUsTUFBTSxDQUVSO0FBRUQsTUFBTSxXQUFXLGdCQUFnQjtJQUMvQixpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0NBQzVEO0FBRUQsTUFBTSxNQUFNLHVCQUF1QixHQUFHO0lBQ3BDLElBQUksRUFBRSxFQUFFLENBQUM7SUFDVCxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLFdBQVcsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDbEMsQ0FBQztBQUVGLHdCQUFzQiw4QkFBOEIsQ0FDbEQsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLEtBQUssRUFBRSxXQUFXLEVBQ2xCLE9BQU8sRUFBRSxFQUFFLEdBQ1YsT0FBTyxDQUFDLHVCQUF1QixHQUFHLFNBQVMsQ0FBQyxDQU85QztBQUlELHdCQUFnQixpREFBaUQsQ0FDL0QsZUFBZSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUMzQixPQUFPLEVBQUUsRUFBRSxHQUNWLHVCQUF1QixDQXFGekIifQ==
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVtYmVyc2hpcC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZW1iZXJzaGlwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFdBQVcsRUFBNEQsTUFBTSx5QkFBeUIsQ0FBQztBQUVoSCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTdELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRDs7OztHQUlHO0FBQ0gsTUFBTSxXQUFXLGlCQUFpQjtJQUNoQzs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLEtBQUssRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Q0FDN0M7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0VHO0FBRUg7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0Isc0JBQXNCLENBQ3BDLGlCQUFpQixFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLEdBQUcsYUFBYSxDQUFDLEdBQzVFLE1BQU0sQ0FFUjtBQUVELE1BQU0sTUFBTSx1QkFBdUIsR0FBRztJQUNwQyxXQUFXLEVBQUUsV0FBVyxDQUFDO0lBQ3pCOzs7O09BSUc7SUFDSCxxQkFBcUIsRUFBRSxNQUFNLENBQUM7SUFDOUIsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNULFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUNsQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILGVBQU8sTUFBTSw2QkFBNkIseUdBTVMsQ0FBQztBQUVwRDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILHdCQUFzQiw4QkFBOEIsQ0FDbEQsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsbUJBQW1CLEdBQUcsY0FBYyxHQUFHLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxFQUMvRixhQUFhLEVBQUUsaUJBQWlCLEdBQUcsRUFBRSxFQUFFLEVBQ3ZDLE9BQU8sRUFBRSxFQUFFLEVBQ1gsZUFBZSxFQUFFLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsR0FBRyxhQUFhLEdBQUcsYUFBYSxHQUFHLGdCQUFnQixDQUFDLEVBQ3RHLGdCQUFnQixDQUFDLEVBQUUsTUFBTSxHQUN4QixPQUFPLENBQUMsdUJBQXVCLEdBQUcsU0FBUyxDQUFDLENBZ0U5QztBQWdCRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsMkNBQTJDO0FBQzNDLHdCQUFnQixpREFBaUQsQ0FDL0QsZUFBZSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUMzQixPQUFPLEVBQUUsRUFBRSxFQUNYLGVBQWUsRUFBRSxNQUFNLEVBQ3ZCLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLE9BQU8sRUFBRSxNQUFNLEVBQ2YsZ0JBQWdCLENBQUMsRUFBRSxNQUFNLEdBQ3hCO0lBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0NBQUUsQ0FvRW5FIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"l2_to_l1_membership.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_membership.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,WAAW,EAA4D,MAAM,yBAAyB,CAAC;AAEhH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,GAAG,aAAa,CAAC,GAC5E,MAAM,CAER;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;CAC5D;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,wBAAsB,8BAA8B,CAClD,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAO9C;AAID,wBAAgB,iDAAiD,CAC/D,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAC3B,OAAO,EAAE,EAAE,GACV,uBAAuB,CAqFzB"}
1
+ {"version":3,"file":"l2_to_l1_membership.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_membership.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,WAAW,EAA4D,MAAM,yBAAyB,CAAC;AAEhH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;CAC7C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwEG;AAEH;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,GAAG,aAAa,CAAC,GAC5E,MAAM,CAER;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB;;;;OAIG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,yGAMS,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,mBAAmB,GAAG,cAAc,GAAG,UAAU,GAAG,oBAAoB,CAAC,EAC/F,aAAa,EAAE,iBAAiB,GAAG,EAAE,EAAE,EACvC,OAAO,EAAE,EAAE,EACX,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,aAAa,GAAG,aAAa,GAAG,gBAAgB,CAAC,EACtG,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAgE9C;AAgBD;;;;;;;;;;GAUG;AACH,2CAA2C;AAC3C,wBAAgB,iDAAiD,CAC/D,eAAe,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAC3B,OAAO,EAAE,EAAE,EACX,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,gBAAgB,CAAC,EAAE,MAAM,GACxB;IAAE,IAAI,EAAE,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAAE,CAoEnE"}
@@ -1,6 +1,9 @@
1
- import { OUT_HASH_TREE_LEAF_COUNT } from '@aztec/constants';
1
+ import { MAX_CHECKPOINTS_PER_EPOCH, OUT_HASH_TREE_LEAF_COUNT } from '@aztec/constants';
2
+ import { EpochNumberSchema } from '@aztec/foundation/branded-types';
2
3
  import { Fr } from '@aztec/foundation/curves/bn254';
3
4
  import { SiblingPath, UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot } from '@aztec/foundation/trees';
5
+ import { z } from 'zod';
6
+ import { schemas } from '../schemas/schemas.js';
4
7
  /**
5
8
  * # L2-to-L1 Message Tree Structure and Leaf IDs
6
9
  *
@@ -30,10 +33,10 @@ import { SiblingPath, UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot }
30
33
  * - Compression: If a block has no messages (out hash = 0), that branch is ignored
31
34
  *
32
35
  * 4. **Epoch Tree**
33
- * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to AZTEC_MAX_EPOCH_DURATION)
36
+ * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to OUT_HASH_TREE_LEAF_COUNT)
34
37
  * - Root: Epoch out hash (set in the root rollup's public inputs and inserted into the Outbox on L1 when the epoch is proven)
35
38
  * - Type: Unbalanced, non-compressed
36
- * - **Important**: Padded with zeros up to AZTEC_MAX_EPOCH_DURATION to allow for proofs of partial epochs
39
+ * - **Important**: Padded with zeros up to OUT_HASH_TREE_LEAF_COUNT to allow for proofs of partial epochs
37
40
  *
38
41
  * ## Combined Membership Proof
39
42
  * To prove a message exists in an epoch, we combine the sibling paths from all 4 trees:
@@ -84,38 +87,117 @@ import { SiblingPath, UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot }
84
87
  */ export function getL2ToL1MessageLeafId(membershipWitness) {
85
88
  return 2n ** BigInt(membershipWitness.siblingPath.pathSize) + membershipWitness.leafIndex;
86
89
  }
87
- export async function computeL2ToL1MembershipWitness(messageRetriever, epoch, message) {
88
- const messagesInEpoch = await messageRetriever.getL2ToL1Messages(epoch);
89
- if (messagesInEpoch.length === 0) {
90
+ /**
91
+ * Zod schema for {@link L2ToL1MembershipWitness}. The sibling-path length varies with the shape of
92
+ * the per-epoch tree, so we use the unsized `SiblingPath.schema` here rather than a fixed-height
93
+ * `schemaFor`.
94
+ */ export const L2ToL1MembershipWitnessSchema = z.object({
95
+ epochNumber: EpochNumberSchema,
96
+ numCheckpointsInEpoch: schemas.Integer,
97
+ root: schemas.Fr,
98
+ leafIndex: schemas.BigInt,
99
+ siblingPath: SiblingPath.schema
100
+ });
101
+ /**
102
+ * Computes the L2 to L1 membership witness for a given message in a transaction.
103
+ *
104
+ * Queries the L1 Outbox to find the smallest partial-proof root that covers the tx's checkpoint,
105
+ * then builds the witness against that root by including only the first `numCheckpointsInEpoch`
106
+ * checkpoints of the epoch in the tree (the remaining slots are zero-padded, matching the shape
107
+ * the rollup proved). Returns `undefined` if the tx is not yet in a block/epoch or if the Outbox
108
+ * holds no root yet that covers the tx's checkpoint.
109
+ *
110
+ * @param node - The Aztec node to query for block/tx/epoch data.
111
+ * @param outboxOrRoots - Either an `OutboxRootsReader` (the helper will fetch the per-epoch roots),
112
+ * or an already-resolved roots array of length `MAX_CHECKPOINTS_PER_EPOCH`. Pass the array when
113
+ * you already read the outbox (e.g. inside a tight loop that resolves witnesses for many
114
+ * messages in the same epoch) to avoid redundant L1 reads.
115
+ * @param message - The L2 to L1 message hash to prove membership of.
116
+ * @param txHashOrReceipt - Either the tx hash, or the already-fetched `TxReceipt`. Passing the
117
+ * receipt skips an internal `getTxReceipt` call.
118
+ * @param messageIndexInTx - Optional index of the message within the transaction's L2-to-L1 messages.
119
+ * If not provided, the message is found by scanning the tx's messages (throws if duplicates exist).
120
+ */ export async function computeL2ToL1MembershipWitness(node, outboxOrRoots, message, txHashOrReceipt, messageIndexInTx) {
121
+ const receipt = 'txHash' in txHashOrReceipt ? txHashOrReceipt : await node.getTxReceipt(txHashOrReceipt, {
122
+ includeTxEffect: true
123
+ });
124
+ const { epochNumber, blockNumber, txIndexInBlock } = receipt;
125
+ if (epochNumber === undefined || blockNumber === undefined || txIndexInBlock === undefined) {
90
126
  return undefined;
91
127
  }
92
- return computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, message);
93
- }
94
- // TODO: Allow to specify the message to consume by its index or by an offset, in case there are multiple messages with
95
- // the same value.
96
- export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, message) {
97
- // Find the index of the message in the tx, index of the tx in the block, and index of the block in the epoch.
98
- let messageIndexInTx = -1;
99
- let txIndex = -1;
100
- let blockIndex = -1;
101
- const checkpointIndex = messagesInEpoch.findIndex((messagesInCheckpoint)=>{
102
- blockIndex = messagesInCheckpoint.findIndex((messagesInBlock)=>{
103
- txIndex = messagesInBlock.findIndex((messagesInTx)=>{
104
- messageIndexInTx = messagesInTx.findIndex((msg)=>msg.equals(message));
105
- return messageIndexInTx !== -1;
106
- });
107
- return txIndex !== -1;
108
- });
109
- return blockIndex !== -1;
110
- });
128
+ const [messagesInEpoch, block, checkpointsData] = await Promise.all([
129
+ node.getL2ToL1Messages(epochNumber),
130
+ node.getBlock(blockNumber),
131
+ node.getCheckpointsData({
132
+ epoch: epochNumber
133
+ })
134
+ ]);
135
+ if (messagesInEpoch.length === 0 || !block) {
136
+ return undefined;
137
+ }
138
+ const checkpointIndex = checkpointsData.findIndex((c)=>c.checkpointNumber === block.checkpointNumber);
111
139
  if (checkpointIndex === -1) {
112
- throw new Error('The L2ToL1Message you are trying to prove inclusion of does not exist');
140
+ return undefined;
113
141
  }
114
- // Build the tx tree.
142
+ const blockIndex = block.indexWithinCheckpoint;
143
+ const txIndex = txIndexInBlock;
144
+ // Pick the smallest partial-proof root on the Outbox that covers checkpointIndex. The Outbox
145
+ // stores roots keyed by `numCheckpointsInEpoch - 1`, so to cover a tx in checkpoint at index
146
+ // `checkpointIndex` we need a non-zero entry at array index >= checkpointIndex.
147
+ const roots = Array.isArray(outboxOrRoots) ? outboxOrRoots : await outboxOrRoots.getRoots(epochNumber);
148
+ const numCheckpointsInEpoch = findSmallestCoveringRootCount(roots, checkpointIndex);
149
+ if (numCheckpointsInEpoch === undefined) {
150
+ return undefined;
151
+ }
152
+ // Build the witness against the first `numCheckpointsInEpoch` checkpoints. The inner builder
153
+ // pads to OUT_HASH_TREE_LEAF_COUNT internally, so slicing the outer array narrows the real-leaf
154
+ // prefix and grows the zero suffix — exactly the shape the rollup proved against.
155
+ const messagesInPartialEpoch = messagesInEpoch.slice(0, numCheckpointsInEpoch);
156
+ const { root, leafIndex, siblingPath } = computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInPartialEpoch, message, checkpointIndex, blockIndex, txIndex, messageIndexInTx);
157
+ // Cross-check: the recomputed root must equal the root the Outbox is holding for this depth.
158
+ // A mismatch means the node and L1 disagree about the epoch's contents; fail loud rather than
159
+ // return a witness that will revert on chain.
160
+ const expected = roots[numCheckpointsInEpoch - 1];
161
+ if (!root.equals(expected)) {
162
+ throw new Error(`Local epoch out-hash does not match Outbox at epoch ${epochNumber} numCheckpointsInEpoch ` + `${numCheckpointsInEpoch}: local=${root.toString()} outbox=${expected.toString()}`);
163
+ }
164
+ return {
165
+ epochNumber,
166
+ numCheckpointsInEpoch,
167
+ root,
168
+ leafIndex,
169
+ siblingPath
170
+ };
171
+ }
172
+ /**
173
+ * Returns the smallest `numCheckpointsInEpoch` (1-indexed) for which the Outbox holds a root that
174
+ * covers the message at `checkpointIndex` (0-indexed). Returns `undefined` if no covering root has
175
+ * been inserted yet.
176
+ */ function findSmallestCoveringRootCount(roots, checkpointIndex) {
177
+ for(let i = checkpointIndex; i < Math.min(roots.length, MAX_CHECKPOINTS_PER_EPOCH); i++){
178
+ if (!roots[i].isZero()) {
179
+ return i + 1;
180
+ }
181
+ }
182
+ return undefined;
183
+ }
184
+ /**
185
+ * Computes a membership witness for a message in the epoch's L2-to-L1 message tree, given explicit position indices.
186
+ *
187
+ * @param messagesInEpoch - All L2-to-L1 messages in the epoch, organized as checkpoints → blocks → txs → messages.
188
+ * @param message - The message hash to prove membership of.
189
+ * @param checkpointIndex - Index of the checkpoint within the epoch's message array.
190
+ * @param blockIndex - Index of the block within the checkpoint.
191
+ * @param txIndex - Index of the transaction within the block.
192
+ * @param messageIndexInTx - Optional index of the message within the transaction's messages.
193
+ * If not provided, the message is found by scanning (throws if duplicates exist within the tx).
194
+ */ /** @internal Exported for testing only. */ export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, message, checkpointIndex, blockIndex, txIndex, messageIndexInTx) {
115
195
  const messagesInTx = messagesInEpoch[checkpointIndex][blockIndex][txIndex];
196
+ const resolvedMessageIndex = resolveMessageIndex(messagesInTx, message, messageIndexInTx);
197
+ // Build the tx tree.
116
198
  const txTree = UnbalancedMerkleTreeCalculator.create(messagesInTx.map((msg)=>msg.toBuffer()));
117
199
  // Get the sibling path of the target message in the tx tree.
118
- const pathToMessageInTxSubtree = txTree.getSiblingPathByLeafIndex(messageIndexInTx);
200
+ const pathToMessageInTxSubtree = txTree.getSiblingPathByLeafIndex(resolvedMessageIndex);
119
201
  // Build the tree of the block containing the target message.
120
202
  const blockTree = buildBlockTree(messagesInEpoch[checkpointIndex][blockIndex]);
121
203
  // Get the sibling path of the tx out hash in the block tree.
@@ -131,7 +213,7 @@ export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoc
131
213
  }
132
214
  return buildCheckpointTree(messagesInCheckpoint).getRoot();
133
215
  });
134
- // Pad to AZTEC_MAX_EPOCH_DURATION with zeros.
216
+ // Pad to OUT_HASH_TREE_LEAF_COUNT with zeros.
135
217
  checkpointOutHashes = checkpointOutHashes.concat(Array.from({
136
218
  length: OUT_HASH_TREE_LEAF_COUNT - messagesInEpoch.length
137
219
  }, ()=>Buffer.alloc(32)));
@@ -149,7 +231,7 @@ export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoc
149
231
  // Compute the combined index.
150
232
  // It is the index of the message in the balanced tree (by filling up the wonky tree with empty nodes) at its current
151
233
  // height. It's used to validate the membership proof.
152
- const messageLeafPosition = txTree.getLeafLocation(messageIndexInTx);
234
+ const messageLeafPosition = txTree.getLeafLocation(resolvedMessageIndex);
153
235
  const txLeafPosition = blockTree.getLeafLocation(txIndex);
154
236
  const blockLeafPosition = checkpointTree.getLeafLocation(blockIndex);
155
237
  const checkpointLeafPosition = epochTree.getLeafLocation(checkpointIndex);
@@ -165,6 +247,27 @@ export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoc
165
247
  siblingPath: new SiblingPath(combinedPath.length, combinedPath)
166
248
  };
167
249
  }
250
+ function resolveMessageIndex(messagesInTx, message, messageIndexInTx) {
251
+ if (messageIndexInTx !== undefined) {
252
+ if (!messagesInTx[messageIndexInTx]?.equals(message)) {
253
+ throw new Error(`Message at index ${messageIndexInTx} in tx does not match the expected message ${message}`);
254
+ }
255
+ return messageIndexInTx;
256
+ }
257
+ const indices = messagesInTx.reduce((acc, msg, i)=>{
258
+ if (msg.equals(message)) {
259
+ acc.push(i);
260
+ }
261
+ return acc;
262
+ }, []);
263
+ if (indices.length === 0) {
264
+ throw new Error('The L2ToL1Message you are trying to prove inclusion of does not exist');
265
+ }
266
+ if (indices.length > 1) {
267
+ throw new Error(`Multiple messages with the same value ${message} found in tx (indices: ${indices.join(', ')}). ` + `Provide messageIndexInTx to disambiguate.`);
268
+ }
269
+ return indices[0];
270
+ }
168
271
  function buildCheckpointTree(messagesInCheckpoint) {
169
272
  const blockOutHashes = messagesInCheckpoint.map((messagesInBlock)=>buildBlockTree(messagesInBlock).getRoot());
170
273
  return buildCompressedTree(blockOutHashes);
@@ -1,25 +1,19 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
- import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
3
+ import { BufferReader, BufferSink, FieldReader } from '@aztec/foundation/serialize';
4
4
  import { z } from 'zod';
5
5
  import { AztecAddress } from '../aztec-address/index.js';
6
6
  export declare class L2ToL1Message {
7
7
  recipient: EthAddress;
8
8
  content: Fr;
9
9
  constructor(recipient: EthAddress, content: Fr);
10
- static get schema(): z.ZodEffects<z.ZodObject<{
11
- recipient: z.ZodType<EthAddress, any, string>;
12
- content: z.ZodType<Fr, any, string>;
13
- }, "strip", z.ZodTypeAny, {
10
+ static get schema(): z.ZodPipe<z.ZodObject<{
11
+ recipient: z.ZodType<EthAddress, string, z.core.$ZodTypeInternals<EthAddress, string>>;
12
+ content: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
13
+ }, z.core.$strip>, z.ZodTransform<L2ToL1Message, {
14
14
  recipient: EthAddress;
15
15
  content: Fr;
16
- }, {
17
- recipient: string;
18
- content: string;
19
- }>, L2ToL1Message, {
20
- recipient: string;
21
- content: string;
22
- }>;
16
+ }>>;
23
17
  /**
24
18
  * Creates an empty L2ToL1Message with default values.
25
19
  * @returns An instance of L2ToL1Message with empty fields.
@@ -44,6 +38,7 @@ export declare class L2ToL1Message {
44
38
  * @returns The buffer.
45
39
  */
46
40
  toBuffer(): Buffer;
41
+ toBuffer(sink: BufferSink): void;
47
42
  /**
48
43
  * Serializes the L2ToL1Message into an array of fields.
49
44
  * @returns An array of fields representing the serialized message.
@@ -72,41 +67,24 @@ export declare class CountedL2ToL1Message {
72
67
  message: L2ToL1Message;
73
68
  counter: number;
74
69
  constructor(message: L2ToL1Message, counter: number);
75
- static get schema(): z.ZodEffects<z.ZodObject<{
76
- message: z.ZodEffects<z.ZodObject<{
77
- recipient: z.ZodType<EthAddress, any, string>;
78
- content: z.ZodType<Fr, any, string>;
79
- }, "strip", z.ZodTypeAny, {
70
+ static get schema(): z.ZodPipe<z.ZodObject<{
71
+ message: z.ZodPipe<z.ZodObject<{
72
+ recipient: z.ZodType<EthAddress, string, z.core.$ZodTypeInternals<EthAddress, string>>;
73
+ content: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
74
+ }, z.core.$strip>, z.ZodTransform<L2ToL1Message, {
80
75
  recipient: EthAddress;
81
76
  content: Fr;
82
- }, {
83
- recipient: string;
84
- content: string;
85
- }>, L2ToL1Message, {
86
- recipient: string;
87
- content: string;
88
- }>;
77
+ }>>;
89
78
  counter: z.ZodNumber;
90
- }, "strip", z.ZodTypeAny, {
79
+ }, z.core.$strip>, z.ZodTransform<CountedL2ToL1Message, {
91
80
  message: L2ToL1Message;
92
81
  counter: number;
93
- }, {
94
- message: {
95
- recipient: string;
96
- content: string;
97
- };
98
- counter: number;
99
- }>, CountedL2ToL1Message, {
100
- message: {
101
- recipient: string;
102
- content: string;
103
- };
104
- counter: number;
105
- }>;
82
+ }>>;
106
83
  static empty(): CountedL2ToL1Message;
107
84
  isEmpty(): boolean;
108
85
  static fromBuffer(buffer: Buffer | BufferReader): CountedL2ToL1Message;
109
86
  toBuffer(): Buffer;
87
+ toBuffer(sink: BufferSink): void;
110
88
  static fromFields(fields: Fr[] | FieldReader): CountedL2ToL1Message;
111
89
  toFields(): Fr[];
112
90
  }
@@ -114,37 +92,19 @@ export declare class ScopedL2ToL1Message {
114
92
  message: L2ToL1Message;
115
93
  contractAddress: AztecAddress;
116
94
  constructor(message: L2ToL1Message, contractAddress: AztecAddress);
117
- static get schema(): z.ZodEffects<z.ZodObject<{
118
- message: z.ZodEffects<z.ZodObject<{
119
- recipient: z.ZodType<EthAddress, any, string>;
120
- content: z.ZodType<Fr, any, string>;
121
- }, "strip", z.ZodTypeAny, {
95
+ static get schema(): z.ZodPipe<z.ZodObject<{
96
+ message: z.ZodPipe<z.ZodObject<{
97
+ recipient: z.ZodType<EthAddress, string, z.core.$ZodTypeInternals<EthAddress, string>>;
98
+ content: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
99
+ }, z.core.$strip>, z.ZodTransform<L2ToL1Message, {
122
100
  recipient: EthAddress;
123
101
  content: Fr;
124
- }, {
125
- recipient: string;
126
- content: string;
127
- }>, L2ToL1Message, {
128
- recipient: string;
129
- content: string;
130
- }>;
102
+ }>>;
131
103
  contractAddress: import("@aztec/foundation/schemas").ZodFor<AztecAddress>;
132
- }, "strip", z.ZodTypeAny, {
104
+ }, z.core.$strip>, z.ZodTransform<ScopedL2ToL1Message, {
133
105
  message: L2ToL1Message;
134
106
  contractAddress: AztecAddress;
135
- }, {
136
- message: {
137
- recipient: string;
138
- content: string;
139
- };
140
- contractAddress?: any;
141
- }>, ScopedL2ToL1Message, {
142
- message: {
143
- recipient: string;
144
- content: string;
145
- };
146
- contractAddress?: any;
147
- }>;
107
+ }>>;
148
108
  static empty(): ScopedL2ToL1Message;
149
109
  equals(other: ScopedL2ToL1Message): boolean;
150
110
  /**
@@ -158,6 +118,7 @@ export declare class ScopedL2ToL1Message {
158
118
  isEmpty(): boolean;
159
119
  static fromBuffer(buffer: Buffer | BufferReader): ScopedL2ToL1Message;
160
120
  toBuffer(): Buffer;
121
+ toBuffer(sink: BufferSink): void;
161
122
  static fromFields(fields: Fr[] | FieldReader): ScopedL2ToL1Message;
162
123
  toFields(): Fr[];
163
124
  }
@@ -165,66 +126,31 @@ export declare class ScopedCountedL2ToL1Message {
165
126
  inner: CountedL2ToL1Message;
166
127
  contractAddress: AztecAddress;
167
128
  constructor(inner: CountedL2ToL1Message, contractAddress: AztecAddress);
168
- static get schema(): z.ZodEffects<z.ZodObject<{
169
- inner: z.ZodEffects<z.ZodObject<{
170
- message: z.ZodEffects<z.ZodObject<{
171
- recipient: z.ZodType<EthAddress, any, string>;
172
- content: z.ZodType<Fr, any, string>;
173
- }, "strip", z.ZodTypeAny, {
129
+ static get schema(): z.ZodPipe<z.ZodObject<{
130
+ inner: z.ZodPipe<z.ZodObject<{
131
+ message: z.ZodPipe<z.ZodObject<{
132
+ recipient: z.ZodType<EthAddress, string, z.core.$ZodTypeInternals<EthAddress, string>>;
133
+ content: z.ZodType<Fr, string, z.core.$ZodTypeInternals<Fr, string>>;
134
+ }, z.core.$strip>, z.ZodTransform<L2ToL1Message, {
174
135
  recipient: EthAddress;
175
136
  content: Fr;
176
- }, {
177
- recipient: string;
178
- content: string;
179
- }>, L2ToL1Message, {
180
- recipient: string;
181
- content: string;
182
- }>;
137
+ }>>;
183
138
  counter: z.ZodNumber;
184
- }, "strip", z.ZodTypeAny, {
139
+ }, z.core.$strip>, z.ZodTransform<CountedL2ToL1Message, {
185
140
  message: L2ToL1Message;
186
141
  counter: number;
187
- }, {
188
- message: {
189
- recipient: string;
190
- content: string;
191
- };
192
- counter: number;
193
- }>, CountedL2ToL1Message, {
194
- message: {
195
- recipient: string;
196
- content: string;
197
- };
198
- counter: number;
199
- }>;
142
+ }>>;
200
143
  contractAddress: import("@aztec/foundation/schemas").ZodFor<AztecAddress>;
201
- }, "strip", z.ZodTypeAny, {
144
+ }, z.core.$strip>, z.ZodTransform<ScopedCountedL2ToL1Message, {
202
145
  inner: CountedL2ToL1Message;
203
146
  contractAddress: AztecAddress;
204
- }, {
205
- inner: {
206
- message: {
207
- recipient: string;
208
- content: string;
209
- };
210
- counter: number;
211
- };
212
- contractAddress?: any;
213
- }>, ScopedCountedL2ToL1Message, {
214
- inner: {
215
- message: {
216
- recipient: string;
217
- content: string;
218
- };
219
- counter: number;
220
- };
221
- contractAddress?: any;
222
- }>;
147
+ }>>;
223
148
  static empty(): ScopedCountedL2ToL1Message;
224
149
  isEmpty(): boolean;
225
150
  static fromBuffer(buffer: Buffer | BufferReader): ScopedCountedL2ToL1Message;
226
151
  toBuffer(): Buffer;
152
+ toBuffer(sink: BufferSink): void;
227
153
  static fromFields(fields: Fr[] | FieldReader): ScopedCountedL2ToL1Message;
228
154
  toFields(): Fr[];
229
155
  }
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFFOUcsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQscUJBQWEsYUFBYTtJQUVmLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLE9BQU8sRUFBRSxFQUFFO0lBRnBCLFlBQ1MsU0FBUyxFQUFFLFVBQVUsRUFDckIsT0FBTyxFQUFFLEVBQUUsRUFDaEI7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEtBQUssSUFBSSxhQUFhLENBRTVCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLGFBQWEsQ0FFOUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLEtBQUssRUFBRSxhQUFhLEdBQUcsT0FBTyxDQUVwQztJQUVEOzs7T0FHRztJQUNILFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxhQUFhLENBRzNEO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsYUFBYSxDQUc5RDtJQUVEOzs7T0FHRztJQUNILE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsS0FBSyxDQUFDLGVBQWUsRUFBRSxZQUFZLEdBQUcsbUJBQW1CLENBRXhEO0NBQ0Y7QUFFRCxxQkFBYSxvQkFBb0I7SUFFdEIsT0FBTyxFQUFFLGFBQWE7SUFDdEIsT0FBTyxFQUFFLE1BQU07SUFGeEIsWUFDUyxPQUFPLEVBQUUsYUFBYSxFQUN0QixPQUFPLEVBQUUsTUFBTSxFQUNwQjtJQUVKLE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FPaEI7SUFFRCxNQUFNLENBQUMsS0FBSyx5QkFFWDtJQUVELE9BQU8sSUFBSSxPQUFPLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksd0JBRzlDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLHdCQUczQztJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtDQUNGO0FBRUQscUJBQWEsbUJBQW1CO0lBRXJCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLGVBQWUsRUFBRSxZQUFZO0lBRnRDLFlBQ1MsT0FBTyxFQUFFLGFBQWEsRUFDdEIsZUFBZSxFQUFFLFlBQVksRUFDbEM7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsTUFBTSxDQUFDLEtBQUssd0JBRVg7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FFMUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsbUJBQW1CLENBS3BEO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSx1QkFHOUM7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsdUJBRzNDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0NBQ0Y7QUFFRCxxQkFBYSwwQkFBMEI7SUFFNUIsS0FBSyxFQUFFLG9CQUFvQjtJQUMzQixlQUFlLEVBQUUsWUFBWTtJQUZ0QyxZQUNTLEtBQUssRUFBRSxvQkFBb0IsRUFDM0IsZUFBZSxFQUFFLFlBQVksRUFDbEM7SUFFSixNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BT2hCO0lBRUQsTUFBTSxDQUFDLEtBQUssK0JBRVg7SUFFRCxPQUFPLElBQUksT0FBTyxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLDhCQUc5QztJQUVELFFBQVEsSUFBSSxNQUFNLENBRWpCO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyw4QkFHM0M7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7Q0FDRiJ9
156
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfdG9fbDFfbWVzc2FnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lc3NhZ2luZy9sMl90b19sMV9tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFzQyxNQUFNLDZCQUE2QixDQUFDO0FBRXhILE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELHFCQUFhLGFBQWE7SUFFZixTQUFTLEVBQUUsVUFBVTtJQUNyQixPQUFPLEVBQUUsRUFBRTtJQUZwQixZQUNTLFNBQVMsRUFBRSxVQUFVLEVBQ3JCLE9BQU8sRUFBRSxFQUFFLEVBQ2hCO0lBRUosTUFBTSxLQUFLLE1BQU07Ozs7OztRQU9oQjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFLLElBQUksYUFBYSxDQUU1QjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxhQUFhLENBRTlDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFLLEVBQUUsYUFBYSxHQUFHLE9BQU8sQ0FFcEM7SUFFRDs7O09BR0c7SUFDSCxRQUFRLElBQUksTUFBTSxDQUFDO0lBQ25CLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxHQUFHLElBQUksQ0FBQztJQVFqQzs7O09BR0c7SUFDSCxRQUFRLElBQUksRUFBRSxFQUFFLENBRWY7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLGFBQWEsQ0FHM0Q7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
@@ -1 +1 @@
1
- {"version":3,"file":"l2_to_l1_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAE9G,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,qBAAa,aAAa;IAEf,SAAS,EAAE,UAAU;IACrB,OAAO,EAAE,EAAE;IAFpB,YACS,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,EAAE,EAChB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,IAAI,aAAa,CAE5B;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAE9C;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEpC;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,aAAa,CAG3D;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAG9D;IAED;;;OAGG;IACH,OAAO,IAAI,OAAO,CAEjB;IAED,KAAK,CAAC,eAAe,EAAE,YAAY,GAAG,mBAAmB,CAExD;CACF;AAED,qBAAa,oBAAoB;IAEtB,OAAO,EAAE,aAAa;IACtB,OAAO,EAAE,MAAM;IAFxB,YACS,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACpB;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,MAAM,CAAC,KAAK,yBAEX;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,wBAG9C;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,wBAG3C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;CACF;AAED,qBAAa,mBAAmB;IAErB,OAAO,EAAE,aAAa;IACtB,eAAe,EAAE,YAAY;IAFtC,YACS,OAAO,EAAE,aAAa,EACtB,eAAe,EAAE,YAAY,EAClC;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,MAAM,CAAC,KAAK,wBAEX;IAED,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAE1C;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,mBAAmB,CAKpD;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,uBAG9C;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,uBAG3C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;CACF;AAED,qBAAa,0BAA0B;IAE5B,KAAK,EAAE,oBAAoB;IAC3B,eAAe,EAAE,YAAY;IAFtC,YACS,KAAK,EAAE,oBAAoB,EAC3B,eAAe,EAAE,YAAY,EAClC;IAEJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,MAAM,CAAC,KAAK,+BAEX;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,8BAG9C;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,8BAG3C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;CACF"}
1
+ {"version":3,"file":"l2_to_l1_message.d.ts","sourceRoot":"","sources":["../../src/messaging/l2_to_l1_message.ts"],"names":[],"mappings":"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"}