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

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 (806) 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 +4189 -2057
  30. package/dest/avm/avm.d.ts.map +1 -1
  31. package/dest/avm/avm.js +375 -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 +156 -146
  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 +2023 -1503
  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/body.d.ts +8 -8
  71. package/dest/block/body.d.ts.map +1 -1
  72. package/dest/block/body.js +11 -27
  73. package/dest/block/in_block.d.ts +3 -11
  74. package/dest/block/in_block.d.ts.map +1 -1
  75. package/dest/block/index.d.ts +2 -1
  76. package/dest/block/index.d.ts.map +1 -1
  77. package/dest/block/index.js +1 -0
  78. package/dest/block/l2_block.d.ts +15 -7
  79. package/dest/block/l2_block.d.ts.map +1 -1
  80. package/dest/block/l2_block.js +54 -4
  81. package/dest/block/l2_block_code_to_purge.d.ts +1 -1
  82. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -1
  83. package/dest/block/l2_block_code_to_purge.js +4 -3
  84. package/dest/block/l2_block_header.d.ts +10 -12
  85. package/dest/block/l2_block_header.d.ts.map +1 -1
  86. package/dest/block/l2_block_header.js +18 -11
  87. package/dest/block/l2_block_info.d.ts +9 -9
  88. package/dest/block/l2_block_new.d.ts +108 -0
  89. package/dest/block/l2_block_new.d.ts.map +1 -0
  90. package/dest/block/l2_block_new.js +135 -0
  91. package/dest/block/l2_block_number.d.ts +1 -1
  92. package/dest/block/l2_block_source.d.ts +10 -9
  93. package/dest/block/l2_block_source.d.ts.map +1 -1
  94. package/dest/block/l2_block_stream/index.d.ts +1 -1
  95. package/dest/block/l2_block_stream/interfaces.d.ts +1 -1
  96. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -6
  97. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  98. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +1 -1
  99. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  100. package/dest/block/proposal/attestations_and_signers.d.ts +16 -5
  101. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  102. package/dest/block/proposal/attestations_and_signers.js +14 -0
  103. package/dest/block/proposal/committee_attestation.d.ts +1 -1
  104. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  105. package/dest/block/proposal/index.d.ts +1 -1
  106. package/dest/block/published_l2_block.d.ts +15 -28
  107. package/dest/block/published_l2_block.d.ts.map +1 -1
  108. package/dest/block/published_l2_block.js +12 -27
  109. package/dest/block/test/index.d.ts +1 -1
  110. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  111. package/dest/block/validate_block_result.d.ts +6 -178
  112. package/dest/block/validate_block_result.d.ts.map +1 -1
  113. package/dest/block/validate_block_result.js +4 -3
  114. package/dest/checkpoint/checkpoint.d.ts +121 -0
  115. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  116. package/dest/checkpoint/checkpoint.js +62 -0
  117. package/dest/checkpoint/index.d.ts +3 -2
  118. package/dest/checkpoint/index.d.ts.map +1 -1
  119. package/dest/checkpoint/index.js +2 -1
  120. package/dest/checkpoint/published_checkpoint.d.ts +212 -0
  121. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  122. package/dest/checkpoint/published_checkpoint.js +71 -0
  123. package/dest/config/chain-config.d.ts +1 -1
  124. package/dest/config/index.d.ts +1 -1
  125. package/dest/config/node-rpc-config.d.ts +1 -1
  126. package/dest/contract/artifact_hash.d.ts +2 -2
  127. package/dest/contract/artifact_hash.d.ts.map +1 -1
  128. package/dest/contract/complete_address.d.ts +1 -4
  129. package/dest/contract/complete_address.d.ts.map +1 -1
  130. package/dest/contract/contract_address.d.ts +1 -1
  131. package/dest/contract/contract_class.d.ts +1 -1
  132. package/dest/contract/contract_class_id.d.ts +1 -1
  133. package/dest/contract/contract_class_metadata.d.ts +1 -1
  134. package/dest/contract/contract_deployment_data.d.ts +119 -0
  135. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  136. package/dest/contract/contract_deployment_data.js +99 -0
  137. package/dest/contract/contract_function_dao.d.ts +1 -1
  138. package/dest/contract/contract_instance.d.ts +1 -1
  139. package/dest/contract/contract_instance.d.ts.map +1 -1
  140. package/dest/contract/contract_instance_update.d.ts +1 -1
  141. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  142. package/dest/contract/contract_metadata.d.ts +1 -1
  143. package/dest/contract/deployment_info.d.ts +1 -1
  144. package/dest/contract/index.d.ts +2 -1
  145. package/dest/contract/index.d.ts.map +1 -1
  146. package/dest/contract/index.js +1 -0
  147. package/dest/contract/interfaces/contract_class.d.ts +41 -122
  148. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  149. package/dest/contract/interfaces/contract_data_source.d.ts +1 -1
  150. package/dest/contract/interfaces/contract_instance.d.ts +11 -11
  151. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  152. package/dest/contract/interfaces/contract_instance_update.d.ts +3 -3
  153. package/dest/contract/interfaces/index.d.ts +1 -1
  154. package/dest/contract/interfaces/node-info.d.ts +1 -1
  155. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +1 -1
  156. package/dest/contract/partial_address.d.ts +1 -1
  157. package/dest/contract/private_function.d.ts +1 -1
  158. package/dest/contract/private_function_membership_proof.d.ts +2 -2
  159. package/dest/contract/private_function_membership_proof.js +1 -1
  160. package/dest/contract/utility_function_membership_proof.d.ts +1 -1
  161. package/dest/database-version/index.d.ts +1 -1
  162. package/dest/database-version/version_manager.d.ts +6 -8
  163. package/dest/database-version/version_manager.d.ts.map +1 -1
  164. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +1 -1
  165. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -1
  166. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +1 -1
  167. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -1
  168. package/dest/delayed_public_mutable/index.d.ts +1 -1
  169. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +1 -1
  170. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -1
  171. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +1 -1
  172. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -1
  173. package/dest/epoch-helpers/index.d.ts +12 -11
  174. package/dest/epoch-helpers/index.d.ts.map +1 -1
  175. package/dest/epoch-helpers/index.js +10 -9
  176. package/dest/errors/index.d.ts +1 -1
  177. package/dest/errors/proving_error.d.ts +2 -2
  178. package/dest/errors/proving_error.d.ts.map +1 -1
  179. package/dest/errors/simulation_error.d.ts +1 -1
  180. package/dest/errors/simulation_error.d.ts.map +1 -1
  181. package/dest/fees/index.d.ts +1 -1
  182. package/dest/fees/transaction_fee.d.ts +1 -1
  183. package/dest/file-store/factory.d.ts +1 -1
  184. package/dest/file-store/gcs.d.ts +1 -1
  185. package/dest/file-store/gcs.d.ts.map +1 -1
  186. package/dest/file-store/http.d.ts +1 -1
  187. package/dest/file-store/http.d.ts.map +1 -1
  188. package/dest/file-store/http.js +8 -3
  189. package/dest/file-store/index.d.ts +1 -1
  190. package/dest/file-store/interface.d.ts +1 -1
  191. package/dest/file-store/local.d.ts +1 -1
  192. package/dest/file-store/local.d.ts.map +1 -1
  193. package/dest/file-store/s3.d.ts +1 -1
  194. package/dest/file-store/s3.d.ts.map +1 -1
  195. package/dest/file-store/s3.js +3 -7
  196. package/dest/gas/gas.d.ts +9 -1
  197. package/dest/gas/gas.d.ts.map +1 -1
  198. package/dest/gas/gas.js +12 -0
  199. package/dest/gas/gas_fees.d.ts +9 -1
  200. package/dest/gas/gas_fees.d.ts.map +1 -1
  201. package/dest/gas/gas_fees.js +12 -0
  202. package/dest/gas/gas_settings.d.ts +9 -1
  203. package/dest/gas/gas_settings.d.ts.map +1 -1
  204. package/dest/gas/gas_settings.js +12 -0
  205. package/dest/gas/gas_used.d.ts +13 -2
  206. package/dest/gas/gas_used.d.ts.map +1 -1
  207. package/dest/gas/gas_used.js +19 -1
  208. package/dest/gas/index.d.ts +1 -1
  209. package/dest/hash/hash.d.ts +11 -3
  210. package/dest/hash/hash.d.ts.map +1 -1
  211. package/dest/hash/hash.js +11 -1
  212. package/dest/hash/index.d.ts +1 -1
  213. package/dest/hash/map_slot.d.ts +1 -1
  214. package/dest/interfaces/allowed_element.d.ts +5 -5
  215. package/dest/interfaces/api_limit.d.ts +1 -1
  216. package/dest/interfaces/archiver.d.ts +6 -1
  217. package/dest/interfaces/archiver.d.ts.map +1 -1
  218. package/dest/interfaces/archiver.js +8 -6
  219. package/dest/interfaces/aztec-node-admin.d.ts +92 -85
  220. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  221. package/dest/interfaces/aztec-node.d.ts +3 -2
  222. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  223. package/dest/interfaces/aztec-node.js +1 -1
  224. package/dest/interfaces/block-builder.d.ts +1 -1
  225. package/dest/interfaces/client.d.ts +1 -1
  226. package/dest/interfaces/configs.d.ts +31 -21
  227. package/dest/interfaces/configs.d.ts.map +1 -1
  228. package/dest/interfaces/configs.js +3 -1
  229. package/dest/interfaces/epoch-prover.d.ts +5 -5
  230. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  231. package/dest/interfaces/get_logs_response.d.ts +2 -2
  232. package/dest/interfaces/l2_logs_source.d.ts +1 -1
  233. package/dest/interfaces/merkle_tree_operations.d.ts +3 -3
  234. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  235. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  236. package/dest/interfaces/p2p.d.ts +3 -2
  237. package/dest/interfaces/p2p.d.ts.map +1 -1
  238. package/dest/interfaces/p2p.js +1 -1
  239. package/dest/interfaces/private_kernel_prover.d.ts +1 -1
  240. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  241. package/dest/interfaces/prover-agent.d.ts +1 -1
  242. package/dest/interfaces/prover-broker.d.ts +1 -1
  243. package/dest/interfaces/prover-client.d.ts +5 -5
  244. package/dest/interfaces/prover-client.d.ts.map +1 -1
  245. package/dest/interfaces/prover-coordination.d.ts +1 -1
  246. package/dest/interfaces/prover-node.d.ts +1 -1
  247. package/dest/interfaces/proving-job-source.d.ts +1 -1
  248. package/dest/interfaces/proving-job.d.ts +1672 -1159
  249. package/dest/interfaces/proving-job.d.ts.map +1 -1
  250. package/dest/interfaces/proving-job.js +3 -2
  251. package/dest/interfaces/public_state_source.d.ts +1 -1
  252. package/dest/interfaces/server.d.ts +1 -1
  253. package/dest/interfaces/server_circuit_prover.d.ts +2 -3
  254. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  255. package/dest/interfaces/service.d.ts +1 -1
  256. package/dest/interfaces/slasher.d.ts +3 -3
  257. package/dest/interfaces/tx_provider.d.ts +1 -1
  258. package/dest/interfaces/validator.d.ts +27 -19
  259. package/dest/interfaces/validator.d.ts.map +1 -1
  260. package/dest/interfaces/validator.js +2 -1
  261. package/dest/interfaces/world_state.d.ts +1 -1
  262. package/dest/kernel/claimed_length_array.d.ts +1 -1
  263. package/dest/kernel/claimed_length_array.d.ts.map +1 -1
  264. package/dest/kernel/hiding_kernel_private_inputs.d.ts +1 -1
  265. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -1
  266. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +1 -1
  267. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +1 -1
  268. package/dest/kernel/hints/build_transient_data_hints.d.ts +2 -2
  269. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  270. package/dest/kernel/hints/build_transient_data_hints.js +2 -2
  271. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  272. package/dest/kernel/hints/index.d.ts +1 -1
  273. package/dest/kernel/hints/key_validation_hint.d.ts +1 -2
  274. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  275. package/dest/kernel/hints/key_validation_request.d.ts +1 -2
  276. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  277. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +1 -6
  278. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -1
  279. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +1 -1
  280. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  281. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +1 -1
  282. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  283. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +2 -24
  284. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  285. package/dest/kernel/hints/private_kernel_reset_hints.js +4 -9
  286. package/dest/kernel/hints/read_request.d.ts +1 -7
  287. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  288. package/dest/kernel/hints/read_request_hints.d.ts +1 -7
  289. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  290. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +1 -1
  291. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -1
  292. package/dest/kernel/hints/scoped_value_cache.d.ts +1 -1
  293. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  294. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +1 -1
  295. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -1
  296. package/dest/kernel/hints/tree_leaf_read_request.d.ts +1 -1
  297. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  298. package/dest/kernel/index.d.ts +1 -1
  299. package/dest/kernel/log_hash.d.ts +1 -1
  300. package/dest/kernel/log_hash.d.ts.map +1 -1
  301. package/dest/kernel/note_hash.d.ts +1 -1
  302. package/dest/kernel/note_hash.d.ts.map +1 -1
  303. package/dest/kernel/nullifier.d.ts +1 -1
  304. package/dest/kernel/nullifier.d.ts.map +1 -1
  305. package/dest/kernel/padded_side_effects.d.ts +1 -1
  306. package/dest/kernel/padded_side_effects.d.ts.map +1 -1
  307. package/dest/kernel/private_accumulated_data.d.ts +1 -23
  308. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  309. package/dest/kernel/private_call_data.d.ts +1 -25
  310. package/dest/kernel/private_call_data.d.ts.map +1 -1
  311. package/dest/kernel/private_call_request.d.ts +1 -16
  312. package/dest/kernel/private_call_request.d.ts.map +1 -1
  313. package/dest/kernel/private_circuit_public_inputs.d.ts +17 -74
  314. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  315. package/dest/kernel/private_circuit_public_inputs.js +17 -5
  316. package/dest/kernel/private_context_inputs.d.ts +1 -1
  317. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  318. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -29
  319. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  320. package/dest/kernel/private_kernel_circuit_public_inputs.js +8 -4
  321. package/dest/kernel/private_kernel_data.d.ts +1 -7
  322. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  323. package/dest/kernel/private_kernel_data.js +0 -2
  324. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +7 -20
  325. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  326. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +7 -3
  327. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +1 -7
  328. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  329. package/dest/kernel/private_kernel_prover_output.d.ts +10 -10
  330. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +1 -4
  331. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  332. package/dest/kernel/private_kernel_reset_dimensions.d.ts +1 -1
  333. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  334. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -1
  335. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +1 -10
  336. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  337. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +1 -23
  338. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  339. package/dest/kernel/private_log_data.d.ts +1 -1
  340. package/dest/kernel/private_log_data.d.ts.map +1 -1
  341. package/dest/kernel/private_to_avm_accumulated_data.d.ts +17 -1
  342. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  343. package/dest/kernel/private_to_avm_accumulated_data.js +18 -0
  344. package/dest/kernel/private_to_public_accumulated_data.d.ts +1 -1
  345. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  346. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +1 -1
  347. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  348. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +1 -1
  349. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  350. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +1 -17
  351. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  352. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +1 -16
  353. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  354. package/dest/kernel/private_validation_requests.d.ts +2 -24
  355. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  356. package/dest/kernel/private_validation_requests.js +5 -13
  357. package/dest/kernel/public_call_request.d.ts +22 -27
  358. package/dest/kernel/public_call_request.d.ts.map +1 -1
  359. package/dest/kernel/public_call_request.js +18 -0
  360. package/dest/kernel/utils/index.d.ts +1 -1
  361. package/dest/kernel/utils/interfaces.d.ts +1 -1
  362. package/dest/kernel/utils/optional_number.d.ts +1 -7
  363. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  364. package/dest/kernel/utils/order_and_comparison.d.ts +1 -1
  365. package/dest/keys/derivation.d.ts +1 -1
  366. package/dest/keys/index.d.ts +1 -1
  367. package/dest/keys/key_types.d.ts +1 -1
  368. package/dest/keys/public_key.d.ts +1 -1
  369. package/dest/keys/public_keys.d.ts +9 -5
  370. package/dest/keys/public_keys.d.ts.map +1 -1
  371. package/dest/keys/public_keys.js +12 -0
  372. package/dest/keys/utils.d.ts +1 -1
  373. package/dest/l1-contracts/index.d.ts +1 -1
  374. package/dest/l1-contracts/slash_factory.d.ts +3 -3
  375. package/dest/l1-contracts/slash_factory.d.ts.map +1 -1
  376. package/dest/logs/contract_class_log.d.ts +20 -4
  377. package/dest/logs/contract_class_log.d.ts.map +1 -1
  378. package/dest/logs/contract_class_log.js +24 -0
  379. package/dest/logs/debug_log.d.ts +10 -2
  380. package/dest/logs/debug_log.d.ts.map +1 -1
  381. package/dest/logs/debug_log.js +13 -0
  382. package/dest/logs/directional_app_tagging_secret.d.ts +1 -1
  383. package/dest/logs/directional_app_tagging_secret.d.ts.map +1 -1
  384. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  385. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  386. package/dest/logs/extended_public_log.d.ts +3 -5
  387. package/dest/logs/extended_public_log.d.ts.map +1 -1
  388. package/dest/logs/index.d.ts +1 -1
  389. package/dest/logs/log_filter.d.ts +1 -1
  390. package/dest/logs/log_id.d.ts +1 -4
  391. package/dest/logs/log_id.d.ts.map +1 -1
  392. package/dest/logs/log_with_tx_data.d.ts +1 -1
  393. package/dest/logs/log_with_tx_data.d.ts.map +1 -1
  394. package/dest/logs/message_context.d.ts +1 -1
  395. package/dest/logs/message_context.d.ts.map +1 -1
  396. package/dest/logs/pending_tagged_log.d.ts +1 -1
  397. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  398. package/dest/logs/pre_tag.d.ts +1 -1
  399. package/dest/logs/private_log.d.ts +10 -2
  400. package/dest/logs/private_log.d.ts.map +1 -1
  401. package/dest/logs/private_log.js +14 -5
  402. package/dest/logs/public_log.d.ts +9 -1
  403. package/dest/logs/public_log.d.ts.map +1 -1
  404. package/dest/logs/public_log.js +9 -0
  405. package/dest/logs/shared_secret_derivation.d.ts +1 -1
  406. package/dest/logs/tx_scoped_l2_log.d.ts +8 -8
  407. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  408. package/dest/messaging/in_hash.d.ts +4 -0
  409. package/dest/messaging/in_hash.d.ts.map +1 -0
  410. package/dest/messaging/in_hash.js +8 -0
  411. package/dest/messaging/inbox_leaf.d.ts +1 -3
  412. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  413. package/dest/messaging/index.d.ts +3 -1
  414. package/dest/messaging/index.d.ts.map +1 -1
  415. package/dest/messaging/index.js +2 -0
  416. package/dest/messaging/l1_actor.d.ts +1 -7
  417. package/dest/messaging/l1_actor.d.ts.map +1 -1
  418. package/dest/messaging/l1_to_l2_message.d.ts +1 -6
  419. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  420. package/dest/messaging/l1_to_l2_message_source.d.ts +1 -1
  421. package/dest/messaging/l2_actor.d.ts +1 -7
  422. package/dest/messaging/l2_actor.d.ts.map +1 -1
  423. package/dest/messaging/l2_to_l1_membership.d.ts +1 -1
  424. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  425. package/dest/messaging/l2_to_l1_membership.js +2 -2
  426. package/dest/messaging/l2_to_l1_message.d.ts +17 -1
  427. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  428. package/dest/messaging/l2_to_l1_message.js +18 -0
  429. package/dest/messaging/out_hash.d.ts +5 -0
  430. package/dest/messaging/out_hash.d.ts.map +1 -0
  431. package/dest/messaging/out_hash.js +28 -0
  432. package/dest/noir/index.d.ts +7 -7
  433. package/dest/noir/index.d.ts.map +1 -1
  434. package/dest/noir/index.js +6 -6
  435. package/dest/note/comparator.d.ts +1 -1
  436. package/dest/note/index.d.ts +2 -2
  437. package/dest/note/index.d.ts.map +1 -1
  438. package/dest/note/index.js +1 -1
  439. package/dest/note/note.d.ts +2 -17
  440. package/dest/note/note.d.ts.map +1 -1
  441. package/dest/note/note_dao.d.ts +71 -0
  442. package/dest/note/note_dao.d.ts.map +1 -0
  443. package/dest/note/note_dao.js +101 -0
  444. package/dest/note/note_status.d.ts +1 -1
  445. package/dest/note/notes_filter.d.ts +1 -1
  446. package/dest/p2p/attestation_utils.d.ts +1 -1
  447. package/dest/p2p/block_attestation.d.ts +5 -12
  448. package/dest/p2p/block_attestation.d.ts.map +1 -1
  449. package/dest/p2p/block_proposal.d.ts +3 -6
  450. package/dest/p2p/block_proposal.d.ts.map +1 -1
  451. package/dest/p2p/block_proposal.js +1 -1
  452. package/dest/p2p/client_type.d.ts +1 -1
  453. package/dest/p2p/consensus_payload.d.ts +10 -188
  454. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  455. package/dest/p2p/consensus_payload.js +16 -23
  456. package/dest/p2p/gossipable.d.ts +6 -5
  457. package/dest/p2p/gossipable.d.ts.map +1 -1
  458. package/dest/p2p/gossipable.js +16 -10
  459. package/dest/p2p/index.d.ts +1 -1
  460. package/dest/p2p/interface.d.ts +1 -1
  461. package/dest/p2p/message_validator.d.ts +1 -1
  462. package/dest/p2p/peer_error.d.ts +1 -1
  463. package/dest/p2p/signature_utils.d.ts +1 -1
  464. package/dest/p2p/topic_type.d.ts +1 -1
  465. package/dest/parity/index.d.ts +1 -1
  466. package/dest/parity/parity_base_private_inputs.d.ts +1 -3
  467. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  468. package/dest/parity/parity_public_inputs.d.ts +1 -4
  469. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  470. package/dest/parity/parity_root_private_inputs.d.ts +1 -2
  471. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  472. package/dest/proofs/chonk_proof.d.ts +1 -1
  473. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  474. package/dest/proofs/index.d.ts +1 -1
  475. package/dest/proofs/proof.d.ts +1 -4
  476. package/dest/proofs/proof.d.ts.map +1 -1
  477. package/dest/proofs/proof_data.d.ts +1 -1
  478. package/dest/proofs/proof_data.d.ts.map +1 -1
  479. package/dest/proofs/proving_request_type.d.ts +1 -1
  480. package/dest/proofs/recursive_proof.d.ts +2 -26
  481. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  482. package/dest/rollup/avm_proof_data.d.ts +1 -1
  483. package/dest/rollup/base_rollup_hints.d.ts +1 -34
  484. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  485. package/dest/rollup/block_constant_data.d.ts +1 -12
  486. package/dest/rollup/block_constant_data.d.ts.map +1 -1
  487. package/dest/rollup/block_headers_hash.d.ts +4 -0
  488. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  489. package/dest/rollup/block_headers_hash.js +9 -0
  490. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +1 -4
  491. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  492. package/dest/rollup/block_rollup_public_inputs.d.ts +8 -40
  493. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  494. package/dest/rollup/block_rollup_public_inputs.js +8 -2
  495. package/dest/rollup/block_root_rollup_private_inputs.d.ts +2 -76
  496. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  497. package/dest/rollup/block_root_rollup_private_inputs.js +1 -9
  498. package/dest/rollup/checkpoint_constant_data.d.ts +26 -13
  499. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -1
  500. package/dest/rollup/checkpoint_constant_data.js +27 -3
  501. package/dest/rollup/checkpoint_header.d.ts +16 -14
  502. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  503. package/dest/rollup/checkpoint_header.js +40 -13
  504. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +1 -4
  505. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  506. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +1 -25
  507. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  508. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +5 -29
  509. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  510. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +4 -4
  511. package/dest/rollup/epoch_constant_data.d.ts +1 -16
  512. package/dest/rollup/epoch_constant_data.d.ts.map +1 -1
  513. package/dest/rollup/index.d.ts +2 -1
  514. package/dest/rollup/index.d.ts.map +1 -1
  515. package/dest/rollup/index.js +1 -0
  516. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +1 -1
  517. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  518. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +1 -1
  519. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  520. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +1 -1
  521. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  522. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +1 -1
  523. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  524. package/dest/rollup/root_rollup_private_inputs.d.ts +1 -6
  525. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  526. package/dest/rollup/root_rollup_public_inputs.d.ts +1 -3
  527. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  528. package/dest/rollup/tree_snapshot_diff_hints.d.ts +1 -24
  529. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -1
  530. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +1 -4
  531. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  532. package/dest/rollup/tx_rollup_public_inputs.d.ts +1 -29
  533. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  534. package/dest/schemas/index.d.ts +1 -1
  535. package/dest/schemas/schemas.d.ts +86 -15
  536. package/dest/schemas/schemas.d.ts.map +1 -1
  537. package/dest/schemas/schemas.js +12 -1
  538. package/dest/slashing/empire.d.ts +1 -1
  539. package/dest/slashing/empire.d.ts.map +1 -1
  540. package/dest/slashing/empire.js +5 -4
  541. package/dest/slashing/helpers.d.ts +7 -6
  542. package/dest/slashing/helpers.d.ts.map +1 -1
  543. package/dest/slashing/helpers.js +8 -6
  544. package/dest/slashing/index.d.ts +1 -1
  545. package/dest/slashing/interfaces.d.ts +3 -2
  546. package/dest/slashing/interfaces.d.ts.map +1 -1
  547. package/dest/slashing/serialization.d.ts +1 -1
  548. package/dest/slashing/tally.d.ts +1 -1
  549. package/dest/slashing/types.d.ts +10 -10
  550. package/dest/snapshots/download.d.ts +1 -1
  551. package/dest/snapshots/index.d.ts +1 -1
  552. package/dest/snapshots/types.d.ts +18 -18
  553. package/dest/snapshots/upload.d.ts +1 -1
  554. package/dest/stats/index.d.ts +1 -1
  555. package/dest/stats/stats.d.ts +1 -1
  556. package/dest/tests/factories.d.ts +34 -29
  557. package/dest/tests/factories.d.ts.map +1 -1
  558. package/dest/tests/factories.js +72 -147
  559. package/dest/tests/fixtures.d.ts +1 -1
  560. package/dest/tests/index.d.ts +1 -1
  561. package/dest/tests/jest.d.ts +1 -1
  562. package/dest/tests/mocks.d.ts +54 -23
  563. package/dest/tests/mocks.d.ts.map +1 -1
  564. package/dest/tests/mocks.js +133 -33
  565. package/dest/trees/append_only_tree_snapshot.d.ts +9 -16
  566. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  567. package/dest/trees/append_only_tree_snapshot.js +9 -9
  568. package/dest/trees/database_public_state_source.d.ts +1 -1
  569. package/dest/trees/database_public_state_source.d.ts.map +1 -1
  570. package/dest/trees/index.d.ts +1 -1
  571. package/dest/trees/merkle_tree_id.d.ts +5 -5
  572. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  573. package/dest/trees/nullifier_leaf.d.ts +17 -13
  574. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  575. package/dest/trees/nullifier_leaf.js +24 -0
  576. package/dest/trees/nullifier_membership_witness.d.ts +4 -37
  577. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  578. package/dest/trees/public_data_leaf.d.ts +28 -27
  579. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  580. package/dest/trees/public_data_leaf.js +24 -0
  581. package/dest/trees/public_data_witness.d.ts +11 -45
  582. package/dest/trees/public_data_witness.d.ts.map +1 -1
  583. package/dest/tx/block_header.d.ts +5 -12
  584. package/dest/tx/block_header.d.ts.map +1 -1
  585. package/dest/tx/block_header.js +13 -2
  586. package/dest/tx/call_context.d.ts +6 -18
  587. package/dest/tx/call_context.d.ts.map +1 -1
  588. package/dest/tx/capsule.d.ts +1 -4
  589. package/dest/tx/capsule.d.ts.map +1 -1
  590. package/dest/tx/content_commitment.d.ts +1 -1
  591. package/dest/tx/content_commitment.d.ts.map +1 -1
  592. package/dest/tx/execution_payload.d.ts +37 -0
  593. package/dest/tx/execution_payload.d.ts.map +1 -0
  594. package/dest/tx/execution_payload.js +40 -0
  595. package/dest/tx/function_data.d.ts +4 -6
  596. package/dest/tx/function_data.d.ts.map +1 -1
  597. package/dest/tx/global_variable_builder.d.ts +3 -2
  598. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  599. package/dest/tx/global_variables.d.ts +43 -24
  600. package/dest/tx/global_variables.d.ts.map +1 -1
  601. package/dest/tx/global_variables.js +48 -8
  602. package/dest/tx/hashed_values.d.ts +1 -7
  603. package/dest/tx/hashed_values.d.ts.map +1 -1
  604. package/dest/tx/index.d.ts +2 -1
  605. package/dest/tx/index.d.ts.map +1 -1
  606. package/dest/tx/index.js +1 -0
  607. package/dest/tx/indexed_tx_effect.d.ts +2 -2
  608. package/dest/tx/indexed_tx_effect.js +3 -1
  609. package/dest/tx/offchain_effect.d.ts +1 -1
  610. package/dest/tx/partial_state_reference.d.ts +4 -7
  611. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  612. package/dest/tx/partial_state_reference.js +10 -10
  613. package/dest/tx/private_execution_result.d.ts +14 -49
  614. package/dest/tx/private_execution_result.d.ts.map +1 -1
  615. package/dest/tx/private_execution_result.js +6 -3
  616. package/dest/tx/private_tx_constant_data.d.ts +1 -16
  617. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  618. package/dest/tx/processed_tx.d.ts +1 -1
  619. package/dest/tx/profiling.d.ts +38 -38
  620. package/dest/tx/profiling.d.ts.map +1 -1
  621. package/dest/tx/profiling.js +5 -4
  622. package/dest/tx/protocol_contracts.d.ts +10 -2
  623. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  624. package/dest/tx/protocol_contracts.js +9 -0
  625. package/dest/tx/proven_tx.d.ts +18 -18
  626. package/dest/tx/proven_tx.d.ts.map +1 -1
  627. package/dest/tx/public_call_request_with_calldata.d.ts +9 -7
  628. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  629. package/dest/tx/public_call_request_with_calldata.js +12 -0
  630. package/dest/tx/public_simulation_output.d.ts +3 -1
  631. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  632. package/dest/tx/public_simulation_output.js +8 -1
  633. package/dest/tx/simulated_tx.d.ts +21 -21
  634. package/dest/tx/simulated_tx.d.ts.map +1 -1
  635. package/dest/tx/state_reference.d.ts +10 -12
  636. package/dest/tx/state_reference.d.ts.map +1 -1
  637. package/dest/tx/state_reference.js +9 -9
  638. package/dest/tx/tree_snapshots.d.ts +15 -7
  639. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  640. package/dest/tx/tree_snapshots.js +9 -0
  641. package/dest/tx/tx.d.ts +3 -17
  642. package/dest/tx/tx.d.ts.map +1 -1
  643. package/dest/tx/tx.js +5 -4
  644. package/dest/tx/tx_constant_data.d.ts +1 -1
  645. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  646. package/dest/tx/tx_context.d.ts +1 -2
  647. package/dest/tx/tx_context.d.ts.map +1 -1
  648. package/dest/tx/tx_effect.d.ts +20 -42
  649. package/dest/tx/tx_effect.d.ts.map +1 -1
  650. package/dest/tx/tx_effect.js +54 -59
  651. package/dest/tx/tx_execution_request.d.ts +1 -30
  652. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  653. package/dest/tx/tx_hash.d.ts +1 -2
  654. package/dest/tx/tx_hash.d.ts.map +1 -1
  655. package/dest/tx/tx_receipt.d.ts +1 -7
  656. package/dest/tx/tx_receipt.d.ts.map +1 -1
  657. package/dest/tx/tx_request.d.ts +1 -6
  658. package/dest/tx/tx_request.d.ts.map +1 -1
  659. package/dest/tx/validator/empty_validator.d.ts +1 -1
  660. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  661. package/dest/tx/validator/error_texts.d.ts +1 -1
  662. package/dest/tx/validator/tx_validator.d.ts +5 -5
  663. package/dest/types/index.d.ts +1 -1
  664. package/dest/types/shared.d.ts +1 -4
  665. package/dest/types/shared.d.ts.map +1 -1
  666. package/dest/update-checker/index.d.ts +1 -1
  667. package/dest/update-checker/update-checker.d.ts +2 -3
  668. package/dest/update-checker/update-checker.d.ts.map +1 -1
  669. package/dest/validators/errors.d.ts +6 -7
  670. package/dest/validators/errors.d.ts.map +1 -1
  671. package/dest/validators/errors.js +2 -4
  672. package/dest/validators/index.d.ts +1 -1
  673. package/dest/validators/schemas.d.ts +266 -208
  674. package/dest/validators/schemas.d.ts.map +1 -1
  675. package/dest/validators/schemas.js +7 -7
  676. package/dest/validators/types.d.ts +10 -9
  677. package/dest/validators/types.d.ts.map +1 -1
  678. package/dest/versioning/index.d.ts +1 -1
  679. package/dest/versioning/versioning.d.ts +1 -1
  680. package/dest/versioning/versioning.d.ts.map +1 -1
  681. package/dest/vks/index.d.ts +1 -1
  682. package/dest/vks/verification_key.d.ts +10 -22
  683. package/dest/vks/verification_key.d.ts.map +1 -1
  684. package/dest/vks/verification_key.js +20 -0
  685. package/dest/vks/vk_data.d.ts +1 -7
  686. package/dest/vks/vk_data.d.ts.map +1 -1
  687. package/dest/world-state/index.d.ts +1 -1
  688. package/dest/world-state/world_state_revision.d.ts +34 -2
  689. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  690. package/dest/world-state/world_state_revision.js +24 -1
  691. package/dest/zkpassport/index.d.ts +1 -1
  692. package/dest/zkpassport/index.d.ts.map +1 -1
  693. package/package.json +12 -11
  694. package/src/abi/abi.ts +4 -4
  695. package/src/abi/contract_artifact.ts +3 -3
  696. package/src/avm/avm.ts +562 -6
  697. package/src/avm/avm_accumulated_data.ts +40 -0
  698. package/src/avm/avm_circuit_public_inputs.ts +40 -0
  699. package/src/avm/message_pack.ts +4 -1
  700. package/src/avm/public_data_write.ts +12 -1
  701. package/src/avm/revert_code.ts +29 -9
  702. package/src/aztec-address/index.ts +26 -2
  703. package/src/block/attestation_info.ts +8 -1
  704. package/src/block/body.ts +16 -39
  705. package/src/block/index.ts +1 -0
  706. package/src/block/l2_block.ts +62 -4
  707. package/src/block/l2_block_code_to_purge.ts +4 -2
  708. package/src/block/l2_block_header.ts +19 -5
  709. package/src/block/l2_block_new.ts +171 -0
  710. package/src/block/l2_block_source.ts +9 -8
  711. package/src/block/proposal/attestations_and_signers.ts +20 -1
  712. package/src/block/published_l2_block.ts +14 -31
  713. package/src/block/validate_block_result.ts +9 -7
  714. package/src/checkpoint/checkpoint.ts +88 -0
  715. package/src/checkpoint/index.ts +2 -1
  716. package/src/checkpoint/published_checkpoint.ts +91 -0
  717. package/src/contract/contract_deployment_data.ts +125 -0
  718. package/src/contract/index.ts +1 -0
  719. package/src/contract/private_function_membership_proof.ts +1 -1
  720. package/src/epoch-helpers/index.ts +28 -21
  721. package/src/file-store/http.ts +6 -3
  722. package/src/file-store/s3.ts +3 -7
  723. package/src/gas/gas.ts +14 -0
  724. package/src/gas/gas_fees.ts +14 -0
  725. package/src/gas/gas_settings.ts +19 -0
  726. package/src/gas/gas_used.ts +22 -1
  727. package/src/hash/hash.ts +13 -2
  728. package/src/interfaces/archiver.ts +10 -5
  729. package/src/interfaces/aztec-node.ts +4 -3
  730. package/src/interfaces/configs.ts +6 -0
  731. package/src/interfaces/epoch-prover.ts +3 -4
  732. package/src/interfaces/merkle_tree_operations.ts +2 -2
  733. package/src/interfaces/p2p.ts +4 -2
  734. package/src/interfaces/proving-job.ts +14 -5
  735. package/src/interfaces/validator.ts +5 -2
  736. package/src/kernel/hints/build_transient_data_hints.ts +2 -2
  737. package/src/kernel/hints/private_kernel_reset_hints.ts +0 -8
  738. package/src/kernel/private_circuit_public_inputs.ts +29 -9
  739. package/src/kernel/private_kernel_circuit_public_inputs.ts +7 -0
  740. package/src/kernel/private_kernel_data.ts +0 -2
  741. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +6 -0
  742. package/src/kernel/private_to_avm_accumulated_data.ts +35 -0
  743. package/src/kernel/private_validation_requests.ts +1 -13
  744. package/src/kernel/public_call_request.ts +27 -0
  745. package/src/keys/public_keys.ts +19 -0
  746. package/src/logs/contract_class_log.ts +32 -0
  747. package/src/logs/debug_log.ts +20 -1
  748. package/src/logs/private_log.ts +19 -3
  749. package/src/logs/public_log.ts +14 -0
  750. package/src/messaging/in_hash.ts +10 -0
  751. package/src/messaging/index.ts +2 -0
  752. package/src/messaging/l2_to_l1_membership.ts +2 -2
  753. package/src/messaging/l2_to_l1_message.ts +25 -0
  754. package/src/messaging/out_hash.ts +36 -0
  755. package/src/noir/index.ts +6 -6
  756. package/src/note/index.ts +1 -1
  757. package/src/note/note_dao.ts +151 -0
  758. package/src/p2p/block_attestation.ts +2 -1
  759. package/src/p2p/block_proposal.ts +3 -2
  760. package/src/p2p/consensus_payload.ts +16 -26
  761. package/src/p2p/gossipable.ts +17 -8
  762. package/src/rollup/block_headers_hash.ts +12 -0
  763. package/src/rollup/block_rollup_public_inputs.ts +8 -0
  764. package/src/rollup/block_root_rollup_private_inputs.ts +0 -9
  765. package/src/rollup/checkpoint_constant_data.ts +43 -4
  766. package/src/rollup/checkpoint_header.ts +46 -22
  767. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +5 -5
  768. package/src/rollup/index.ts +1 -0
  769. package/src/schemas/schemas.ts +18 -0
  770. package/src/slashing/empire.ts +6 -4
  771. package/src/slashing/helpers.ts +17 -12
  772. package/src/slashing/interfaces.ts +3 -1
  773. package/src/tests/factories.ts +211 -227
  774. package/src/tests/mocks.ts +228 -50
  775. package/src/trees/append_only_tree_snapshot.ts +11 -12
  776. package/src/trees/nullifier_leaf.ts +32 -0
  777. package/src/trees/public_data_leaf.ts +32 -0
  778. package/src/tx/block_header.ts +16 -3
  779. package/src/tx/execution_payload.ts +60 -0
  780. package/src/tx/global_variable_builder.ts +2 -1
  781. package/src/tx/global_variables.ts +63 -9
  782. package/src/tx/index.ts +1 -0
  783. package/src/tx/indexed_tx_effect.ts +1 -1
  784. package/src/tx/partial_state_reference.ts +9 -17
  785. package/src/tx/private_execution_result.ts +5 -2
  786. package/src/tx/profiling.ts +4 -6
  787. package/src/tx/protocol_contracts.ts +16 -0
  788. package/src/tx/public_call_request_with_calldata.ts +17 -0
  789. package/src/tx/public_simulation_output.ts +18 -1
  790. package/src/tx/state_reference.ts +9 -15
  791. package/src/tx/tree_snapshots.ts +16 -0
  792. package/src/tx/tx.ts +5 -5
  793. package/src/tx/tx_effect.ts +84 -90
  794. package/src/validators/errors.ts +3 -4
  795. package/src/validators/schemas.ts +7 -7
  796. package/src/validators/types.ts +9 -8
  797. package/src/vks/verification_key.ts +25 -0
  798. package/src/world-state/world_state_revision.ts +47 -5
  799. package/dest/checkpoint/checkpoint_body.d.ts +0 -4
  800. package/dest/checkpoint/checkpoint_body.d.ts.map +0 -1
  801. package/dest/checkpoint/checkpoint_body.js +0 -9
  802. package/dest/note/unique_note.d.ts +0 -43
  803. package/dest/note/unique_note.d.ts.map +0 -1
  804. package/dest/note/unique_note.js +0 -67
  805. package/src/checkpoint/checkpoint_body.ts +0 -10
  806. package/src/note/unique_note.ts +0 -88
package/dest/avm/avm.js CHANGED
@@ -1,29 +1,39 @@
1
+ import { DEFAULT_MAX_DEBUG_LOG_MEMORY_READS } from '@aztec/constants';
2
+ import { Fr } from '@aztec/foundation/fields';
1
3
  import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
2
- import { schemas } from '@aztec/foundation/schemas';
3
4
  import { z } from 'zod';
4
5
  import { AztecAddress } from '../aztec-address/index.js';
6
+ import { AllContractDeploymentData, ContractDeploymentData } from '../contract/index.js';
7
+ import { SimulationError } from '../errors/simulation_error.js';
5
8
  import { computeEffectiveGasFees } from '../fees/transaction_fee.js';
6
9
  import { Gas } from '../gas/gas.js';
7
10
  import { GasFees } from '../gas/gas_fees.js';
8
11
  import { GasSettings } from '../gas/gas_settings.js';
12
+ import { GasUsed } from '../gas/gas_used.js';
9
13
  import { PublicKeys } from '../keys/public_keys.js';
14
+ import { DebugLog } from '../logs/debug_log.js';
10
15
  import { ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
16
+ import { NullishToUndefined, schemas } from '../schemas/schemas.js';
11
17
  import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
12
18
  import { MerkleTreeId } from '../trees/merkle_tree_id.js';
13
- import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
14
- import { PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
15
- import { GlobalVariables, ProtocolContracts, PublicCallRequestWithCalldata, TreeSnapshots } from '../tx/index.js';
19
+ import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
20
+ import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
21
+ import { GlobalVariables, NestedProcessReturnValues, ProtocolContracts, PublicCallRequestWithCalldata, TreeSnapshots } from '../tx/index.js';
22
+ import { WorldStateRevision } from '../world-state/world_state_revision.js';
16
23
  import { AvmCircuitPublicInputs } from './avm_circuit_public_inputs.js';
17
24
  import { serializeWithMessagePack } from './message_pack.js';
25
+ import { RevertCode } from './revert_code.js';
18
26
  ////////////////////////////////////////////////////////////////////////////
19
27
  // Hints (contracts)
20
28
  ////////////////////////////////////////////////////////////////////////////
21
29
  export class AvmContractClassHint {
30
+ hintKey;
22
31
  classId;
23
32
  artifactHash;
24
33
  privateFunctionsRoot;
25
34
  packedBytecode;
26
- constructor(classId, artifactHash, privateFunctionsRoot, packedBytecode){
35
+ constructor(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode){
36
+ this.hintKey = hintKey;
27
37
  this.classId = classId;
28
38
  this.artifactHash = artifactHash;
29
39
  this.privateFunctionsRoot = privateFunctionsRoot;
@@ -31,28 +41,57 @@ export class AvmContractClassHint {
31
41
  }
32
42
  static get schema() {
33
43
  return z.object({
44
+ hintKey: z.number().int().nonnegative(),
34
45
  classId: schemas.Fr,
35
46
  artifactHash: schemas.Fr,
36
47
  privateFunctionsRoot: schemas.Fr,
37
48
  packedBytecode: schemas.Buffer
38
- }).transform(({ classId, artifactHash, privateFunctionsRoot, packedBytecode })=>new AvmContractClassHint(classId, artifactHash, privateFunctionsRoot, packedBytecode));
49
+ }).transform(({ hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode })=>new AvmContractClassHint(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode));
50
+ }
51
+ /**
52
+ * Creates an AvmContractClassHint from a plain object without Zod validation.
53
+ * This method is optimized for performance and skips validation, making it suitable
54
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
55
+ * @param obj - Plain object containing AvmContractClassHint fields
56
+ * @returns An AvmContractClassHint instance
57
+ */ static fromPlainObject(obj) {
58
+ if (obj instanceof AvmContractClassHint) {
59
+ return obj;
60
+ }
61
+ return new AvmContractClassHint(obj.hintKey, Fr.fromPlainObject(obj.classId), Fr.fromPlainObject(obj.artifactHash), Fr.fromPlainObject(obj.privateFunctionsRoot), obj.packedBytecode instanceof Buffer ? obj.packedBytecode : Buffer.from(obj.packedBytecode));
39
62
  }
40
63
  }
41
64
  export class AvmBytecodeCommitmentHint {
65
+ hintKey;
42
66
  classId;
43
67
  commitment;
44
- constructor(classId, commitment){
68
+ constructor(hintKey, classId, commitment){
69
+ this.hintKey = hintKey;
45
70
  this.classId = classId;
46
71
  this.commitment = commitment;
47
72
  }
48
73
  static get schema() {
49
74
  return z.object({
75
+ hintKey: z.number().int().nonnegative(),
50
76
  classId: schemas.Fr,
51
77
  commitment: schemas.Fr
52
- }).transform(({ classId, commitment })=>new AvmBytecodeCommitmentHint(classId, commitment));
78
+ }).transform(({ hintKey, classId, commitment })=>new AvmBytecodeCommitmentHint(hintKey, classId, commitment));
79
+ }
80
+ /**
81
+ * Creates an AvmBytecodeCommitmentHint from a plain object without Zod validation.
82
+ * This method is optimized for performance and skips validation, making it suitable
83
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
84
+ * @param obj - Plain object containing AvmBytecodeCommitmentHint fields
85
+ * @returns An AvmBytecodeCommitmentHint instance
86
+ */ static fromPlainObject(obj) {
87
+ if (obj instanceof AvmBytecodeCommitmentHint) {
88
+ return obj;
89
+ }
90
+ return new AvmBytecodeCommitmentHint(obj.hintKey, Fr.fromPlainObject(obj.classId), Fr.fromPlainObject(obj.commitment));
53
91
  }
54
92
  }
55
93
  export class AvmContractInstanceHint {
94
+ hintKey;
56
95
  address;
57
96
  salt;
58
97
  deployer;
@@ -60,7 +99,8 @@ export class AvmContractInstanceHint {
60
99
  originalContractClassId;
61
100
  initializationHash;
62
101
  publicKeys;
63
- constructor(address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys){
102
+ constructor(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys){
103
+ this.hintKey = hintKey;
64
104
  this.address = address;
65
105
  this.salt = salt;
66
106
  this.deployer = deployer;
@@ -71,6 +111,7 @@ export class AvmContractInstanceHint {
71
111
  }
72
112
  static get schema() {
73
113
  return z.object({
114
+ hintKey: z.number().int().nonnegative(),
74
115
  address: AztecAddress.schema,
75
116
  salt: schemas.Fr,
76
117
  deployer: AztecAddress.schema,
@@ -78,7 +119,48 @@ export class AvmContractInstanceHint {
78
119
  originalContractClassId: schemas.Fr,
79
120
  initializationHash: schemas.Fr,
80
121
  publicKeys: PublicKeys.schema
81
- }).transform(({ address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
122
+ }).transform(({ hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
123
+ }
124
+ /**
125
+ * Creates an AvmContractInstanceHint from a plain object without Zod validation.
126
+ * This method is optimized for performance and skips validation, making it suitable
127
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
128
+ * @param obj - Plain object containing AvmContractInstanceHint fields
129
+ * @returns An AvmContractInstanceHint instance
130
+ */ static fromPlainObject(obj) {
131
+ if (obj instanceof AvmContractInstanceHint) {
132
+ return obj;
133
+ }
134
+ return new AvmContractInstanceHint(obj.hintKey, AztecAddress.fromPlainObject(obj.address), Fr.fromPlainObject(obj.salt), AztecAddress.fromPlainObject(obj.deployer), Fr.fromPlainObject(obj.currentContractClassId), Fr.fromPlainObject(obj.originalContractClassId), Fr.fromPlainObject(obj.initializationHash), PublicKeys.fromPlainObject(obj.publicKeys));
135
+ }
136
+ }
137
+ export class AvmDebugFunctionNameHint {
138
+ address;
139
+ selector;
140
+ name;
141
+ constructor(address, selector, name){
142
+ this.address = address;
143
+ this.selector = selector;
144
+ this.name = name;
145
+ }
146
+ static get schema() {
147
+ return z.object({
148
+ address: AztecAddress.schema,
149
+ selector: schemas.Fr,
150
+ name: z.string()
151
+ }).transform(({ address, selector, name })=>new AvmDebugFunctionNameHint(address, selector, name));
152
+ }
153
+ /**
154
+ * Creates an AvmDebugFunctionNameHint from a plain object without Zod validation.
155
+ * This method is optimized for performance and skips validation, making it suitable
156
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
157
+ * @param obj - Plain object containing AvmDebugFunctionNameHint fields
158
+ * @returns An AvmDebugFunctionNameHint instance
159
+ */ static fromPlainObject(obj) {
160
+ if (obj instanceof AvmDebugFunctionNameHint) {
161
+ return obj;
162
+ }
163
+ return new AvmDebugFunctionNameHint(AztecAddress.fromPlainObject(obj.address), Fr.fromPlainObject(obj.selector), obj.name);
82
164
  }
83
165
  }
84
166
  ////////////////////////////////////////////////////////////////////////////
@@ -106,6 +188,18 @@ export class AvmGetSiblingPathHint {
106
188
  path: schemas.Fr.array()
107
189
  }).transform(({ hintKey, treeId, index, path })=>new AvmGetSiblingPathHint(hintKey, treeId, index, path));
108
190
  }
191
+ /**
192
+ * Creates an AvmGetSiblingPathHint from a plain object without Zod validation.
193
+ * This method is optimized for performance and skips validation, making it suitable
194
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
195
+ * @param obj - Plain object containing AvmGetSiblingPathHint fields
196
+ * @returns An AvmGetSiblingPathHint instance
197
+ */ static fromPlainObject(obj) {
198
+ if (obj instanceof AvmGetSiblingPathHint) {
199
+ return obj;
200
+ }
201
+ return new AvmGetSiblingPathHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), obj.path.map((p)=>Fr.fromPlainObject(p)));
202
+ }
109
203
  }
110
204
  // Hint for MerkleTreeDB.getPreviousValueIndex.
111
205
  export class AvmGetPreviousValueIndexHint {
@@ -132,6 +226,18 @@ export class AvmGetPreviousValueIndexHint {
132
226
  alreadyPresent: z.boolean()
133
227
  }).transform(({ hintKey, treeId, value, index, alreadyPresent })=>new AvmGetPreviousValueIndexHint(hintKey, treeId, value, index, alreadyPresent));
134
228
  }
229
+ /**
230
+ * Creates an AvmGetPreviousValueIndexHint from a plain object without Zod validation.
231
+ * This method is optimized for performance and skips validation, making it suitable
232
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
233
+ * @param obj - Plain object containing AvmGetPreviousValueIndexHint fields
234
+ * @returns An AvmGetPreviousValueIndexHint instance
235
+ */ static fromPlainObject(obj) {
236
+ if (obj instanceof AvmGetPreviousValueIndexHint) {
237
+ return obj;
238
+ }
239
+ return new AvmGetPreviousValueIndexHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, Fr.fromPlainObject(obj.value), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), obj.alreadyPresent);
240
+ }
135
241
  }
136
242
  // Hint for MerkleTreeDB.getLeafPreimage.
137
243
  // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
@@ -155,6 +261,18 @@ function AvmGetLeafPreimageHintFactory(klass) {
155
261
  leafPreimage: klass.schema
156
262
  }).transform(({ hintKey, index, leafPreimage })=>new this(hintKey, index, leafPreimage));
157
263
  }
264
+ /**
265
+ * Creates an instance from a plain object without Zod validation.
266
+ * This method is optimized for performance and skips validation, making it suitable
267
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
268
+ * @param obj - Plain object containing hint fields
269
+ * @returns An instance
270
+ */ static fromPlainObject(obj) {
271
+ if (obj instanceof this) {
272
+ return obj;
273
+ }
274
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), klass.fromPlainObject(obj.leafPreimage));
275
+ }
158
276
  };
159
277
  }
160
278
  // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
@@ -185,6 +303,18 @@ export class AvmGetLeafValueHint {
185
303
  value: schemas.Fr
186
304
  }).transform(({ hintKey, treeId, index, value })=>new AvmGetLeafValueHint(hintKey, treeId, index, value));
187
305
  }
306
+ /**
307
+ * Creates an AvmGetLeafValueHint from a plain object without Zod validation.
308
+ * This method is optimized for performance and skips validation, making it suitable
309
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
310
+ * @param obj - Plain object containing AvmGetLeafValueHint fields
311
+ * @returns An AvmGetLeafValueHint instance
312
+ */ static fromPlainObject(obj) {
313
+ if (obj instanceof AvmGetLeafValueHint) {
314
+ return obj;
315
+ }
316
+ return new AvmGetLeafValueHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), Fr.fromPlainObject(obj.value));
317
+ }
188
318
  }
189
319
  // Hint for MerkleTreeDB.sequentialInsert.
190
320
  // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
@@ -225,6 +355,28 @@ function AvmSequentialInsertHintFactory(klass) {
225
355
  })
226
356
  }).transform(({ hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData })=>new this(hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData));
227
357
  }
358
+ /**
359
+ * Creates an instance from a plain object without Zod validation.
360
+ * This method is optimized for performance and skips validation, making it suitable
361
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
362
+ * @param obj - Plain object containing hint fields
363
+ * @returns An instance
364
+ */ static fromPlainObject(obj) {
365
+ if (obj instanceof this) {
366
+ return obj;
367
+ }
368
+ // Determine the leaf class based on the klass parameter
369
+ const LeafClass = klass === PublicDataTreeLeafPreimage ? PublicDataTreeLeaf : NullifierLeaf;
370
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, LeafClass.fromPlainObject(obj.leaf), {
371
+ leaf: klass.fromPlainObject(obj.lowLeavesWitnessData.leaf),
372
+ index: typeof obj.lowLeavesWitnessData.index === 'bigint' ? obj.lowLeavesWitnessData.index : BigInt(obj.lowLeavesWitnessData.index),
373
+ path: obj.lowLeavesWitnessData.path.map((p)=>Fr.fromPlainObject(p))
374
+ }, {
375
+ leaf: klass.fromPlainObject(obj.insertionWitnessData.leaf),
376
+ index: typeof obj.insertionWitnessData.index === 'bigint' ? obj.insertionWitnessData.index : BigInt(obj.insertionWitnessData.index),
377
+ path: obj.insertionWitnessData.path.map((p)=>Fr.fromPlainObject(p))
378
+ });
379
+ }
228
380
  };
229
381
  }
230
382
  // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
@@ -254,6 +406,18 @@ export class AvmAppendLeavesHint {
254
406
  leaves: schemas.Fr.array()
255
407
  }).transform(({ hintKey, stateAfter, treeId, leaves })=>new AvmAppendLeavesHint(hintKey, stateAfter, treeId, leaves));
256
408
  }
409
+ /**
410
+ * Creates an AvmAppendLeavesHint from a plain object without Zod validation.
411
+ * This method is optimized for performance and skips validation, making it suitable
412
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
413
+ * @param obj - Plain object containing AvmAppendLeavesHint fields
414
+ * @returns An AvmAppendLeavesHint instance
415
+ */ static fromPlainObject(obj) {
416
+ if (obj instanceof AvmAppendLeavesHint) {
417
+ return obj;
418
+ }
419
+ return new AvmAppendLeavesHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, obj.leaves.map((l)=>Fr.fromPlainObject(l)));
420
+ }
257
421
  }
258
422
  // Hint for checkpoint actions that don't change the state.
259
423
  class AvmCheckpointActionNoStateChangeHint {
@@ -274,6 +438,18 @@ class AvmCheckpointActionNoStateChangeHint {
274
438
  newCheckpointId: z.number().int().nonnegative()
275
439
  }).transform(({ actionCounter, oldCheckpointId, newCheckpointId })=>new this(actionCounter, oldCheckpointId, newCheckpointId));
276
440
  }
441
+ /**
442
+ * Creates an instance from a plain object without Zod validation.
443
+ * This method is optimized for performance and skips validation, making it suitable
444
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
445
+ * @param obj - Plain object containing hint fields
446
+ * @returns An instance
447
+ */ static fromPlainObject(obj) {
448
+ if (obj instanceof this) {
449
+ return obj;
450
+ }
451
+ return new this(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId);
452
+ }
277
453
  }
278
454
  // Hint for MerkleTreeDB.createCheckpoint.
279
455
  export class AvmCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
@@ -311,6 +487,24 @@ export class AvmRevertCheckpointHint {
311
487
  stateAfter: TreeSnapshots.schema
312
488
  }).transform(({ actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter })=>new AvmRevertCheckpointHint(actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter));
313
489
  }
490
+ /**
491
+ * Creates an AvmRevertCheckpointHint from a plain object without Zod validation.
492
+ * This method is optimized for performance and skips validation, making it suitable
493
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
494
+ * @param obj - Plain object containing AvmRevertCheckpointHint fields
495
+ * @returns An AvmRevertCheckpointHint instance
496
+ */ static fromPlainObject(obj) {
497
+ if (obj instanceof AvmRevertCheckpointHint) {
498
+ return obj;
499
+ }
500
+ return new AvmRevertCheckpointHint(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId, TreeSnapshots.fromPlainObject(obj.stateBefore), TreeSnapshots.fromPlainObject(obj.stateAfter));
501
+ }
502
+ }
503
+ export class AvmContractDbCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
504
+ }
505
+ export class AvmContractDbCommitCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
506
+ }
507
+ export class AvmContractDbRevertCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
314
508
  }
315
509
  ////////////////////////////////////////////////////////////////////////////
316
510
  // Hints (other)
@@ -319,6 +513,8 @@ export class AvmTxHint {
319
513
  hash;
320
514
  gasSettings;
321
515
  effectiveGasFees;
516
+ nonRevertibleContractDeploymentData;
517
+ revertibleContractDeploymentData;
322
518
  nonRevertibleAccumulatedData;
323
519
  revertibleAccumulatedData;
324
520
  setupEnqueuedCalls;
@@ -326,12 +522,14 @@ export class AvmTxHint {
326
522
  teardownEnqueuedCall;
327
523
  gasUsedByPrivate;
328
524
  feePayer;
329
- constructor(hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, // We need this to be null and not undefined because that's what
525
+ constructor(hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, // We need this to be null and not undefined because that's what
330
526
  // MessagePack expects for an std::optional.
331
527
  teardownEnqueuedCall, gasUsedByPrivate, feePayer){
332
528
  this.hash = hash;
333
529
  this.gasSettings = gasSettings;
334
530
  this.effectiveGasFees = effectiveGasFees;
531
+ this.nonRevertibleContractDeploymentData = nonRevertibleContractDeploymentData;
532
+ this.revertibleContractDeploymentData = revertibleContractDeploymentData;
335
533
  this.nonRevertibleAccumulatedData = nonRevertibleAccumulatedData;
336
534
  this.revertibleAccumulatedData = revertibleAccumulatedData;
337
535
  this.setupEnqueuedCalls = setupEnqueuedCalls;
@@ -346,9 +544,10 @@ export class AvmTxHint {
346
544
  const teardownCallRequest = tx.getTeardownPublicCallRequestWithCalldata();
347
545
  const gasSettings = tx.data.constants.txContext.gasSettings;
348
546
  const effectiveGasFees = computeEffectiveGasFees(gasFees, gasSettings);
547
+ const allContractDeploymentData = AllContractDeploymentData.fromTx(tx);
349
548
  // For informational purposes. Assumed quick because it should be cached.
350
549
  const txHash = tx.getTxHash();
351
- return new AvmTxHint(txHash.hash.toString(), gasSettings, effectiveGasFees, {
550
+ return new AvmTxHint(txHash.hash.toString(), gasSettings, effectiveGasFees, allContractDeploymentData.getNonRevertibleContractDeploymentData(), allContractDeploymentData.getRevertibleContractDeploymentData(), {
352
551
  noteHashes: tx.data.forPublic.nonRevertibleAccumulatedData.noteHashes.filter((x)=>!x.isZero()),
353
552
  nullifiers: tx.data.forPublic.nonRevertibleAccumulatedData.nullifiers.filter((x)=>!x.isZero()),
354
553
  l2ToL1Messages: tx.data.forPublic.nonRevertibleAccumulatedData.l2ToL1Msgs.filter((x)=>!x.isEmpty())
@@ -359,7 +558,7 @@ export class AvmTxHint {
359
558
  }, setupCallRequests, appLogicCallRequests, teardownCallRequest ?? null, tx.data.gasUsed, tx.data.feePayer);
360
559
  }
361
560
  static empty() {
362
- return new AvmTxHint('', GasSettings.empty(), GasFees.empty(), {
561
+ return new AvmTxHint('', GasSettings.empty(), GasFees.empty(), ContractDeploymentData.empty(), ContractDeploymentData.empty(), {
363
562
  noteHashes: [],
364
563
  nullifiers: [],
365
564
  l2ToL1Messages: []
@@ -369,11 +568,33 @@ export class AvmTxHint {
369
568
  l2ToL1Messages: []
370
569
  }, [], [], null, Gas.empty(), AztecAddress.zero());
371
570
  }
571
+ /**
572
+ * Creates an AvmTxHint from a plain object without Zod validation.
573
+ * This method is optimized for performance and skips validation, making it suitable
574
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
575
+ * @param obj - Plain object containing AvmTxHint fields
576
+ * @returns An AvmTxHint instance
577
+ */ static fromPlainObject(obj) {
578
+ if (obj instanceof AvmTxHint) {
579
+ return obj;
580
+ }
581
+ return new AvmTxHint(obj.hash, GasSettings.fromPlainObject(obj.gasSettings), GasFees.fromPlainObject(obj.effectiveGasFees), ContractDeploymentData.fromPlainObject(obj.nonRevertibleContractDeploymentData), ContractDeploymentData.fromPlainObject(obj.revertibleContractDeploymentData), {
582
+ noteHashes: obj.nonRevertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
583
+ nullifiers: obj.nonRevertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
584
+ l2ToL1Messages: obj.nonRevertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
585
+ }, {
586
+ noteHashes: obj.revertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
587
+ nullifiers: obj.revertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
588
+ l2ToL1Messages: obj.revertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
589
+ }, obj.setupEnqueuedCalls.map((c)=>PublicCallRequestWithCalldata.fromPlainObject(c)), obj.appLogicEnqueuedCalls.map((c)=>PublicCallRequestWithCalldata.fromPlainObject(c)), obj.teardownEnqueuedCall ? PublicCallRequestWithCalldata.fromPlainObject(obj.teardownEnqueuedCall) : null, Gas.fromPlainObject(obj.gasUsedByPrivate), AztecAddress.fromPlainObject(obj.feePayer));
590
+ }
372
591
  static get schema() {
373
592
  return z.object({
374
593
  hash: z.string(),
375
594
  gasSettings: GasSettings.schema,
376
595
  effectiveGasFees: GasFees.schema,
596
+ nonRevertibleContractDeploymentData: ContractDeploymentData.schema,
597
+ revertibleContractDeploymentData: ContractDeploymentData.schema,
377
598
  nonRevertibleAccumulatedData: z.object({
378
599
  noteHashes: schemas.Fr.array(),
379
600
  nullifiers: schemas.Fr.array(),
@@ -389,7 +610,7 @@ export class AvmTxHint {
389
610
  teardownEnqueuedCall: PublicCallRequestWithCalldata.schema.nullable(),
390
611
  gasUsedByPrivate: Gas.schema,
391
612
  feePayer: AztecAddress.schema
392
- }).transform(({ hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer })=>new AvmTxHint(hash, gasSettings, effectiveGasFees, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer));
613
+ }).transform(({ hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer })=>new AvmTxHint(hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, teardownEnqueuedCall, gasUsedByPrivate, feePayer));
393
614
  }
394
615
  }
395
616
  export class AvmExecutionHints {
@@ -399,6 +620,10 @@ export class AvmExecutionHints {
399
620
  contractInstances;
400
621
  contractClasses;
401
622
  bytecodeCommitments;
623
+ debugFunctionNames;
624
+ contractDbCreateCheckpointHints;
625
+ contractDbCommitCheckpointHints;
626
+ contractDbRevertCheckpointHints;
402
627
  startingTreeRoots;
403
628
  getSiblingPathHints;
404
629
  getPreviousValueIndexHints;
@@ -413,7 +638,7 @@ export class AvmExecutionHints {
413
638
  revertCheckpointHints;
414
639
  constructor(globalVariables, tx, // Protocol contracts.
415
640
  protocolContracts, // Contract hints.
416
- contractInstances = [], contractClasses = [], bytecodeCommitments = [], // Merkle DB hints.
641
+ contractInstances = [], contractClasses = [], bytecodeCommitments = [], debugFunctionNames = [], contractDbCreateCheckpointHints = [], contractDbCommitCheckpointHints = [], contractDbRevertCheckpointHints = [], // Merkle DB hints.
417
642
  startingTreeRoots = TreeSnapshots.empty(), getSiblingPathHints = [], getPreviousValueIndexHints = [], getLeafPreimageHintsPublicDataTree = [], getLeafPreimageHintsNullifierTree = [], getLeafValueHints = [], sequentialInsertHintsPublicDataTree = [], sequentialInsertHintsNullifierTree = [], appendLeavesHints = [], createCheckpointHints = [], commitCheckpointHints = [], revertCheckpointHints = []){
418
643
  this.globalVariables = globalVariables;
419
644
  this.tx = tx;
@@ -421,6 +646,10 @@ export class AvmExecutionHints {
421
646
  this.contractInstances = contractInstances;
422
647
  this.contractClasses = contractClasses;
423
648
  this.bytecodeCommitments = bytecodeCommitments;
649
+ this.debugFunctionNames = debugFunctionNames;
650
+ this.contractDbCreateCheckpointHints = contractDbCreateCheckpointHints;
651
+ this.contractDbCommitCheckpointHints = contractDbCommitCheckpointHints;
652
+ this.contractDbRevertCheckpointHints = contractDbRevertCheckpointHints;
424
653
  this.startingTreeRoots = startingTreeRoots;
425
654
  this.getSiblingPathHints = getSiblingPathHints;
426
655
  this.getPreviousValueIndexHints = getPreviousValueIndexHints;
@@ -434,6 +663,18 @@ export class AvmExecutionHints {
434
663
  this.commitCheckpointHints = commitCheckpointHints;
435
664
  this.revertCheckpointHints = revertCheckpointHints;
436
665
  }
666
+ /**
667
+ * Creates an AvmExecutionHints from a plain object without Zod validation.
668
+ * This method is optimized for performance and skips validation, making it suitable
669
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
670
+ * @param obj - Plain object containing AvmExecutionHints fields
671
+ * @returns An AvmExecutionHints instance
672
+ */ static fromPlainObject(obj) {
673
+ if (obj instanceof AvmExecutionHints) {
674
+ return obj;
675
+ }
676
+ return new AvmExecutionHints(GlobalVariables.fromPlainObject(obj.globalVariables), AvmTxHint.fromPlainObject(obj.tx), ProtocolContracts.fromPlainObject(obj.protocolContracts), obj.contractInstances?.map((i)=>AvmContractInstanceHint.fromPlainObject(i)) || [], obj.contractClasses?.map((c)=>AvmContractClassHint.fromPlainObject(c)) || [], obj.bytecodeCommitments?.map((b)=>AvmBytecodeCommitmentHint.fromPlainObject(b)) || [], obj.debugFunctionNames?.map((d)=>AvmDebugFunctionNameHint.fromPlainObject(d)) || [], obj.contractDbCreateCheckpointHints?.map((h)=>AvmContractDbCreateCheckpointHint.fromPlainObject(h)) || [], obj.contractDbCommitCheckpointHints?.map((h)=>AvmContractDbCommitCheckpointHint.fromPlainObject(h)) || [], obj.contractDbRevertCheckpointHints?.map((h)=>AvmContractDbRevertCheckpointHint.fromPlainObject(h)) || [], obj.startingTreeRoots ? TreeSnapshots.fromPlainObject(obj.startingTreeRoots) : TreeSnapshots.empty(), obj.getSiblingPathHints?.map((h)=>AvmGetSiblingPathHint.fromPlainObject(h)) || [], obj.getPreviousValueIndexHints?.map((h)=>AvmGetPreviousValueIndexHint.fromPlainObject(h)) || [], obj.getLeafPreimageHintsPublicDataTree?.map((h)=>AvmGetLeafPreimageHintPublicDataTree.fromPlainObject(h)) || [], obj.getLeafPreimageHintsNullifierTree?.map((h)=>AvmGetLeafPreimageHintNullifierTree.fromPlainObject(h)) || [], obj.getLeafValueHints?.map((h)=>AvmGetLeafValueHint.fromPlainObject(h)) || [], obj.sequentialInsertHintsPublicDataTree?.map((h)=>AvmSequentialInsertHintPublicDataTree.fromPlainObject(h)) || [], obj.sequentialInsertHintsNullifierTree?.map((h)=>AvmSequentialInsertHintNullifierTree.fromPlainObject(h)) || [], obj.appendLeavesHints?.map((h)=>AvmAppendLeavesHint.fromPlainObject(h)) || [], obj.createCheckpointHints?.map((h)=>AvmCreateCheckpointHint.fromPlainObject(h)) || [], obj.commitCheckpointHints?.map((h)=>AvmCommitCheckpointHint.fromPlainObject(h)) || [], obj.revertCheckpointHints?.map((h)=>AvmRevertCheckpointHint.fromPlainObject(h)) || []);
677
+ }
437
678
  static empty() {
438
679
  return new AvmExecutionHints(GlobalVariables.empty(), AvmTxHint.empty(), ProtocolContracts.empty());
439
680
  }
@@ -445,6 +686,10 @@ export class AvmExecutionHints {
445
686
  contractInstances: AvmContractInstanceHint.schema.array(),
446
687
  contractClasses: AvmContractClassHint.schema.array(),
447
688
  bytecodeCommitments: AvmBytecodeCommitmentHint.schema.array(),
689
+ debugFunctionNames: AvmDebugFunctionNameHint.schema.array(),
690
+ contractDbCreateCheckpointHints: AvmContractDbCreateCheckpointHint.schema.array(),
691
+ contractDbCommitCheckpointHints: AvmContractDbCommitCheckpointHint.schema.array(),
692
+ contractDbRevertCheckpointHints: AvmContractDbRevertCheckpointHint.schema.array(),
448
693
  startingTreeRoots: TreeSnapshots.schema,
449
694
  getSiblingPathHints: AvmGetSiblingPathHint.schema.array(),
450
695
  getPreviousValueIndexHints: AvmGetPreviousValueIndexHint.schema.array(),
@@ -457,7 +702,7 @@ export class AvmExecutionHints {
457
702
  createCheckpointHints: AvmCreateCheckpointHint.schema.array(),
458
703
  commitCheckpointHints: AvmCommitCheckpointHint.schema.array(),
459
704
  revertCheckpointHints: AvmRevertCheckpointHint.schema.array()
460
- }).transform(({ globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints })=>new AvmExecutionHints(globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints));
705
+ }).transform(({ globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, debugFunctionNames, contractDbCreateCheckpointHints, contractDbCommitCheckpointHints, contractDbRevertCheckpointHints, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints })=>new AvmExecutionHints(globalVariables, tx, protocolContracts, contractInstances, contractClasses, bytecodeCommitments, debugFunctionNames, contractDbCreateCheckpointHints, contractDbCommitCheckpointHints, contractDbRevertCheckpointHints, startingTreeRoots, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree, appendLeavesHints, createCheckpointHints, commitCheckpointHints, revertCheckpointHints));
461
706
  }
462
707
  }
463
708
  export class AvmCircuitInputs {
@@ -470,6 +715,9 @@ export class AvmCircuitInputs {
470
715
  static empty() {
471
716
  return new AvmCircuitInputs(AvmExecutionHints.empty(), AvmCircuitPublicInputs.empty());
472
717
  }
718
+ static fromPlainObject(obj) {
719
+ return new AvmCircuitInputs(AvmExecutionHints.fromPlainObject(obj.hints), AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs));
720
+ }
473
721
  static get schema() {
474
722
  return z.object({
475
723
  hints: AvmExecutionHints.schema,
@@ -487,3 +735,114 @@ export class AvmCircuitInputs {
487
735
  return jsonParseWithSchema(buf.toString(), this.schema);
488
736
  }
489
737
  }
738
+ export class PublicTxResult {
739
+ gasUsed;
740
+ revertCode;
741
+ revertReason;
742
+ appLogicReturnValues;
743
+ logs;
744
+ hints;
745
+ publicInputs;
746
+ constructor(// Simulation result.
747
+ gasUsed, revertCode, revertReason, // These are only guaranteed to be present if the simulator is configured to collect them.
748
+ // NOTE: This list will be populated with one NestedProcessReturnValues per app logic enqueued call.
749
+ // IMPORTANT: The nesting will only be 1 level deep! You will get one result per enqueued call
750
+ // but no information about nested calls. This can be added later.
751
+ appLogicReturnValues, logs, // For the proving request.
752
+ hints, publicInputs){
753
+ this.gasUsed = gasUsed;
754
+ this.revertCode = revertCode;
755
+ this.revertReason = revertReason;
756
+ this.appLogicReturnValues = appLogicReturnValues;
757
+ this.logs = logs;
758
+ this.hints = hints;
759
+ this.publicInputs = publicInputs;
760
+ }
761
+ static empty() {
762
+ return new PublicTxResult({
763
+ totalGas: Gas.empty(),
764
+ teardownGas: Gas.empty(),
765
+ publicGas: Gas.empty(),
766
+ billedGas: Gas.empty()
767
+ }, RevertCode.OK, /*revertReason=*/ undefined, /*appLogicReturnValues=*/ [], /*logs=*/ [], /*hints=*/ AvmExecutionHints.empty(), /*publicInputs=*/ AvmCircuitPublicInputs.empty());
768
+ }
769
+ static get schema() {
770
+ return z.object({
771
+ gasUsed: schemas.GasUsed,
772
+ revertCode: RevertCode.schema,
773
+ revertReason: NullishToUndefined(SimulationError.schema),
774
+ appLogicReturnValues: NestedProcessReturnValues.schema.array(),
775
+ logs: NullishToUndefined(DebugLog.schema.array()),
776
+ // For the proving request.
777
+ publicInputs: AvmCircuitPublicInputs.schema,
778
+ hints: NullishToUndefined(AvmExecutionHints.schema)
779
+ }).transform(({ gasUsed, revertCode, revertReason, appLogicReturnValues, logs, hints, publicInputs })=>new PublicTxResult(gasUsed, revertCode, revertReason, appLogicReturnValues, logs, hints, publicInputs));
780
+ }
781
+ static fromPlainObject(obj) {
782
+ return new PublicTxResult(GasUsed.fromPlainObject(obj.gasUsed), RevertCode.fromPlainObject(obj.revertCode), /*revertReason=*/ undefined, /*appLogicReturnValues=*/ obj.appLogicReturnValues.map(NestedProcessReturnValues.fromPlainObject), obj.logs?.map(DebugLog.fromPlainObject), obj.hints ? AvmExecutionHints.fromPlainObject(obj.hints) : undefined, AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs));
783
+ }
784
+ }
785
+ export class PublicSimulatorConfig {
786
+ proverId;
787
+ skipFeeEnforcement;
788
+ collectCallMetadata;
789
+ collectHints;
790
+ collectDebugLogs;
791
+ maxDebugLogMemoryReads;
792
+ collectStatistics;
793
+ constructor(proverId, skipFeeEnforcement, collectCallMetadata, collectHints, collectDebugLogs, maxDebugLogMemoryReads, collectStatistics){
794
+ this.proverId = proverId;
795
+ this.skipFeeEnforcement = skipFeeEnforcement;
796
+ this.collectCallMetadata = collectCallMetadata;
797
+ this.collectHints = collectHints;
798
+ this.collectDebugLogs = collectDebugLogs;
799
+ this.maxDebugLogMemoryReads = maxDebugLogMemoryReads;
800
+ this.collectStatistics = collectStatistics;
801
+ }
802
+ static from(obj) {
803
+ return new PublicSimulatorConfig(obj.proverId ?? Fr.ZERO, obj.skipFeeEnforcement ?? false, obj.collectCallMetadata ?? false, obj.collectHints ?? false, obj.collectDebugLogs ?? false, obj.maxDebugLogMemoryReads ?? DEFAULT_MAX_DEBUG_LOG_MEMORY_READS, obj.collectStatistics ?? false);
804
+ }
805
+ static empty() {
806
+ return PublicSimulatorConfig.from({});
807
+ }
808
+ static get schema() {
809
+ return z.object({
810
+ proverId: Fr.schema,
811
+ skipFeeEnforcement: z.boolean(),
812
+ collectCallMetadata: z.boolean(),
813
+ collectHints: z.boolean(),
814
+ collectDebugLogs: z.boolean(),
815
+ maxDebugLogMemoryReads: z.number(),
816
+ collectStatistics: z.boolean()
817
+ }).transform(PublicSimulatorConfig.from);
818
+ }
819
+ }
820
+ export class AvmFastSimulationInputs {
821
+ wsRevision;
822
+ config;
823
+ tx;
824
+ globalVariables;
825
+ protocolContracts;
826
+ constructor(wsRevision, config, tx, globalVariables, protocolContracts){
827
+ this.wsRevision = wsRevision;
828
+ this.config = config;
829
+ this.tx = tx;
830
+ this.globalVariables = globalVariables;
831
+ this.protocolContracts = protocolContracts;
832
+ }
833
+ static empty() {
834
+ return new AvmFastSimulationInputs(WorldStateRevision.empty(), PublicSimulatorConfig.empty(), AvmTxHint.empty(), GlobalVariables.empty(), ProtocolContracts.empty());
835
+ }
836
+ static get schema() {
837
+ return z.object({
838
+ wsRevision: WorldStateRevision.schema,
839
+ config: PublicSimulatorConfig.schema,
840
+ tx: AvmTxHint.schema,
841
+ globalVariables: GlobalVariables.schema,
842
+ protocolContracts: ProtocolContracts.schema
843
+ }).transform(({ wsRevision, config, tx, globalVariables, protocolContracts })=>new AvmFastSimulationInputs(wsRevision, config, tx, globalVariables, protocolContracts));
844
+ }
845
+ serializeWithMessagePack() {
846
+ return serializeWithMessagePack(this);
847
+ }
848
+ }