@aztec/stdlib 0.0.1-commit.b655e406 → 0.0.1-commit.d3ec352c

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 (855) hide show
  1. package/dest/abi/abi.d.ts +92 -107
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +2 -2
  4. package/dest/abi/authorization_selector.d.ts +1 -1
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +1 -1
  7. package/dest/abi/contract_artifact.d.ts +1 -1
  8. package/dest/abi/contract_artifact.js +3 -3
  9. package/dest/abi/decoder.d.ts +1 -1
  10. package/dest/abi/decoder.d.ts.map +1 -1
  11. package/dest/abi/encoder.d.ts +1 -1
  12. package/dest/abi/event_metadata_definition.d.ts +1 -1
  13. package/dest/abi/event_selector.d.ts +1 -1
  14. package/dest/abi/event_selector.d.ts.map +1 -1
  15. package/dest/abi/function_call.d.ts +1 -9
  16. package/dest/abi/function_call.d.ts.map +1 -1
  17. package/dest/abi/function_selector.d.ts +1 -1
  18. package/dest/abi/function_selector.d.ts.map +1 -1
  19. package/dest/abi/index.d.ts +1 -1
  20. package/dest/abi/mocked_keys.d.ts +1 -1
  21. package/dest/abi/note_selector.d.ts +1 -1
  22. package/dest/abi/note_selector.d.ts.map +1 -1
  23. package/dest/abi/selector.d.ts +1 -1
  24. package/dest/abi/selector.d.ts.map +1 -1
  25. package/dest/abi/utils.d.ts +1 -1
  26. package/dest/auth_witness/auth_witness.d.ts +1 -2
  27. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  28. package/dest/auth_witness/index.d.ts +1 -1
  29. package/dest/avm/avm.d.ts +4356 -2061
  30. package/dest/avm/avm.d.ts.map +1 -1
  31. package/dest/avm/avm.js +529 -16
  32. package/dest/avm/avm_accumulated_data.d.ts +25 -36
  33. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  34. package/dest/avm/avm_accumulated_data.js +18 -0
  35. package/dest/avm/avm_circuit_public_inputs.d.ts +160 -148
  36. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  37. package/dest/avm/avm_circuit_public_inputs.js +9 -0
  38. package/dest/avm/avm_proving_request.d.ts +2031 -1507
  39. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  40. package/dest/avm/contract_storage_read.d.ts +1 -13
  41. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  42. package/dest/avm/contract_storage_update_request.d.ts +1 -13
  43. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  44. package/dest/avm/index.d.ts +1 -1
  45. package/dest/avm/message_pack.d.ts +2 -2
  46. package/dest/avm/message_pack.d.ts.map +1 -1
  47. package/dest/avm/message_pack.js +3 -0
  48. package/dest/avm/public_call_stack_item_compressed.d.ts +1 -3
  49. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  50. package/dest/avm/public_data_read.d.ts +1 -10
  51. package/dest/avm/public_data_read.d.ts.map +1 -1
  52. package/dest/avm/public_data_update_request.d.ts +1 -10
  53. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  54. package/dest/avm/public_data_write.d.ts +13 -11
  55. package/dest/avm/public_data_write.d.ts.map +1 -1
  56. package/dest/avm/public_data_write.js +9 -0
  57. package/dest/avm/public_inner_call_request.d.ts +1 -4
  58. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  59. package/dest/avm/revert_code.d.ts +16 -7
  60. package/dest/avm/revert_code.d.ts.map +1 -1
  61. package/dest/avm/revert_code.js +24 -8
  62. package/dest/aztec-address/index.d.ts +10 -1
  63. package/dest/aztec-address/index.d.ts.map +1 -1
  64. package/dest/aztec-address/index.js +24 -2
  65. package/dest/block/attestation_info.d.ts +3 -1
  66. package/dest/block/attestation_info.d.ts.map +1 -1
  67. package/dest/block/attestation_info.js +4 -1
  68. package/dest/block/block_hash.d.ts +1 -1
  69. package/dest/block/block_hash.d.ts.map +1 -1
  70. package/dest/block/block_parameter.d.ts +5 -0
  71. package/dest/block/block_parameter.d.ts.map +1 -0
  72. package/dest/block/block_parameter.js +6 -0
  73. package/dest/block/body.d.ts +8 -8
  74. package/dest/block/body.d.ts.map +1 -1
  75. package/dest/block/body.js +11 -27
  76. package/dest/block/in_block.d.ts +14 -19
  77. package/dest/block/in_block.d.ts.map +1 -1
  78. package/dest/block/in_block.js +3 -3
  79. package/dest/block/index.d.ts +3 -2
  80. package/dest/block/index.d.ts.map +1 -1
  81. package/dest/block/index.js +2 -1
  82. package/dest/block/l2_block.d.ts +18 -10
  83. package/dest/block/l2_block.d.ts.map +1 -1
  84. package/dest/block/l2_block.js +56 -5
  85. package/dest/block/l2_block_code_to_purge.d.ts +1 -1
  86. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  87. package/dest/block/l2_block_code_to_purge.js +6 -5
  88. package/dest/block/l2_block_header.d.ts +12 -14
  89. package/dest/block/l2_block_header.d.ts.map +1 -1
  90. package/dest/block/l2_block_header.js +18 -11
  91. package/dest/block/l2_block_info.d.ts +21 -16
  92. package/dest/block/l2_block_info.d.ts.map +1 -1
  93. package/dest/block/l2_block_info.js +7 -6
  94. package/dest/block/l2_block_new.d.ts +110 -0
  95. package/dest/block/l2_block_new.d.ts.map +1 -0
  96. package/dest/block/l2_block_new.js +138 -0
  97. package/dest/block/l2_block_source.d.ts +71 -104
  98. package/dest/block/l2_block_source.d.ts.map +1 -1
  99. package/dest/block/l2_block_source.js +5 -11
  100. package/dest/block/l2_block_stream/index.d.ts +1 -1
  101. package/dest/block/l2_block_stream/interfaces.d.ts +1 -1
  102. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -6
  103. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  104. package/dest/block/l2_block_stream/l2_block_stream.js +4 -3
  105. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +3 -2
  106. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  107. package/dest/block/l2_block_stream/l2_tips_memory_store.js +4 -2
  108. package/dest/block/proposal/attestations_and_signers.d.ts +16 -5
  109. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  110. package/dest/block/proposal/attestations_and_signers.js +14 -0
  111. package/dest/block/proposal/committee_attestation.d.ts +1 -1
  112. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  113. package/dest/block/proposal/index.d.ts +1 -1
  114. package/dest/block/published_l2_block.d.ts +15 -28
  115. package/dest/block/published_l2_block.d.ts.map +1 -1
  116. package/dest/block/published_l2_block.js +12 -27
  117. package/dest/block/test/index.d.ts +1 -1
  118. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  119. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  120. package/dest/block/test/l2_tips_store_test_suite.js +6 -4
  121. package/dest/block/validate_block_result.d.ts +6 -178
  122. package/dest/block/validate_block_result.d.ts.map +1 -1
  123. package/dest/block/validate_block_result.js +4 -3
  124. package/dest/checkpoint/checkpoint.d.ts +124 -0
  125. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  126. package/dest/checkpoint/checkpoint.js +62 -0
  127. package/dest/checkpoint/index.d.ts +3 -2
  128. package/dest/checkpoint/index.d.ts.map +1 -1
  129. package/dest/checkpoint/index.js +2 -1
  130. package/dest/checkpoint/published_checkpoint.d.ts +214 -0
  131. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  132. package/dest/checkpoint/published_checkpoint.js +71 -0
  133. package/dest/config/chain-config.d.ts +1 -1
  134. package/dest/config/index.d.ts +1 -1
  135. package/dest/config/node-rpc-config.d.ts +1 -1
  136. package/dest/contract/artifact_hash.d.ts +2 -2
  137. package/dest/contract/artifact_hash.d.ts.map +1 -1
  138. package/dest/contract/complete_address.d.ts +1 -4
  139. package/dest/contract/complete_address.d.ts.map +1 -1
  140. package/dest/contract/contract_address.d.ts +1 -1
  141. package/dest/contract/contract_class.d.ts +1 -1
  142. package/dest/contract/contract_class_id.d.ts +1 -1
  143. package/dest/contract/contract_class_metadata.d.ts +1 -1
  144. package/dest/contract/contract_deployment_data.d.ts +119 -0
  145. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  146. package/dest/contract/contract_deployment_data.js +99 -0
  147. package/dest/contract/contract_function_dao.d.ts +1 -1
  148. package/dest/contract/contract_instance.d.ts +1 -1
  149. package/dest/contract/contract_instance.d.ts.map +1 -1
  150. package/dest/contract/contract_instance_update.d.ts +1 -1
  151. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  152. package/dest/contract/contract_metadata.d.ts +1 -1
  153. package/dest/contract/deployment_info.d.ts +1 -1
  154. package/dest/contract/index.d.ts +2 -1
  155. package/dest/contract/index.d.ts.map +1 -1
  156. package/dest/contract/index.js +1 -0
  157. package/dest/contract/interfaces/contract_class.d.ts +41 -122
  158. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  159. package/dest/contract/interfaces/contract_data_source.d.ts +3 -2
  160. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  161. package/dest/contract/interfaces/contract_instance.d.ts +11 -11
  162. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  163. package/dest/contract/interfaces/contract_instance_update.d.ts +3 -3
  164. package/dest/contract/interfaces/index.d.ts +1 -1
  165. package/dest/contract/interfaces/node-info.d.ts +1 -1
  166. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
  167. package/dest/contract/partial_address.d.ts +1 -1
  168. package/dest/contract/private_function.d.ts +1 -1
  169. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  170. package/dest/contract/private_function_membership_proof.js +1 -1
  171. package/dest/contract/utility_function_membership_proof.d.ts +1 -1
  172. package/dest/database-version/index.d.ts +1 -1
  173. package/dest/database-version/version_manager.d.ts +6 -8
  174. package/dest/database-version/version_manager.d.ts.map +1 -1
  175. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +1 -1
  176. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  177. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +1 -1
  178. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  179. package/dest/delayed_public_mutable/index.d.ts +1 -1
  180. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
  181. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
  182. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +1 -1
  183. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  184. package/dest/epoch-helpers/index.d.ts +12 -11
  185. package/dest/epoch-helpers/index.d.ts.map +1 -1
  186. package/dest/epoch-helpers/index.js +10 -9
  187. package/dest/errors/index.d.ts +1 -1
  188. package/dest/errors/proving_error.d.ts +2 -2
  189. package/dest/errors/proving_error.d.ts.map +1 -1
  190. package/dest/errors/simulation_error.d.ts +1 -1
  191. package/dest/errors/simulation_error.d.ts.map +1 -1
  192. package/dest/fees/index.d.ts +1 -1
  193. package/dest/fees/transaction_fee.d.ts +1 -1
  194. package/dest/file-store/factory.d.ts +1 -1
  195. package/dest/file-store/gcs.d.ts +1 -1
  196. package/dest/file-store/gcs.d.ts.map +1 -1
  197. package/dest/file-store/http.d.ts +1 -1
  198. package/dest/file-store/http.d.ts.map +1 -1
  199. package/dest/file-store/http.js +8 -3
  200. package/dest/file-store/index.d.ts +1 -1
  201. package/dest/file-store/interface.d.ts +1 -1
  202. package/dest/file-store/local.d.ts +1 -1
  203. package/dest/file-store/local.d.ts.map +1 -1
  204. package/dest/file-store/s3.d.ts +1 -1
  205. package/dest/file-store/s3.d.ts.map +1 -1
  206. package/dest/file-store/s3.js +3 -7
  207. package/dest/gas/gas.d.ts +9 -1
  208. package/dest/gas/gas.d.ts.map +1 -1
  209. package/dest/gas/gas.js +12 -0
  210. package/dest/gas/gas_fees.d.ts +9 -1
  211. package/dest/gas/gas_fees.d.ts.map +1 -1
  212. package/dest/gas/gas_fees.js +12 -0
  213. package/dest/gas/gas_settings.d.ts +9 -1
  214. package/dest/gas/gas_settings.d.ts.map +1 -1
  215. package/dest/gas/gas_settings.js +12 -0
  216. package/dest/gas/gas_used.d.ts +13 -2
  217. package/dest/gas/gas_used.d.ts.map +1 -1
  218. package/dest/gas/gas_used.js +19 -1
  219. package/dest/gas/index.d.ts +1 -1
  220. package/dest/hash/hash.d.ts +11 -3
  221. package/dest/hash/hash.d.ts.map +1 -1
  222. package/dest/hash/hash.js +11 -1
  223. package/dest/hash/index.d.ts +1 -1
  224. package/dest/hash/map_slot.d.ts +1 -1
  225. package/dest/interfaces/allowed_element.d.ts +5 -5
  226. package/dest/interfaces/api_limit.d.ts +1 -1
  227. package/dest/interfaces/archiver.d.ts +6 -1
  228. package/dest/interfaces/archiver.d.ts.map +1 -1
  229. package/dest/interfaces/archiver.js +22 -14
  230. package/dest/interfaces/aztec-node-admin.d.ts +92 -85
  231. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  232. package/dest/interfaces/aztec-node.d.ts +30 -24
  233. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  234. package/dest/interfaces/aztec-node.js +26 -24
  235. package/dest/interfaces/block-builder.d.ts +3 -2
  236. package/dest/interfaces/block-builder.d.ts.map +1 -1
  237. package/dest/interfaces/client.d.ts +1 -1
  238. package/dest/interfaces/configs.d.ts +31 -21
  239. package/dest/interfaces/configs.d.ts.map +1 -1
  240. package/dest/interfaces/configs.js +3 -1
  241. package/dest/interfaces/epoch-prover.d.ts +7 -7
  242. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  243. package/dest/interfaces/get_logs_response.d.ts +6 -4
  244. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  245. package/dest/interfaces/l2_logs_source.d.ts +4 -3
  246. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  247. package/dest/interfaces/merkle_tree_operations.d.ts +5 -4
  248. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  249. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  250. package/dest/interfaces/p2p.d.ts +3 -2
  251. package/dest/interfaces/p2p.d.ts.map +1 -1
  252. package/dest/interfaces/p2p.js +1 -1
  253. package/dest/interfaces/private_kernel_prover.d.ts +1 -1
  254. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  255. package/dest/interfaces/prover-agent.d.ts +1 -1
  256. package/dest/interfaces/prover-broker.d.ts +1 -1
  257. package/dest/interfaces/prover-client.d.ts +5 -5
  258. package/dest/interfaces/prover-client.d.ts.map +1 -1
  259. package/dest/interfaces/prover-coordination.d.ts +1 -1
  260. package/dest/interfaces/prover-node.d.ts +1 -1
  261. package/dest/interfaces/proving-job-source.d.ts +1 -1
  262. package/dest/interfaces/proving-job.d.ts +1680 -1163
  263. package/dest/interfaces/proving-job.d.ts.map +1 -1
  264. package/dest/interfaces/proving-job.js +3 -2
  265. package/dest/interfaces/public_state_source.d.ts +1 -1
  266. package/dest/interfaces/server.d.ts +1 -1
  267. package/dest/interfaces/server_circuit_prover.d.ts +2 -3
  268. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  269. package/dest/interfaces/service.d.ts +1 -1
  270. package/dest/interfaces/slasher.d.ts +3 -3
  271. package/dest/interfaces/tx_provider.d.ts +3 -3
  272. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  273. package/dest/interfaces/validator.d.ts +27 -19
  274. package/dest/interfaces/validator.d.ts.map +1 -1
  275. package/dest/interfaces/validator.js +2 -1
  276. package/dest/interfaces/world_state.d.ts +9 -26
  277. package/dest/interfaces/world_state.d.ts.map +1 -1
  278. package/dest/interfaces/world_state.js +4 -3
  279. package/dest/kernel/claimed_length_array.d.ts +1 -1
  280. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  281. package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
  282. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
  283. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  284. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +1 -1
  285. package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
  286. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  287. package/dest/kernel/hints/build_transient_data_hints.js +2 -2
  288. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  289. package/dest/kernel/hints/index.d.ts +1 -1
  290. package/dest/kernel/hints/key_validation_hint.d.ts +1 -2
  291. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  292. package/dest/kernel/hints/key_validation_request.d.ts +1 -2
  293. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  294. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -6
  295. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  296. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +1 -1
  297. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  298. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +1 -1
  299. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  300. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
  301. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  302. package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
  303. package/dest/kernel/hints/read_request.d.ts +1 -7
  304. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  305. package/dest/kernel/hints/read_request_hints.d.ts +1 -7
  306. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  307. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -1
  308. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  309. package/dest/kernel/hints/scoped_value_cache.d.ts +1 -1
  310. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  311. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +1 -1
  312. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  313. package/dest/kernel/hints/tree_leaf_read_request.d.ts +1 -1
  314. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  315. package/dest/kernel/index.d.ts +1 -1
  316. package/dest/kernel/log_hash.d.ts +1 -1
  317. package/dest/kernel/log_hash.d.ts.map +1 -1
  318. package/dest/kernel/note_hash.d.ts +1 -1
  319. package/dest/kernel/note_hash.d.ts.map +1 -1
  320. package/dest/kernel/nullifier.d.ts +1 -1
  321. package/dest/kernel/nullifier.d.ts.map +1 -1
  322. package/dest/kernel/padded_side_effects.d.ts +1 -1
  323. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  324. package/dest/kernel/private_accumulated_data.d.ts +1 -23
  325. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  326. package/dest/kernel/private_call_data.d.ts +1 -25
  327. package/dest/kernel/private_call_data.d.ts.map +1 -1
  328. package/dest/kernel/private_call_request.d.ts +1 -16
  329. package/dest/kernel/private_call_request.d.ts.map +1 -1
  330. package/dest/kernel/private_circuit_public_inputs.d.ts +17 -74
  331. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  332. package/dest/kernel/private_circuit_public_inputs.js +17 -5
  333. package/dest/kernel/private_context_inputs.d.ts +1 -1
  334. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  335. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -29
  336. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_kernel_circuit_public_inputs.js +8 -4
  338. package/dest/kernel/private_kernel_data.d.ts +1 -7
  339. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  340. package/dest/kernel/private_kernel_data.js +0 -2
  341. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +7 -20
  342. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  343. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -3
  344. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
  345. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  346. package/dest/kernel/private_kernel_prover_output.d.ts +10 -10
  347. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
  348. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  349. package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
  350. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  351. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
  352. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
  353. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -23
  355. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  356. package/dest/kernel/private_log_data.d.ts +1 -1
  357. package/dest/kernel/private_log_data.d.ts.map +1 -1
  358. package/dest/kernel/private_to_avm_accumulated_data.d.ts +17 -1
  359. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  360. package/dest/kernel/private_to_avm_accumulated_data.js +18 -0
  361. package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
  362. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  363. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +1 -1
  364. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  365. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +1 -1
  366. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  367. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -17
  368. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  369. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +1 -16
  370. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  371. package/dest/kernel/private_validation_requests.d.ts +2 -24
  372. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  373. package/dest/kernel/private_validation_requests.js +5 -13
  374. package/dest/kernel/public_call_request.d.ts +22 -27
  375. package/dest/kernel/public_call_request.d.ts.map +1 -1
  376. package/dest/kernel/public_call_request.js +18 -0
  377. package/dest/kernel/utils/index.d.ts +1 -1
  378. package/dest/kernel/utils/interfaces.d.ts +1 -1
  379. package/dest/kernel/utils/optional_number.d.ts +1 -7
  380. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  381. package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
  382. package/dest/keys/derivation.d.ts +1 -1
  383. package/dest/keys/index.d.ts +1 -1
  384. package/dest/keys/key_types.d.ts +1 -1
  385. package/dest/keys/public_key.d.ts +1 -1
  386. package/dest/keys/public_keys.d.ts +9 -5
  387. package/dest/keys/public_keys.d.ts.map +1 -1
  388. package/dest/keys/public_keys.js +12 -0
  389. package/dest/keys/utils.d.ts +1 -1
  390. package/dest/l1-contracts/index.d.ts +1 -1
  391. package/dest/l1-contracts/slash_factory.d.ts +3 -3
  392. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  393. package/dest/logs/contract_class_log.d.ts +20 -4
  394. package/dest/logs/contract_class_log.d.ts.map +1 -1
  395. package/dest/logs/contract_class_log.js +24 -0
  396. package/dest/logs/debug_log.d.ts +10 -2
  397. package/dest/logs/debug_log.d.ts.map +1 -1
  398. package/dest/logs/debug_log.js +13 -0
  399. package/dest/logs/directional_app_tagging_secret.d.ts +1 -1
  400. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  401. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  402. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  403. package/dest/logs/extended_public_log.d.ts +7 -7
  404. package/dest/logs/extended_public_log.d.ts.map +1 -1
  405. package/dest/logs/index.d.ts +1 -1
  406. package/dest/logs/log_filter.d.ts +1 -1
  407. package/dest/logs/log_id.d.ts +8 -8
  408. package/dest/logs/log_id.d.ts.map +1 -1
  409. package/dest/logs/log_id.js +5 -4
  410. package/dest/logs/log_with_tx_data.d.ts +1 -1
  411. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  412. package/dest/logs/message_context.d.ts +1 -1
  413. package/dest/logs/message_context.d.ts.map +1 -1
  414. package/dest/logs/pending_tagged_log.d.ts +1 -1
  415. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  416. package/dest/logs/pre_tag.d.ts +1 -1
  417. package/dest/logs/private_log.d.ts +10 -2
  418. package/dest/logs/private_log.d.ts.map +1 -1
  419. package/dest/logs/private_log.js +14 -5
  420. package/dest/logs/public_log.d.ts +9 -1
  421. package/dest/logs/public_log.d.ts.map +1 -1
  422. package/dest/logs/public_log.js +9 -0
  423. package/dest/logs/shared_secret_derivation.d.ts +1 -1
  424. package/dest/logs/tx_scoped_l2_log.d.ts +14 -11
  425. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  426. package/dest/logs/tx_scoped_l2_log.js +4 -3
  427. package/dest/messaging/in_hash.d.ts +4 -0
  428. package/dest/messaging/in_hash.d.ts.map +1 -0
  429. package/dest/messaging/in_hash.js +8 -0
  430. package/dest/messaging/inbox_leaf.d.ts +1 -3
  431. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  432. package/dest/messaging/index.d.ts +3 -1
  433. package/dest/messaging/index.d.ts.map +1 -1
  434. package/dest/messaging/index.js +2 -0
  435. package/dest/messaging/l1_actor.d.ts +1 -7
  436. package/dest/messaging/l1_actor.d.ts.map +1 -1
  437. package/dest/messaging/l1_to_l2_message.d.ts +1 -6
  438. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  439. package/dest/messaging/l1_to_l2_message_source.d.ts +10 -3
  440. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  441. package/dest/messaging/l2_actor.d.ts +1 -7
  442. package/dest/messaging/l2_actor.d.ts.map +1 -1
  443. package/dest/messaging/l2_to_l1_membership.d.ts +4 -3
  444. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  445. package/dest/messaging/l2_to_l1_membership.js +2 -2
  446. package/dest/messaging/l2_to_l1_message.d.ts +17 -1
  447. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  448. package/dest/messaging/l2_to_l1_message.js +18 -0
  449. package/dest/messaging/out_hash.d.ts +5 -0
  450. package/dest/messaging/out_hash.d.ts.map +1 -0
  451. package/dest/messaging/out_hash.js +28 -0
  452. package/dest/noir/index.d.ts +7 -7
  453. package/dest/noir/index.d.ts.map +1 -1
  454. package/dest/noir/index.js +6 -6
  455. package/dest/note/comparator.d.ts +1 -1
  456. package/dest/note/index.d.ts +2 -2
  457. package/dest/note/index.d.ts.map +1 -1
  458. package/dest/note/index.js +1 -1
  459. package/dest/note/note.d.ts +2 -17
  460. package/dest/note/note.d.ts.map +1 -1
  461. package/dest/note/note_dao.d.ts +75 -0
  462. package/dest/note/note_dao.d.ts.map +1 -0
  463. package/dest/note/note_dao.js +106 -0
  464. package/dest/note/note_status.d.ts +1 -1
  465. package/dest/note/notes_filter.d.ts +3 -1
  466. package/dest/note/notes_filter.d.ts.map +1 -1
  467. package/dest/note/notes_filter.js +1 -0
  468. package/dest/p2p/attestation_utils.d.ts +1 -1
  469. package/dest/p2p/block_attestation.d.ts +5 -12
  470. package/dest/p2p/block_attestation.d.ts.map +1 -1
  471. package/dest/p2p/block_proposal.d.ts +3 -6
  472. package/dest/p2p/block_proposal.d.ts.map +1 -1
  473. package/dest/p2p/block_proposal.js +1 -1
  474. package/dest/p2p/client_type.d.ts +1 -1
  475. package/dest/p2p/consensus_payload.d.ts +10 -188
  476. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  477. package/dest/p2p/consensus_payload.js +16 -23
  478. package/dest/p2p/gossipable.d.ts +6 -5
  479. package/dest/p2p/gossipable.d.ts.map +1 -1
  480. package/dest/p2p/gossipable.js +16 -10
  481. package/dest/p2p/index.d.ts +1 -1
  482. package/dest/p2p/interface.d.ts +1 -1
  483. package/dest/p2p/message_validator.d.ts +1 -1
  484. package/dest/p2p/peer_error.d.ts +1 -1
  485. package/dest/p2p/signature_utils.d.ts +1 -1
  486. package/dest/p2p/topic_type.d.ts +1 -1
  487. package/dest/parity/index.d.ts +1 -1
  488. package/dest/parity/parity_base_private_inputs.d.ts +1 -3
  489. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  490. package/dest/parity/parity_public_inputs.d.ts +1 -4
  491. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  492. package/dest/parity/parity_root_private_inputs.d.ts +1 -2
  493. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  494. package/dest/proofs/chonk_proof.d.ts +1 -1
  495. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  496. package/dest/proofs/index.d.ts +1 -1
  497. package/dest/proofs/proof.d.ts +1 -4
  498. package/dest/proofs/proof.d.ts.map +1 -1
  499. package/dest/proofs/proof_data.d.ts +1 -1
  500. package/dest/proofs/proof_data.d.ts.map +1 -1
  501. package/dest/proofs/proving_request_type.d.ts +1 -1
  502. package/dest/proofs/recursive_proof.d.ts +2 -26
  503. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  504. package/dest/rollup/avm_proof_data.d.ts +1 -1
  505. package/dest/rollup/base_rollup_hints.d.ts +1 -34
  506. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  507. package/dest/rollup/block_constant_data.d.ts +1 -12
  508. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  509. package/dest/rollup/block_headers_hash.d.ts +4 -0
  510. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  511. package/dest/rollup/block_headers_hash.js +9 -0
  512. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +1 -4
  513. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  514. package/dest/rollup/block_rollup_public_inputs.d.ts +8 -40
  515. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  516. package/dest/rollup/block_rollup_public_inputs.js +8 -2
  517. package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -76
  518. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  519. package/dest/rollup/block_root_rollup_private_inputs.js +1 -9
  520. package/dest/rollup/checkpoint_constant_data.d.ts +26 -13
  521. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  522. package/dest/rollup/checkpoint_constant_data.js +27 -3
  523. package/dest/rollup/checkpoint_header.d.ts +16 -14
  524. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  525. package/dest/rollup/checkpoint_header.js +40 -13
  526. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +1 -4
  527. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  528. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +1 -25
  529. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  530. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -29
  531. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  532. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +4 -4
  533. package/dest/rollup/epoch_constant_data.d.ts +1 -16
  534. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  535. package/dest/rollup/index.d.ts +2 -1
  536. package/dest/rollup/index.d.ts.map +1 -1
  537. package/dest/rollup/index.js +1 -0
  538. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +1 -1
  539. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  540. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +1 -1
  541. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  542. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +1 -1
  543. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  544. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  545. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  546. package/dest/rollup/root_rollup_private_inputs.d.ts +1 -6
  547. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  548. package/dest/rollup/root_rollup_public_inputs.d.ts +1 -3
  549. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  550. package/dest/rollup/tree_snapshot_diff_hints.d.ts +1 -24
  551. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  552. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +1 -4
  553. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  554. package/dest/rollup/tx_rollup_public_inputs.d.ts +1 -29
  555. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  556. package/dest/schemas/index.d.ts +1 -1
  557. package/dest/schemas/schemas.d.ts +86 -15
  558. package/dest/schemas/schemas.d.ts.map +1 -1
  559. package/dest/schemas/schemas.js +12 -1
  560. package/dest/slashing/empire.d.ts +1 -1
  561. package/dest/slashing/empire.d.ts.map +1 -1
  562. package/dest/slashing/empire.js +5 -4
  563. package/dest/slashing/helpers.d.ts +7 -6
  564. package/dest/slashing/helpers.d.ts.map +1 -1
  565. package/dest/slashing/helpers.js +8 -6
  566. package/dest/slashing/index.d.ts +1 -1
  567. package/dest/slashing/interfaces.d.ts +3 -2
  568. package/dest/slashing/interfaces.d.ts.map +1 -1
  569. package/dest/slashing/serialization.d.ts +1 -1
  570. package/dest/slashing/tally.d.ts +1 -1
  571. package/dest/slashing/types.d.ts +10 -10
  572. package/dest/snapshots/download.d.ts +1 -1
  573. package/dest/snapshots/index.d.ts +1 -1
  574. package/dest/snapshots/types.d.ts +18 -18
  575. package/dest/snapshots/upload.d.ts +1 -1
  576. package/dest/stats/index.d.ts +1 -1
  577. package/dest/stats/stats.d.ts +1 -1
  578. package/dest/tests/factories.d.ts +34 -29
  579. package/dest/tests/factories.d.ts.map +1 -1
  580. package/dest/tests/factories.js +76 -151
  581. package/dest/tests/fixtures.d.ts +1 -1
  582. package/dest/tests/index.d.ts +1 -1
  583. package/dest/tests/jest.d.ts +1 -1
  584. package/dest/tests/mocks.d.ts +54 -23
  585. package/dest/tests/mocks.d.ts.map +1 -1
  586. package/dest/tests/mocks.js +135 -34
  587. package/dest/trees/append_only_tree_snapshot.d.ts +9 -16
  588. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  589. package/dest/trees/append_only_tree_snapshot.js +9 -9
  590. package/dest/trees/database_public_state_source.d.ts +1 -1
  591. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  592. package/dest/trees/index.d.ts +1 -1
  593. package/dest/trees/merkle_tree_id.d.ts +5 -5
  594. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  595. package/dest/trees/nullifier_leaf.d.ts +17 -13
  596. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  597. package/dest/trees/nullifier_leaf.js +24 -0
  598. package/dest/trees/nullifier_membership_witness.d.ts +4 -37
  599. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  600. package/dest/trees/public_data_leaf.d.ts +28 -27
  601. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  602. package/dest/trees/public_data_leaf.js +24 -0
  603. package/dest/trees/public_data_witness.d.ts +11 -45
  604. package/dest/trees/public_data_witness.d.ts.map +1 -1
  605. package/dest/tx/block_header.d.ts +7 -14
  606. package/dest/tx/block_header.d.ts.map +1 -1
  607. package/dest/tx/block_header.js +13 -2
  608. package/dest/tx/call_context.d.ts +6 -18
  609. package/dest/tx/call_context.d.ts.map +1 -1
  610. package/dest/tx/capsule.d.ts +1 -4
  611. package/dest/tx/capsule.d.ts.map +1 -1
  612. package/dest/tx/content_commitment.d.ts +3 -2
  613. package/dest/tx/content_commitment.d.ts.map +1 -1
  614. package/dest/tx/content_commitment.js +10 -2
  615. package/dest/tx/execution_payload.d.ts +37 -0
  616. package/dest/tx/execution_payload.d.ts.map +1 -0
  617. package/dest/tx/execution_payload.js +40 -0
  618. package/dest/tx/function_data.d.ts +4 -6
  619. package/dest/tx/function_data.d.ts.map +1 -1
  620. package/dest/tx/global_variable_builder.d.ts +3 -2
  621. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  622. package/dest/tx/global_variables.d.ts +52 -31
  623. package/dest/tx/global_variables.d.ts.map +1 -1
  624. package/dest/tx/global_variables.js +50 -10
  625. package/dest/tx/hashed_values.d.ts +1 -7
  626. package/dest/tx/hashed_values.d.ts.map +1 -1
  627. package/dest/tx/index.d.ts +2 -1
  628. package/dest/tx/index.d.ts.map +1 -1
  629. package/dest/tx/index.js +1 -0
  630. package/dest/tx/indexed_tx_effect.d.ts +9 -6
  631. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  632. package/dest/tx/indexed_tx_effect.js +5 -2
  633. package/dest/tx/offchain_effect.d.ts +1 -1
  634. package/dest/tx/partial_state_reference.d.ts +4 -7
  635. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  636. package/dest/tx/partial_state_reference.js +10 -10
  637. package/dest/tx/private_execution_result.d.ts +16 -51
  638. package/dest/tx/private_execution_result.d.ts.map +1 -1
  639. package/dest/tx/private_execution_result.js +6 -3
  640. package/dest/tx/private_tx_constant_data.d.ts +1 -16
  641. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  642. package/dest/tx/processed_tx.d.ts +2 -2
  643. package/dest/tx/processed_tx.d.ts.map +1 -1
  644. package/dest/tx/processed_tx.js +4 -1
  645. package/dest/tx/profiling.d.ts +38 -38
  646. package/dest/tx/profiling.d.ts.map +1 -1
  647. package/dest/tx/profiling.js +5 -4
  648. package/dest/tx/protocol_contracts.d.ts +10 -2
  649. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  650. package/dest/tx/protocol_contracts.js +9 -0
  651. package/dest/tx/proven_tx.d.ts +18 -18
  652. package/dest/tx/proven_tx.d.ts.map +1 -1
  653. package/dest/tx/public_call_request_with_calldata.d.ts +9 -7
  654. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  655. package/dest/tx/public_call_request_with_calldata.js +12 -0
  656. package/dest/tx/public_simulation_output.d.ts +3 -1
  657. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  658. package/dest/tx/public_simulation_output.js +8 -1
  659. package/dest/tx/simulated_tx.d.ts +21 -21
  660. package/dest/tx/simulated_tx.d.ts.map +1 -1
  661. package/dest/tx/state_reference.d.ts +10 -12
  662. package/dest/tx/state_reference.d.ts.map +1 -1
  663. package/dest/tx/state_reference.js +9 -9
  664. package/dest/tx/tree_snapshots.d.ts +15 -7
  665. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  666. package/dest/tx/tree_snapshots.js +9 -0
  667. package/dest/tx/tx.d.ts +4 -18
  668. package/dest/tx/tx.d.ts.map +1 -1
  669. package/dest/tx/tx.js +6 -4
  670. package/dest/tx/tx_constant_data.d.ts +1 -1
  671. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  672. package/dest/tx/tx_context.d.ts +1 -2
  673. package/dest/tx/tx_context.d.ts.map +1 -1
  674. package/dest/tx/tx_effect.d.ts +20 -42
  675. package/dest/tx/tx_effect.d.ts.map +1 -1
  676. package/dest/tx/tx_effect.js +54 -59
  677. package/dest/tx/tx_execution_request.d.ts +1 -30
  678. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  679. package/dest/tx/tx_hash.d.ts +1 -2
  680. package/dest/tx/tx_hash.d.ts.map +1 -1
  681. package/dest/tx/tx_receipt.d.ts +4 -9
  682. package/dest/tx/tx_receipt.d.ts.map +1 -1
  683. package/dest/tx/tx_receipt.js +2 -1
  684. package/dest/tx/tx_request.d.ts +1 -6
  685. package/dest/tx/tx_request.d.ts.map +1 -1
  686. package/dest/tx/validator/empty_validator.d.ts +1 -1
  687. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  688. package/dest/tx/validator/error_texts.d.ts +1 -1
  689. package/dest/tx/validator/tx_validator.d.ts +5 -5
  690. package/dest/types/index.d.ts +1 -1
  691. package/dest/types/shared.d.ts +1 -4
  692. package/dest/types/shared.d.ts.map +1 -1
  693. package/dest/update-checker/index.d.ts +1 -1
  694. package/dest/update-checker/update-checker.d.ts +2 -3
  695. package/dest/update-checker/update-checker.d.ts.map +1 -1
  696. package/dest/validators/errors.d.ts +6 -7
  697. package/dest/validators/errors.d.ts.map +1 -1
  698. package/dest/validators/errors.js +2 -4
  699. package/dest/validators/index.d.ts +1 -1
  700. package/dest/validators/schemas.d.ts +266 -208
  701. package/dest/validators/schemas.d.ts.map +1 -1
  702. package/dest/validators/schemas.js +7 -7
  703. package/dest/validators/types.d.ts +10 -9
  704. package/dest/validators/types.d.ts.map +1 -1
  705. package/dest/versioning/index.d.ts +1 -1
  706. package/dest/versioning/versioning.d.ts +1 -1
  707. package/dest/versioning/versioning.d.ts.map +1 -1
  708. package/dest/vks/index.d.ts +1 -1
  709. package/dest/vks/verification_key.d.ts +10 -22
  710. package/dest/vks/verification_key.d.ts.map +1 -1
  711. package/dest/vks/verification_key.js +20 -0
  712. package/dest/vks/vk_data.d.ts +1 -7
  713. package/dest/vks/vk_data.d.ts.map +1 -1
  714. package/dest/world-state/index.d.ts +1 -1
  715. package/dest/world-state/world_state_revision.d.ts +34 -2
  716. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  717. package/dest/world-state/world_state_revision.js +24 -1
  718. package/dest/zkpassport/index.d.ts +1 -1
  719. package/dest/zkpassport/index.d.ts.map +1 -1
  720. package/package.json +12 -11
  721. package/src/abi/abi.ts +4 -4
  722. package/src/abi/contract_artifact.ts +3 -3
  723. package/src/avm/avm.ts +777 -6
  724. package/src/avm/avm_accumulated_data.ts +40 -0
  725. package/src/avm/avm_circuit_public_inputs.ts +40 -0
  726. package/src/avm/message_pack.ts +4 -1
  727. package/src/avm/public_data_write.ts +12 -1
  728. package/src/avm/revert_code.ts +29 -9
  729. package/src/aztec-address/index.ts +26 -2
  730. package/src/block/attestation_info.ts +8 -1
  731. package/src/block/block_parameter.ts +8 -0
  732. package/src/block/body.ts +16 -39
  733. package/src/block/in_block.ts +13 -9
  734. package/src/block/index.ts +2 -1
  735. package/src/block/l2_block.ts +70 -7
  736. package/src/block/l2_block_code_to_purge.ts +6 -4
  737. package/src/block/l2_block_header.ts +19 -5
  738. package/src/block/l2_block_info.ts +10 -9
  739. package/src/block/l2_block_new.ts +176 -0
  740. package/src/block/l2_block_source.ts +48 -29
  741. package/src/block/l2_block_stream/l2_block_stream.ts +10 -5
  742. package/src/block/l2_block_stream/l2_tips_memory_store.ts +5 -2
  743. package/src/block/proposal/attestations_and_signers.ts +20 -1
  744. package/src/block/published_l2_block.ts +14 -31
  745. package/src/block/test/l2_tips_store_test_suite.ts +8 -3
  746. package/src/block/validate_block_result.ts +9 -7
  747. package/src/checkpoint/checkpoint.ts +88 -0
  748. package/src/checkpoint/index.ts +2 -1
  749. package/src/checkpoint/published_checkpoint.ts +91 -0
  750. package/src/contract/contract_deployment_data.ts +125 -0
  751. package/src/contract/index.ts +1 -0
  752. package/src/contract/interfaces/contract_data_source.ts +2 -1
  753. package/src/contract/private_function_membership_proof.ts +1 -1
  754. package/src/epoch-helpers/index.ts +28 -21
  755. package/src/file-store/http.ts +6 -3
  756. package/src/file-store/s3.ts +3 -7
  757. package/src/gas/gas.ts +14 -0
  758. package/src/gas/gas_fees.ts +14 -0
  759. package/src/gas/gas_settings.ts +19 -0
  760. package/src/gas/gas_used.ts +22 -1
  761. package/src/hash/hash.ts +13 -2
  762. package/src/interfaces/archiver.ts +27 -13
  763. package/src/interfaces/aztec-node.ts +64 -48
  764. package/src/interfaces/block-builder.ts +2 -1
  765. package/src/interfaces/configs.ts +6 -0
  766. package/src/interfaces/epoch-prover.ts +5 -6
  767. package/src/interfaces/l2_logs_source.ts +3 -2
  768. package/src/interfaces/merkle_tree_operations.ts +4 -3
  769. package/src/interfaces/p2p.ts +4 -2
  770. package/src/interfaces/proving-job.ts +14 -5
  771. package/src/interfaces/tx_provider.ts +2 -2
  772. package/src/interfaces/validator.ts +5 -2
  773. package/src/interfaces/world_state.ts +12 -11
  774. package/src/kernel/hints/build_transient_data_hints.ts +2 -2
  775. package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
  776. package/src/kernel/private_circuit_public_inputs.ts +29 -9
  777. package/src/kernel/private_kernel_circuit_public_inputs.ts +7 -0
  778. package/src/kernel/private_kernel_data.ts +0 -2
  779. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +6 -0
  780. package/src/kernel/private_to_avm_accumulated_data.ts +35 -0
  781. package/src/kernel/private_validation_requests.ts +1 -13
  782. package/src/kernel/public_call_request.ts +27 -0
  783. package/src/keys/public_keys.ts +19 -0
  784. package/src/logs/contract_class_log.ts +32 -0
  785. package/src/logs/debug_log.ts +20 -1
  786. package/src/logs/log_id.ts +6 -5
  787. package/src/logs/private_log.ts +19 -3
  788. package/src/logs/public_log.ts +14 -0
  789. package/src/logs/tx_scoped_l2_log.ts +5 -4
  790. package/src/messaging/in_hash.ts +10 -0
  791. package/src/messaging/index.ts +2 -0
  792. package/src/messaging/l1_to_l2_message_source.ts +10 -2
  793. package/src/messaging/l2_to_l1_membership.ts +5 -4
  794. package/src/messaging/l2_to_l1_message.ts +25 -0
  795. package/src/messaging/out_hash.ts +36 -0
  796. package/src/noir/index.ts +6 -6
  797. package/src/note/index.ts +1 -1
  798. package/src/note/note_dao.ts +161 -0
  799. package/src/note/notes_filter.ts +3 -0
  800. package/src/p2p/block_attestation.ts +2 -1
  801. package/src/p2p/block_proposal.ts +3 -2
  802. package/src/p2p/consensus_payload.ts +16 -26
  803. package/src/p2p/gossipable.ts +17 -8
  804. package/src/rollup/block_headers_hash.ts +12 -0
  805. package/src/rollup/block_rollup_public_inputs.ts +8 -0
  806. package/src/rollup/block_root_rollup_private_inputs.ts +0 -9
  807. package/src/rollup/checkpoint_constant_data.ts +43 -4
  808. package/src/rollup/checkpoint_header.ts +48 -22
  809. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +5 -5
  810. package/src/rollup/index.ts +1 -0
  811. package/src/schemas/schemas.ts +18 -0
  812. package/src/slashing/empire.ts +6 -4
  813. package/src/slashing/helpers.ts +17 -12
  814. package/src/slashing/interfaces.ts +3 -1
  815. package/src/tests/factories.ts +213 -229
  816. package/src/tests/mocks.ts +230 -51
  817. package/src/trees/append_only_tree_snapshot.ts +11 -12
  818. package/src/trees/nullifier_leaf.ts +32 -0
  819. package/src/trees/public_data_leaf.ts +32 -0
  820. package/src/tx/block_header.ts +17 -4
  821. package/src/tx/content_commitment.ts +11 -2
  822. package/src/tx/execution_payload.ts +60 -0
  823. package/src/tx/global_variable_builder.ts +2 -1
  824. package/src/tx/global_variables.ts +69 -15
  825. package/src/tx/index.ts +1 -0
  826. package/src/tx/indexed_tx_effect.ts +5 -4
  827. package/src/tx/partial_state_reference.ts +9 -17
  828. package/src/tx/private_execution_result.ts +7 -4
  829. package/src/tx/processed_tx.ts +8 -2
  830. package/src/tx/profiling.ts +4 -6
  831. package/src/tx/protocol_contracts.ts +16 -0
  832. package/src/tx/public_call_request_with_calldata.ts +17 -0
  833. package/src/tx/public_simulation_output.ts +18 -1
  834. package/src/tx/state_reference.ts +9 -15
  835. package/src/tx/tree_snapshots.ts +16 -0
  836. package/src/tx/tx.ts +7 -6
  837. package/src/tx/tx_effect.ts +84 -90
  838. package/src/tx/tx_receipt.ts +3 -2
  839. package/src/validators/errors.ts +3 -4
  840. package/src/validators/schemas.ts +7 -7
  841. package/src/validators/types.ts +9 -8
  842. package/src/vks/verification_key.ts +25 -0
  843. package/src/world-state/world_state_revision.ts +47 -5
  844. package/dest/block/l2_block_number.d.ts +0 -5
  845. package/dest/block/l2_block_number.d.ts.map +0 -1
  846. package/dest/block/l2_block_number.js +0 -6
  847. package/dest/checkpoint/checkpoint_body.d.ts +0 -4
  848. package/dest/checkpoint/checkpoint_body.d.ts.map +0 -1
  849. package/dest/checkpoint/checkpoint_body.js +0 -9
  850. package/dest/note/unique_note.d.ts +0 -43
  851. package/dest/note/unique_note.d.ts.map +0 -1
  852. package/dest/note/unique_note.js +0 -67
  853. package/src/block/l2_block_number.ts +0 -8
  854. package/src/checkpoint/checkpoint_body.ts +0 -10
  855. package/src/note/unique_note.ts +0 -88
@@ -149,6 +149,35 @@ export class AvmAccumulatedData {
149
149
  );
150
150
  }
151
151
 
152
+ /**
153
+ * Creates an AvmAccumulatedData instance from a plain object without Zod validation.
154
+ * This method is optimized for performance and skips validation, making it suitable
155
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
156
+ * @param obj - Plain object containing AvmAccumulatedData fields
157
+ * @returns An AvmAccumulatedData instance
158
+ */
159
+ static fromPlainObject(obj: any): AvmAccumulatedData {
160
+ return new AvmAccumulatedData(
161
+ assertLength(
162
+ obj.noteHashes.map((h: any) => Fr.fromPlainObject(h)),
163
+ MAX_NOTE_HASHES_PER_TX,
164
+ ),
165
+ assertLength(
166
+ obj.nullifiers.map((n: any) => Fr.fromPlainObject(n)),
167
+ MAX_NULLIFIERS_PER_TX,
168
+ ),
169
+ assertLength(
170
+ obj.l2ToL1Msgs.map((m: any) => ScopedL2ToL1Message.fromPlainObject(m)),
171
+ MAX_L2_TO_L1_MSGS_PER_TX,
172
+ ),
173
+ FlatPublicLogs.fromPlainObject(obj.publicLogs),
174
+ assertLength(
175
+ obj.publicDataWrites.map((w: any) => PublicDataWrite.fromPlainObject(w)),
176
+ MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
177
+ ),
178
+ );
179
+ }
180
+
152
181
  isEmpty(): boolean {
153
182
  return (
154
183
  this.noteHashes.every(x => x.isZero()) &&
@@ -265,6 +294,17 @@ export class AvmAccumulatedDataArrayLengths {
265
294
  return new AvmAccumulatedDataArrayLengths(0, 0, 0, 0);
266
295
  }
267
296
 
297
+ /**
298
+ * Creates an AvmAccumulatedDataArrayLengths instance from a plain object without Zod validation.
299
+ * This method is optimized for performance and skips validation, making it suitable
300
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
301
+ * @param obj - Plain object containing AvmAccumulatedDataArrayLengths fields
302
+ * @returns An AvmAccumulatedDataArrayLengths instance
303
+ */
304
+ static fromPlainObject(obj: any): AvmAccumulatedDataArrayLengths {
305
+ return new AvmAccumulatedDataArrayLengths(obj.noteHashes, obj.nullifiers, obj.l2ToL1Msgs, obj.publicDataWrites);
306
+ }
307
+
268
308
  [inspect.custom]() {
269
309
  return `AvmAccumulatedDataArrayLengths {
270
310
  noteHashes: ${this.noteHashes},
@@ -276,6 +276,46 @@ export class AvmCircuitPublicInputs {
276
276
  );
277
277
  }
278
278
 
279
+ /**
280
+ * Creates an AvmCircuitPublicInputs instance from a plain object without Zod validation.
281
+ * This method is optimized for performance and skips validation, making it suitable
282
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
283
+ * @param obj - Plain object containing AvmCircuitPublicInputs fields
284
+ * @returns An AvmCircuitPublicInputs instance
285
+ */
286
+ static fromPlainObject(obj: any): AvmCircuitPublicInputs {
287
+ return new AvmCircuitPublicInputs(
288
+ GlobalVariables.fromPlainObject(obj.globalVariables),
289
+ ProtocolContracts.fromPlainObject(obj.protocolContracts),
290
+ TreeSnapshots.fromPlainObject(obj.startTreeSnapshots),
291
+ Gas.fromPlainObject(obj.startGasUsed),
292
+ GasSettings.fromPlainObject(obj.gasSettings),
293
+ GasFees.fromPlainObject(obj.effectiveGasFees),
294
+ AztecAddress.fromPlainObject(obj.feePayer),
295
+ Fr.fromPlainObject(obj.proverId),
296
+ PublicCallRequestArrayLengths.fromPlainObject(obj.publicCallRequestArrayLengths),
297
+ assertLength(
298
+ obj.publicSetupCallRequests.map((r: any) => PublicCallRequest.fromPlainObject(r)),
299
+ MAX_ENQUEUED_CALLS_PER_TX,
300
+ ),
301
+ assertLength(
302
+ obj.publicAppLogicCallRequests.map((r: any) => PublicCallRequest.fromPlainObject(r)),
303
+ MAX_ENQUEUED_CALLS_PER_TX,
304
+ ),
305
+ PublicCallRequest.fromPlainObject(obj.publicTeardownCallRequest),
306
+ PrivateToAvmAccumulatedDataArrayLengths.fromPlainObject(obj.previousNonRevertibleAccumulatedDataArrayLengths),
307
+ PrivateToAvmAccumulatedDataArrayLengths.fromPlainObject(obj.previousRevertibleAccumulatedDataArrayLengths),
308
+ PrivateToAvmAccumulatedData.fromPlainObject(obj.previousNonRevertibleAccumulatedData),
309
+ PrivateToAvmAccumulatedData.fromPlainObject(obj.previousRevertibleAccumulatedData),
310
+ TreeSnapshots.fromPlainObject(obj.endTreeSnapshots),
311
+ Gas.fromPlainObject(obj.endGasUsed),
312
+ AvmAccumulatedDataArrayLengths.fromPlainObject(obj.accumulatedDataArrayLengths),
313
+ AvmAccumulatedData.fromPlainObject(obj.accumulatedData),
314
+ Fr.fromPlainObject(obj.transactionFee),
315
+ obj.reverted,
316
+ );
317
+ }
318
+
279
319
  public serializeWithMessagePack(): Buffer {
280
320
  return serializeWithMessagePack(this);
281
321
  }
@@ -18,7 +18,10 @@ export function serializeWithMessagePack(obj: any): Buffer {
18
18
  return encoder.encode(obj);
19
19
  }
20
20
 
21
- export function deserializeFromMessagePack<T>(buffer: Buffer): T {
21
+ // This deserializes into a JS object. If you want a specific
22
+ // class, you need to use zod to parse it into the specific class.
23
+ // You can use T.schema.parse() for that.
24
+ export function deserializeFromMessagePack(buffer: Buffer): any {
22
25
  setUpMessagePackExtensions();
23
26
  const decoder = new Decoder({
24
27
  useRecords: false,
@@ -61,7 +61,7 @@ export class PublicDataWrite {
61
61
  return new PublicDataWrite(reader.readField(), reader.readField());
62
62
  }
63
63
 
64
- toBlobFields(): Fr[] {
64
+ toBlobFields(): [Fr, Fr] {
65
65
  return [this.leafSlot, this.value];
66
66
  }
67
67
 
@@ -86,6 +86,17 @@ export class PublicDataWrite {
86
86
  return new PublicDataWrite(Fr.ZERO, Fr.ZERO);
87
87
  }
88
88
 
89
+ /**
90
+ * Creates a PublicDataWrite instance from a plain object without Zod validation.
91
+ * This method is optimized for performance and skips validation, making it suitable
92
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
93
+ * @param obj - Plain object containing PublicDataWrite fields
94
+ * @returns A PublicDataWrite instance
95
+ */
96
+ static fromPlainObject(obj: any): PublicDataWrite {
97
+ return new PublicDataWrite(Fr.fromPlainObject(obj.leafSlot), Fr.fromPlainObject(obj.value));
98
+ }
99
+
89
100
  static random() {
90
101
  return new PublicDataWrite(Fr.random(), Fr.random());
91
102
  }
@@ -1,4 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
+ import type { ZodFor } from '@aztec/foundation/schemas';
2
3
  import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
3
4
 
4
5
  import { inspect } from 'util';
@@ -64,10 +65,28 @@ export class RevertCode {
64
65
  return this.code;
65
66
  }
66
67
 
67
- static get schema() {
68
+ static get schema(): ZodFor<RevertCode> {
68
69
  return z.nativeEnum(RevertCodeEnum).transform(value => new RevertCode(value));
69
70
  }
70
71
 
72
+ /**
73
+ * Creates a RevertCode from a plain object without Zod validation.
74
+ * This method is optimized for performance and skips validation, making it suitable
75
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
76
+ * @param obj - Plain object, number, or RevertCode instance
77
+ * @returns A RevertCode instance
78
+ */
79
+ static fromPlainObject(obj: any): RevertCode {
80
+ if (obj instanceof RevertCode) {
81
+ return obj;
82
+ }
83
+ const code = typeof obj === 'number' ? obj : (obj.code ?? obj);
84
+ if (!isRevertCodeEnum(code)) {
85
+ throw new Error(`Invalid RevertCode: ${code}`);
86
+ }
87
+ return new RevertCode(code);
88
+ }
89
+
71
90
  /**
72
91
  * Having different serialization methods allows for
73
92
  * decoupling the serialization for producing the content commitment hash
@@ -96,11 +115,15 @@ export class RevertCode {
96
115
  return this.toBuffer().length;
97
116
  }
98
117
 
99
- public static fromField(fr: Fr): RevertCode {
100
- if (!isRevertCodeEnum(fr.toNumber())) {
101
- throw new Error(`Invalid RevertCode: ${fr.toNumber()}`);
118
+ public static fromNumber(code: number): RevertCode {
119
+ if (!isRevertCodeEnum(code)) {
120
+ throw new Error(`Invalid RevertCode: ${code}`);
102
121
  }
103
- return new RevertCode(fr.toNumber());
122
+ return new RevertCode(code);
123
+ }
124
+
125
+ public static fromField(field: Fr): RevertCode {
126
+ return RevertCode.fromNumber(field.toNumber());
104
127
  }
105
128
 
106
129
  public static fromFields(fields: Fr[] | FieldReader): RevertCode {
@@ -111,10 +134,7 @@ export class RevertCode {
111
134
  public static fromBuffer(buffer: Buffer | BufferReader): RevertCode {
112
135
  const reader = BufferReader.asReader(buffer);
113
136
  const code = reader.readBytes(RevertCode.PACKED_SIZE_IN_BYTES).readUInt8(0);
114
- if (!isRevertCodeEnum(code)) {
115
- throw new Error(`Invalid RevertCode: ${code}`);
116
- }
117
- return new RevertCode(code);
137
+ return RevertCode.fromNumber(code);
118
138
  }
119
139
 
120
140
  private static readonly NUM_OPTIONS = 4;
@@ -1,10 +1,11 @@
1
1
  /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
2
2
  import { Fr, Point, fromBuffer } from '@aztec/foundation/fields';
3
- import { type ZodFor, hexSchemaFor } from '@aztec/foundation/schemas';
3
+ import { type ZodFor, bufferSchemaFor, hexSchemaFor } from '@aztec/foundation/schemas';
4
4
  import { type BufferReader, FieldReader, TypeRegistry } from '@aztec/foundation/serialize';
5
5
  import { hexToBuffer } from '@aztec/foundation/string';
6
6
 
7
7
  import { inspect } from 'util';
8
+ import { z } from 'zod';
8
9
 
9
10
  /** Branding to ensure fields are not interchangeable types. */
10
11
  export interface AztecAddress {
@@ -71,6 +72,24 @@ export class AztecAddress {
71
72
  return new AztecAddress(hexToBuffer(buf));
72
73
  }
73
74
 
75
+ /**
76
+ * Creates an AztecAddress from a plain object without Zod validation.
77
+ * This method is optimized for performance and skips validation, making it suitable
78
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
79
+ * Handles buffers, strings, or existing instances.
80
+ * @param obj - Plain object, buffer, string, or AztecAddress instance
81
+ * @returns An AztecAddress instance
82
+ */
83
+ static fromPlainObject(obj: any): AztecAddress {
84
+ if (obj instanceof AztecAddress) {
85
+ return obj;
86
+ }
87
+ if (obj instanceof Buffer || Buffer.isBuffer(obj)) {
88
+ return new AztecAddress(obj);
89
+ }
90
+ return AztecAddress.fromString(obj);
91
+ }
92
+
74
93
  /**
75
94
  * @returns a random valid address (i.e. one that can be encrypted to).
76
95
  */
@@ -137,7 +156,12 @@ export class AztecAddress {
137
156
  }
138
157
 
139
158
  static get schema(): ZodFor<AztecAddress> {
140
- return hexSchemaFor(AztecAddress, AztecAddress.isAddress);
159
+ return z.union([
160
+ // Serialization from hex string.
161
+ hexSchemaFor(AztecAddress, AztecAddress.isAddress),
162
+ // Serialization from buffer.
163
+ bufferSchemaFor(AztecAddress, buf => buf.length === 32),
164
+ ]);
141
165
  }
142
166
  }
143
167
 
@@ -37,9 +37,16 @@ export function getAttestationInfoFromPublishedL2Block(block: {
37
37
  block: L2Block;
38
38
  }): AttestationInfo[] {
39
39
  const payload = ConsensusPayload.fromBlock(block.block);
40
+ return getAttestationInfoFromPayload(payload, block.attestations);
41
+ }
42
+
43
+ export function getAttestationInfoFromPayload(
44
+ payload: ConsensusPayload,
45
+ attestations: CommitteeAttestation[],
46
+ ): AttestationInfo[] {
40
47
  const hashedPayload = getHashedSignaturePayloadEthSignedMessage(payload, SignatureDomainSeparator.blockAttestation);
41
48
 
42
- return block.attestations.map(attestation => {
49
+ return attestations.map(attestation => {
43
50
  // If signature is empty, check if we have an address directly
44
51
  if (attestation.signature.isEmpty()) {
45
52
  if (attestation.address.isZero()) {
@@ -0,0 +1,8 @@
1
+ import { BlockNumberSchema } from '@aztec/foundation/branded-types';
2
+
3
+ import { z } from 'zod';
4
+
5
+ export const BlockParameterSchema = z.union([BlockNumberSchema, z.literal('latest')]);
6
+
7
+ /** Block parameter - either a specific BlockNumber or 'latest' */
8
+ export type BlockParameter = z.infer<typeof BlockParameterSchema>;
package/src/block/body.ts CHANGED
@@ -1,7 +1,6 @@
1
- import { createBlockEndMarker, getNumTxsFromBlockEndMarker, isBlockEndMarker } from '@aztec/blob-lib/encoding';
1
+ import type { TxBlobData } from '@aztec/blob-lib/encoding';
2
2
  import { timesParallel } from '@aztec/foundation/collection';
3
- import { Fr } from '@aztec/foundation/fields';
4
- import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
5
4
 
6
5
  import { inspect } from 'util';
7
6
  import { z } from 'zod';
@@ -9,14 +8,6 @@ import { z } from 'zod';
9
8
  import type { ZodFor } from '../schemas/index.js';
10
9
  import { TxEffect } from '../tx/tx_effect.js';
11
10
 
12
- export { createBlockEndMarker };
13
-
14
- export function getBlockBlobFields(txEffects: TxEffect[]) {
15
- const blobFields = txEffects.flatMap(txEffect => txEffect.toBlobFields());
16
- blobFields.push(createBlockEndMarker(txEffects.length));
17
- return blobFields;
18
- }
19
-
20
11
  export class Body {
21
12
  constructor(public txEffects: TxEffect[]) {}
22
13
 
@@ -55,32 +46,16 @@ export class Body {
55
46
  /**
56
47
  * Returns a flat packed array of fields of all tx effects - used for blobs.
57
48
  */
58
- toBlobFields() {
59
- return getBlockBlobFields(this.txEffects);
49
+ toTxBlobData(): TxBlobData[] {
50
+ return this.txEffects.map(txEffect => txEffect.toTxBlobData());
60
51
  }
61
52
 
62
53
  /**
63
54
  * Decodes a block from blob fields.
64
55
  */
65
- static fromBlobFields(fields: Fr[]) {
66
- const txEffects: TxEffect[] = [];
67
- const reader = new FieldReader(fields.slice(0, -1));
68
- while (!reader.isFinished()) {
69
- txEffects.push(TxEffect.fromBlobFields(reader));
70
- }
71
-
72
- // If the fields are from a proven block, or are constructed by calling `toBlobFields`, the following errors should never throw.
73
-
74
- if (!isBlockEndMarker(fields[fields.length - 1])) {
75
- throw new Error('Block end marker not found');
76
- }
77
-
78
- const numTxs = getNumTxsFromBlockEndMarker(fields[fields.length - 1]);
79
- if (numTxs !== txEffects.length) {
80
- throw new Error(`Expected ${numTxs} txs, but got ${txEffects.length}`);
81
- }
82
-
83
- return new this(txEffects);
56
+ static fromTxBlobData(txBlobData: TxBlobData[]): Body {
57
+ const txEffects = txBlobData.map(data => TxEffect.fromTxBlobData(data));
58
+ return new Body(txEffects);
84
59
  }
85
60
 
86
61
  [inspect.custom]() {
@@ -89,14 +64,16 @@ export class Body {
89
64
  }`;
90
65
  }
91
66
 
92
- static async random(
67
+ static async random({
93
68
  txsPerBlock = 4,
94
- numPublicCallsPerTx = 3,
95
- numPublicLogsPerCall = 1,
96
- maxEffects: number | undefined = undefined,
97
- ) {
98
- const txEffects = await timesParallel(txsPerBlock, () =>
99
- TxEffect.random(numPublicCallsPerTx, numPublicLogsPerCall, maxEffects),
69
+ makeTxOptions = () => ({}),
70
+ ...txEffectOptions
71
+ }: {
72
+ txsPerBlock?: number;
73
+ makeTxOptions?: (txIndex: number) => Partial<Parameters<typeof TxEffect.random>[0]>;
74
+ } & Partial<Parameters<typeof TxEffect.random>[0]> = {}) {
75
+ const txEffects = await timesParallel(txsPerBlock, txIndex =>
76
+ TxEffect.random({ ...makeTxOptions(txIndex), ...txEffectOptions }),
100
77
  );
101
78
 
102
79
  return new Body(txEffects);
@@ -1,25 +1,29 @@
1
+ import { BlockNumber, BlockNumberSchema } from '@aztec/foundation/branded-types';
2
+
1
3
  import { type ZodTypeAny, z } from 'zod';
2
4
 
3
- import { schemas } from '../schemas/index.js';
4
5
  import { L2BlockHash } from './block_hash.js';
5
6
  import type { L2Block } from './l2_block.js';
6
7
 
7
- // Note: If you expand this type with indexInBlock, then delete `IndexedTxEffect` and use this type instead.
8
- export type InBlock<T> = {
9
- l2BlockNumber: number;
8
+ export type InBlock = {
9
+ l2BlockNumber: BlockNumber;
10
10
  l2BlockHash: L2BlockHash;
11
- data: T;
12
11
  };
13
12
 
14
- export function randomInBlock<T>(data: T): InBlock<T> {
13
+ // Note: If you expand this type with indexInBlock, then delete `IndexedTxEffect` and use this type instead.
14
+ export type DataInBlock<T> = {
15
+ data: T;
16
+ } & InBlock;
17
+
18
+ export function randomInBlock<T>(data: T): DataInBlock<T> {
15
19
  return {
16
20
  data,
17
- l2BlockNumber: Math.floor(Math.random() * 1000),
21
+ l2BlockNumber: BlockNumber(Math.floor(Math.random() * 1000)),
18
22
  l2BlockHash: L2BlockHash.random(),
19
23
  };
20
24
  }
21
25
 
22
- export async function wrapInBlock<T>(data: T, block: L2Block): Promise<InBlock<T>> {
26
+ export async function wrapInBlock<T>(data: T, block: L2Block): Promise<DataInBlock<T>> {
23
27
  return {
24
28
  data,
25
29
  l2BlockNumber: block.number,
@@ -30,7 +34,7 @@ export async function wrapInBlock<T>(data: T, block: L2Block): Promise<InBlock<T
30
34
  export function inBlockSchemaFor<T extends ZodTypeAny>(schema: T) {
31
35
  return z.object({
32
36
  data: schema,
33
- l2BlockNumber: schemas.Integer,
37
+ l2BlockNumber: BlockNumberSchema,
34
38
  l2BlockHash: L2BlockHash.schema,
35
39
  });
36
40
  }
@@ -1,9 +1,10 @@
1
1
  export * from './l2_block.js';
2
+ export * from './l2_block_new.js';
2
3
  export * from './l2_block_header.js';
3
4
  export * from './l2_block_stream/index.js';
4
5
  export * from './in_block.js';
5
6
  export * from './body.js';
6
- export * from './l2_block_number.js';
7
+ export * from './block_parameter.js';
7
8
  export * from './l2_block_source.js';
8
9
  export * from './block_hash.js';
9
10
  export * from './published_l2_block.js';
@@ -1,19 +1,24 @@
1
+ import { type BlockBlobData, encodeBlockBlobData, encodeCheckpointBlobDataFromBlocks } from '@aztec/blob-lib/encoding';
2
+ import { BlockNumber, CheckpointNumber, SlotNumber } from '@aztec/foundation/branded-types';
1
3
  import { Fr } from '@aztec/foundation/fields';
2
4
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
5
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
4
6
 
5
7
  import { z } from 'zod';
6
8
 
7
- import { getCheckpointBlobFields } from '../checkpoint/checkpoint_body.js';
9
+ import { Checkpoint } from '../checkpoint/checkpoint.js';
8
10
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
9
11
  import type { BlockHeader } from '../tx/block_header.js';
10
12
  import { Body } from './body.js';
11
13
  import { makeAppendOnlyTreeSnapshot, makeL2BlockHeader } from './l2_block_code_to_purge.js';
12
14
  import { L2BlockHeader } from './l2_block_header.js';
13
15
  import type { L2BlockInfo } from './l2_block_info.js';
16
+ import { L2BlockNew } from './l2_block_new.js';
14
17
 
15
18
  /**
16
19
  * The data that makes up the rollup proof, with encoder decoder functions.
20
+ *
21
+ * @deprecated Use `L2BlockNew` instead.
17
22
  */
18
23
  export class L2Block {
19
24
  constructor(
@@ -84,7 +89,7 @@ export class L2Block {
84
89
  * @returns The L2 block.
85
90
  */
86
91
  static async random(
87
- l2BlockNum: number,
92
+ l2BlockNum: BlockNumber,
88
93
  txsPerBlock = 4,
89
94
  numPublicCallsPerTx = 3,
90
95
  numPublicLogsPerCall = 1,
@@ -92,7 +97,7 @@ export class L2Block {
92
97
  slotNumber: number | undefined = undefined,
93
98
  maxEffects: number | undefined = undefined,
94
99
  ): Promise<L2Block> {
95
- const body = await Body.random(txsPerBlock, numPublicCallsPerTx, numPublicLogsPerCall, maxEffects);
100
+ const body = await Body.random({ txsPerBlock, numPublicCallsPerTx, numPublicLogsPerCall, maxEffects });
96
101
 
97
102
  return new L2Block(
98
103
  makeAppendOnlyTreeSnapshot(l2BlockNum + 1),
@@ -109,11 +114,11 @@ export class L2Block {
109
114
  return new L2Block(AppendOnlyTreeSnapshot.empty(), L2BlockHeader.empty(), Body.empty());
110
115
  }
111
116
 
112
- get number(): number {
117
+ get number(): BlockNumber {
113
118
  return this.header.getBlockNumber();
114
119
  }
115
120
 
116
- get slot(): bigint {
121
+ get slot(): SlotNumber {
117
122
  return this.header.getSlot();
118
123
  }
119
124
 
@@ -146,13 +151,71 @@ export class L2Block {
146
151
  return this.header.toBlockHeader();
147
152
  }
148
153
 
154
+ public toL2Block() {
155
+ return new L2BlockNew(this.archive, this.getBlockHeader(), this.body);
156
+ }
157
+
158
+ public toCheckpoint() {
159
+ return new Checkpoint(
160
+ this.archive,
161
+ this.getCheckpointHeader(),
162
+ [this.toL2Block()],
163
+ CheckpointNumber.fromBlockNumber(this.number),
164
+ );
165
+ }
166
+
167
+ static fromCheckpoint(checkpoint: Checkpoint) {
168
+ const checkpointHeader = checkpoint.header;
169
+ const block = checkpoint.blocks.at(-1)!;
170
+ const header = new L2BlockHeader(
171
+ new AppendOnlyTreeSnapshot(checkpointHeader.lastArchiveRoot, block.number),
172
+ checkpointHeader.contentCommitment,
173
+ block.header.state,
174
+ block.header.globalVariables,
175
+ block.header.totalFees,
176
+ checkpointHeader.totalManaUsed,
177
+ block.header.spongeBlobHash,
178
+ checkpointHeader.blockHeadersHash,
179
+ );
180
+ return new L2Block(checkpoint.archive, header, block.body);
181
+ }
182
+
149
183
  /**
150
184
  * @deprecated
151
185
  * This only works when there's one block per checkpoint.
152
186
  * TODO(#17027): Remove this method from L2Block and create a dedicated Checkpoint class.
153
187
  */
154
188
  public getCheckpointBlobFields() {
155
- return getCheckpointBlobFields([this.body.txEffects]);
189
+ const blockBlobData = this.toBlockBlobData(true);
190
+ return encodeCheckpointBlobDataFromBlocks([blockBlobData]);
191
+ }
192
+
193
+ public toBlobFields(isFirstBlock: boolean): Fr[] {
194
+ const blockBlobData = this.toBlockBlobData(isFirstBlock);
195
+ return encodeBlockBlobData(blockBlobData);
196
+ }
197
+
198
+ public toBlockBlobData(isFirstBlock: boolean): BlockBlobData {
199
+ return {
200
+ blockEndMarker: {
201
+ numTxs: this.body.txEffects.length,
202
+ timestamp: this.header.globalVariables.timestamp,
203
+ blockNumber: this.number,
204
+ },
205
+ blockEndStateField: {
206
+ l1ToL2MessageNextAvailableLeafIndex: this.header.state.l1ToL2MessageTree.nextAvailableLeafIndex,
207
+ noteHashNextAvailableLeafIndex: this.header.state.partial.noteHashTree.nextAvailableLeafIndex,
208
+ nullifierNextAvailableLeafIndex: this.header.state.partial.nullifierTree.nextAvailableLeafIndex,
209
+ publicDataNextAvailableLeafIndex: this.header.state.partial.publicDataTree.nextAvailableLeafIndex,
210
+ totalManaUsed: this.header.totalManaUsed.toBigInt(),
211
+ },
212
+ lastArchiveRoot: this.header.lastArchive.root,
213
+ noteHashRoot: this.header.state.partial.noteHashTree.root,
214
+ nullifierRoot: this.header.state.partial.nullifierTree.root,
215
+ publicDataRoot: this.header.state.partial.publicDataTree.root,
216
+ l1ToL2MessageRoot: isFirstBlock ? this.header.state.l1ToL2MessageTree.root : undefined,
217
+ txs: this.body.toTxBlobData(),
218
+ };
156
219
  }
157
220
 
158
221
  /**
@@ -188,7 +251,7 @@ export class L2Block {
188
251
  archive: this.archive.root,
189
252
  lastArchive: this.header.lastArchive.root,
190
253
  blockNumber: this.number,
191
- slotNumber: Number(this.header.getSlot()),
254
+ slotNumber: this.header.getSlot(),
192
255
  txCount: this.body.txEffects.length,
193
256
  timestamp: this.header.globalVariables.timestamp,
194
257
  };
@@ -1,3 +1,4 @@
1
+ import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import { compact } from '@aztec/foundation/collection';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
3
4
  import { Fr } from '@aztec/foundation/fields';
@@ -24,9 +25,10 @@ export function makeL2BlockHeader(
24
25
  overrides?.contentCommitment ?? makeContentCommitment(seed + 0x200, inHash),
25
26
  overrides?.state ?? makeStateReference(seed + 0x600),
26
27
  makeGlobalVariables((seed += 0x700), {
27
- ...(blockNumber ? { blockNumber } : {}),
28
- ...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
28
+ ...(blockNumber ? { blockNumber: BlockNumber(blockNumber) } : {}),
29
+ ...(slotNumber ? { slotNumber: SlotNumber(slotNumber) } : {}),
29
30
  }),
31
+ new Fr(seed + 0x300),
30
32
  new Fr(seed + 0x800),
31
33
  new Fr(seed + 0x900),
32
34
  new Fr(seed + 0xa00),
@@ -75,8 +77,8 @@ function makeGlobalVariables(seed = 1, overrides: Partial<FieldsOf<GlobalVariabl
75
77
  return GlobalVariables.from({
76
78
  chainId: new Fr(seed),
77
79
  version: new Fr(seed + 1),
78
- blockNumber: seed + 2,
79
- slotNumber: new Fr(seed + 3),
80
+ blockNumber: BlockNumber(seed + 2),
81
+ slotNumber: SlotNumber(seed + 3),
80
82
  timestamp: BigInt(seed + 4),
81
83
  coinbase: EthAddress.fromField(new Fr(seed + 5)),
82
84
  feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),