@aztec/stdlib 0.0.0-test.0 → 0.0.1-commit.001888fc

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 (1634) hide show
  1. package/dest/abi/abi.d.ts +988 -412
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +79 -45
  4. package/dest/abi/authorization_selector.d.ts +52 -0
  5. package/dest/abi/authorization_selector.d.ts.map +1 -0
  6. package/dest/abi/authorization_selector.js +71 -0
  7. package/dest/abi/buffer.d.ts +2 -4
  8. package/dest/abi/buffer.d.ts.map +1 -1
  9. package/dest/abi/buffer.js +1 -1
  10. package/dest/abi/contract_artifact.d.ts +18 -5
  11. package/dest/abi/contract_artifact.d.ts.map +1 -1
  12. package/dest/abi/contract_artifact.js +79 -56
  13. package/dest/abi/decoder.d.ts +4 -4
  14. package/dest/abi/decoder.d.ts.map +1 -1
  15. package/dest/abi/decoder.js +15 -15
  16. package/dest/abi/encoder.d.ts +2 -2
  17. package/dest/abi/encoder.d.ts.map +1 -1
  18. package/dest/abi/encoder.js +105 -8
  19. package/dest/abi/event_metadata_definition.d.ts +10 -0
  20. package/dest/abi/event_metadata_definition.d.ts.map +1 -0
  21. package/dest/abi/event_metadata_definition.js +1 -0
  22. package/dest/abi/event_selector.d.ts +2 -4
  23. package/dest/abi/event_selector.d.ts.map +1 -1
  24. package/dest/abi/event_selector.js +2 -1
  25. package/dest/abi/function_call.d.ts +47 -12
  26. package/dest/abi/function_call.d.ts.map +1 -1
  27. package/dest/abi/function_call.js +26 -5
  28. package/dest/abi/function_selector.d.ts +3 -4
  29. package/dest/abi/function_selector.d.ts.map +1 -1
  30. package/dest/abi/function_selector.js +9 -1
  31. package/dest/abi/index.d.ts +3 -1
  32. package/dest/abi/index.d.ts.map +1 -1
  33. package/dest/abi/index.js +2 -0
  34. package/dest/abi/mocked_keys.d.ts +1 -1
  35. package/dest/abi/note_selector.d.ts +2 -4
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +2 -2
  38. package/dest/abi/selector.d.ts +2 -5
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +4 -2
  41. package/dest/abi/utils.d.ts +26 -3
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +29 -0
  44. package/dest/auth_witness/auth_witness.d.ts +24 -5
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +30 -1
  47. package/dest/auth_witness/index.d.ts +1 -1
  48. package/dest/avm/avm.d.ts +11629 -2930
  49. package/dest/avm/avm.d.ts.map +1 -1
  50. package/dest/avm/avm.js +947 -132
  51. package/dest/avm/avm_accumulated_data.d.ts +103 -29
  52. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  53. package/dest/avm/avm_accumulated_data.js +114 -13
  54. package/dest/avm/avm_circuit_public_inputs.d.ts +273 -201
  55. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  56. package/dest/avm/avm_circuit_public_inputs.js +73 -11
  57. package/dest/avm/avm_proving_request.d.ts +4597 -1115
  58. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  59. package/dest/avm/contract_storage_read.d.ts +3 -5
  60. package/dest/avm/contract_storage_read.d.ts.map +1 -1
  61. package/dest/avm/contract_storage_read.js +1 -1
  62. package/dest/avm/contract_storage_update_request.d.ts +3 -5
  63. package/dest/avm/contract_storage_update_request.d.ts.map +1 -1
  64. package/dest/avm/contract_storage_update_request.js +1 -1
  65. package/dest/avm/index.d.ts +2 -2
  66. package/dest/avm/index.d.ts.map +1 -1
  67. package/dest/avm/index.js +1 -1
  68. package/dest/avm/message_pack.d.ts +2 -3
  69. package/dest/avm/message_pack.d.ts.map +1 -1
  70. package/dest/avm/message_pack.js +41 -7
  71. package/dest/avm/public_call_stack_item_compressed.d.ts +3 -5
  72. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -1
  73. package/dest/avm/public_call_stack_item_compressed.js +1 -1
  74. package/dest/avm/public_data_read.d.ts +3 -5
  75. package/dest/avm/public_data_read.d.ts.map +1 -1
  76. package/dest/avm/public_data_read.js +1 -1
  77. package/dest/avm/public_data_update_request.d.ts +3 -6
  78. package/dest/avm/public_data_update_request.d.ts.map +1 -1
  79. package/dest/avm/public_data_update_request.js +4 -2
  80. package/dest/avm/public_data_write.d.ts +18 -8
  81. package/dest/avm/public_data_write.d.ts.map +1 -1
  82. package/dest/avm/public_data_write.js +32 -2
  83. package/dest/avm/public_inner_call_request.d.ts +3 -6
  84. package/dest/avm/public_inner_call_request.d.ts.map +1 -1
  85. package/dest/avm/public_inner_call_request.js +4 -2
  86. package/dest/avm/revert_code.d.ts +29 -8
  87. package/dest/avm/revert_code.d.ts.map +1 -1
  88. package/dest/avm/revert_code.js +43 -15
  89. package/dest/aztec-address/index.d.ts +13 -6
  90. package/dest/aztec-address/index.d.ts.map +1 -1
  91. package/dest/aztec-address/index.js +29 -4
  92. package/dest/block/attestation_info.d.ts +32 -0
  93. package/dest/block/attestation_info.d.ts.map +1 -0
  94. package/dest/block/attestation_info.js +42 -0
  95. package/dest/block/block_data.d.ts +52 -0
  96. package/dest/block/block_data.d.ts.map +1 -0
  97. package/dest/block/block_data.js +12 -0
  98. package/dest/block/block_hash.d.ts +19 -13
  99. package/dest/block/block_hash.d.ts.map +1 -1
  100. package/dest/block/block_hash.js +26 -13
  101. package/dest/block/block_parameter.d.ts +6 -0
  102. package/dest/block/block_parameter.d.ts.map +1 -0
  103. package/dest/block/block_parameter.js +8 -0
  104. package/dest/block/body.d.ts +10 -9
  105. package/dest/block/body.d.ts.map +1 -1
  106. package/dest/block/body.js +18 -32
  107. package/dest/block/checkpointed_l2_block.d.ts +150 -0
  108. package/dest/block/checkpointed_l2_block.d.ts.map +1 -0
  109. package/dest/block/checkpointed_l2_block.js +46 -0
  110. package/dest/block/in_block.d.ts +36 -24
  111. package/dest/block/in_block.d.ts.map +1 -1
  112. package/dest/block/in_block.js +21 -12
  113. package/dest/block/index.d.ts +9 -4
  114. package/dest/block/index.d.ts.map +1 -1
  115. package/dest/block/index.js +8 -3
  116. package/dest/block/l2_block.d.ts +64 -47
  117. package/dest/block/l2_block.d.ts.map +1 -1
  118. package/dest/block/l2_block.js +102 -77
  119. package/dest/block/l2_block_info.d.ts +46 -0
  120. package/dest/block/l2_block_info.d.ts.map +1 -0
  121. package/dest/block/l2_block_info.js +41 -0
  122. package/dest/block/l2_block_source.d.ts +449 -134
  123. package/dest/block/l2_block_source.d.ts.map +1 -1
  124. package/dest/block/l2_block_source.js +39 -15
  125. package/dest/block/l2_block_stream/index.d.ts +5 -0
  126. package/dest/block/l2_block_stream/index.d.ts.map +1 -0
  127. package/dest/block/l2_block_stream/index.js +4 -0
  128. package/dest/block/l2_block_stream/interfaces.d.ts +36 -0
  129. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -0
  130. package/dest/block/l2_block_stream/l2_block_stream.d.ts +40 -0
  131. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -0
  132. package/dest/block/l2_block_stream/l2_block_stream.js +282 -0
  133. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +27 -0
  134. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -0
  135. package/dest/block/l2_block_stream/l2_tips_memory_store.js +66 -0
  136. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +49 -0
  137. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -0
  138. package/dest/block/l2_block_stream/l2_tips_store_base.js +179 -0
  139. package/dest/block/proposal/attestations_and_signers.d.ts +59 -0
  140. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -0
  141. package/dest/block/proposal/attestations_and_signers.js +113 -0
  142. package/dest/block/proposal/committee_attestation.d.ts +36 -0
  143. package/dest/block/proposal/committee_attestation.d.ts.map +1 -0
  144. package/dest/block/proposal/committee_attestation.js +101 -0
  145. package/dest/block/proposal/index.d.ts +3 -0
  146. package/dest/block/proposal/index.d.ts.map +1 -0
  147. package/dest/block/proposal/index.js +2 -0
  148. package/dest/block/test/index.d.ts +2 -0
  149. package/dest/block/test/index.d.ts.map +1 -0
  150. package/dest/block/test/index.js +1 -0
  151. package/dest/block/test/l2_tips_store_test_suite.d.ts +3 -0
  152. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -0
  153. package/dest/block/test/l2_tips_store_test_suite.js +545 -0
  154. package/dest/block/validate_block_result.d.ts +50 -0
  155. package/dest/block/validate_block_result.d.ts.map +1 -0
  156. package/dest/block/validate_block_result.js +85 -0
  157. package/dest/checkpoint/checkpoint.d.ts +178 -0
  158. package/dest/checkpoint/checkpoint.d.ts.map +1 -0
  159. package/dest/checkpoint/checkpoint.js +129 -0
  160. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  161. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  162. package/dest/checkpoint/checkpoint_data.js +26 -0
  163. package/dest/checkpoint/checkpoint_info.d.ts +38 -0
  164. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -0
  165. package/dest/checkpoint/checkpoint_info.js +34 -0
  166. package/dest/checkpoint/index.d.ts +6 -0
  167. package/dest/checkpoint/index.d.ts.map +1 -0
  168. package/dest/checkpoint/index.js +5 -0
  169. package/dest/checkpoint/published_checkpoint.d.ts +255 -0
  170. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -0
  171. package/dest/checkpoint/published_checkpoint.js +81 -0
  172. package/dest/checkpoint/validate.d.ts +36 -0
  173. package/dest/checkpoint/validate.d.ts.map +1 -0
  174. package/dest/checkpoint/validate.js +120 -0
  175. package/dest/config/chain-config.d.ts +19 -0
  176. package/dest/config/chain-config.d.ts.map +1 -0
  177. package/dest/config/{config.js → chain-config.js} +4 -5
  178. package/dest/config/index.d.ts +4 -2
  179. package/dest/config/index.d.ts.map +1 -1
  180. package/dest/config/index.js +3 -1
  181. package/dest/config/node-rpc-config.d.ts +13 -0
  182. package/dest/config/node-rpc-config.d.ts.map +1 -0
  183. package/dest/config/node-rpc-config.js +24 -0
  184. package/dest/config/sequencer-config.d.ts +12 -0
  185. package/dest/config/sequencer-config.d.ts.map +1 -0
  186. package/dest/config/sequencer-config.js +24 -0
  187. package/dest/contract/artifact_hash.d.ts +8 -10
  188. package/dest/contract/artifact_hash.d.ts.map +1 -1
  189. package/dest/contract/artifact_hash.js +13 -12
  190. package/dest/contract/complete_address.d.ts +2 -4
  191. package/dest/contract/complete_address.d.ts.map +1 -1
  192. package/dest/contract/complete_address.js +1 -1
  193. package/dest/contract/contract_address.d.ts +3 -3
  194. package/dest/contract/contract_address.d.ts.map +1 -1
  195. package/dest/contract/contract_address.js +7 -7
  196. package/dest/contract/contract_class.d.ts +3 -4
  197. package/dest/contract/contract_class.d.ts.map +1 -1
  198. package/dest/contract/contract_class.js +4 -20
  199. package/dest/contract/contract_class_id.d.ts +3 -5
  200. package/dest/contract/contract_class_id.d.ts.map +1 -1
  201. package/dest/contract/contract_class_id.js +12 -9
  202. package/dest/contract/contract_deployment_data.d.ts +119 -0
  203. package/dest/contract/contract_deployment_data.d.ts.map +1 -0
  204. package/dest/contract/contract_deployment_data.js +99 -0
  205. package/dest/contract/contract_function_dao.d.ts +1 -1
  206. package/dest/contract/contract_instance.d.ts +15 -16
  207. package/dest/contract/contract_instance.d.ts.map +1 -1
  208. package/dest/contract/contract_instance.js +8 -8
  209. package/dest/contract/contract_instance_update.d.ts +5 -6
  210. package/dest/contract/contract_instance_update.d.ts.map +1 -1
  211. package/dest/contract/contract_instance_update.js +7 -7
  212. package/dest/contract/deployment_info.d.ts +2 -2
  213. package/dest/contract/deployment_info.d.ts.map +1 -1
  214. package/dest/contract/index.d.ts +3 -2
  215. package/dest/contract/index.d.ts.map +1 -1
  216. package/dest/contract/index.js +2 -1
  217. package/dest/contract/interfaces/contract_class.d.ts +81 -297
  218. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  219. package/dest/contract/interfaces/contract_class.js +36 -24
  220. package/dest/contract/interfaces/contract_data_source.d.ts +14 -21
  221. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  222. package/dest/contract/interfaces/contract_instance.d.ts +50 -41
  223. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  224. package/dest/contract/interfaces/contract_instance.js +30 -5
  225. package/dest/contract/interfaces/contract_instance_update.d.ts +16 -16
  226. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  227. package/dest/contract/interfaces/contract_instance_update.js +6 -6
  228. package/dest/contract/interfaces/index.d.ts +1 -1
  229. package/dest/contract/interfaces/node-info.d.ts +5 -3
  230. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  231. package/dest/contract/interfaces/node-info.js +3 -2
  232. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +10 -10
  233. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  234. package/dest/contract/interfaces/protocol_contract_addresses.js +4 -4
  235. package/dest/contract/partial_address.d.ts +2 -2
  236. package/dest/contract/partial_address.d.ts.map +1 -1
  237. package/dest/contract/private_function.d.ts +2 -4
  238. package/dest/contract/private_function.d.ts.map +1 -1
  239. package/dest/contract/private_function.js +5 -5
  240. package/dest/contract/private_function_membership_proof.d.ts +5 -5
  241. package/dest/contract/private_function_membership_proof.js +11 -11
  242. package/dest/contract/utility_function_membership_proof.d.ts +27 -0
  243. package/dest/contract/utility_function_membership_proof.d.ts.map +1 -0
  244. package/dest/contract/{unconstrained_function_membership_proof.js → utility_function_membership_proof.js} +14 -14
  245. package/dest/database-version/database_version.d.ts +58 -0
  246. package/dest/database-version/database_version.d.ts.map +1 -0
  247. package/dest/database-version/database_version.js +69 -0
  248. package/dest/database-version/version_manager.d.ts +20 -49
  249. package/dest/database-version/version_manager.d.ts.map +1 -1
  250. package/dest/database-version/version_manager.js +33 -75
  251. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts +20 -0
  252. package/dest/delayed_public_mutable/delayed_public_mutable_values.d.ts.map +1 -0
  253. package/dest/{shared_mutable/shared_mutable_values.js → delayed_public_mutable/delayed_public_mutable_values.js} +20 -23
  254. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts +15 -0
  255. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.d.ts.map +1 -0
  256. package/dest/delayed_public_mutable/delayed_public_mutable_values_with_hash.js +30 -0
  257. package/dest/delayed_public_mutable/index.d.ts +5 -0
  258. package/dest/delayed_public_mutable/index.d.ts.map +1 -0
  259. package/dest/delayed_public_mutable/index.js +4 -0
  260. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts +10 -0
  261. package/dest/delayed_public_mutable/scheduled_delay_change.d.ts.map +1 -0
  262. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_delay_change.js +5 -5
  263. package/dest/delayed_public_mutable/scheduled_value_change.d.ts +12 -0
  264. package/dest/delayed_public_mutable/scheduled_value_change.d.ts.map +1 -0
  265. package/dest/{shared_mutable → delayed_public_mutable}/scheduled_value_change.js +8 -8
  266. package/dest/deserialization/index.d.ts +11 -0
  267. package/dest/deserialization/index.d.ts.map +1 -0
  268. package/dest/deserialization/index.js +10 -0
  269. package/dest/epoch-helpers/index.d.ts +39 -6
  270. package/dest/epoch-helpers/index.d.ts.map +1 -1
  271. package/dest/epoch-helpers/index.js +50 -11
  272. package/dest/errors/index.d.ts +1 -1
  273. package/dest/errors/proving_error.d.ts +1 -1
  274. package/dest/errors/proving_error.d.ts.map +1 -1
  275. package/dest/errors/simulation_error.d.ts +2 -2
  276. package/dest/errors/simulation_error.d.ts.map +1 -1
  277. package/dest/errors/simulation_error.js +2 -2
  278. package/dest/fees/index.d.ts +1 -1
  279. package/dest/fees/transaction_fee.d.ts +7 -2
  280. package/dest/fees/transaction_fee.d.ts.map +1 -1
  281. package/dest/fees/transaction_fee.js +15 -5
  282. package/dest/file-store/factory.d.ts +7 -0
  283. package/dest/file-store/factory.d.ts.map +1 -0
  284. package/dest/file-store/factory.js +64 -0
  285. package/dest/file-store/gcs.d.ts +20 -0
  286. package/dest/file-store/gcs.d.ts.map +1 -0
  287. package/dest/file-store/gcs.js +115 -0
  288. package/dest/file-store/http.d.ts +14 -0
  289. package/dest/file-store/http.d.ts.map +1 -0
  290. package/dest/file-store/http.js +74 -0
  291. package/dest/file-store/index.d.ts +3 -0
  292. package/dest/file-store/index.d.ts.map +1 -0
  293. package/dest/file-store/index.js +2 -0
  294. package/dest/file-store/interface.d.ts +28 -0
  295. package/dest/file-store/interface.d.ts.map +1 -0
  296. package/dest/file-store/interface.js +1 -0
  297. package/dest/file-store/local.d.ts +14 -0
  298. package/dest/file-store/local.d.ts.map +1 -0
  299. package/dest/file-store/local.js +49 -0
  300. package/dest/file-store/s3.d.ts +26 -0
  301. package/dest/file-store/s3.d.ts.map +1 -0
  302. package/dest/file-store/s3.js +256 -0
  303. package/dest/gas/gas.d.ts +12 -6
  304. package/dest/gas/gas.d.ts.map +1 -1
  305. package/dest/gas/gas.js +20 -3
  306. package/dest/gas/gas_fees.d.ts +26 -20
  307. package/dest/gas/gas_fees.d.ts.map +1 -1
  308. package/dest/gas/gas_fees.js +35 -19
  309. package/dest/gas/gas_settings.d.ts +35 -29
  310. package/dest/gas/gas_settings.d.ts.map +1 -1
  311. package/dest/gas/gas_settings.js +19 -7
  312. package/dest/gas/gas_used.d.ts +13 -2
  313. package/dest/gas/gas_used.d.ts.map +1 -1
  314. package/dest/gas/gas_used.js +19 -1
  315. package/dest/gas/index.d.ts +1 -1
  316. package/dest/ha-signing/config.d.ts +136 -0
  317. package/dest/ha-signing/config.d.ts.map +1 -0
  318. package/dest/ha-signing/config.js +97 -0
  319. package/dest/ha-signing/index.d.ts +4 -0
  320. package/dest/ha-signing/index.d.ts.map +1 -0
  321. package/dest/ha-signing/index.js +3 -0
  322. package/dest/ha-signing/local_config.d.ts +63 -0
  323. package/dest/ha-signing/local_config.d.ts.map +1 -0
  324. package/dest/ha-signing/local_config.js +24 -0
  325. package/dest/ha-signing/types.d.ts +85 -0
  326. package/dest/ha-signing/types.d.ts.map +1 -0
  327. package/dest/ha-signing/types.js +32 -0
  328. package/dest/hash/hash.d.ts +31 -10
  329. package/dest/hash/hash.d.ts.map +1 -1
  330. package/dest/hash/hash.js +51 -34
  331. package/dest/hash/index.d.ts +1 -1
  332. package/dest/hash/map_slot.d.ts +2 -2
  333. package/dest/hash/map_slot.d.ts.map +1 -1
  334. package/dest/hash/map_slot.js +4 -3
  335. package/dest/interfaces/allowed_element.d.ts +58 -0
  336. package/dest/interfaces/allowed_element.d.ts.map +1 -0
  337. package/dest/interfaces/allowed_element.js +18 -0
  338. package/dest/interfaces/api_limit.d.ts +6 -0
  339. package/dest/interfaces/api_limit.d.ts.map +1 -0
  340. package/dest/interfaces/api_limit.js +5 -0
  341. package/dest/interfaces/archiver.d.ts +55 -3
  342. package/dest/interfaces/archiver.d.ts.map +1 -1
  343. package/dest/interfaces/archiver.js +65 -25
  344. package/dest/interfaces/aztec-node-admin.d.ts +443 -0
  345. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -0
  346. package/dest/interfaces/aztec-node-admin.js +45 -0
  347. package/dest/interfaces/aztec-node.d.ts +158 -142
  348. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  349. package/dest/interfaces/aztec-node.js +57 -44
  350. package/dest/interfaces/block-builder.d.ts +61 -7
  351. package/dest/interfaces/block-builder.d.ts.map +1 -1
  352. package/dest/interfaces/block-builder.js +26 -1
  353. package/dest/interfaces/client.d.ts +3 -2
  354. package/dest/interfaces/client.d.ts.map +1 -1
  355. package/dest/interfaces/client.js +2 -1
  356. package/dest/interfaces/configs.d.ts +194 -80
  357. package/dest/interfaces/configs.d.ts.map +1 -1
  358. package/dest/interfaces/configs.js +33 -24
  359. package/dest/interfaces/epoch-prover.d.ts +36 -17
  360. package/dest/interfaces/epoch-prover.d.ts.map +1 -1
  361. package/dest/interfaces/get_logs_response.d.ts +30 -6
  362. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  363. package/dest/interfaces/get_logs_response.js +5 -4
  364. package/dest/interfaces/l2_logs_source.d.ts +23 -14
  365. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  366. package/dest/interfaces/merkle_tree_operations.d.ts +31 -24
  367. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  368. package/dest/interfaces/p2p-bootstrap.d.ts +1 -1
  369. package/dest/interfaces/p2p.d.ts +17 -11
  370. package/dest/interfaces/p2p.d.ts.map +1 -1
  371. package/dest/interfaces/p2p.js +6 -3
  372. package/dest/interfaces/private_kernel_prover.d.ts +6 -7
  373. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  374. package/dest/interfaces/processed-tx-handler.d.ts +1 -1
  375. package/dest/interfaces/prover-agent.d.ts +32 -7
  376. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  377. package/dest/interfaces/prover-agent.js +15 -6
  378. package/dest/interfaces/prover-broker.d.ts +16 -1
  379. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  380. package/dest/interfaces/prover-broker.js +4 -1
  381. package/dest/interfaces/prover-client.d.ts +31 -10
  382. package/dest/interfaces/prover-client.d.ts.map +1 -1
  383. package/dest/interfaces/prover-client.js +30 -10
  384. package/dest/interfaces/prover-coordination.d.ts +5 -10
  385. package/dest/interfaces/prover-coordination.d.ts.map +1 -1
  386. package/dest/interfaces/prover-coordination.js +1 -7
  387. package/dest/interfaces/prover-node.d.ts +6 -3
  388. package/dest/interfaces/prover-node.d.ts.map +1 -1
  389. package/dest/interfaces/prover-node.js +8 -3
  390. package/dest/interfaces/proving-job-source.d.ts +1 -1
  391. package/dest/interfaces/proving-job.d.ts +4879 -1282
  392. package/dest/interfaces/proving-job.d.ts.map +1 -1
  393. package/dest/interfaces/proving-job.js +139 -113
  394. package/dest/interfaces/public_state_source.d.ts +8 -0
  395. package/dest/interfaces/public_state_source.d.ts.map +1 -0
  396. package/dest/interfaces/public_state_source.js +1 -0
  397. package/dest/interfaces/server.d.ts +12 -6
  398. package/dest/interfaces/server.d.ts.map +1 -1
  399. package/dest/interfaces/server.js +11 -5
  400. package/dest/interfaces/server_circuit_prover.d.ts +48 -36
  401. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  402. package/dest/interfaces/service.d.ts +4 -3
  403. package/dest/interfaces/service.d.ts.map +1 -1
  404. package/dest/interfaces/slasher.d.ts +94 -0
  405. package/dest/interfaces/slasher.d.ts.map +1 -0
  406. package/dest/interfaces/slasher.js +25 -0
  407. package/dest/interfaces/tx_provider.d.ts +24 -0
  408. package/dest/interfaces/tx_provider.d.ts.map +1 -0
  409. package/dest/interfaces/tx_provider.js +1 -0
  410. package/dest/interfaces/validator.d.ts +368 -0
  411. package/dest/interfaces/validator.d.ts.map +1 -0
  412. package/dest/interfaces/validator.js +28 -0
  413. package/dest/interfaces/world_state.d.ts +40 -45
  414. package/dest/interfaces/world_state.d.ts.map +1 -1
  415. package/dest/interfaces/world_state.js +4 -3
  416. package/dest/kernel/claimed_length_array.d.ts +34 -0
  417. package/dest/kernel/claimed_length_array.d.ts.map +1 -0
  418. package/dest/kernel/claimed_length_array.js +60 -0
  419. package/dest/kernel/hiding_kernel_private_inputs.d.ts +19 -0
  420. package/dest/kernel/hiding_kernel_private_inputs.d.ts.map +1 -0
  421. package/dest/kernel/hiding_kernel_private_inputs.js +34 -0
  422. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +10 -9
  423. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  424. package/dest/kernel/hints/build_note_hash_read_request_hints.js +42 -32
  425. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +12 -14
  426. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  427. package/dest/kernel/hints/build_nullifier_read_request_hints.js +38 -42
  428. package/dest/kernel/hints/build_transient_data_hints.d.ts +8 -4
  429. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  430. package/dest/kernel/hints/build_transient_data_hints.js +18 -13
  431. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +1 -1
  432. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  433. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +2 -4
  434. package/dest/kernel/hints/index.d.ts +4 -5
  435. package/dest/kernel/hints/index.d.ts.map +1 -1
  436. package/dest/kernel/hints/index.js +3 -4
  437. package/dest/kernel/hints/key_validation_hint.d.ts +5 -11
  438. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -1
  439. package/dest/kernel/hints/key_validation_hint.js +6 -8
  440. package/dest/kernel/hints/key_validation_request.d.ts +5 -6
  441. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  442. package/dest/kernel/hints/key_validation_request.js +2 -1
  443. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  444. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  445. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +13 -16
  446. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +2 -4
  447. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -1
  448. package/dest/kernel/hints/note_hash_read_request_hints.js +5 -5
  449. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +5 -6
  450. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -1
  451. package/dest/kernel/hints/nullifier_read_request_hints.js +4 -4
  452. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +10 -22
  453. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
  454. package/dest/kernel/hints/private_kernel_reset_hints.js +13 -14
  455. package/dest/kernel/hints/read_request.d.ts +2 -4
  456. package/dest/kernel/hints/read_request.d.ts.map +1 -1
  457. package/dest/kernel/hints/read_request.js +1 -1
  458. package/dest/kernel/hints/read_request_hints.d.ts +30 -32
  459. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -1
  460. package/dest/kernel/hints/read_request_hints.js +28 -28
  461. package/dest/kernel/hints/scoped_key_validation_request_and_separator.d.ts +19 -0
  462. package/dest/kernel/hints/scoped_key_validation_request_and_separator.d.ts.map +1 -0
  463. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  464. package/dest/kernel/hints/scoped_value_cache.d.ts +2 -2
  465. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -1
  466. package/dest/kernel/hints/transient_data_squashing_hint.d.ts +17 -0
  467. package/dest/kernel/hints/transient_data_squashing_hint.d.ts.map +1 -0
  468. package/dest/kernel/hints/{transient_data_index_hint.js → transient_data_squashing_hint.js} +9 -7
  469. package/dest/kernel/hints/tree_leaf_read_request.d.ts +2 -4
  470. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -1
  471. package/dest/kernel/hints/tree_leaf_read_request.js +1 -1
  472. package/dest/kernel/index.d.ts +5 -3
  473. package/dest/kernel/index.d.ts.map +1 -1
  474. package/dest/kernel/index.js +4 -2
  475. package/dest/kernel/log_hash.d.ts +29 -11
  476. package/dest/kernel/log_hash.d.ts.map +1 -1
  477. package/dest/kernel/log_hash.js +76 -15
  478. package/dest/kernel/note_hash.d.ts +2 -4
  479. package/dest/kernel/note_hash.d.ts.map +1 -1
  480. package/dest/kernel/note_hash.js +1 -1
  481. package/dest/kernel/nullifier.d.ts +4 -6
  482. package/dest/kernel/nullifier.d.ts.map +1 -1
  483. package/dest/kernel/nullifier.js +12 -12
  484. package/dest/kernel/padded_side_effects.d.ts +26 -0
  485. package/dest/kernel/padded_side_effects.d.ts.map +1 -0
  486. package/dest/kernel/padded_side_effects.js +51 -0
  487. package/dest/kernel/private_accumulated_data.d.ts +20 -21
  488. package/dest/kernel/private_accumulated_data.d.ts.map +1 -1
  489. package/dest/kernel/private_accumulated_data.js +5 -5
  490. package/dest/kernel/private_call_data.d.ts +10 -32
  491. package/dest/kernel/private_call_data.d.ts.map +1 -1
  492. package/dest/kernel/private_call_data.js +7 -19
  493. package/dest/kernel/private_call_request.d.ts +3 -5
  494. package/dest/kernel/private_call_request.d.ts.map +1 -1
  495. package/dest/kernel/private_call_request.js +2 -2
  496. package/dest/kernel/private_circuit_public_inputs.d.ts +99 -84
  497. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  498. package/dest/kernel/private_circuit_public_inputs.js +96 -66
  499. package/dest/kernel/private_context_inputs.d.ts +4 -4
  500. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  501. package/dest/kernel/private_context_inputs.js +4 -4
  502. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +25 -10
  503. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  504. package/dest/kernel/private_kernel_circuit_public_inputs.js +15 -7
  505. package/dest/kernel/private_kernel_data.d.ts +8 -29
  506. package/dest/kernel/private_kernel_data.d.ts.map +1 -1
  507. package/dest/kernel/private_kernel_data.js +8 -21
  508. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +17 -10
  509. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  510. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +13 -8
  511. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +2 -4
  512. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -1
  513. package/dest/kernel/private_kernel_prover_output.d.ts +79 -0
  514. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -0
  515. package/dest/kernel/private_kernel_prover_output.js +28 -0
  516. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +10 -9
  517. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -1
  518. package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +10 -6
  519. package/dest/kernel/private_kernel_reset_dimensions.d.ts +12 -14
  520. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  521. package/dest/kernel/private_kernel_reset_dimensions.js +29 -29
  522. package/dest/kernel/private_kernel_simulated_output.d.ts +7 -13
  523. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  524. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +21 -5
  525. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  526. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +14 -6
  527. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +23 -14
  528. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  529. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +33 -22
  530. package/dest/kernel/private_log_data.d.ts +3 -6
  531. package/dest/kernel/private_log_data.d.ts.map +1 -1
  532. package/dest/kernel/private_log_data.js +9 -4
  533. package/dest/kernel/private_to_avm_accumulated_data.d.ts +24 -17
  534. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  535. package/dest/kernel/private_to_avm_accumulated_data.js +35 -3
  536. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -7
  537. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  538. package/dest/kernel/private_to_public_accumulated_data.js +4 -2
  539. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +2 -2
  540. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -1
  541. package/dest/kernel/private_to_public_accumulated_data_builder.js +1 -1
  542. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +9 -9
  543. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  544. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +19 -13
  545. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -8
  546. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  547. package/dest/kernel/private_to_rollup_accumulated_data.js +4 -2
  548. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +15 -17
  549. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  550. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +14 -15
  551. package/dest/kernel/private_validation_requests.d.ts +11 -39
  552. package/dest/kernel/private_validation_requests.d.ts.map +1 -1
  553. package/dest/kernel/private_validation_requests.js +16 -34
  554. package/dest/kernel/public_call_request.d.ts +93 -31
  555. package/dest/kernel/public_call_request.d.ts.map +1 -1
  556. package/dest/kernel/public_call_request.js +100 -22
  557. package/dest/kernel/utils/index.d.ts +1 -1
  558. package/dest/kernel/utils/interfaces.d.ts +1 -1
  559. package/dest/kernel/utils/optional_number.d.ts +3 -5
  560. package/dest/kernel/utils/optional_number.d.ts.map +1 -1
  561. package/dest/kernel/utils/order_and_comparison.d.ts +1 -4
  562. package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -1
  563. package/dest/kernel/utils/order_and_comparison.js +0 -19
  564. package/dest/keys/derivation.d.ts +7 -8
  565. package/dest/keys/derivation.d.ts.map +1 -1
  566. package/dest/keys/derivation.js +22 -32
  567. package/dest/keys/index.d.ts +1 -1
  568. package/dest/keys/key_types.d.ts +3 -3
  569. package/dest/keys/key_types.d.ts.map +1 -1
  570. package/dest/keys/public_key.d.ts +2 -2
  571. package/dest/keys/public_key.d.ts.map +1 -1
  572. package/dest/keys/public_keys.d.ts +11 -4
  573. package/dest/keys/public_keys.d.ts.map +1 -1
  574. package/dest/keys/public_keys.js +17 -5
  575. package/dest/keys/utils.d.ts +1 -1
  576. package/dest/keys/utils.d.ts.map +1 -1
  577. package/dest/keys/utils.js +8 -4
  578. package/dest/kv-store/config.d.ts +17 -0
  579. package/dest/kv-store/config.d.ts.map +1 -0
  580. package/dest/kv-store/config.js +26 -0
  581. package/dest/kv-store/index.d.ts +2 -0
  582. package/dest/kv-store/index.d.ts.map +1 -0
  583. package/dest/kv-store/index.js +1 -0
  584. package/dest/l1-contracts/index.d.ts +2 -0
  585. package/dest/l1-contracts/index.d.ts.map +1 -0
  586. package/dest/l1-contracts/index.js +1 -0
  587. package/dest/l1-contracts/slash_factory.d.ts +45 -0
  588. package/dest/l1-contracts/slash_factory.d.ts.map +1 -0
  589. package/dest/l1-contracts/slash_factory.js +158 -0
  590. package/dest/logs/contract_class_log.d.ts +72 -18
  591. package/dest/logs/contract_class_log.d.ts.map +1 -1
  592. package/dest/logs/contract_class_log.js +139 -82
  593. package/dest/logs/debug_log.d.ts +21 -0
  594. package/dest/logs/debug_log.d.ts.map +1 -0
  595. package/dest/logs/debug_log.js +39 -0
  596. package/dest/logs/debug_log_store.d.ts +30 -0
  597. package/dest/logs/debug_log_store.d.ts.map +1 -0
  598. package/dest/logs/debug_log_store.js +30 -0
  599. package/dest/logs/extended_contract_class_log.d.ts +1 -3
  600. package/dest/logs/extended_contract_class_log.d.ts.map +1 -1
  601. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  602. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  603. package/dest/logs/extended_directional_app_tagging_secret.js +72 -0
  604. package/dest/logs/extended_public_log.d.ts +17 -5
  605. package/dest/logs/extended_public_log.d.ts.map +1 -1
  606. package/dest/logs/index.d.ts +11 -4
  607. package/dest/logs/index.d.ts.map +1 -1
  608. package/dest/logs/index.js +10 -3
  609. package/dest/logs/log_filter.d.ts +4 -1
  610. package/dest/logs/log_filter.d.ts.map +1 -1
  611. package/dest/logs/log_filter.js +2 -1
  612. package/dest/logs/log_id.d.ts +26 -13
  613. package/dest/logs/log_id.d.ts.map +1 -1
  614. package/dest/logs/log_id.js +27 -16
  615. package/dest/logs/message_context.d.ts +29 -0
  616. package/dest/logs/message_context.d.ts.map +1 -0
  617. package/dest/logs/message_context.js +56 -0
  618. package/dest/logs/pending_tagged_log.d.ts +14 -0
  619. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  620. package/dest/logs/pending_tagged_log.js +34 -0
  621. package/dest/logs/pre_tag.d.ts +39 -0
  622. package/dest/logs/pre_tag.d.ts.map +1 -0
  623. package/dest/logs/pre_tag.js +7 -0
  624. package/dest/logs/private_log.d.ts +26 -10
  625. package/dest/logs/private_log.d.ts.map +1 -1
  626. package/dest/logs/private_log.js +65 -25
  627. package/dest/logs/public_log.d.ts +39 -15
  628. package/dest/logs/public_log.d.ts.map +1 -1
  629. package/dest/logs/public_log.js +145 -36
  630. package/dest/logs/shared_secret_derivation.d.ts +17 -0
  631. package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
  632. package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +6 -10
  633. package/dest/logs/siloed_tag.d.ts +25 -0
  634. package/dest/logs/siloed_tag.d.ts.map +1 -0
  635. package/dest/logs/siloed_tag.js +32 -0
  636. package/dest/logs/tag.d.ts +21 -0
  637. package/dest/logs/tag.d.ts.map +1 -0
  638. package/dest/logs/tag.js +30 -0
  639. package/dest/logs/tagging_index_range.d.ts +40 -0
  640. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  641. package/dest/logs/tagging_index_range.js +8 -0
  642. package/dest/logs/tx_scoped_l2_log.d.ts +34 -45
  643. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  644. package/dest/logs/tx_scoped_l2_log.js +38 -26
  645. package/dest/messaging/in_hash.d.ts +6 -0
  646. package/dest/messaging/in_hash.d.ts.map +1 -0
  647. package/dest/messaging/in_hash.js +10 -0
  648. package/dest/messaging/inbox_leaf.d.ts +11 -5
  649. package/dest/messaging/inbox_leaf.d.ts.map +1 -1
  650. package/dest/messaging/inbox_leaf.js +19 -4
  651. package/dest/messaging/index.d.ts +4 -1
  652. package/dest/messaging/index.d.ts.map +1 -1
  653. package/dest/messaging/index.js +3 -0
  654. package/dest/messaging/l1_actor.d.ts +2 -4
  655. package/dest/messaging/l1_actor.d.ts.map +1 -1
  656. package/dest/messaging/l1_actor.js +2 -2
  657. package/dest/messaging/l1_to_l2_message.d.ts +2 -4
  658. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  659. package/dest/messaging/l1_to_l2_message.js +2 -2
  660. package/dest/messaging/l1_to_l2_message_source.d.ts +12 -9
  661. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  662. package/dest/messaging/l2_actor.d.ts +2 -4
  663. package/dest/messaging/l2_actor.d.ts.map +1 -1
  664. package/dest/messaging/l2_actor.js +2 -2
  665. package/dest/messaging/l2_to_l1_membership.d.ts +123 -0
  666. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -0
  667. package/dest/messaging/l2_to_l1_membership.js +224 -0
  668. package/dest/messaging/l2_to_l1_message.d.ts +128 -19
  669. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  670. package/dest/messaging/l2_to_l1_message.js +102 -35
  671. package/dest/messaging/out_hash.d.ts +43 -0
  672. package/dest/messaging/out_hash.d.ts.map +1 -0
  673. package/dest/messaging/out_hash.js +63 -0
  674. package/dest/noir/index.d.ts +25 -8
  675. package/dest/noir/index.d.ts.map +1 -1
  676. package/dest/noir/index.js +6 -5
  677. package/dest/note/comparator.d.ts +1 -1
  678. package/dest/note/index.d.ts +2 -3
  679. package/dest/note/index.d.ts.map +1 -1
  680. package/dest/note/index.js +1 -2
  681. package/dest/note/note.d.ts +39 -21
  682. package/dest/note/note.d.ts.map +1 -1
  683. package/dest/note/note.js +55 -5
  684. package/dest/note/note_dao.d.ts +110 -0
  685. package/dest/note/note_dao.d.ts.map +1 -0
  686. package/dest/note/note_dao.js +115 -0
  687. package/dest/note/note_status.d.ts +1 -1
  688. package/dest/p2p/attestation_utils.d.ts +20 -0
  689. package/dest/p2p/attestation_utils.d.ts.map +1 -0
  690. package/dest/p2p/attestation_utils.js +66 -0
  691. package/dest/p2p/block_proposal.d.ts +117 -25
  692. package/dest/p2p/block_proposal.d.ts.map +1 -1
  693. package/dest/p2p/block_proposal.js +158 -31
  694. package/dest/p2p/checkpoint_attestation.d.ts +82 -0
  695. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -0
  696. package/dest/p2p/checkpoint_attestation.js +104 -0
  697. package/dest/p2p/checkpoint_proposal.d.ts +174 -0
  698. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -0
  699. package/dest/p2p/checkpoint_proposal.js +231 -0
  700. package/dest/p2p/client_type.d.ts +2 -5
  701. package/dest/p2p/client_type.d.ts.map +1 -1
  702. package/dest/p2p/client_type.js +0 -7
  703. package/dest/p2p/consensus_payload.d.ts +51 -24
  704. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  705. package/dest/p2p/consensus_payload.js +49 -29
  706. package/dest/p2p/constants.d.ts +5 -0
  707. package/dest/p2p/constants.d.ts.map +1 -0
  708. package/dest/p2p/constants.js +3 -0
  709. package/dest/p2p/gossipable.d.ts +21 -18
  710. package/dest/p2p/gossipable.d.ts.map +1 -1
  711. package/dest/p2p/gossipable.js +52 -4
  712. package/dest/p2p/index.d.ts +6 -3
  713. package/dest/p2p/index.d.ts.map +1 -1
  714. package/dest/p2p/index.js +5 -2
  715. package/dest/p2p/interface.d.ts +1 -14
  716. package/dest/p2p/interface.d.ts.map +1 -1
  717. package/dest/p2p/interface.js +1 -19
  718. package/dest/p2p/message_validator.d.ts +18 -3
  719. package/dest/p2p/message_validator.d.ts.map +1 -1
  720. package/dest/p2p/message_validator.js +2 -1
  721. package/dest/p2p/peer_error.d.ts +3 -1
  722. package/dest/p2p/peer_error.d.ts.map +1 -1
  723. package/dest/p2p/peer_error.js +5 -0
  724. package/dest/p2p/signature_utils.d.ts +8 -7
  725. package/dest/p2p/signature_utils.d.ts.map +1 -1
  726. package/dest/p2p/signature_utils.js +10 -6
  727. package/dest/p2p/signed_txs.d.ts +42 -0
  728. package/dest/p2p/signed_txs.d.ts.map +1 -0
  729. package/dest/p2p/signed_txs.js +75 -0
  730. package/dest/p2p/topic_type.d.ts +10 -13
  731. package/dest/p2p/topic_type.d.ts.map +1 -1
  732. package/dest/p2p/topic_type.js +30 -20
  733. package/dest/parity/index.d.ts +3 -4
  734. package/dest/parity/index.d.ts.map +1 -1
  735. package/dest/parity/index.js +2 -3
  736. package/dest/parity/parity_base_private_inputs.d.ts +35 -0
  737. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -0
  738. package/dest/parity/{base_parity_inputs.js → parity_base_private_inputs.js} +11 -7
  739. package/dest/parity/parity_public_inputs.d.ts +4 -6
  740. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  741. package/dest/parity/parity_public_inputs.js +1 -1
  742. package/dest/parity/parity_root_private_inputs.d.ts +39 -0
  743. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -0
  744. package/dest/parity/{root_parity_inputs.js → parity_root_private_inputs.js} +12 -13
  745. package/dest/proofs/chonk_proof.d.ts +28 -0
  746. package/dest/proofs/chonk_proof.d.ts.map +1 -0
  747. package/dest/proofs/chonk_proof.js +106 -0
  748. package/dest/proofs/index.d.ts +3 -2
  749. package/dest/proofs/index.d.ts.map +1 -1
  750. package/dest/proofs/index.js +2 -1
  751. package/dest/proofs/proof.d.ts +7 -8
  752. package/dest/proofs/proof.d.ts.map +1 -1
  753. package/dest/proofs/proof.js +29 -21
  754. package/dest/proofs/proof_data.d.ts +33 -0
  755. package/dest/proofs/proof_data.d.ts.map +1 -0
  756. package/dest/proofs/proof_data.js +39 -0
  757. package/dest/proofs/proving_request_type.d.ts +18 -13
  758. package/dest/proofs/proving_request_type.d.ts.map +1 -1
  759. package/dest/proofs/proving_request_type.js +17 -11
  760. package/dest/proofs/recursive_proof.d.ts +5 -22
  761. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  762. package/dest/proofs/recursive_proof.js +1 -1
  763. package/dest/rollup/avm_proof_data.d.ts +4 -16
  764. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  765. package/dest/rollup/avm_proof_data.js +1 -25
  766. package/dest/rollup/base_rollup_hints.d.ts +36 -37
  767. package/dest/rollup/base_rollup_hints.d.ts.map +1 -1
  768. package/dest/rollup/base_rollup_hints.js +41 -40
  769. package/dest/rollup/block_constant_data.d.ts +51 -0
  770. package/dest/rollup/block_constant_data.d.ts.map +1 -0
  771. package/dest/rollup/block_constant_data.js +50 -0
  772. package/dest/rollup/block_headers_hash.d.ts +4 -0
  773. package/dest/rollup/block_headers_hash.d.ts.map +1 -0
  774. package/dest/rollup/block_headers_hash.js +9 -0
  775. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +50 -0
  776. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -0
  777. package/dest/rollup/{block_merge_rollup.js → block_merge_rollup_private_inputs.js} +14 -13
  778. package/dest/rollup/block_rollup_public_inputs.d.ts +128 -0
  779. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -0
  780. package/dest/rollup/block_rollup_public_inputs.js +87 -0
  781. package/dest/rollup/block_root_rollup_private_inputs.d.ts +225 -0
  782. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -0
  783. package/dest/rollup/block_root_rollup_private_inputs.js +249 -0
  784. package/dest/rollup/checkpoint_constant_data.d.ts +77 -0
  785. package/dest/rollup/checkpoint_constant_data.d.ts.map +1 -0
  786. package/dest/rollup/checkpoint_constant_data.js +82 -0
  787. package/dest/rollup/checkpoint_header.d.ts +119 -0
  788. package/dest/rollup/checkpoint_header.d.ts.map +1 -0
  789. package/dest/rollup/checkpoint_header.js +214 -0
  790. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +30 -0
  791. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -0
  792. package/dest/rollup/checkpoint_merge_rollup_private_inputs.js +37 -0
  793. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +122 -0
  794. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -0
  795. package/dest/rollup/checkpoint_rollup_public_inputs.js +116 -0
  796. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +141 -0
  797. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -0
  798. package/dest/rollup/checkpoint_root_rollup_private_inputs.js +190 -0
  799. package/dest/rollup/epoch_constant_data.d.ts +56 -0
  800. package/dest/rollup/epoch_constant_data.d.ts.map +1 -0
  801. package/dest/rollup/epoch_constant_data.js +53 -0
  802. package/dest/rollup/index.d.ts +21 -17
  803. package/dest/rollup/index.d.ts.map +1 -1
  804. package/dest/rollup/index.js +20 -16
  805. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +21 -0
  806. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -0
  807. package/dest/rollup/private_tx_base_rollup_private_inputs.js +42 -0
  808. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +21 -0
  809. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -0
  810. package/dest/rollup/public_chonk_verifier_private_inputs.js +43 -0
  811. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +20 -0
  812. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -0
  813. package/dest/rollup/public_chonk_verifier_public_inputs.js +42 -0
  814. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +23 -0
  815. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -0
  816. package/dest/rollup/public_tx_base_rollup_private_inputs.js +46 -0
  817. package/dest/rollup/root_rollup_private_inputs.d.ts +67 -0
  818. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -0
  819. package/dest/rollup/root_rollup_private_inputs.js +69 -0
  820. package/dest/rollup/root_rollup_public_inputs.d.ts +59 -0
  821. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -0
  822. package/dest/rollup/root_rollup_public_inputs.js +77 -0
  823. package/dest/rollup/tree_snapshot_diff_hints.d.ts +87 -0
  824. package/dest/rollup/tree_snapshot_diff_hints.d.ts.map +1 -0
  825. package/dest/rollup/tree_snapshot_diff_hints.js +75 -0
  826. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +44 -0
  827. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -0
  828. package/dest/rollup/{merge_rollup.js → tx_merge_rollup_private_inputs.js} +14 -13
  829. package/dest/rollup/tx_rollup_public_inputs.d.ts +115 -0
  830. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -0
  831. package/dest/rollup/{base_or_merge_rollup_public_inputs.js → tx_rollup_public_inputs.js} +17 -22
  832. package/dest/schemas/index.d.ts +1 -1
  833. package/dest/schemas/schemas.d.ts +93 -19
  834. package/dest/schemas/schemas.d.ts.map +1 -1
  835. package/dest/schemas/schemas.js +15 -2
  836. package/dest/slashing/empire.d.ts +31 -0
  837. package/dest/slashing/empire.d.ts.map +1 -0
  838. package/dest/slashing/empire.js +87 -0
  839. package/dest/slashing/helpers.d.ts +36 -0
  840. package/dest/slashing/helpers.d.ts.map +1 -0
  841. package/dest/slashing/helpers.js +97 -0
  842. package/dest/slashing/index.d.ts +7 -0
  843. package/dest/slashing/index.d.ts.map +1 -0
  844. package/dest/slashing/index.js +6 -0
  845. package/dest/slashing/interfaces.d.ts +12 -0
  846. package/dest/slashing/interfaces.d.ts.map +1 -0
  847. package/dest/slashing/interfaces.js +1 -0
  848. package/dest/slashing/serialization.d.ts +8 -0
  849. package/dest/slashing/serialization.d.ts.map +1 -0
  850. package/dest/slashing/serialization.js +78 -0
  851. package/dest/slashing/tally.d.ts +29 -0
  852. package/dest/slashing/tally.d.ts.map +1 -0
  853. package/dest/slashing/tally.js +92 -0
  854. package/dest/slashing/types.d.ts +165 -0
  855. package/dest/slashing/types.d.ts.map +1 -0
  856. package/dest/slashing/types.js +100 -0
  857. package/dest/snapshots/download.d.ts +9 -0
  858. package/dest/snapshots/download.d.ts.map +1 -0
  859. package/dest/snapshots/download.js +93 -0
  860. package/dest/snapshots/index.d.ts +4 -0
  861. package/dest/snapshots/index.d.ts.map +1 -0
  862. package/dest/snapshots/index.js +3 -0
  863. package/dest/snapshots/types.d.ts +120 -0
  864. package/dest/snapshots/types.d.ts.map +1 -0
  865. package/dest/snapshots/types.js +35 -0
  866. package/dest/snapshots/upload.d.ts +8 -0
  867. package/dest/snapshots/upload.d.ts.map +1 -0
  868. package/dest/snapshots/upload.js +42 -0
  869. package/dest/stats/index.d.ts +1 -1
  870. package/dest/stats/stats.d.ts +19 -17
  871. package/dest/stats/stats.d.ts.map +1 -1
  872. package/dest/tests/factories.d.ts +145 -131
  873. package/dest/tests/factories.d.ts.map +1 -1
  874. package/dest/tests/factories.js +467 -384
  875. package/dest/tests/fixtures.d.ts +1 -1
  876. package/dest/tests/index.d.ts +1 -1
  877. package/dest/tests/jest.d.ts +1 -1
  878. package/dest/tests/jest.js +1 -1
  879. package/dest/tests/mocks.d.ts +147 -23
  880. package/dest/tests/mocks.d.ts.map +1 -1
  881. package/dest/tests/mocks.js +361 -92
  882. package/dest/timetable/index.d.ts +37 -0
  883. package/dest/timetable/index.d.ts.map +1 -0
  884. package/dest/timetable/index.js +39 -0
  885. package/dest/trees/append_only_tree_snapshot.d.ts +14 -8
  886. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  887. package/dest/trees/append_only_tree_snapshot.js +21 -4
  888. package/dest/trees/database_public_state_source.d.ts +11 -0
  889. package/dest/trees/database_public_state_source.d.ts.map +1 -0
  890. package/dest/trees/database_public_state_source.js +18 -0
  891. package/dest/trees/index.d.ts +2 -2
  892. package/dest/trees/index.d.ts.map +1 -1
  893. package/dest/trees/index.js +1 -1
  894. package/dest/trees/merkle_tree_id.d.ts +17 -9
  895. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  896. package/dest/trees/merkle_tree_id.js +10 -0
  897. package/dest/trees/nullifier_leaf.d.ts +67 -19
  898. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  899. package/dest/trees/nullifier_leaf.js +70 -23
  900. package/dest/trees/nullifier_membership_witness.d.ts +40 -45
  901. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  902. package/dest/trees/nullifier_membership_witness.js +15 -2
  903. package/dest/trees/public_data_leaf.d.ts +81 -32
  904. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  905. package/dest/trees/public_data_leaf.js +70 -34
  906. package/dest/trees/public_data_witness.d.ts +47 -54
  907. package/dest/trees/public_data_witness.d.ts.map +1 -1
  908. package/dest/trees/public_data_witness.js +21 -5
  909. package/dest/tx/block_header.d.ts +34 -28
  910. package/dest/tx/block_header.d.ts.map +1 -1
  911. package/dest/tx/block_header.js +52 -25
  912. package/dest/tx/call_context.d.ts +8 -11
  913. package/dest/tx/call_context.d.ts.map +1 -1
  914. package/dest/tx/call_context.js +3 -1
  915. package/dest/tx/capsule.d.ts +5 -5
  916. package/dest/tx/capsule.d.ts.map +1 -1
  917. package/dest/tx/capsule.js +3 -1
  918. package/dest/tx/execution_payload.d.ts +45 -0
  919. package/dest/tx/execution_payload.d.ts.map +1 -0
  920. package/dest/tx/execution_payload.js +40 -0
  921. package/dest/tx/function_data.d.ts +4 -6
  922. package/dest/tx/function_data.d.ts.map +1 -1
  923. package/dest/tx/function_data.js +1 -1
  924. package/dest/tx/global_variable_builder.d.ts +8 -5
  925. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  926. package/dest/tx/global_variables.d.ts +76 -44
  927. package/dest/tx/global_variables.d.ts.map +1 -1
  928. package/dest/tx/global_variables.js +72 -22
  929. package/dest/tx/hashed_values.d.ts +19 -9
  930. package/dest/tx/hashed_values.d.ts.map +1 -1
  931. package/dest/tx/hashed_values.js +27 -10
  932. package/dest/tx/in_tx.d.ts +26 -0
  933. package/dest/tx/in_tx.d.ts.map +1 -0
  934. package/dest/tx/in_tx.js +14 -0
  935. package/dest/tx/index.d.ts +11 -4
  936. package/dest/tx/index.d.ts.map +1 -1
  937. package/dest/tx/index.js +10 -3
  938. package/dest/tx/indexed_tx_effect.d.ts +31 -0
  939. package/dest/tx/indexed_tx_effect.d.ts.map +1 -0
  940. package/dest/tx/indexed_tx_effect.js +36 -0
  941. package/dest/tx/offchain_effect.d.ts +14 -0
  942. package/dest/tx/offchain_effect.d.ts.map +1 -0
  943. package/dest/tx/offchain_effect.js +4 -0
  944. package/dest/tx/partial_state_reference.d.ts +12 -5
  945. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  946. package/dest/tx/partial_state_reference.js +22 -2
  947. package/dest/tx/private_execution_result.d.ts +71 -69
  948. package/dest/tx/private_execution_result.d.ts.map +1 -1
  949. package/dest/tx/private_execution_result.js +74 -100
  950. package/dest/tx/private_tx_constant_data.d.ts +60 -0
  951. package/dest/tx/private_tx_constant_data.d.ts.map +1 -0
  952. package/dest/tx/private_tx_constant_data.js +69 -0
  953. package/dest/tx/processed_tx.d.ts +10 -11
  954. package/dest/tx/processed_tx.d.ts.map +1 -1
  955. package/dest/tx/processed_tx.js +28 -25
  956. package/dest/tx/profiling.d.ts +495 -0
  957. package/dest/tx/profiling.d.ts.map +1 -0
  958. package/dest/tx/profiling.js +177 -0
  959. package/dest/tx/protocol_contracts.d.ts +37 -0
  960. package/dest/tx/protocol_contracts.d.ts.map +1 -0
  961. package/dest/tx/protocol_contracts.js +58 -0
  962. package/dest/tx/proven_tx.d.ts +129 -0
  963. package/dest/tx/proven_tx.d.ts.map +1 -0
  964. package/dest/tx/proven_tx.js +45 -0
  965. package/dest/tx/public_call_request_with_calldata.d.ts +46 -0
  966. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -0
  967. package/dest/tx/public_call_request_with_calldata.js +71 -0
  968. package/dest/tx/public_simulation_output.d.ts +9 -5
  969. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  970. package/dest/tx/public_simulation_output.js +21 -10
  971. package/dest/tx/simulated_tx.d.ts +1198 -47
  972. package/dest/tx/simulated_tx.d.ts.map +1 -1
  973. package/dest/tx/simulated_tx.js +55 -47
  974. package/dest/tx/state_reference.d.ts +18 -12
  975. package/dest/tx/state_reference.d.ts.map +1 -1
  976. package/dest/tx/state_reference.js +41 -6
  977. package/dest/tx/tree_snapshots.d.ts +15 -10
  978. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  979. package/dest/tx/tree_snapshots.js +15 -4
  980. package/dest/tx/tx.d.ts +85 -94
  981. package/dest/tx/tx.d.ts.map +1 -1
  982. package/dest/tx/tx.js +181 -156
  983. package/dest/tx/tx_constant_data.d.ts +9 -43
  984. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  985. package/dest/tx/tx_constant_data.js +12 -21
  986. package/dest/tx/tx_context.d.ts +35 -37
  987. package/dest/tx/tx_context.d.ts.map +1 -1
  988. package/dest/tx/tx_context.js +1 -1
  989. package/dest/tx/tx_effect.d.ts +22 -54
  990. package/dest/tx/tx_effect.d.ts.map +1 -1
  991. package/dest/tx/tx_effect.js +85 -275
  992. package/dest/tx/tx_execution_request.d.ts +15 -8
  993. package/dest/tx/tx_execution_request.d.ts.map +1 -1
  994. package/dest/tx/tx_execution_request.js +23 -12
  995. package/dest/tx/tx_hash.d.ts +13 -6
  996. package/dest/tx/tx_hash.d.ts.map +1 -1
  997. package/dest/tx/tx_hash.js +25 -6
  998. package/dest/tx/tx_receipt.d.ts +64 -45
  999. package/dest/tx/tx_receipt.d.ts.map +1 -1
  1000. package/dest/tx/tx_receipt.js +60 -27
  1001. package/dest/tx/tx_request.d.ts +13 -11
  1002. package/dest/tx/tx_request.d.ts.map +1 -1
  1003. package/dest/tx/tx_request.js +15 -12
  1004. package/dest/tx/validator/empty_validator.d.ts +2 -2
  1005. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  1006. package/dest/tx/validator/error_texts.d.ts +29 -0
  1007. package/dest/tx/validator/error_texts.d.ts.map +1 -0
  1008. package/dest/tx/validator/error_texts.js +37 -0
  1009. package/dest/tx/validator/tx_validator.d.ts +4 -5
  1010. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  1011. package/dest/tx/validator/tx_validator.js +7 -4
  1012. package/dest/types/index.d.ts +1 -1
  1013. package/dest/types/shared.d.ts +10 -12
  1014. package/dest/types/shared.d.ts.map +1 -1
  1015. package/dest/types/shared.js +0 -8
  1016. package/dest/update-checker/index.d.ts +3 -0
  1017. package/dest/update-checker/index.d.ts.map +1 -0
  1018. package/dest/update-checker/index.js +2 -0
  1019. package/dest/update-checker/package_version.d.ts +3 -0
  1020. package/dest/update-checker/package_version.d.ts.map +1 -0
  1021. package/dest/update-checker/package_version.js +24 -0
  1022. package/dest/update-checker/version_checker.d.ts +25 -0
  1023. package/dest/update-checker/version_checker.d.ts.map +1 -0
  1024. package/dest/update-checker/version_checker.js +50 -0
  1025. package/dest/validators/errors.d.ts +38 -0
  1026. package/dest/validators/errors.d.ts.map +1 -0
  1027. package/dest/validators/errors.js +52 -0
  1028. package/dest/validators/index.d.ts +4 -0
  1029. package/dest/validators/index.d.ts.map +1 -0
  1030. package/dest/validators/index.js +2 -0
  1031. package/dest/validators/schemas.d.ts +650 -0
  1032. package/dest/validators/schemas.d.ts.map +1 -0
  1033. package/dest/validators/schemas.js +53 -0
  1034. package/dest/validators/types.d.ts +53 -0
  1035. package/dest/validators/types.d.ts.map +1 -0
  1036. package/dest/validators/types.js +1 -0
  1037. package/dest/versioning/index.d.ts +1 -1
  1038. package/dest/versioning/versioning.d.ts +9 -7
  1039. package/dest/versioning/versioning.d.ts.map +1 -1
  1040. package/dest/versioning/versioning.js +27 -19
  1041. package/dest/vks/index.d.ts +2 -2
  1042. package/dest/vks/index.d.ts.map +1 -1
  1043. package/dest/vks/index.js +1 -1
  1044. package/dest/vks/verification_key.d.ts +19 -14
  1045. package/dest/vks/verification_key.d.ts.map +1 -1
  1046. package/dest/vks/verification_key.js +30 -12
  1047. package/dest/vks/vk_data.d.ts +30 -0
  1048. package/dest/vks/vk_data.d.ts.map +1 -0
  1049. package/dest/vks/{vk_witness_data.js → vk_data.js} +11 -11
  1050. package/dest/world-state/index.d.ts +2 -0
  1051. package/dest/world-state/index.d.ts.map +1 -0
  1052. package/dest/world-state/index.js +1 -0
  1053. package/dest/world-state/world_state_revision.d.ts +54 -0
  1054. package/dest/world-state/world_state_revision.d.ts.map +1 -0
  1055. package/dest/world-state/world_state_revision.js +44 -0
  1056. package/dest/zkpassport/index.d.ts +34 -0
  1057. package/dest/zkpassport/index.d.ts.map +1 -0
  1058. package/dest/zkpassport/index.js +82 -0
  1059. package/package.json +64 -26
  1060. package/src/abi/abi.ts +138 -102
  1061. package/src/abi/authorization_selector.ts +96 -0
  1062. package/src/abi/buffer.ts +1 -1
  1063. package/src/abi/contract_artifact.ts +101 -70
  1064. package/src/abi/decoder.ts +33 -19
  1065. package/src/abi/encoder.ts +137 -9
  1066. package/src/abi/event_metadata_definition.ts +10 -0
  1067. package/src/abi/event_selector.ts +3 -2
  1068. package/src/abi/function_call.ts +31 -5
  1069. package/src/abi/function_selector.ts +11 -2
  1070. package/src/abi/index.ts +2 -0
  1071. package/src/abi/note_selector.ts +2 -2
  1072. package/src/abi/selector.ts +1 -1
  1073. package/src/abi/utils.ts +57 -0
  1074. package/src/auth_witness/auth_witness.ts +30 -1
  1075. package/src/avm/avm.ts +1330 -127
  1076. package/src/avm/avm_accumulated_data.ts +170 -13
  1077. package/src/avm/avm_circuit_public_inputs.ts +121 -4
  1078. package/src/avm/contract_storage_read.ts +1 -1
  1079. package/src/avm/contract_storage_update_request.ts +1 -1
  1080. package/src/avm/index.ts +1 -1
  1081. package/src/avm/message_pack.ts +38 -3
  1082. package/src/avm/public_call_stack_item_compressed.ts +1 -1
  1083. package/src/avm/public_data_read.ts +1 -1
  1084. package/src/avm/public_data_update_request.ts +1 -1
  1085. package/src/avm/public_data_write.ts +37 -2
  1086. package/src/avm/public_inner_call_request.ts +2 -2
  1087. package/src/avm/revert_code.ts +50 -15
  1088. package/src/aztec-address/index.ts +28 -3
  1089. package/src/block/attestation_info.ts +72 -0
  1090. package/src/block/block_data.ts +26 -0
  1091. package/src/block/block_hash.ts +31 -16
  1092. package/src/block/block_parameter.ts +10 -0
  1093. package/src/block/body.ts +24 -39
  1094. package/src/block/checkpointed_l2_block.ts +70 -0
  1095. package/src/block/in_block.ts +28 -15
  1096. package/src/block/index.ts +8 -3
  1097. package/src/block/l2_block.ts +143 -112
  1098. package/src/block/l2_block_info.ts +64 -0
  1099. package/src/block/l2_block_source.ts +296 -54
  1100. package/src/block/l2_block_stream/index.ts +4 -0
  1101. package/src/block/l2_block_stream/interfaces.ts +44 -0
  1102. package/src/block/l2_block_stream/l2_block_stream.ts +328 -0
  1103. package/src/block/l2_block_stream/l2_tips_memory_store.ts +84 -0
  1104. package/src/block/l2_block_stream/l2_tips_store_base.ts +226 -0
  1105. package/src/block/proposal/attestations_and_signers.ts +140 -0
  1106. package/src/block/proposal/committee_attestation.ts +120 -0
  1107. package/src/block/proposal/index.ts +2 -0
  1108. package/src/block/test/index.ts +1 -0
  1109. package/src/block/test/l2_tips_store_test_suite.ts +537 -0
  1110. package/src/block/validate_block_result.ts +129 -0
  1111. package/src/checkpoint/checkpoint.ts +185 -0
  1112. package/src/checkpoint/checkpoint_data.ts +51 -0
  1113. package/src/checkpoint/checkpoint_info.ts +52 -0
  1114. package/src/checkpoint/index.ts +5 -0
  1115. package/src/checkpoint/published_checkpoint.ts +108 -0
  1116. package/src/checkpoint/validate.ts +230 -0
  1117. package/src/config/{config.ts → chain-config.ts} +8 -7
  1118. package/src/config/index.ts +3 -1
  1119. package/src/config/node-rpc-config.ts +37 -0
  1120. package/src/config/sequencer-config.ts +37 -0
  1121. package/src/contract/artifact_hash.ts +16 -14
  1122. package/src/contract/complete_address.ts +1 -1
  1123. package/src/contract/contract_address.ts +7 -7
  1124. package/src/contract/contract_class.ts +12 -29
  1125. package/src/contract/contract_class_id.ts +16 -9
  1126. package/src/contract/contract_deployment_data.ts +125 -0
  1127. package/src/contract/contract_instance.ts +27 -18
  1128. package/src/contract/contract_instance_update.ts +8 -7
  1129. package/src/contract/deployment_info.ts +1 -1
  1130. package/src/contract/index.ts +2 -1
  1131. package/src/contract/interfaces/contract_class.ts +98 -79
  1132. package/src/contract/interfaces/contract_data_source.ts +14 -22
  1133. package/src/contract/interfaces/contract_instance.ts +48 -16
  1134. package/src/contract/interfaces/contract_instance_update.ts +15 -12
  1135. package/src/contract/interfaces/node-info.ts +6 -3
  1136. package/src/contract/interfaces/protocol_contract_addresses.ts +5 -10
  1137. package/src/contract/partial_address.ts +1 -1
  1138. package/src/contract/private_function.ts +8 -6
  1139. package/src/contract/private_function_membership_proof.ts +11 -11
  1140. package/src/contract/{unconstrained_function_membership_proof.ts → utility_function_membership_proof.ts} +19 -19
  1141. package/src/database-version/database_version.ts +87 -0
  1142. package/src/database-version/version_manager.ts +60 -83
  1143. package/src/{shared_mutable/shared_mutable_values.ts → delayed_public_mutable/delayed_public_mutable_values.ts} +29 -27
  1144. package/src/delayed_public_mutable/delayed_public_mutable_values_with_hash.ts +38 -0
  1145. package/src/delayed_public_mutable/index.ts +4 -0
  1146. package/src/delayed_public_mutable/scheduled_delay_change.ts +17 -0
  1147. package/src/{shared_mutable → delayed_public_mutable}/scheduled_value_change.ts +12 -6
  1148. package/src/deserialization/index.ts +21 -0
  1149. package/src/epoch-helpers/index.ts +103 -20
  1150. package/src/errors/proving_error.ts +5 -1
  1151. package/src/errors/simulation_error.ts +3 -3
  1152. package/src/fees/transaction_fee.ts +29 -9
  1153. package/src/file-store/factory.ts +76 -0
  1154. package/src/file-store/gcs.ts +121 -0
  1155. package/src/file-store/http.ts +70 -0
  1156. package/src/file-store/index.ts +2 -0
  1157. package/src/file-store/interface.ts +25 -0
  1158. package/src/file-store/local.ts +56 -0
  1159. package/src/file-store/s3.ts +259 -0
  1160. package/src/gas/README.md +123 -0
  1161. package/src/gas/gas.ts +24 -3
  1162. package/src/gas/gas_fees.ts +46 -22
  1163. package/src/gas/gas_settings.ts +31 -10
  1164. package/src/gas/gas_used.ts +22 -1
  1165. package/src/ha-signing/config.ts +156 -0
  1166. package/src/ha-signing/index.ts +27 -0
  1167. package/src/ha-signing/local_config.ts +46 -0
  1168. package/src/ha-signing/types.ts +112 -0
  1169. package/src/hash/hash.ts +60 -37
  1170. package/src/hash/map_slot.ts +4 -3
  1171. package/src/interfaces/allowed_element.ts +43 -0
  1172. package/src/interfaces/api_limit.ts +5 -0
  1173. package/src/interfaces/archiver.ts +110 -37
  1174. package/src/interfaces/aztec-node-admin.ts +126 -0
  1175. package/src/interfaces/aztec-node.ts +301 -237
  1176. package/src/interfaces/block-builder.ts +112 -10
  1177. package/src/interfaces/client.ts +2 -1
  1178. package/src/interfaces/configs.ts +126 -42
  1179. package/src/interfaces/epoch-prover.ts +46 -17
  1180. package/src/interfaces/get_logs_response.ts +13 -9
  1181. package/src/interfaces/l2_logs_source.ts +27 -13
  1182. package/src/interfaces/merkle_tree_operations.ts +37 -21
  1183. package/src/interfaces/p2p.ts +28 -16
  1184. package/src/interfaces/private_kernel_prover.ts +13 -4
  1185. package/src/interfaces/prover-agent.ts +9 -10
  1186. package/src/interfaces/prover-broker.ts +22 -0
  1187. package/src/interfaces/prover-client.ts +58 -20
  1188. package/src/interfaces/prover-coordination.ts +6 -16
  1189. package/src/interfaces/prover-node.ts +10 -2
  1190. package/src/interfaces/proving-job.ts +244 -139
  1191. package/src/interfaces/public_state_source.ts +9 -0
  1192. package/src/interfaces/server.ts +11 -5
  1193. package/src/interfaces/server_circuit_prover.ts +111 -59
  1194. package/src/interfaces/service.ts +4 -2
  1195. package/src/interfaces/slasher.ts +56 -0
  1196. package/src/interfaces/tx_provider.ts +17 -0
  1197. package/src/interfaces/validator.ts +182 -0
  1198. package/src/interfaces/world_state.ts +47 -30
  1199. package/src/kernel/claimed_length_array.ts +104 -0
  1200. package/src/kernel/hiding_kernel_private_inputs.ts +37 -0
  1201. package/src/kernel/hints/build_note_hash_read_request_hints.ts +59 -57
  1202. package/src/kernel/hints/build_nullifier_read_request_hints.ts +61 -91
  1203. package/src/kernel/hints/build_transient_data_hints.ts +31 -18
  1204. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +5 -7
  1205. package/src/kernel/hints/index.ts +3 -4
  1206. package/src/kernel/hints/key_validation_hint.ts +5 -7
  1207. package/src/kernel/hints/key_validation_request.ts +2 -1
  1208. package/src/kernel/hints/key_validation_request_and_separator.ts +49 -0
  1209. package/src/kernel/hints/note_hash_read_request_hints.ts +9 -18
  1210. package/src/kernel/hints/nullifier_read_request_hints.ts +11 -20
  1211. package/src/kernel/hints/private_kernel_reset_hints.ts +37 -54
  1212. package/src/kernel/hints/read_request.ts +5 -2
  1213. package/src/kernel/hints/read_request_hints.ts +59 -38
  1214. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +11 -11
  1215. package/src/kernel/hints/scoped_value_cache.ts +1 -1
  1216. package/src/kernel/hints/{transient_data_index_hint.ts → transient_data_squashing_hint.ts} +10 -7
  1217. package/src/kernel/hints/tree_leaf_read_request.ts +5 -2
  1218. package/src/kernel/index.ts +4 -2
  1219. package/src/kernel/log_hash.ts +87 -15
  1220. package/src/kernel/note_hash.ts +9 -3
  1221. package/src/kernel/nullifier.ts +17 -10
  1222. package/src/kernel/padded_side_effects.ts +73 -0
  1223. package/src/kernel/private_accumulated_data.ts +25 -25
  1224. package/src/kernel/private_call_data.ts +6 -25
  1225. package/src/kernel/private_call_request.ts +2 -2
  1226. package/src/kernel/private_circuit_public_inputs.ts +165 -121
  1227. package/src/kernel/private_context_inputs.ts +3 -3
  1228. package/src/kernel/private_kernel_circuit_public_inputs.ts +21 -6
  1229. package/src/kernel/private_kernel_data.ts +7 -31
  1230. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +12 -5
  1231. package/src/kernel/private_kernel_prover_output.ts +70 -0
  1232. package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +16 -13
  1233. package/src/kernel/private_kernel_reset_dimensions.ts +27 -27
  1234. package/src/kernel/private_kernel_simulated_output.ts +7 -16
  1235. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +22 -5
  1236. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +51 -25
  1237. package/src/kernel/private_log_data.ts +14 -5
  1238. package/src/kernel/private_to_avm_accumulated_data.ts +54 -2
  1239. package/src/kernel/private_to_public_accumulated_data.ts +1 -1
  1240. package/src/kernel/private_to_public_accumulated_data_builder.ts +1 -1
  1241. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +20 -11
  1242. package/src/kernel/private_to_rollup_accumulated_data.ts +1 -1
  1243. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +20 -14
  1244. package/src/kernel/private_validation_requests.ts +22 -65
  1245. package/src/kernel/public_call_request.ts +120 -29
  1246. package/src/kernel/utils/optional_number.ts +1 -1
  1247. package/src/kernel/utils/order_and_comparison.ts +0 -25
  1248. package/src/keys/derivation.ts +22 -39
  1249. package/src/keys/key_types.ts +6 -2
  1250. package/src/keys/public_key.ts +1 -1
  1251. package/src/keys/public_keys.ts +25 -5
  1252. package/src/keys/utils.ts +8 -4
  1253. package/src/kv-store/config.ts +36 -0
  1254. package/src/kv-store/index.ts +1 -0
  1255. package/src/l1-contracts/index.ts +1 -0
  1256. package/src/l1-contracts/slash_factory.ts +180 -0
  1257. package/src/logs/contract_class_log.ts +168 -66
  1258. package/src/logs/debug_log.ts +51 -0
  1259. package/src/logs/debug_log_store.ts +54 -0
  1260. package/src/logs/extended_directional_app_tagging_secret.ts +87 -0
  1261. package/src/logs/index.ts +10 -3
  1262. package/src/logs/log_filter.ts +5 -0
  1263. package/src/logs/log_id.ts +32 -17
  1264. package/src/logs/message_context.ts +62 -0
  1265. package/src/logs/pending_tagged_log.ts +41 -0
  1266. package/src/logs/pre_tag.ts +25 -0
  1267. package/src/logs/private_log.ts +79 -26
  1268. package/src/logs/public_log.ts +160 -37
  1269. package/src/logs/shared_secret_derivation.ts +26 -0
  1270. package/src/logs/siloed_tag.ts +50 -0
  1271. package/src/logs/tag.ts +42 -0
  1272. package/src/logs/tagging_index_range.ts +24 -0
  1273. package/src/logs/tx_scoped_l2_log.ts +48 -33
  1274. package/src/messaging/in_hash.ts +12 -0
  1275. package/src/messaging/inbox_leaf.ts +20 -4
  1276. package/src/messaging/index.ts +3 -0
  1277. package/src/messaging/l1_actor.ts +2 -2
  1278. package/src/messaging/l1_to_l2_message.ts +3 -2
  1279. package/src/messaging/l1_to_l2_message_source.ts +12 -8
  1280. package/src/messaging/l2_actor.ts +2 -2
  1281. package/src/messaging/l2_to_l1_membership.ts +290 -0
  1282. package/src/messaging/l2_to_l1_message.ts +131 -37
  1283. package/src/messaging/out_hash.ts +77 -0
  1284. package/src/noir/index.ts +24 -7
  1285. package/src/note/index.ts +1 -2
  1286. package/src/note/note.ts +65 -6
  1287. package/src/note/note_dao.ts +187 -0
  1288. package/src/p2p/attestation_utils.ts +91 -0
  1289. package/src/p2p/block_proposal.ts +247 -36
  1290. package/src/p2p/checkpoint_attestation.ts +148 -0
  1291. package/src/p2p/checkpoint_proposal.ts +370 -0
  1292. package/src/p2p/client_type.ts +0 -6
  1293. package/src/p2p/consensus_payload.ts +65 -31
  1294. package/src/p2p/constants.ts +6 -0
  1295. package/src/p2p/gossipable.ts +60 -15
  1296. package/src/p2p/index.ts +5 -2
  1297. package/src/p2p/interface.ts +0 -24
  1298. package/src/p2p/message_validator.ts +14 -2
  1299. package/src/p2p/peer_error.ts +7 -0
  1300. package/src/p2p/signature_utils.ts +12 -11
  1301. package/src/p2p/signed_txs.ts +88 -0
  1302. package/src/p2p/topic_type.ts +32 -19
  1303. package/src/parity/index.ts +2 -3
  1304. package/src/parity/{base_parity_inputs.ts → parity_base_private_inputs.ts} +14 -12
  1305. package/src/parity/parity_public_inputs.ts +1 -1
  1306. package/src/parity/{root_parity_inputs.ts → parity_root_private_inputs.ts} +16 -18
  1307. package/src/proofs/chonk_proof.ts +122 -0
  1308. package/src/proofs/index.ts +2 -1
  1309. package/src/proofs/proof.ts +30 -22
  1310. package/src/proofs/proof_data.ts +60 -0
  1311. package/src/proofs/proving_request_type.ts +14 -9
  1312. package/src/proofs/recursive_proof.ts +1 -1
  1313. package/src/rollup/avm_proof_data.ts +3 -32
  1314. package/src/rollup/base_rollup_hints.ts +42 -41
  1315. package/src/rollup/block_constant_data.ts +73 -0
  1316. package/src/rollup/block_headers_hash.ts +12 -0
  1317. package/src/rollup/{block_merge_rollup.ts → block_merge_rollup_private_inputs.ts} +15 -11
  1318. package/src/rollup/block_rollup_public_inputs.ts +125 -0
  1319. package/src/rollup/block_root_rollup_private_inputs.ts +303 -0
  1320. package/src/rollup/checkpoint_constant_data.ts +124 -0
  1321. package/src/rollup/checkpoint_header.ts +297 -0
  1322. package/src/rollup/checkpoint_merge_rollup_private_inputs.ts +49 -0
  1323. package/src/rollup/checkpoint_rollup_public_inputs.ts +151 -0
  1324. package/src/rollup/checkpoint_root_rollup_private_inputs.ts +232 -0
  1325. package/src/rollup/epoch_constant_data.ts +62 -0
  1326. package/src/rollup/index.ts +20 -16
  1327. package/src/rollup/private_tx_base_rollup_private_inputs.ts +53 -0
  1328. package/src/rollup/public_chonk_verifier_private_inputs.ts +54 -0
  1329. package/src/rollup/public_chonk_verifier_public_inputs.ts +53 -0
  1330. package/src/rollup/public_tx_base_rollup_private_inputs.ts +57 -0
  1331. package/src/rollup/root_rollup_private_inputs.ts +90 -0
  1332. package/src/rollup/root_rollup_public_inputs.ts +108 -0
  1333. package/src/rollup/{state_diff_hints.ts → tree_snapshot_diff_hints.ts} +27 -42
  1334. package/src/rollup/{merge_rollup.ts → tx_merge_rollup_private_inputs.ts} +13 -9
  1335. package/src/rollup/{base_or_merge_rollup_public_inputs.ts → tx_rollup_public_inputs.ts} +18 -26
  1336. package/src/schemas/schemas.ts +27 -1
  1337. package/src/slashing/empire.ts +104 -0
  1338. package/src/slashing/helpers.ts +149 -0
  1339. package/src/slashing/index.ts +6 -0
  1340. package/src/slashing/interfaces.ts +13 -0
  1341. package/src/slashing/serialization.ts +103 -0
  1342. package/src/slashing/tally.ts +126 -0
  1343. package/src/slashing/types.ts +170 -0
  1344. package/src/snapshots/download.ts +123 -0
  1345. package/src/snapshots/index.ts +3 -0
  1346. package/src/snapshots/types.ts +74 -0
  1347. package/src/snapshots/upload.ts +64 -0
  1348. package/src/stats/stats.ts +38 -26
  1349. package/src/tests/factories.ts +872 -668
  1350. package/src/tests/jest.ts +1 -1
  1351. package/src/tests/mocks.ts +604 -151
  1352. package/src/timetable/index.ts +66 -0
  1353. package/src/trees/append_only_tree_snapshot.ts +18 -3
  1354. package/src/trees/database_public_state_source.ts +30 -0
  1355. package/src/trees/index.ts +1 -1
  1356. package/src/trees/merkle_tree_id.ts +12 -0
  1357. package/src/trees/nullifier_leaf.ts +81 -22
  1358. package/src/trees/nullifier_membership_witness.ts +18 -2
  1359. package/src/trees/public_data_leaf.ts +81 -32
  1360. package/src/trees/public_data_witness.ts +24 -5
  1361. package/src/tx/block_header.ts +68 -33
  1362. package/src/tx/call_context.ts +1 -1
  1363. package/src/tx/capsule.ts +3 -1
  1364. package/src/tx/execution_payload.ts +60 -0
  1365. package/src/tx/function_data.ts +1 -1
  1366. package/src/tx/global_variable_builder.ts +13 -5
  1367. package/src/tx/global_variables.ts +107 -32
  1368. package/src/tx/hashed_values.ts +30 -10
  1369. package/src/tx/in_tx.ts +24 -0
  1370. package/src/tx/index.ts +10 -3
  1371. package/src/tx/indexed_tx_effect.ts +41 -0
  1372. package/src/tx/offchain_effect.ts +20 -0
  1373. package/src/tx/partial_state_reference.ts +30 -5
  1374. package/src/tx/private_execution_result.ts +76 -107
  1375. package/src/tx/private_tx_constant_data.ts +94 -0
  1376. package/src/tx/processed_tx.ts +58 -49
  1377. package/src/tx/profiling.ts +210 -0
  1378. package/src/tx/protocol_contracts.ts +86 -0
  1379. package/src/tx/proven_tx.ts +62 -0
  1380. package/src/tx/public_call_request_with_calldata.ts +89 -0
  1381. package/src/tx/public_simulation_output.ts +28 -7
  1382. package/src/tx/simulated_tx.ts +73 -76
  1383. package/src/tx/state_reference.ts +49 -6
  1384. package/src/tx/tree_snapshots.ts +30 -14
  1385. package/src/tx/tx.ts +196 -209
  1386. package/src/tx/tx_constant_data.ts +9 -22
  1387. package/src/tx/tx_context.ts +1 -1
  1388. package/src/tx/tx_effect.ts +138 -316
  1389. package/src/tx/tx_execution_request.ts +17 -4
  1390. package/src/tx/tx_hash.ts +27 -6
  1391. package/src/tx/tx_receipt.ts +94 -57
  1392. package/src/tx/tx_request.ts +20 -10
  1393. package/src/tx/validator/empty_validator.ts +1 -1
  1394. package/src/tx/validator/error_texts.ts +45 -0
  1395. package/src/tx/validator/tx_validator.ts +14 -7
  1396. package/src/types/shared.ts +10 -9
  1397. package/src/update-checker/index.ts +2 -0
  1398. package/src/update-checker/package_version.ts +30 -0
  1399. package/src/update-checker/version_checker.ts +65 -0
  1400. package/src/validators/errors.ts +67 -0
  1401. package/src/validators/index.ts +3 -0
  1402. package/src/validators/schemas.ts +88 -0
  1403. package/src/validators/types.ts +48 -0
  1404. package/src/versioning/versioning.ts +33 -34
  1405. package/src/vks/index.ts +1 -1
  1406. package/src/vks/verification_key.ts +44 -19
  1407. package/src/vks/{vk_witness_data.ts → vk_data.ts} +7 -7
  1408. package/src/world-state/index.ts +1 -0
  1409. package/src/world-state/world_state_revision.ts +63 -0
  1410. package/src/zkpassport/index.ts +118 -0
  1411. package/dest/avm/public_data_hint.d.ts +0 -18
  1412. package/dest/avm/public_data_hint.d.ts.map +0 -1
  1413. package/dest/avm/public_data_hint.js +0 -27
  1414. package/dest/block/l2_block_code_to_purge.d.ts +0 -24
  1415. package/dest/block/l2_block_code_to_purge.d.ts.map +0 -1
  1416. package/dest/block/l2_block_code_to_purge.js +0 -51
  1417. package/dest/block/l2_block_downloader/index.d.ts +0 -3
  1418. package/dest/block/l2_block_downloader/index.d.ts.map +0 -1
  1419. package/dest/block/l2_block_downloader/index.js +0 -2
  1420. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +0 -58
  1421. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +0 -1
  1422. package/dest/block/l2_block_downloader/l2_block_downloader.js +0 -124
  1423. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +0 -57
  1424. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +0 -1
  1425. package/dest/block/l2_block_downloader/l2_block_stream.js +0 -137
  1426. package/dest/block/l2_block_number.d.ts +0 -5
  1427. package/dest/block/l2_block_number.d.ts.map +0 -1
  1428. package/dest/block/l2_block_number.js +0 -6
  1429. package/dest/block/nullifier_with_block_source.d.ts +0 -6
  1430. package/dest/block/nullifier_with_block_source.d.ts.map +0 -1
  1431. package/dest/config/config.d.ts +0 -18
  1432. package/dest/config/config.d.ts.map +0 -1
  1433. package/dest/contract/unconstrained_function_membership_proof.d.ts +0 -27
  1434. package/dest/contract/unconstrained_function_membership_proof.d.ts.map +0 -1
  1435. package/dest/database-version/index.d.ts +0 -2
  1436. package/dest/database-version/index.d.ts.map +0 -1
  1437. package/dest/database-version/index.js +0 -1
  1438. package/dest/event/event.d.ts +0 -24
  1439. package/dest/event/event.d.ts.map +0 -1
  1440. package/dest/event/event.js +0 -13
  1441. package/dest/event/event_metadata.d.ts +0 -38
  1442. package/dest/event/event_metadata.d.ts.map +0 -1
  1443. package/dest/event/event_metadata.js +0 -45
  1444. package/dest/event/index.d.ts +0 -4
  1445. package/dest/event/index.d.ts.map +0 -1
  1446. package/dest/event/index.js +0 -3
  1447. package/dest/event/l1_event_payload.d.ts +0 -52
  1448. package/dest/event/l1_event_payload.d.ts.map +0 -1
  1449. package/dest/event/l1_event_payload.js +0 -64
  1450. package/dest/interfaces/pxe.d.ts +0 -347
  1451. package/dest/interfaces/pxe.d.ts.map +0 -1
  1452. package/dest/interfaces/pxe.js +0 -104
  1453. package/dest/kernel/combined_constant_data.d.ts +0 -73
  1454. package/dest/kernel/combined_constant_data.d.ts.map +0 -1
  1455. package/dest/kernel/combined_constant_data.js +0 -73
  1456. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -32
  1457. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1458. package/dest/kernel/hints/rollup_validation_requests.d.ts +0 -40
  1459. package/dest/kernel/hints/rollup_validation_requests.d.ts.map +0 -1
  1460. package/dest/kernel/hints/rollup_validation_requests.js +0 -57
  1461. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +0 -21
  1462. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +0 -1
  1463. package/dest/kernel/hints/transient_data_index_hint.d.ts +0 -20
  1464. package/dest/kernel/hints/transient_data_index_hint.d.ts.map +0 -1
  1465. package/dest/kernel/private_kernel_prover_profile_result.d.ts +0 -25
  1466. package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +0 -1
  1467. package/dest/kernel/private_kernel_prover_profile_result.js +0 -7
  1468. package/dest/logs/indexed_tagging_secret.d.ts +0 -28
  1469. package/dest/logs/indexed_tagging_secret.d.ts.map +0 -1
  1470. package/dest/logs/indexed_tagging_secret.js +0 -50
  1471. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
  1472. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
  1473. package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
  1474. package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
  1475. package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
  1476. package/dest/logs/l1_payload/encryption_util.js +0 -46
  1477. package/dest/logs/l1_payload/index.d.ts +0 -3
  1478. package/dest/logs/l1_payload/index.d.ts.map +0 -1
  1479. package/dest/logs/l1_payload/index.js +0 -2
  1480. package/dest/logs/l1_payload/l1_note_payload.d.ts +0 -82
  1481. package/dest/logs/l1_payload/l1_note_payload.d.ts.map +0 -1
  1482. package/dest/logs/l1_payload/l1_note_payload.js +0 -129
  1483. package/dest/logs/l1_payload/payload.d.ts +0 -60
  1484. package/dest/logs/l1_payload/payload.d.ts.map +0 -1
  1485. package/dest/logs/l1_payload/payload.js +0 -61
  1486. package/dest/logs/l1_payload/shared_secret_derivation.d.ts +0 -16
  1487. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
  1488. package/dest/logs/log_with_tx_data.d.ts +0 -11
  1489. package/dest/logs/log_with_tx_data.d.ts.map +0 -1
  1490. package/dest/logs/log_with_tx_data.js +0 -36
  1491. package/dest/network/index.d.ts +0 -32
  1492. package/dest/network/index.d.ts.map +0 -1
  1493. package/dest/network/index.js +0 -30
  1494. package/dest/note/extended_note.d.ts +0 -124
  1495. package/dest/note/extended_note.d.ts.map +0 -1
  1496. package/dest/note/extended_note.js +0 -115
  1497. package/dest/note/notes_filter.d.ts +0 -27
  1498. package/dest/note/notes_filter.d.ts.map +0 -1
  1499. package/dest/note/notes_filter.js +0 -13
  1500. package/dest/p2p/block_attestation.d.ts +0 -49
  1501. package/dest/p2p/block_attestation.d.ts.map +0 -1
  1502. package/dest/p2p/block_attestation.js +0 -78
  1503. package/dest/parity/base_parity_inputs.d.ts +0 -37
  1504. package/dest/parity/base_parity_inputs.d.ts.map +0 -1
  1505. package/dest/parity/root_parity_input.d.ts +0 -54
  1506. package/dest/parity/root_parity_input.d.ts.map +0 -1
  1507. package/dest/parity/root_parity_input.js +0 -50
  1508. package/dest/parity/root_parity_inputs.d.ts +0 -39
  1509. package/dest/parity/root_parity_inputs.d.ts.map +0 -1
  1510. package/dest/proofs/client_ivc_proof.d.ts +0 -21
  1511. package/dest/proofs/client_ivc_proof.d.ts.map +0 -1
  1512. package/dest/proofs/client_ivc_proof.js +0 -44
  1513. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +0 -126
  1514. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +0 -1
  1515. package/dest/rollup/block_merge_rollup.d.ts +0 -45
  1516. package/dest/rollup/block_merge_rollup.d.ts.map +0 -1
  1517. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +0 -159
  1518. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +0 -1
  1519. package/dest/rollup/block_root_or_block_merge_public_inputs.js +0 -136
  1520. package/dest/rollup/block_root_rollup.d.ts +0 -262
  1521. package/dest/rollup/block_root_rollup.d.ts.map +0 -1
  1522. package/dest/rollup/block_root_rollup.js +0 -293
  1523. package/dest/rollup/constant_rollup_data.d.ts +0 -47
  1524. package/dest/rollup/constant_rollup_data.d.ts.map +0 -1
  1525. package/dest/rollup/constant_rollup_data.js +0 -45
  1526. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +0 -54
  1527. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +0 -1
  1528. package/dest/rollup/empty_block_root_rollup_inputs.js +0 -68
  1529. package/dest/rollup/merge_rollup.d.ts +0 -45
  1530. package/dest/rollup/merge_rollup.d.ts.map +0 -1
  1531. package/dest/rollup/previous_rollup_block_data.d.ts +0 -58
  1532. package/dest/rollup/previous_rollup_block_data.d.ts.map +0 -1
  1533. package/dest/rollup/previous_rollup_block_data.js +0 -42
  1534. package/dest/rollup/previous_rollup_data.d.ts +0 -58
  1535. package/dest/rollup/previous_rollup_data.d.ts.map +0 -1
  1536. package/dest/rollup/previous_rollup_data.js +0 -42
  1537. package/dest/rollup/private_base_rollup_inputs.d.ts +0 -23
  1538. package/dest/rollup/private_base_rollup_inputs.d.ts.map +0 -1
  1539. package/dest/rollup/private_base_rollup_inputs.js +0 -44
  1540. package/dest/rollup/private_tube_data.d.ts +0 -17
  1541. package/dest/rollup/private_tube_data.d.ts.map +0 -1
  1542. package/dest/rollup/private_tube_data.js +0 -25
  1543. package/dest/rollup/public_base_rollup_inputs.d.ts +0 -25
  1544. package/dest/rollup/public_base_rollup_inputs.d.ts.map +0 -1
  1545. package/dest/rollup/public_base_rollup_inputs.js +0 -48
  1546. package/dest/rollup/public_tube_data.d.ts +0 -17
  1547. package/dest/rollup/public_tube_data.d.ts.map +0 -1
  1548. package/dest/rollup/public_tube_data.js +0 -25
  1549. package/dest/rollup/root_rollup.d.ts +0 -112
  1550. package/dest/rollup/root_rollup.d.ts.map +0 -1
  1551. package/dest/rollup/root_rollup.js +0 -158
  1552. package/dest/rollup/state_diff_hints.d.ts +0 -105
  1553. package/dest/rollup/state_diff_hints.d.ts.map +0 -1
  1554. package/dest/rollup/state_diff_hints.js +0 -85
  1555. package/dest/rollup/tube_inputs.d.ts +0 -40
  1556. package/dest/rollup/tube_inputs.d.ts.map +0 -1
  1557. package/dest/rollup/tube_inputs.js +0 -57
  1558. package/dest/shared_mutable/index.d.ts +0 -5
  1559. package/dest/shared_mutable/index.d.ts.map +0 -1
  1560. package/dest/shared_mutable/index.js +0 -4
  1561. package/dest/shared_mutable/scheduled_delay_change.d.ts +0 -10
  1562. package/dest/shared_mutable/scheduled_delay_change.d.ts.map +0 -1
  1563. package/dest/shared_mutable/scheduled_value_change.d.ts +0 -11
  1564. package/dest/shared_mutable/scheduled_value_change.d.ts.map +0 -1
  1565. package/dest/shared_mutable/shared_mutable_values.d.ts +0 -22
  1566. package/dest/shared_mutable/shared_mutable_values.d.ts.map +0 -1
  1567. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts +0 -15
  1568. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +0 -1
  1569. package/dest/shared_mutable/shared_mutable_values_with_hash.js +0 -30
  1570. package/dest/trees/protocol_contract_leaf.d.ts +0 -87
  1571. package/dest/trees/protocol_contract_leaf.d.ts.map +0 -1
  1572. package/dest/trees/protocol_contract_leaf.js +0 -103
  1573. package/dest/tx/content_commitment.d.ts +0 -105
  1574. package/dest/tx/content_commitment.d.ts.map +0 -1
  1575. package/dest/tx/content_commitment.js +0 -96
  1576. package/dest/tx/max_block_number.d.ts +0 -55
  1577. package/dest/tx/max_block_number.d.ts.map +0 -1
  1578. package/dest/tx/max_block_number.js +0 -65
  1579. package/dest/tx/public_execution_request.d.ts +0 -45
  1580. package/dest/tx/public_execution_request.d.ts.map +0 -1
  1581. package/dest/tx/public_execution_request.js +0 -72
  1582. package/dest/vks/vk_witness_data.d.ts +0 -32
  1583. package/dest/vks/vk_witness_data.d.ts.map +0 -1
  1584. package/src/avm/public_data_hint.ts +0 -38
  1585. package/src/block/l2_block_code_to_purge.ts +0 -103
  1586. package/src/block/l2_block_downloader/index.ts +0 -2
  1587. package/src/block/l2_block_downloader/l2_block_downloader.ts +0 -149
  1588. package/src/block/l2_block_downloader/l2_block_stream.ts +0 -179
  1589. package/src/block/l2_block_number.ts +0 -8
  1590. package/src/block/nullifier_with_block_source.ts +0 -7
  1591. package/src/database-version/index.ts +0 -1
  1592. package/src/event/event.ts +0 -16
  1593. package/src/event/event_metadata.ts +0 -56
  1594. package/src/event/index.ts +0 -3
  1595. package/src/event/l1_event_payload.ts +0 -87
  1596. package/src/interfaces/pxe.ts +0 -536
  1597. package/src/kernel/combined_constant_data.ts +0 -128
  1598. package/src/kernel/hints/key_validation_request_and_generator.ts +0 -52
  1599. package/src/kernel/hints/rollup_validation_requests.ts +0 -73
  1600. package/src/kernel/private_kernel_prover_profile_result.ts +0 -7
  1601. package/src/logs/indexed_tagging_secret.ts +0 -45
  1602. package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
  1603. package/src/logs/l1_payload/encryption_util.ts +0 -54
  1604. package/src/logs/l1_payload/index.ts +0 -2
  1605. package/src/logs/l1_payload/l1_note_payload.ts +0 -182
  1606. package/src/logs/l1_payload/payload.ts +0 -73
  1607. package/src/logs/l1_payload/shared_secret_derivation.ts +0 -35
  1608. package/src/logs/log_with_tx_data.ts +0 -36
  1609. package/src/network/index.ts +0 -32
  1610. package/src/note/extended_note.ts +0 -168
  1611. package/src/note/notes_filter.ts +0 -39
  1612. package/src/p2p/block_attestation.ts +0 -107
  1613. package/src/parity/root_parity_input.ts +0 -71
  1614. package/src/proofs/client_ivc_proof.ts +0 -61
  1615. package/src/rollup/block_root_or_block_merge_public_inputs.ts +0 -175
  1616. package/src/rollup/block_root_rollup.ts +0 -362
  1617. package/src/rollup/constant_rollup_data.ts +0 -54
  1618. package/src/rollup/empty_block_root_rollup_inputs.ts +0 -85
  1619. package/src/rollup/previous_rollup_block_data.ts +0 -54
  1620. package/src/rollup/previous_rollup_data.ts +0 -54
  1621. package/src/rollup/private_base_rollup_inputs.ts +0 -50
  1622. package/src/rollup/private_tube_data.ts +0 -35
  1623. package/src/rollup/public_base_rollup_inputs.ts +0 -59
  1624. package/src/rollup/public_tube_data.ts +0 -35
  1625. package/src/rollup/root_rollup.ts +0 -206
  1626. package/src/rollup/tube_inputs.ts +0 -70
  1627. package/src/shared_mutable/index.ts +0 -4
  1628. package/src/shared_mutable/scheduled_delay_change.ts +0 -13
  1629. package/src/shared_mutable/shared_mutable_values_with_hash.ts +0 -38
  1630. package/src/trees/protocol_contract_leaf.ts +0 -132
  1631. package/src/tx/content_commitment.ts +0 -133
  1632. package/src/tx/max_block_number.ts +0 -79
  1633. package/src/tx/public_execution_request.ts +0 -97
  1634. /package/dest/block/{nullifier_with_block_source.js → l2_block_stream/interfaces.js} +0 -0
package/dest/avm/avm.js CHANGED
@@ -1,240 +1,732 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import { DEFAULT_MAX_DEBUG_LOG_MEMORY_READS } from '@aztec/constants';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
3
- import { schemas } from '@aztec/foundation/schemas';
4
4
  import { z } from 'zod';
5
+ import { FunctionSelector } from '../abi/index.js';
5
6
  import { AztecAddress } from '../aztec-address/index.js';
7
+ import { AllContractDeploymentData, ContractDeploymentData } from '../contract/index.js';
8
+ import { SimulationError } from '../errors/simulation_error.js';
9
+ import { computeEffectiveGasFees } from '../fees/transaction_fee.js';
10
+ import { Gas } from '../gas/gas.js';
11
+ import { GasFees } from '../gas/gas_fees.js';
12
+ import { GasSettings } from '../gas/gas_settings.js';
13
+ import { GasUsed } from '../gas/gas_used.js';
6
14
  import { PublicKeys } from '../keys/public_keys.js';
7
- import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
8
- import { PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
15
+ import { DebugLog } from '../logs/debug_log.js';
16
+ import { PublicLog } from '../logs/public_log.js';
17
+ import { ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
18
+ import { NullishToUndefined, schemas } from '../schemas/schemas.js';
19
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
20
+ import { MerkleTreeId } from '../trees/merkle_tree_id.js';
21
+ import { NullifierLeaf, NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
22
+ import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
23
+ import { GlobalVariables, NestedProcessReturnValues, ProtocolContracts, PublicCallRequestWithCalldata, TreeSnapshots } from '../tx/index.js';
24
+ import { TxExecutionPhase } from '../tx/processed_tx.js';
25
+ import { WorldStateRevision } from '../world-state/world_state_revision.js';
9
26
  import { AvmCircuitPublicInputs } from './avm_circuit_public_inputs.js';
10
27
  import { serializeWithMessagePack } from './message_pack.js';
11
- export class AvmEnqueuedCallHint {
12
- contractAddress;
13
- calldata;
14
- constructor(contractAddress, calldata){
15
- this.contractAddress = contractAddress;
16
- this.calldata = calldata;
17
- }
18
- static get schema() {
19
- return z.object({
20
- contractAddress: AztecAddress.schema,
21
- calldata: schemas.Fr.array()
22
- }).transform(({ contractAddress, calldata })=>new AvmEnqueuedCallHint(contractAddress, calldata));
23
- }
24
- }
28
+ import { PublicDataWrite } from './public_data_write.js';
29
+ import { RevertCode } from './revert_code.js';
30
+ ////////////////////////////////////////////////////////////////////////////
31
+ // Hints (contracts)
32
+ ////////////////////////////////////////////////////////////////////////////
25
33
  export class AvmContractClassHint {
34
+ hintKey;
26
35
  classId;
27
- exists;
28
36
  artifactHash;
29
37
  privateFunctionsRoot;
30
- publicBytecodeCommitment;
31
38
  packedBytecode;
32
- constructor(classId, exists, artifactHash, privateFunctionsRoot, publicBytecodeCommitment, packedBytecode){
39
+ constructor(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode){
40
+ this.hintKey = hintKey;
33
41
  this.classId = classId;
34
- this.exists = exists;
35
42
  this.artifactHash = artifactHash;
36
43
  this.privateFunctionsRoot = privateFunctionsRoot;
37
- this.publicBytecodeCommitment = publicBytecodeCommitment;
38
44
  this.packedBytecode = packedBytecode;
39
45
  }
40
46
  static get schema() {
41
47
  return z.object({
48
+ hintKey: z.number().int().nonnegative(),
42
49
  classId: schemas.Fr,
43
- exists: z.boolean(),
44
50
  artifactHash: schemas.Fr,
45
51
  privateFunctionsRoot: schemas.Fr,
46
- publicBytecodeCommitment: schemas.Fr,
47
52
  packedBytecode: schemas.Buffer
48
- }).transform(({ classId, exists, artifactHash, privateFunctionsRoot, publicBytecodeCommitment, packedBytecode })=>new AvmContractClassHint(classId, exists, artifactHash, privateFunctionsRoot, publicBytecodeCommitment, packedBytecode));
53
+ }).transform(({ hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode })=>new AvmContractClassHint(hintKey, classId, artifactHash, privateFunctionsRoot, packedBytecode));
54
+ }
55
+ /**
56
+ * Creates an AvmContractClassHint from a plain object without Zod validation.
57
+ * This method is optimized for performance and skips validation, making it suitable
58
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
59
+ * @param obj - Plain object containing AvmContractClassHint fields
60
+ * @returns An AvmContractClassHint instance
61
+ */ static fromPlainObject(obj) {
62
+ if (obj instanceof AvmContractClassHint) {
63
+ return obj;
64
+ }
65
+ 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));
66
+ }
67
+ }
68
+ export class AvmBytecodeCommitmentHint {
69
+ hintKey;
70
+ classId;
71
+ commitment;
72
+ constructor(hintKey, classId, commitment){
73
+ this.hintKey = hintKey;
74
+ this.classId = classId;
75
+ this.commitment = commitment;
76
+ }
77
+ static get schema() {
78
+ return z.object({
79
+ hintKey: z.number().int().nonnegative(),
80
+ classId: schemas.Fr,
81
+ commitment: schemas.Fr
82
+ }).transform(({ hintKey, classId, commitment })=>new AvmBytecodeCommitmentHint(hintKey, classId, commitment));
83
+ }
84
+ /**
85
+ * Creates an AvmBytecodeCommitmentHint from a plain object without Zod validation.
86
+ * This method is optimized for performance and skips validation, making it suitable
87
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
88
+ * @param obj - Plain object containing AvmBytecodeCommitmentHint fields
89
+ * @returns An AvmBytecodeCommitmentHint instance
90
+ */ static fromPlainObject(obj) {
91
+ if (obj instanceof AvmBytecodeCommitmentHint) {
92
+ return obj;
93
+ }
94
+ return new AvmBytecodeCommitmentHint(obj.hintKey, Fr.fromPlainObject(obj.classId), Fr.fromPlainObject(obj.commitment));
49
95
  }
50
96
  }
51
97
  export class AvmContractInstanceHint {
98
+ hintKey;
52
99
  address;
53
- exists;
54
100
  salt;
55
101
  deployer;
56
102
  currentContractClassId;
57
103
  originalContractClassId;
58
104
  initializationHash;
59
105
  publicKeys;
60
- updateMembershipHint;
61
- updatePreimage;
62
- constructor(address, exists, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys, // public readonly updateMembershipHint: AvmPublicDataReadTreeHint = AvmPublicDataReadTreeHint.empty(),
63
- updateMembershipHint, updatePreimage = []){
106
+ constructor(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys){
107
+ this.hintKey = hintKey;
64
108
  this.address = address;
65
- this.exists = exists;
66
109
  this.salt = salt;
67
110
  this.deployer = deployer;
68
111
  this.currentContractClassId = currentContractClassId;
69
112
  this.originalContractClassId = originalContractClassId;
70
113
  this.initializationHash = initializationHash;
71
114
  this.publicKeys = publicKeys;
72
- this.updateMembershipHint = updateMembershipHint;
73
- this.updatePreimage = updatePreimage;
74
115
  }
75
116
  static get schema() {
76
117
  return z.object({
118
+ hintKey: z.number().int().nonnegative(),
77
119
  address: AztecAddress.schema,
78
- exists: z.boolean(),
79
120
  salt: schemas.Fr,
80
121
  deployer: AztecAddress.schema,
81
122
  currentContractClassId: schemas.Fr,
82
123
  originalContractClassId: schemas.Fr,
83
124
  initializationHash: schemas.Fr,
84
- publicKeys: PublicKeys.schema,
85
- updateMembershipHint: AvmPublicDataReadTreeHint.schema,
86
- updatePreimage: schemas.Fr.array()
87
- }).transform(({ address, exists, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys, updateMembershipHint, updatePreimage })=>new AvmContractInstanceHint(address, exists, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys, updateMembershipHint, updatePreimage));
125
+ publicKeys: PublicKeys.schema
126
+ }).transform(({ hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(hintKey, address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
127
+ }
128
+ /**
129
+ * Creates an AvmContractInstanceHint from a plain object without Zod validation.
130
+ * This method is optimized for performance and skips validation, making it suitable
131
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
132
+ * @param obj - Plain object containing AvmContractInstanceHint fields
133
+ * @returns An AvmContractInstanceHint instance
134
+ */ static fromPlainObject(obj) {
135
+ if (obj instanceof AvmContractInstanceHint) {
136
+ return obj;
137
+ }
138
+ 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));
88
139
  }
89
140
  }
90
- export class AvmAppendTreeHint {
91
- leafIndex;
141
+ export class AvmDebugFunctionNameHint {
142
+ address;
143
+ selector;
144
+ name;
145
+ constructor(address, selector, name){
146
+ this.address = address;
147
+ this.selector = selector;
148
+ this.name = name;
149
+ }
150
+ static get schema() {
151
+ return z.object({
152
+ address: AztecAddress.schema,
153
+ selector: schemas.Fr,
154
+ name: z.string()
155
+ }).transform(({ address, selector, name })=>new AvmDebugFunctionNameHint(address, selector, name));
156
+ }
157
+ /**
158
+ * Creates an AvmDebugFunctionNameHint from a plain object without Zod validation.
159
+ * This method is optimized for performance and skips validation, making it suitable
160
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
161
+ * @param obj - Plain object containing AvmDebugFunctionNameHint fields
162
+ * @returns An AvmDebugFunctionNameHint instance
163
+ */ static fromPlainObject(obj) {
164
+ if (obj instanceof AvmDebugFunctionNameHint) {
165
+ return obj;
166
+ }
167
+ return new AvmDebugFunctionNameHint(AztecAddress.fromPlainObject(obj.address), Fr.fromPlainObject(obj.selector), obj.name);
168
+ }
169
+ }
170
+ ////////////////////////////////////////////////////////////////////////////
171
+ // Hints (merkle db)
172
+ ////////////////////////////////////////////////////////////////////////////
173
+ // Hint for MerkleTreeDB.getSiblingPath.
174
+ export class AvmGetSiblingPathHint {
175
+ hintKey;
176
+ treeId;
177
+ index;
178
+ path;
179
+ constructor(hintKey, // params
180
+ treeId, index, // return
181
+ path){
182
+ this.hintKey = hintKey;
183
+ this.treeId = treeId;
184
+ this.index = index;
185
+ this.path = path;
186
+ }
187
+ static get schema() {
188
+ return z.object({
189
+ hintKey: AppendOnlyTreeSnapshot.schema,
190
+ treeId: z.number().int().nonnegative(),
191
+ index: schemas.BigInt,
192
+ path: schemas.Fr.array()
193
+ }).transform(({ hintKey, treeId, index, path })=>new AvmGetSiblingPathHint(hintKey, treeId, index, path));
194
+ }
195
+ /**
196
+ * Creates an AvmGetSiblingPathHint from a plain object without Zod validation.
197
+ * This method is optimized for performance and skips validation, making it suitable
198
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
199
+ * @param obj - Plain object containing AvmGetSiblingPathHint fields
200
+ * @returns An AvmGetSiblingPathHint instance
201
+ */ static fromPlainObject(obj) {
202
+ if (obj instanceof AvmGetSiblingPathHint) {
203
+ return obj;
204
+ }
205
+ 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)));
206
+ }
207
+ }
208
+ // Hint for MerkleTreeDB.getPreviousValueIndex.
209
+ export class AvmGetPreviousValueIndexHint {
210
+ hintKey;
211
+ treeId;
92
212
  value;
93
- siblingPath;
94
- constructor(leafIndex, value, siblingPath){
95
- this.leafIndex = leafIndex;
213
+ index;
214
+ alreadyPresent;
215
+ constructor(hintKey, // params
216
+ treeId, value, // return
217
+ index, alreadyPresent){
218
+ this.hintKey = hintKey;
219
+ this.treeId = treeId;
96
220
  this.value = value;
97
- this.siblingPath = siblingPath;
221
+ this.index = index;
222
+ this.alreadyPresent = alreadyPresent;
98
223
  }
99
224
  static get schema() {
100
225
  return z.object({
101
- leafIndex: schemas.Fr,
226
+ hintKey: AppendOnlyTreeSnapshot.schema,
227
+ treeId: z.number().int().nonnegative(),
102
228
  value: schemas.Fr,
103
- siblingPath: schemas.Fr.array()
104
- }).transform(({ leafIndex, value, siblingPath })=>new AvmAppendTreeHint(leafIndex, value, siblingPath));
229
+ index: schemas.BigInt,
230
+ alreadyPresent: z.boolean()
231
+ }).transform(({ hintKey, treeId, value, index, alreadyPresent })=>new AvmGetPreviousValueIndexHint(hintKey, treeId, value, index, alreadyPresent));
232
+ }
233
+ /**
234
+ * Creates an AvmGetPreviousValueIndexHint from a plain object without Zod validation.
235
+ * This method is optimized for performance and skips validation, making it suitable
236
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
237
+ * @param obj - Plain object containing AvmGetPreviousValueIndexHint fields
238
+ * @returns An AvmGetPreviousValueIndexHint instance
239
+ */ static fromPlainObject(obj) {
240
+ if (obj instanceof AvmGetPreviousValueIndexHint) {
241
+ return obj;
242
+ }
243
+ return new AvmGetPreviousValueIndexHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, Fr.fromPlainObject(obj.value), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), obj.alreadyPresent);
105
244
  }
106
245
  }
107
- export class AvmNullifierWriteTreeHint {
108
- lowLeafRead;
109
- insertionPath;
110
- constructor(lowLeafRead, insertionPath){
111
- this.lowLeafRead = lowLeafRead;
112
- this.insertionPath = insertionPath;
246
+ // Hint for MerkleTreeDB.getLeafPreimage.
247
+ // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
248
+ // having the type doesn't suffice since TS does type erasure in the end.
249
+ function AvmGetLeafPreimageHintFactory(klass) {
250
+ return class {
251
+ hintKey;
252
+ index;
253
+ leafPreimage;
254
+ constructor(hintKey, // params (tree id will be implicit)
255
+ index, // return
256
+ leafPreimage){
257
+ this.hintKey = hintKey;
258
+ this.index = index;
259
+ this.leafPreimage = leafPreimage;
260
+ }
261
+ static get schema() {
262
+ return z.object({
263
+ hintKey: AppendOnlyTreeSnapshot.schema,
264
+ index: schemas.BigInt,
265
+ leafPreimage: klass.schema
266
+ }).transform(({ hintKey, index, leafPreimage })=>new this(hintKey, index, leafPreimage));
267
+ }
268
+ /**
269
+ * Creates an instance from a plain object without Zod validation.
270
+ * This method is optimized for performance and skips validation, making it suitable
271
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
272
+ * @param obj - Plain object containing hint fields
273
+ * @returns An instance
274
+ */ static fromPlainObject(obj) {
275
+ if (obj instanceof this) {
276
+ return obj;
277
+ }
278
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), klass.fromPlainObject(obj.leafPreimage));
279
+ }
280
+ };
281
+ }
282
+ // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
283
+ export class AvmGetLeafPreimageHintPublicDataTree extends AvmGetLeafPreimageHintFactory(PublicDataTreeLeafPreimage) {
284
+ }
285
+ export class AvmGetLeafPreimageHintNullifierTree extends AvmGetLeafPreimageHintFactory(NullifierLeafPreimage) {
286
+ }
287
+ // Hint for MerkleTreeDB.getLeafValue.
288
+ // Note: only supported for NOTE_HASH_TREE and L1_TO_L2_MESSAGE_TREE.
289
+ export class AvmGetLeafValueHint {
290
+ hintKey;
291
+ treeId;
292
+ index;
293
+ value;
294
+ constructor(hintKey, // params
295
+ treeId, index, // return
296
+ value){
297
+ this.hintKey = hintKey;
298
+ this.treeId = treeId;
299
+ this.index = index;
300
+ this.value = value;
113
301
  }
114
302
  static get schema() {
115
303
  return z.object({
116
- lowLeafRead: AvmNullifierReadTreeHint.schema,
117
- insertionPath: schemas.Fr.array()
118
- }).transform(({ lowLeafRead, insertionPath })=>new AvmNullifierWriteTreeHint(lowLeafRead, insertionPath));
304
+ hintKey: AppendOnlyTreeSnapshot.schema,
305
+ treeId: z.number().int().nonnegative(),
306
+ index: schemas.BigInt,
307
+ value: schemas.Fr
308
+ }).transform(({ hintKey, treeId, index, value })=>new AvmGetLeafValueHint(hintKey, treeId, index, value));
119
309
  }
310
+ /**
311
+ * Creates an AvmGetLeafValueHint from a plain object without Zod validation.
312
+ * This method is optimized for performance and skips validation, making it suitable
313
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
314
+ * @param obj - Plain object containing AvmGetLeafValueHint fields
315
+ * @returns An AvmGetLeafValueHint instance
316
+ */ static fromPlainObject(obj) {
317
+ if (obj instanceof AvmGetLeafValueHint) {
318
+ return obj;
319
+ }
320
+ return new AvmGetLeafValueHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), obj.treeId, typeof obj.index === 'bigint' ? obj.index : BigInt(obj.index), Fr.fromPlainObject(obj.value));
321
+ }
322
+ }
323
+ // Hint for MerkleTreeDB.sequentialInsert.
324
+ // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
325
+ // having the type doesn't suffice since TS does type erasure in the end.
326
+ function AvmSequentialInsertHintFactory(klass) {
327
+ return class {
328
+ hintKey;
329
+ stateAfter;
330
+ treeId;
331
+ leaf;
332
+ lowLeavesWitnessData;
333
+ insertionWitnessData;
334
+ constructor(hintKey, stateAfter, // params
335
+ treeId, leaf, // return
336
+ lowLeavesWitnessData, insertionWitnessData){
337
+ this.hintKey = hintKey;
338
+ this.stateAfter = stateAfter;
339
+ this.treeId = treeId;
340
+ this.leaf = leaf;
341
+ this.lowLeavesWitnessData = lowLeavesWitnessData;
342
+ this.insertionWitnessData = insertionWitnessData;
343
+ }
344
+ static get schema() {
345
+ return z.object({
346
+ hintKey: AppendOnlyTreeSnapshot.schema,
347
+ stateAfter: AppendOnlyTreeSnapshot.schema,
348
+ treeId: z.number().int().nonnegative(),
349
+ leaf: klass.leafSchema,
350
+ lowLeavesWitnessData: z.object({
351
+ leaf: klass.schema,
352
+ index: schemas.BigInt,
353
+ path: schemas.Fr.array()
354
+ }),
355
+ insertionWitnessData: z.object({
356
+ leaf: klass.schema,
357
+ index: schemas.BigInt,
358
+ path: schemas.Fr.array()
359
+ })
360
+ }).transform(({ hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData })=>new this(hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData));
361
+ }
362
+ /**
363
+ * Creates an instance from a plain object without Zod validation.
364
+ * This method is optimized for performance and skips validation, making it suitable
365
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
366
+ * @param obj - Plain object containing hint fields
367
+ * @returns An instance
368
+ */ static fromPlainObject(obj) {
369
+ if (obj instanceof this) {
370
+ return obj;
371
+ }
372
+ // Determine the leaf class based on the klass parameter
373
+ const LeafClass = klass === PublicDataTreeLeafPreimage ? PublicDataTreeLeaf : NullifierLeaf;
374
+ return new this(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, LeafClass.fromPlainObject(obj.leaf), {
375
+ leaf: klass.fromPlainObject(obj.lowLeavesWitnessData.leaf),
376
+ index: typeof obj.lowLeavesWitnessData.index === 'bigint' ? obj.lowLeavesWitnessData.index : BigInt(obj.lowLeavesWitnessData.index),
377
+ path: obj.lowLeavesWitnessData.path.map((p)=>Fr.fromPlainObject(p))
378
+ }, {
379
+ leaf: klass.fromPlainObject(obj.insertionWitnessData.leaf),
380
+ index: typeof obj.insertionWitnessData.index === 'bigint' ? obj.insertionWitnessData.index : BigInt(obj.insertionWitnessData.index),
381
+ path: obj.insertionWitnessData.path.map((p)=>Fr.fromPlainObject(p))
382
+ });
383
+ }
384
+ };
120
385
  }
121
- export class AvmNullifierReadTreeHint {
122
- lowLeafPreimage;
123
- lowLeafIndex;
124
- lowLeafSiblingPath;
125
- constructor(lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath){
126
- this.lowLeafPreimage = lowLeafPreimage;
127
- this.lowLeafIndex = lowLeafIndex;
128
- this.lowLeafSiblingPath = lowLeafSiblingPath;
386
+ // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
387
+ export class AvmSequentialInsertHintPublicDataTree extends AvmSequentialInsertHintFactory(PublicDataTreeLeafPreimage) {
388
+ }
389
+ export class AvmSequentialInsertHintNullifierTree extends AvmSequentialInsertHintFactory(NullifierLeafPreimage) {
390
+ }
391
+ // Hint for MerkleTreeDB.appendLeaves.
392
+ // Note: only supported for NOTE_HASH_TREE and L1_TO_L2_MESSAGE_TREE.
393
+ export class AvmAppendLeavesHint {
394
+ hintKey;
395
+ stateAfter;
396
+ treeId;
397
+ leaves;
398
+ constructor(hintKey, stateAfter, // params
399
+ treeId, leaves){
400
+ this.hintKey = hintKey;
401
+ this.stateAfter = stateAfter;
402
+ this.treeId = treeId;
403
+ this.leaves = leaves;
129
404
  }
130
405
  static get schema() {
131
406
  return z.object({
132
- lowLeafPreimage: NullifierLeafPreimage.schema,
133
- lowLeafIndex: schemas.Fr,
134
- lowLeafSiblingPath: schemas.Fr.array()
135
- }).transform(({ lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath })=>new AvmNullifierReadTreeHint(lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath));
407
+ hintKey: AppendOnlyTreeSnapshot.schema,
408
+ stateAfter: AppendOnlyTreeSnapshot.schema,
409
+ treeId: z.number().int().nonnegative(),
410
+ leaves: schemas.Fr.array()
411
+ }).transform(({ hintKey, stateAfter, treeId, leaves })=>new AvmAppendLeavesHint(hintKey, stateAfter, treeId, leaves));
412
+ }
413
+ /**
414
+ * Creates an AvmAppendLeavesHint from a plain object without Zod validation.
415
+ * This method is optimized for performance and skips validation, making it suitable
416
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
417
+ * @param obj - Plain object containing AvmAppendLeavesHint fields
418
+ * @returns An AvmAppendLeavesHint instance
419
+ */ static fromPlainObject(obj) {
420
+ if (obj instanceof AvmAppendLeavesHint) {
421
+ return obj;
422
+ }
423
+ return new AvmAppendLeavesHint(AppendOnlyTreeSnapshot.fromPlainObject(obj.hintKey), AppendOnlyTreeSnapshot.fromPlainObject(obj.stateAfter), obj.treeId, obj.leaves.map((l)=>Fr.fromPlainObject(l)));
136
424
  }
137
425
  }
138
- export class AvmPublicDataReadTreeHint {
139
- leafPreimage;
140
- leafIndex;
141
- siblingPath;
142
- constructor(leafPreimage, leafIndex, siblingPath){
143
- this.leafPreimage = leafPreimage;
144
- this.leafIndex = leafIndex;
145
- this.siblingPath = siblingPath;
426
+ // Hint for checkpoint actions that don't change the state.
427
+ class AvmCheckpointActionNoStateChangeHint {
428
+ actionCounter;
429
+ oldCheckpointId;
430
+ newCheckpointId;
431
+ constructor(// key
432
+ actionCounter, // current checkpoint evolution
433
+ oldCheckpointId, newCheckpointId){
434
+ this.actionCounter = actionCounter;
435
+ this.oldCheckpointId = oldCheckpointId;
436
+ this.newCheckpointId = newCheckpointId;
146
437
  }
147
- static empty() {
148
- return new AvmPublicDataReadTreeHint(PublicDataTreeLeafPreimage.empty(), Fr.ZERO, []);
438
+ static get schema() {
439
+ return z.object({
440
+ actionCounter: z.number().int().nonnegative(),
441
+ oldCheckpointId: z.number().int().nonnegative(),
442
+ newCheckpointId: z.number().int().nonnegative()
443
+ }).transform(({ actionCounter, oldCheckpointId, newCheckpointId })=>new this(actionCounter, oldCheckpointId, newCheckpointId));
444
+ }
445
+ /**
446
+ * Creates an instance from a plain object without Zod validation.
447
+ * This method is optimized for performance and skips validation, making it suitable
448
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
449
+ * @param obj - Plain object containing hint fields
450
+ * @returns An instance
451
+ */ static fromPlainObject(obj) {
452
+ if (obj instanceof this) {
453
+ return obj;
454
+ }
455
+ return new this(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId);
456
+ }
457
+ }
458
+ // Hint for MerkleTreeDB.createCheckpoint.
459
+ export class AvmCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
460
+ }
461
+ // Hint for MerkleTreeDB.commitCheckpoint.
462
+ export class AvmCommitCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
463
+ }
464
+ // Hint for MerkleTreeDB.revertCheckpoint.
465
+ export class AvmRevertCheckpointHint {
466
+ actionCounter;
467
+ oldCheckpointId;
468
+ newCheckpointId;
469
+ stateBefore;
470
+ stateAfter;
471
+ // We use explicit fields for MessagePack.
472
+ constructor(// key
473
+ actionCounter, // current checkpoint evolution
474
+ oldCheckpointId, newCheckpointId, // state evolution
475
+ stateBefore, stateAfter){
476
+ this.actionCounter = actionCounter;
477
+ this.oldCheckpointId = oldCheckpointId;
478
+ this.newCheckpointId = newCheckpointId;
479
+ this.stateBefore = stateBefore;
480
+ this.stateAfter = stateAfter;
481
+ }
482
+ static create(actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter) {
483
+ return new AvmRevertCheckpointHint(actionCounter, oldCheckpointId, newCheckpointId, new TreeSnapshots(stateBefore[MerkleTreeId.L1_TO_L2_MESSAGE_TREE], stateBefore[MerkleTreeId.NOTE_HASH_TREE], stateBefore[MerkleTreeId.NULLIFIER_TREE], stateBefore[MerkleTreeId.PUBLIC_DATA_TREE]), new TreeSnapshots(stateAfter[MerkleTreeId.L1_TO_L2_MESSAGE_TREE], stateAfter[MerkleTreeId.NOTE_HASH_TREE], stateAfter[MerkleTreeId.NULLIFIER_TREE], stateAfter[MerkleTreeId.PUBLIC_DATA_TREE]));
149
484
  }
150
485
  static get schema() {
151
486
  return z.object({
152
- leafPreimage: PublicDataTreeLeafPreimage.schema,
153
- leafIndex: schemas.Fr,
154
- siblingPath: schemas.Fr.array()
155
- }).transform(({ leafPreimage, leafIndex, siblingPath })=>new AvmPublicDataReadTreeHint(leafPreimage, leafIndex, siblingPath));
487
+ actionCounter: z.number().int().nonnegative(),
488
+ oldCheckpointId: z.number().int().nonnegative(),
489
+ newCheckpointId: z.number().int().nonnegative(),
490
+ stateBefore: TreeSnapshots.schema,
491
+ stateAfter: TreeSnapshots.schema
492
+ }).transform(({ actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter })=>new AvmRevertCheckpointHint(actionCounter, oldCheckpointId, newCheckpointId, stateBefore, stateAfter));
156
493
  }
494
+ /**
495
+ * Creates an AvmRevertCheckpointHint from a plain object without Zod validation.
496
+ * This method is optimized for performance and skips validation, making it suitable
497
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
498
+ * @param obj - Plain object containing AvmRevertCheckpointHint fields
499
+ * @returns An AvmRevertCheckpointHint instance
500
+ */ static fromPlainObject(obj) {
501
+ if (obj instanceof AvmRevertCheckpointHint) {
502
+ return obj;
503
+ }
504
+ return new AvmRevertCheckpointHint(obj.actionCounter, obj.oldCheckpointId, obj.newCheckpointId, TreeSnapshots.fromPlainObject(obj.stateBefore), TreeSnapshots.fromPlainObject(obj.stateAfter));
505
+ }
506
+ }
507
+ export class AvmContractDbCreateCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
508
+ }
509
+ export class AvmContractDbCommitCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
510
+ }
511
+ export class AvmContractDbRevertCheckpointHint extends AvmCheckpointActionNoStateChangeHint {
157
512
  }
158
- export class AvmPublicDataWriteTreeHint {
159
- lowLeafRead;
160
- newLeafPreimage;
161
- insertionPath;
162
- constructor(// To check the current slot has been written to
163
- lowLeafRead, newLeafPreimage, insertionPath){
164
- this.lowLeafRead = lowLeafRead;
165
- this.newLeafPreimage = newLeafPreimage;
166
- this.insertionPath = insertionPath;
513
+ ////////////////////////////////////////////////////////////////////////////
514
+ // Hints (other)
515
+ ////////////////////////////////////////////////////////////////////////////
516
+ export class AvmTxHint {
517
+ hash;
518
+ gasSettings;
519
+ effectiveGasFees;
520
+ nonRevertibleContractDeploymentData;
521
+ revertibleContractDeploymentData;
522
+ nonRevertibleAccumulatedData;
523
+ revertibleAccumulatedData;
524
+ setupEnqueuedCalls;
525
+ appLogicEnqueuedCalls;
526
+ teardownEnqueuedCall;
527
+ gasUsedByPrivate;
528
+ feePayer;
529
+ constructor(hash, gasSettings, effectiveGasFees, nonRevertibleContractDeploymentData, revertibleContractDeploymentData, nonRevertibleAccumulatedData, revertibleAccumulatedData, setupEnqueuedCalls, appLogicEnqueuedCalls, // We need this to be null and not undefined because that's what
530
+ // MessagePack expects for an std::optional.
531
+ teardownEnqueuedCall, gasUsedByPrivate, feePayer){
532
+ this.hash = hash;
533
+ this.gasSettings = gasSettings;
534
+ this.effectiveGasFees = effectiveGasFees;
535
+ this.nonRevertibleContractDeploymentData = nonRevertibleContractDeploymentData;
536
+ this.revertibleContractDeploymentData = revertibleContractDeploymentData;
537
+ this.nonRevertibleAccumulatedData = nonRevertibleAccumulatedData;
538
+ this.revertibleAccumulatedData = revertibleAccumulatedData;
539
+ this.setupEnqueuedCalls = setupEnqueuedCalls;
540
+ this.appLogicEnqueuedCalls = appLogicEnqueuedCalls;
541
+ this.teardownEnqueuedCall = teardownEnqueuedCall;
542
+ this.gasUsedByPrivate = gasUsedByPrivate;
543
+ this.feePayer = feePayer;
544
+ }
545
+ static fromTx(tx, gasFees) {
546
+ const setupCallRequests = tx.getNonRevertiblePublicCallRequestsWithCalldata();
547
+ const appLogicCallRequests = tx.getRevertiblePublicCallRequestsWithCalldata();
548
+ const teardownCallRequest = tx.getTeardownPublicCallRequestWithCalldata();
549
+ const gasSettings = tx.data.constants.txContext.gasSettings;
550
+ const effectiveGasFees = computeEffectiveGasFees(gasFees, gasSettings);
551
+ const allContractDeploymentData = AllContractDeploymentData.fromTx(tx);
552
+ // For informational purposes. Assumed quick because it should be cached.
553
+ const txHash = tx.getTxHash();
554
+ return new AvmTxHint(txHash.hash.toString(), gasSettings, effectiveGasFees, allContractDeploymentData.getNonRevertibleContractDeploymentData(), allContractDeploymentData.getRevertibleContractDeploymentData(), {
555
+ noteHashes: tx.data.forPublic.nonRevertibleAccumulatedData.noteHashes.filter((x)=>!x.isZero()),
556
+ nullifiers: tx.data.forPublic.nonRevertibleAccumulatedData.nullifiers.filter((x)=>!x.isZero()),
557
+ l2ToL1Messages: tx.data.forPublic.nonRevertibleAccumulatedData.l2ToL1Msgs.filter((x)=>!x.isEmpty())
558
+ }, {
559
+ noteHashes: tx.data.forPublic.revertibleAccumulatedData.noteHashes.filter((x)=>!x.isZero()),
560
+ nullifiers: tx.data.forPublic.revertibleAccumulatedData.nullifiers.filter((x)=>!x.isZero()),
561
+ l2ToL1Messages: tx.data.forPublic.revertibleAccumulatedData.l2ToL1Msgs.filter((x)=>!x.isEmpty())
562
+ }, setupCallRequests, appLogicCallRequests, teardownCallRequest ?? null, tx.data.gasUsed, tx.data.feePayer);
563
+ }
564
+ static empty() {
565
+ return new AvmTxHint('', GasSettings.empty(), GasFees.empty(), ContractDeploymentData.empty(), ContractDeploymentData.empty(), {
566
+ noteHashes: [],
567
+ nullifiers: [],
568
+ l2ToL1Messages: []
569
+ }, {
570
+ noteHashes: [],
571
+ nullifiers: [],
572
+ l2ToL1Messages: []
573
+ }, [], [], null, Gas.empty(), AztecAddress.zero());
574
+ }
575
+ /**
576
+ * Creates an AvmTxHint from a plain object without Zod validation.
577
+ * This method is optimized for performance and skips validation, making it suitable
578
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
579
+ * @param obj - Plain object containing AvmTxHint fields
580
+ * @returns An AvmTxHint instance
581
+ */ static fromPlainObject(obj) {
582
+ if (obj instanceof AvmTxHint) {
583
+ return obj;
584
+ }
585
+ return new AvmTxHint(obj.hash, GasSettings.fromPlainObject(obj.gasSettings), GasFees.fromPlainObject(obj.effectiveGasFees), ContractDeploymentData.fromPlainObject(obj.nonRevertibleContractDeploymentData), ContractDeploymentData.fromPlainObject(obj.revertibleContractDeploymentData), {
586
+ noteHashes: obj.nonRevertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
587
+ nullifiers: obj.nonRevertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
588
+ l2ToL1Messages: obj.nonRevertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
589
+ }, {
590
+ noteHashes: obj.revertibleAccumulatedData.noteHashes.map((h)=>Fr.fromPlainObject(h)),
591
+ nullifiers: obj.revertibleAccumulatedData.nullifiers.map((n)=>Fr.fromPlainObject(n)),
592
+ l2ToL1Messages: obj.revertibleAccumulatedData.l2ToL1Messages.map((m)=>ScopedL2ToL1Message.fromPlainObject(m))
593
+ }, 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));
167
594
  }
168
595
  static get schema() {
169
596
  return z.object({
170
- lowLeafRead: AvmPublicDataReadTreeHint.schema,
171
- newLeafPreimage: PublicDataTreeLeafPreimage.schema,
172
- insertionPath: schemas.Fr.array()
173
- }).transform(({ lowLeafRead, newLeafPreimage, insertionPath })=>new AvmPublicDataWriteTreeHint(lowLeafRead, newLeafPreimage, insertionPath));
597
+ hash: z.string(),
598
+ gasSettings: GasSettings.schema,
599
+ effectiveGasFees: GasFees.schema,
600
+ nonRevertibleContractDeploymentData: ContractDeploymentData.schema,
601
+ revertibleContractDeploymentData: ContractDeploymentData.schema,
602
+ nonRevertibleAccumulatedData: z.object({
603
+ noteHashes: schemas.Fr.array(),
604
+ nullifiers: schemas.Fr.array(),
605
+ l2ToL1Messages: ScopedL2ToL1Message.schema.array()
606
+ }),
607
+ revertibleAccumulatedData: z.object({
608
+ noteHashes: schemas.Fr.array(),
609
+ nullifiers: schemas.Fr.array(),
610
+ l2ToL1Messages: ScopedL2ToL1Message.schema.array()
611
+ }),
612
+ setupEnqueuedCalls: PublicCallRequestWithCalldata.schema.array(),
613
+ appLogicEnqueuedCalls: PublicCallRequestWithCalldata.schema.array(),
614
+ teardownEnqueuedCall: PublicCallRequestWithCalldata.schema.nullable(),
615
+ gasUsedByPrivate: Gas.schema,
616
+ feePayer: AztecAddress.schema
617
+ }).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));
174
618
  }
175
619
  }
176
620
  export class AvmExecutionHints {
177
- enqueuedCalls;
621
+ globalVariables;
622
+ tx;
623
+ protocolContracts;
178
624
  contractInstances;
179
625
  contractClasses;
180
- publicDataReads;
181
- publicDataWrites;
182
- nullifierReads;
183
- nullifierWrites;
184
- noteHashReads;
185
- noteHashWrites;
186
- l1ToL2MessageReads;
187
- constructor(enqueuedCalls, contractInstances, contractClasses, publicDataReads, publicDataWrites, nullifierReads, nullifierWrites, noteHashReads, noteHashWrites, l1ToL2MessageReads){
188
- this.enqueuedCalls = enqueuedCalls;
626
+ bytecodeCommitments;
627
+ debugFunctionNames;
628
+ contractDbCreateCheckpointHints;
629
+ contractDbCommitCheckpointHints;
630
+ contractDbRevertCheckpointHints;
631
+ startingTreeRoots;
632
+ getSiblingPathHints;
633
+ getPreviousValueIndexHints;
634
+ getLeafPreimageHintsPublicDataTree;
635
+ getLeafPreimageHintsNullifierTree;
636
+ getLeafValueHints;
637
+ sequentialInsertHintsPublicDataTree;
638
+ sequentialInsertHintsNullifierTree;
639
+ appendLeavesHints;
640
+ createCheckpointHints;
641
+ commitCheckpointHints;
642
+ revertCheckpointHints;
643
+ constructor(globalVariables, tx, // Protocol contracts.
644
+ protocolContracts, // Contract hints.
645
+ contractInstances = [], contractClasses = [], bytecodeCommitments = [], debugFunctionNames = [], contractDbCreateCheckpointHints = [], contractDbCommitCheckpointHints = [], contractDbRevertCheckpointHints = [], // Merkle DB hints.
646
+ startingTreeRoots = TreeSnapshots.empty(), getSiblingPathHints = [], getPreviousValueIndexHints = [], getLeafPreimageHintsPublicDataTree = [], getLeafPreimageHintsNullifierTree = [], getLeafValueHints = [], sequentialInsertHintsPublicDataTree = [], sequentialInsertHintsNullifierTree = [], appendLeavesHints = [], createCheckpointHints = [], commitCheckpointHints = [], revertCheckpointHints = []){
647
+ this.globalVariables = globalVariables;
648
+ this.tx = tx;
649
+ this.protocolContracts = protocolContracts;
189
650
  this.contractInstances = contractInstances;
190
651
  this.contractClasses = contractClasses;
191
- this.publicDataReads = publicDataReads;
192
- this.publicDataWrites = publicDataWrites;
193
- this.nullifierReads = nullifierReads;
194
- this.nullifierWrites = nullifierWrites;
195
- this.noteHashReads = noteHashReads;
196
- this.noteHashWrites = noteHashWrites;
197
- this.l1ToL2MessageReads = l1ToL2MessageReads;
652
+ this.bytecodeCommitments = bytecodeCommitments;
653
+ this.debugFunctionNames = debugFunctionNames;
654
+ this.contractDbCreateCheckpointHints = contractDbCreateCheckpointHints;
655
+ this.contractDbCommitCheckpointHints = contractDbCommitCheckpointHints;
656
+ this.contractDbRevertCheckpointHints = contractDbRevertCheckpointHints;
657
+ this.startingTreeRoots = startingTreeRoots;
658
+ this.getSiblingPathHints = getSiblingPathHints;
659
+ this.getPreviousValueIndexHints = getPreviousValueIndexHints;
660
+ this.getLeafPreimageHintsPublicDataTree = getLeafPreimageHintsPublicDataTree;
661
+ this.getLeafPreimageHintsNullifierTree = getLeafPreimageHintsNullifierTree;
662
+ this.getLeafValueHints = getLeafValueHints;
663
+ this.sequentialInsertHintsPublicDataTree = sequentialInsertHintsPublicDataTree;
664
+ this.sequentialInsertHintsNullifierTree = sequentialInsertHintsNullifierTree;
665
+ this.appendLeavesHints = appendLeavesHints;
666
+ this.createCheckpointHints = createCheckpointHints;
667
+ this.commitCheckpointHints = commitCheckpointHints;
668
+ this.revertCheckpointHints = revertCheckpointHints;
669
+ }
670
+ /**
671
+ * Creates an AvmExecutionHints from a plain object without Zod validation.
672
+ * This method is optimized for performance and skips validation, making it suitable
673
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
674
+ * @param obj - Plain object containing AvmExecutionHints fields
675
+ * @returns An AvmExecutionHints instance
676
+ */ static fromPlainObject(obj) {
677
+ if (obj instanceof AvmExecutionHints) {
678
+ return obj;
679
+ }
680
+ 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)) || []);
198
681
  }
199
682
  static empty() {
200
- return new AvmExecutionHints([], [], [], [], [], [], [], [], [], []);
683
+ return new AvmExecutionHints(GlobalVariables.empty(), AvmTxHint.empty(), ProtocolContracts.empty());
201
684
  }
202
685
  static get schema() {
203
686
  return z.object({
204
- enqueuedCalls: AvmEnqueuedCallHint.schema.array(),
687
+ globalVariables: GlobalVariables.schema,
688
+ tx: AvmTxHint.schema,
689
+ protocolContracts: ProtocolContracts.schema,
205
690
  contractInstances: AvmContractInstanceHint.schema.array(),
206
691
  contractClasses: AvmContractClassHint.schema.array(),
207
- publicDataReads: AvmPublicDataReadTreeHint.schema.array(),
208
- publicDataWrites: AvmPublicDataWriteTreeHint.schema.array(),
209
- nullifierReads: AvmNullifierReadTreeHint.schema.array(),
210
- nullifierWrites: AvmNullifierWriteTreeHint.schema.array(),
211
- noteHashReads: AvmAppendTreeHint.schema.array(),
212
- noteHashWrites: AvmAppendTreeHint.schema.array(),
213
- l1ToL2MessageReads: AvmAppendTreeHint.schema.array()
214
- }).transform(({ enqueuedCalls, contractInstances, contractClasses, publicDataReads, publicDataWrites, nullifierReads, nullifierWrites, noteHashReads, noteHashWrites, l1ToL2MessageReads })=>new AvmExecutionHints(enqueuedCalls, contractInstances, contractClasses, publicDataReads, publicDataWrites, nullifierReads, nullifierWrites, noteHashReads, noteHashWrites, l1ToL2MessageReads));
692
+ bytecodeCommitments: AvmBytecodeCommitmentHint.schema.array(),
693
+ debugFunctionNames: AvmDebugFunctionNameHint.schema.array(),
694
+ contractDbCreateCheckpointHints: AvmContractDbCreateCheckpointHint.schema.array(),
695
+ contractDbCommitCheckpointHints: AvmContractDbCommitCheckpointHint.schema.array(),
696
+ contractDbRevertCheckpointHints: AvmContractDbRevertCheckpointHint.schema.array(),
697
+ startingTreeRoots: TreeSnapshots.schema,
698
+ getSiblingPathHints: AvmGetSiblingPathHint.schema.array(),
699
+ getPreviousValueIndexHints: AvmGetPreviousValueIndexHint.schema.array(),
700
+ getLeafPreimageHintsPublicDataTree: AvmGetLeafPreimageHintPublicDataTree.schema.array(),
701
+ getLeafPreimageHintsNullifierTree: AvmGetLeafPreimageHintNullifierTree.schema.array(),
702
+ getLeafValueHints: AvmGetLeafValueHint.schema.array(),
703
+ sequentialInsertHintsPublicDataTree: AvmSequentialInsertHintPublicDataTree.schema.array(),
704
+ sequentialInsertHintsNullifierTree: AvmSequentialInsertHintNullifierTree.schema.array(),
705
+ appendLeavesHints: AvmAppendLeavesHint.schema.array(),
706
+ createCheckpointHints: AvmCreateCheckpointHint.schema.array(),
707
+ commitCheckpointHints: AvmCommitCheckpointHint.schema.array(),
708
+ revertCheckpointHints: AvmRevertCheckpointHint.schema.array()
709
+ }).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));
215
710
  }
216
711
  }
217
712
  export class AvmCircuitInputs {
218
- functionName;
219
- calldata;
220
713
  hints;
221
714
  publicInputs;
222
- constructor(functionName, calldata, hints, publicInputs){
223
- this.functionName = functionName;
224
- this.calldata = calldata;
715
+ constructor(hints, publicInputs){
225
716
  this.hints = hints;
226
717
  this.publicInputs = publicInputs;
227
718
  }
228
719
  static empty() {
229
- return new AvmCircuitInputs('', [], AvmExecutionHints.empty(), AvmCircuitPublicInputs.empty());
720
+ return new AvmCircuitInputs(AvmExecutionHints.empty(), AvmCircuitPublicInputs.empty());
721
+ }
722
+ static fromPlainObject(obj) {
723
+ return new AvmCircuitInputs(AvmExecutionHints.fromPlainObject(obj.hints), AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs));
230
724
  }
231
725
  static get schema() {
232
726
  return z.object({
233
- functionName: z.string(),
234
- calldata: schemas.Fr.array(),
235
727
  hints: AvmExecutionHints.schema,
236
728
  publicInputs: AvmCircuitPublicInputs.schema
237
- }).transform(({ functionName, calldata, hints, publicInputs })=>new AvmCircuitInputs(functionName, calldata, hints, publicInputs));
729
+ }).transform(({ hints, publicInputs })=>new AvmCircuitInputs(hints, publicInputs));
238
730
  }
239
731
  serializeWithMessagePack() {
240
732
  return serializeWithMessagePack(this);
@@ -247,3 +739,326 @@ export class AvmCircuitInputs {
247
739
  return jsonParseWithSchema(buf.toString(), this.schema);
248
740
  }
249
741
  }
742
+ // Metadata about a given (enqueued or external) call.
743
+ export class CallStackMetadata {
744
+ phase;
745
+ contractAddress;
746
+ callerPc;
747
+ calldata;
748
+ isStaticCall;
749
+ gasLimit;
750
+ output;
751
+ internalCallStackAtExit;
752
+ haltingMessage;
753
+ reverted;
754
+ nested;
755
+ numNestedCalls;
756
+ constructor(phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls){
757
+ this.phase = phase;
758
+ this.contractAddress = contractAddress;
759
+ this.callerPc = callerPc;
760
+ this.calldata = calldata;
761
+ this.isStaticCall = isStaticCall;
762
+ this.gasLimit = gasLimit;
763
+ this.output = output;
764
+ this.internalCallStackAtExit = internalCallStackAtExit;
765
+ this.haltingMessage = haltingMessage;
766
+ this.reverted = reverted;
767
+ this.nested = nested;
768
+ this.numNestedCalls = numNestedCalls;
769
+ }
770
+ static get schema() {
771
+ return z.object({
772
+ phase: z.nativeEnum(TxExecutionPhase),
773
+ contractAddress: Fr.schema,
774
+ callerPc: z.number(),
775
+ calldata: Fr.schema.array(),
776
+ isStaticCall: z.boolean(),
777
+ gasLimit: Gas.schema,
778
+ output: Fr.schema.array(),
779
+ internalCallStackAtExit: z.number().array(),
780
+ haltingMessage: NullishToUndefined(z.string()),
781
+ reverted: z.boolean(),
782
+ nested: CallStackMetadata.schema.array(),
783
+ numNestedCalls: z.number()
784
+ }).transform(({ phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls })=>new CallStackMetadata(phase, contractAddress, callerPc, calldata, isStaticCall, gasLimit, output, internalCallStackAtExit, haltingMessage, reverted, nested, numNestedCalls));
785
+ }
786
+ /**
787
+ * Creates a CallStackMetadata from a plain object without Zod validation.
788
+ * This method is optimized for performance and skips validation, making it suitable
789
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
790
+ * @param obj - Plain object containing CallStackMetadata fields
791
+ * @returns A CallStackMetadata instance
792
+ */ static fromPlainObject(obj) {
793
+ if (obj instanceof CallStackMetadata) {
794
+ return obj;
795
+ }
796
+ return new CallStackMetadata(obj.phase, Fr.fromPlainObject(obj.contractAddress), obj.callerPc, obj.calldata.map((f)=>Fr.fromPlainObject(f)), obj.isStaticCall, Gas.fromPlainObject(obj.gasLimit), obj.output.map((f)=>Fr.fromPlainObject(f)), obj.internalCallStackAtExit.map((p)=>Number(p)), obj.haltingMessage, obj.reverted, obj.nested.map((n)=>CallStackMetadata.fromPlainObject(n)), obj.numNestedCalls);
797
+ }
798
+ getRevertReason() {
799
+ const failingCall = this.findDeepestRevert([
800
+ this
801
+ ]);
802
+ if (!failingCall) {
803
+ return undefined;
804
+ }
805
+ const { stack, leaf } = failingCall;
806
+ const aztecCallStack = stack.map((call)=>({
807
+ contractAddress: AztecAddress.fromField(call.contractAddress),
808
+ functionSelector: call.calldata.length > 0 ? FunctionSelector.fromFieldOrUndefined(call.calldata[0]) : undefined
809
+ }));
810
+ // The Noir call stack is the internal call stack at exit of the failing call
811
+ const noirCallStack = leaf.internalCallStackAtExit.map((pc)=>`0.${pc}`);
812
+ return new SimulationError(leaf.haltingMessage ?? 'Transaction reverted', aztecCallStack, leaf.output, noirCallStack);
813
+ }
814
+ /**
815
+ * Finds the "rightmost deepest" revert in the call tree.
816
+ *
817
+ * At each level, we select the LAST (rightmost) reverted call, then recurse into its
818
+ * nested calls to find the deepest reverted leaf along that path. The chain stops
819
+ * when we encounter a non-reverted call (since you can choose not to rethrow).
820
+ *
821
+ * Examples (X = reverted, O = passed):
822
+ *
823
+ * 1. [X, X, X] at depth 1 -> returns the last X (rightmost)
824
+ *
825
+ * 2. [X(depth2), X, X] where first X has a nested revert -> returns the last X at depth 1,
826
+ * NOT the deeper revert in the first X (rightmost takes priority over depth)
827
+ *
828
+ * 3. X -> X -> X -> O -> O -> X (nested chain)
829
+ * Returns the 3rd X, because the O's break the reverted chain (they didn't rethrow)
830
+ *
831
+ * @param calls - Array of call metadata at the current level
832
+ * @param parentStack - Accumulated stack of parent calls (for building the result)
833
+ * @returns The deepest reverted call along the rightmost reverted path, or undefined if none
834
+ */ findDeepestRevert(calls, parentStack = []) {
835
+ const lastReverted = calls.findLast((call)=>call.reverted);
836
+ if (!lastReverted) {
837
+ return undefined;
838
+ }
839
+ const currentStack = [
840
+ ...parentStack,
841
+ lastReverted
842
+ ];
843
+ return this.findDeepestRevert(lastReverted.nested, currentStack) || {
844
+ stack: currentStack,
845
+ leaf: lastReverted
846
+ };
847
+ }
848
+ }
849
+ export class PublicTxEffect {
850
+ transactionFee;
851
+ noteHashes;
852
+ nullifiers;
853
+ l2ToL1Msgs;
854
+ publicLogs;
855
+ publicDataWrites;
856
+ constructor(transactionFee, noteHashes, nullifiers, l2ToL1Msgs, publicLogs, publicDataWrites){
857
+ this.transactionFee = transactionFee;
858
+ this.noteHashes = noteHashes;
859
+ this.nullifiers = nullifiers;
860
+ this.l2ToL1Msgs = l2ToL1Msgs;
861
+ this.publicLogs = publicLogs;
862
+ this.publicDataWrites = publicDataWrites;
863
+ }
864
+ static empty() {
865
+ return new PublicTxEffect(Fr.ZERO, [], [], [], [], []);
866
+ }
867
+ static get schema() {
868
+ return z.object({
869
+ transactionFee: Fr.schema,
870
+ noteHashes: Fr.schema.array(),
871
+ nullifiers: Fr.schema.array(),
872
+ l2ToL1Msgs: ScopedL2ToL1Message.schema.array(),
873
+ publicLogs: PublicLog.schema.array(),
874
+ publicDataWrites: PublicDataWrite.schema.array()
875
+ }).transform(PublicTxEffect.from);
876
+ }
877
+ static from(obj) {
878
+ return new PublicTxEffect(obj.transactionFee, obj.noteHashes, obj.nullifiers, obj.l2ToL1Msgs, obj.publicLogs, obj.publicDataWrites);
879
+ }
880
+ static fromPlainObject(obj) {
881
+ return new PublicTxEffect(Fr.fromPlainObject(obj.transactionFee), obj.noteHashes.map((h)=>Fr.fromPlainObject(h)), obj.nullifiers.map((n)=>Fr.fromPlainObject(n)), obj.l2ToL1Msgs.map((m)=>ScopedL2ToL1Message.fromPlainObject(m)), obj.publicLogs.map((l)=>PublicLog.fromPlainObject(l)), obj.publicDataWrites.map((w)=>PublicDataWrite.fromPlainObject(w)));
882
+ }
883
+ equals(other) {
884
+ return this.transactionFee.equals(other.transactionFee) && this.noteHashes.length === other.noteHashes.length && this.noteHashes.every((h, i)=>h.equals(other.noteHashes[i])) && this.nullifiers.length === other.nullifiers.length && this.nullifiers.every((h, i)=>h.equals(other.nullifiers[i])) && this.l2ToL1Msgs.length === other.l2ToL1Msgs.length && this.l2ToL1Msgs.every((m, i)=>m.equals(other.l2ToL1Msgs[i])) && this.publicLogs.length === other.publicLogs.length && this.publicLogs.every((l, i)=>l.equals(other.publicLogs[i])) && this.publicDataWrites.length === other.publicDataWrites.length && this.publicDataWrites.every((w, i)=>w.equals(other.publicDataWrites[i]));
885
+ }
886
+ }
887
+ export class PublicTxResult {
888
+ gasUsed;
889
+ revertCode;
890
+ publicTxEffect;
891
+ callStackMetadata;
892
+ logs;
893
+ hints;
894
+ publicInputs;
895
+ constructor(// Simulation result.
896
+ gasUsed, revertCode, publicTxEffect, // These are only guaranteed to be present if the simulator is configured to collect them.
897
+ // TODO(fcarreiro): Remove NestedProcessReturnValues[] once we migrate to the C++ simulator.
898
+ callStackMetadata, logs, // For the proving request.
899
+ hints, publicInputs){
900
+ this.gasUsed = gasUsed;
901
+ this.revertCode = revertCode;
902
+ this.publicTxEffect = publicTxEffect;
903
+ this.callStackMetadata = callStackMetadata;
904
+ this.logs = logs;
905
+ this.hints = hints;
906
+ this.publicInputs = publicInputs;
907
+ }
908
+ static empty() {
909
+ return new PublicTxResult({
910
+ totalGas: Gas.empty(),
911
+ teardownGas: Gas.empty(),
912
+ publicGas: Gas.empty(),
913
+ billedGas: Gas.empty()
914
+ }, RevertCode.OK, PublicTxEffect.empty(), /*callStackMetadata=*/ [], /*logs=*/ [], /*hints=*/ AvmExecutionHints.empty(), /*publicInputs=*/ AvmCircuitPublicInputs.empty());
915
+ }
916
+ static get schema() {
917
+ return z.object({
918
+ gasUsed: schemas.GasUsed,
919
+ revertCode: RevertCode.schema,
920
+ revertReason: NullishToUndefined(SimulationError.schema),
921
+ publicTxEffect: PublicTxEffect.schema,
922
+ callStackMetadata: z.union([
923
+ CallStackMetadata.schema.array(),
924
+ NestedProcessReturnValues.schema.array()
925
+ ]),
926
+ logs: NullishToUndefined(DebugLog.schema.array()),
927
+ // For the proving request.
928
+ publicInputs: NullishToUndefined(AvmCircuitPublicInputs.schema),
929
+ hints: NullishToUndefined(AvmExecutionHints.schema)
930
+ }).transform(({ gasUsed, revertCode, publicTxEffect, callStackMetadata, logs, hints, publicInputs })=>new PublicTxResult(gasUsed, revertCode, publicTxEffect, callStackMetadata, logs, hints, publicInputs));
931
+ }
932
+ /**
933
+ * Creates a PublicTxResult from a plain object without Zod validation.
934
+ * This method is optimized for performance and skips validation, making it suitable
935
+ * for deserializing trusted data (e.g., from C++ via MessagePack).
936
+ * @param obj - Plain object containing PublicTxResult fields
937
+ * @returns A PublicTxResult instance
938
+ */ static fromPlainObject(obj) {
939
+ return new PublicTxResult(GasUsed.fromPlainObject(obj.gasUsed), RevertCode.fromPlainObject(obj.revertCode), PublicTxEffect.fromPlainObject(obj.publicTxEffect), obj.callStackMetadata.map(CallStackMetadata.fromPlainObject), obj.logs?.map(DebugLog.fromPlainObject), obj.hints ? AvmExecutionHints.fromPlainObject(obj.hints) : undefined, obj.publicInputs ? AvmCircuitPublicInputs.fromPlainObject(obj.publicInputs) : undefined);
940
+ }
941
+ /** Returns one level of return values for the app logic phase, one per enqueued call. */ getAppLogicReturnValues() {
942
+ if (this.callStackMetadata.every((metadata)=>metadata instanceof CallStackMetadata)) {
943
+ return this.callStackMetadata.filter((metadata)=>metadata.phase === TxExecutionPhase.APP_LOGIC).map((metadata)=>new NestedProcessReturnValues(metadata.output));
944
+ } else {
945
+ return this.callStackMetadata.map((metadata)=>new NestedProcessReturnValues(metadata.values, metadata.nested));
946
+ }
947
+ }
948
+ findRevertReason() {
949
+ if (this.revertCode.isOK()) {
950
+ return undefined;
951
+ }
952
+ const callStackMetadata = this.callStackMetadata;
953
+ // TODO(fcarreiro): Remove this after migration to the C++ simulator.
954
+ // If the "stack" comes from TS, it will have this field.
955
+ if (callStackMetadata.revertReason !== undefined) {
956
+ return callStackMetadata.revertReason;
957
+ }
958
+ // Handle CallStackMetadata[].
959
+ let revertReason = undefined;
960
+ for (const call of callStackMetadata){
961
+ revertReason = call.getRevertReason();
962
+ if (revertReason) {
963
+ break;
964
+ }
965
+ }
966
+ return revertReason;
967
+ }
968
+ }
969
+ export class CollectionLimitsConfig {
970
+ maxDebugLogMemoryReads;
971
+ maxCalldataSizeInFields;
972
+ maxReturndataSizeInFields;
973
+ maxCallStackDepth;
974
+ maxCallStackItems;
975
+ constructor(maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems){
976
+ this.maxDebugLogMemoryReads = maxDebugLogMemoryReads;
977
+ this.maxCalldataSizeInFields = maxCalldataSizeInFields;
978
+ this.maxReturndataSizeInFields = maxReturndataSizeInFields;
979
+ this.maxCallStackDepth = maxCallStackDepth;
980
+ this.maxCallStackItems = maxCallStackItems;
981
+ }
982
+ static from(obj) {
983
+ return new CollectionLimitsConfig(obj.maxDebugLogMemoryReads ?? DEFAULT_MAX_DEBUG_LOG_MEMORY_READS, obj.maxCalldataSizeInFields ?? 300, obj.maxReturndataSizeInFields ?? 300, obj.maxCallStackDepth ?? 5, obj.maxCallStackItems ?? 100);
984
+ }
985
+ static empty() {
986
+ return CollectionLimitsConfig.from({});
987
+ }
988
+ static get schema() {
989
+ return z.object({
990
+ maxDebugLogMemoryReads: z.number(),
991
+ maxCalldataSizeInFields: z.number(),
992
+ maxReturndataSizeInFields: z.number(),
993
+ maxCallStackDepth: z.number(),
994
+ maxCallStackItems: z.number()
995
+ }).transform(({ maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems })=>new CollectionLimitsConfig(maxDebugLogMemoryReads, maxCalldataSizeInFields, maxReturndataSizeInFields, maxCallStackDepth, maxCallStackItems));
996
+ }
997
+ }
998
+ export class PublicSimulatorConfig {
999
+ proverId;
1000
+ skipFeeEnforcement;
1001
+ collectCallMetadata;
1002
+ collectHints;
1003
+ collectPublicInputs;
1004
+ collectDebugLogs;
1005
+ collectStatistics;
1006
+ collectionLimits;
1007
+ constructor(proverId, skipFeeEnforcement, collectCallMetadata, collectHints, collectPublicInputs, collectDebugLogs, collectStatistics, collectionLimits){
1008
+ this.proverId = proverId;
1009
+ this.skipFeeEnforcement = skipFeeEnforcement;
1010
+ this.collectCallMetadata = collectCallMetadata;
1011
+ this.collectHints = collectHints;
1012
+ this.collectPublicInputs = collectPublicInputs;
1013
+ this.collectDebugLogs = collectDebugLogs;
1014
+ this.collectStatistics = collectStatistics;
1015
+ this.collectionLimits = collectionLimits;
1016
+ }
1017
+ static from(obj) {
1018
+ return new PublicSimulatorConfig(obj.proverId ?? Fr.ZERO, obj.skipFeeEnforcement ?? false, obj.collectCallMetadata ?? false, obj.collectHints ?? false, obj.collectPublicInputs ?? false, obj.collectDebugLogs ?? false, obj.collectStatistics ?? false, obj.collectionLimits ?? CollectionLimitsConfig.empty());
1019
+ }
1020
+ static empty() {
1021
+ return PublicSimulatorConfig.from({});
1022
+ }
1023
+ static get schema() {
1024
+ return z.object({
1025
+ proverId: Fr.schema,
1026
+ skipFeeEnforcement: z.boolean(),
1027
+ collectCallMetadata: z.boolean(),
1028
+ collectHints: z.boolean(),
1029
+ collectPublicInputs: z.boolean(),
1030
+ collectDebugLogs: z.boolean(),
1031
+ collectStatistics: z.boolean(),
1032
+ collectionLimits: CollectionLimitsConfig.schema
1033
+ }).transform(PublicSimulatorConfig.from);
1034
+ }
1035
+ }
1036
+ export class AvmFastSimulationInputs {
1037
+ wsRevision;
1038
+ config;
1039
+ tx;
1040
+ globalVariables;
1041
+ protocolContracts;
1042
+ constructor(wsRevision, config, tx, globalVariables, protocolContracts){
1043
+ this.wsRevision = wsRevision;
1044
+ this.config = config;
1045
+ this.tx = tx;
1046
+ this.globalVariables = globalVariables;
1047
+ this.protocolContracts = protocolContracts;
1048
+ }
1049
+ static empty() {
1050
+ return new AvmFastSimulationInputs(WorldStateRevision.empty(), PublicSimulatorConfig.empty(), AvmTxHint.empty(), GlobalVariables.empty(), ProtocolContracts.empty());
1051
+ }
1052
+ static get schema() {
1053
+ return z.object({
1054
+ wsRevision: WorldStateRevision.schema,
1055
+ config: PublicSimulatorConfig.schema,
1056
+ tx: AvmTxHint.schema,
1057
+ globalVariables: GlobalVariables.schema,
1058
+ protocolContracts: ProtocolContracts.schema
1059
+ }).transform(({ wsRevision, config, tx, globalVariables, protocolContracts })=>new AvmFastSimulationInputs(wsRevision, config, tx, globalVariables, protocolContracts));
1060
+ }
1061
+ serializeWithMessagePack() {
1062
+ return serializeWithMessagePack(this);
1063
+ }
1064
+ }