@aztec/stdlib 0.77.0-testnet-ignition.17

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 (1178) hide show
  1. package/README.md +20 -0
  2. package/dest/abi/abi.d.ts +853 -0
  3. package/dest/abi/abi.d.ts.map +1 -0
  4. package/dest/abi/abi.js +279 -0
  5. package/dest/abi/buffer.d.ts +18 -0
  6. package/dest/abi/buffer.d.ts.map +1 -0
  7. package/dest/abi/buffer.js +34 -0
  8. package/dest/abi/contract_artifact.d.ts +23 -0
  9. package/dest/abi/contract_artifact.d.ts.map +1 -0
  10. package/dest/abi/contract_artifact.js +233 -0
  11. package/dest/abi/decoder.d.ts +58 -0
  12. package/dest/abi/decoder.d.ts.map +1 -0
  13. package/dest/abi/decoder.js +170 -0
  14. package/dest/abi/encoder.d.ts +16 -0
  15. package/dest/abi/encoder.d.ts.map +1 -0
  16. package/dest/abi/encoder.js +164 -0
  17. package/dest/abi/event_selector.d.ts +52 -0
  18. package/dest/abi/event_selector.d.ts.map +1 -0
  19. package/dest/abi/event_selector.js +68 -0
  20. package/dest/abi/function_call.d.ts +53 -0
  21. package/dest/abi/function_call.d.ts.map +1 -0
  22. package/dest/abi/function_call.js +49 -0
  23. package/dest/abi/function_selector.d.ts +65 -0
  24. package/dest/abi/function_selector.d.ts.map +1 -0
  25. package/dest/abi/function_selector.js +85 -0
  26. package/dest/abi/index.d.ts +11 -0
  27. package/dest/abi/index.d.ts.map +1 -0
  28. package/dest/abi/index.js +10 -0
  29. package/dest/abi/mocked_keys.d.ts +2 -0
  30. package/dest/abi/mocked_keys.d.ts.map +1 -0
  31. package/dest/abi/mocked_keys.js +1 -0
  32. package/dest/abi/note_selector.d.ts +42 -0
  33. package/dest/abi/note_selector.d.ts.map +1 -0
  34. package/dest/abi/note_selector.js +56 -0
  35. package/dest/abi/selector.d.ts +42 -0
  36. package/dest/abi/selector.d.ts.map +1 -0
  37. package/dest/abi/selector.js +50 -0
  38. package/dest/abi/utils.d.ts +39 -0
  39. package/dest/abi/utils.d.ts.map +1 -0
  40. package/dest/abi/utils.js +55 -0
  41. package/dest/auth_witness/auth_witness.d.ts +26 -0
  42. package/dest/auth_witness/auth_witness.d.ts.map +1 -0
  43. package/dest/auth_witness/auth_witness.js +41 -0
  44. package/dest/auth_witness/index.d.ts +2 -0
  45. package/dest/auth_witness/index.d.ts.map +1 -0
  46. package/dest/auth_witness/index.js +1 -0
  47. package/dest/avm/avm.d.ts +478 -0
  48. package/dest/avm/avm.d.ts.map +1 -0
  49. package/dest/avm/avm.js +794 -0
  50. package/dest/avm/avm_accumulated_data.d.ts +63 -0
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -0
  52. package/dest/avm/avm_accumulated_data.js +70 -0
  53. package/dest/avm/avm_circuit_public_inputs.d.ts +42 -0
  54. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -0
  55. package/dest/avm/avm_circuit_public_inputs.js +92 -0
  56. package/dest/avm/avm_proving_request.d.ts +15 -0
  57. package/dest/avm/avm_proving_request.d.ts.map +1 -0
  58. package/dest/avm/avm_proving_request.js +7 -0
  59. package/dest/avm/contract_storage_read.d.ts +60 -0
  60. package/dest/avm/contract_storage_read.d.ts.map +1 -0
  61. package/dest/avm/contract_storage_read.js +65 -0
  62. package/dest/avm/contract_storage_update_request.d.ts +67 -0
  63. package/dest/avm/contract_storage_update_request.d.ts.map +1 -0
  64. package/dest/avm/contract_storage_update_request.js +80 -0
  65. package/dest/avm/index.d.ts +13 -0
  66. package/dest/avm/index.d.ts.map +1 -0
  67. package/dest/avm/index.js +12 -0
  68. package/dest/avm/public_call_stack_item_compressed.d.ts +45 -0
  69. package/dest/avm/public_call_stack_item_compressed.d.ts.map +1 -0
  70. package/dest/avm/public_call_stack_item_compressed.js +70 -0
  71. package/dest/avm/public_data_hint.d.ts +18 -0
  72. package/dest/avm/public_data_hint.d.ts.map +1 -0
  73. package/dest/avm/public_data_hint.js +27 -0
  74. package/dest/avm/public_data_read.d.ts +41 -0
  75. package/dest/avm/public_data_read.d.ts.map +1 -0
  76. package/dest/avm/public_data_read.js +40 -0
  77. package/dest/avm/public_data_update_request.d.ts +65 -0
  78. package/dest/avm/public_data_update_request.d.ts.map +1 -0
  79. package/dest/avm/public_data_update_request.js +65 -0
  80. package/dest/avm/public_data_write.d.ts +54 -0
  81. package/dest/avm/public_data_write.d.ts.map +1 -0
  82. package/dest/avm/public_data_write.js +64 -0
  83. package/dest/avm/public_inner_call_request.d.ts +53 -0
  84. package/dest/avm/public_inner_call_request.d.ts.map +1 -0
  85. package/dest/avm/public_inner_call_request.js +72 -0
  86. package/dest/avm/revert_code.d.ts +49 -0
  87. package/dest/avm/revert_code.d.ts.map +1 -0
  88. package/dest/avm/revert_code.js +105 -0
  89. package/dest/aztec-address/index.d.ts +58 -0
  90. package/dest/aztec-address/index.d.ts.map +1 -0
  91. package/dest/aztec-address/index.js +108 -0
  92. package/dest/block/block_hash.d.ts +15 -0
  93. package/dest/block/block_hash.d.ts.map +1 -0
  94. package/dest/block/block_hash.js +20 -0
  95. package/dest/block/body.d.ts +35 -0
  96. package/dest/block/body.d.ts.map +1 -0
  97. package/dest/block/body.js +75 -0
  98. package/dest/block/in_block.d.ts +31 -0
  99. package/dest/block/in_block.d.ts.map +1 -0
  100. package/dest/block/in_block.js +24 -0
  101. package/dest/block/index.d.ts +9 -0
  102. package/dest/block/index.d.ts.map +1 -0
  103. package/dest/block/index.js +8 -0
  104. package/dest/block/l2_block.d.ts +134 -0
  105. package/dest/block/l2_block.d.ts.map +1 -0
  106. package/dest/block/l2_block.js +139 -0
  107. package/dest/block/l2_block_code_to_purge.d.ts +24 -0
  108. package/dest/block/l2_block_code_to_purge.d.ts.map +1 -0
  109. package/dest/block/l2_block_code_to_purge.js +51 -0
  110. package/dest/block/l2_block_downloader/index.d.ts +3 -0
  111. package/dest/block/l2_block_downloader/index.d.ts.map +1 -0
  112. package/dest/block/l2_block_downloader/index.js +2 -0
  113. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts +58 -0
  114. package/dest/block/l2_block_downloader/l2_block_downloader.d.ts.map +1 -0
  115. package/dest/block/l2_block_downloader/l2_block_downloader.js +124 -0
  116. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +57 -0
  117. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +1 -0
  118. package/dest/block/l2_block_downloader/l2_block_stream.js +137 -0
  119. package/dest/block/l2_block_number.d.ts +5 -0
  120. package/dest/block/l2_block_number.d.ts.map +1 -0
  121. package/dest/block/l2_block_number.js +6 -0
  122. package/dest/block/l2_block_source.d.ts +233 -0
  123. package/dest/block/l2_block_source.d.ts.map +1 -0
  124. package/dest/block/l2_block_source.js +17 -0
  125. package/dest/block/nullifier_with_block_source.d.ts +6 -0
  126. package/dest/block/nullifier_with_block_source.d.ts.map +1 -0
  127. package/dest/block/nullifier_with_block_source.js +1 -0
  128. package/dest/config/config.d.ts +18 -0
  129. package/dest/config/config.d.ts.map +1 -0
  130. package/dest/config/config.js +28 -0
  131. package/dest/config/index.d.ts +2 -0
  132. package/dest/config/index.d.ts.map +1 -0
  133. package/dest/config/index.js +1 -0
  134. package/dest/contract/artifact_hash.d.ts +47 -0
  135. package/dest/contract/artifact_hash.d.ts.map +1 -0
  136. package/dest/contract/artifact_hash.js +114 -0
  137. package/dest/contract/complete_address.d.ts +82 -0
  138. package/dest/contract/complete_address.d.ts.map +1 -0
  139. package/dest/contract/complete_address.js +117 -0
  140. package/dest/contract/contract_address.d.ts +45 -0
  141. package/dest/contract/contract_address.d.ts.map +1 -0
  142. package/dest/contract/contract_address.js +64 -0
  143. package/dest/contract/contract_class.d.ts +17 -0
  144. package/dest/contract/contract_class.d.ts.map +1 -0
  145. package/dest/contract/contract_class.js +57 -0
  146. package/dest/contract/contract_class_id.d.ts +32 -0
  147. package/dest/contract/contract_class_id.d.ts.map +1 -0
  148. package/dest/contract/contract_class_id.js +54 -0
  149. package/dest/contract/contract_function_dao.d.ts +13 -0
  150. package/dest/contract/contract_function_dao.d.ts.map +1 -0
  151. package/dest/contract/contract_function_dao.js +5 -0
  152. package/dest/contract/contract_instance.d.ts +40 -0
  153. package/dest/contract/contract_instance.d.ts.map +1 -0
  154. package/dest/contract/contract_instance.js +109 -0
  155. package/dest/contract/contract_instance_update.d.ts +17 -0
  156. package/dest/contract/contract_instance_update.d.ts.map +1 -0
  157. package/dest/contract/contract_instance_update.js +38 -0
  158. package/dest/contract/deployment_info.d.ts +24 -0
  159. package/dest/contract/deployment_info.d.ts.map +1 -0
  160. package/dest/contract/deployment_info.js +3 -0
  161. package/dest/contract/index.d.ts +15 -0
  162. package/dest/contract/index.d.ts.map +1 -0
  163. package/dest/contract/index.js +14 -0
  164. package/dest/contract/interfaces/contract_class.d.ts +524 -0
  165. package/dest/contract/interfaces/contract_class.d.ts.map +1 -0
  166. package/dest/contract/interfaces/contract_class.js +53 -0
  167. package/dest/contract/interfaces/contract_data_source.d.ts +44 -0
  168. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -0
  169. package/dest/contract/interfaces/contract_data_source.js +1 -0
  170. package/dest/contract/interfaces/contract_instance.d.ts +138 -0
  171. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -0
  172. package/dest/contract/interfaces/contract_instance.js +16 -0
  173. package/dest/contract/interfaces/contract_instance_update.d.ts +51 -0
  174. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -0
  175. package/dest/contract/interfaces/contract_instance_update.js +10 -0
  176. package/dest/contract/interfaces/index.d.ts +7 -0
  177. package/dest/contract/interfaces/index.d.ts.map +1 -0
  178. package/dest/contract/interfaces/index.js +6 -0
  179. package/dest/contract/interfaces/node-info.d.ts +20 -0
  180. package/dest/contract/interfaces/node-info.d.ts.map +1 -0
  181. package/dest/contract/interfaces/node-info.js +14 -0
  182. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +26 -0
  183. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -0
  184. package/dest/contract/interfaces/protocol_contract_addresses.js +14 -0
  185. package/dest/contract/partial_address.d.ts +7 -0
  186. package/dest/contract/partial_address.d.ts.map +1 -0
  187. package/dest/contract/partial_address.js +4 -0
  188. package/dest/contract/private_function.d.ts +12 -0
  189. package/dest/contract/private_function.d.ts.map +1 -0
  190. package/dest/contract/private_function.js +39 -0
  191. package/dest/contract/private_function_membership_proof.d.ts +32 -0
  192. package/dest/contract/private_function_membership_proof.d.ts.map +1 -0
  193. package/dest/contract/private_function_membership_proof.js +124 -0
  194. package/dest/contract/unconstrained_function_membership_proof.d.ts +27 -0
  195. package/dest/contract/unconstrained_function_membership_proof.d.ts.map +1 -0
  196. package/dest/contract/unconstrained_function_membership_proof.js +87 -0
  197. package/dest/epoch-helpers/index.d.ts +42 -0
  198. package/dest/epoch-helpers/index.d.ts.map +1 -0
  199. package/dest/epoch-helpers/index.js +43 -0
  200. package/dest/errors/index.d.ts +3 -0
  201. package/dest/errors/index.d.ts.map +1 -0
  202. package/dest/errors/index.js +2 -0
  203. package/dest/errors/proving_error.d.ts +15 -0
  204. package/dest/errors/proving_error.d.ts.map +1 -0
  205. package/dest/errors/proving_error.js +16 -0
  206. package/dest/errors/simulation_error.d.ts +111 -0
  207. package/dest/errors/simulation_error.d.ts.map +1 -0
  208. package/dest/errors/simulation_error.js +162 -0
  209. package/dest/event/event.d.ts +24 -0
  210. package/dest/event/event.d.ts.map +1 -0
  211. package/dest/event/event.js +13 -0
  212. package/dest/event/event_metadata.d.ts +38 -0
  213. package/dest/event/event_metadata.d.ts.map +1 -0
  214. package/dest/event/event_metadata.js +45 -0
  215. package/dest/event/index.d.ts +4 -0
  216. package/dest/event/index.d.ts.map +1 -0
  217. package/dest/event/index.js +3 -0
  218. package/dest/event/l1_event_payload.d.ts +52 -0
  219. package/dest/event/l1_event_payload.d.ts.map +1 -0
  220. package/dest/event/l1_event_payload.js +64 -0
  221. package/dest/fees/index.d.ts +2 -0
  222. package/dest/fees/index.d.ts.map +1 -0
  223. package/dest/fees/index.js +1 -0
  224. package/dest/fees/transaction_fee.d.ts +6 -0
  225. package/dest/fees/transaction_fee.d.ts.map +1 -0
  226. package/dest/fees/transaction_fee.js +8 -0
  227. package/dest/gas/gas.d.ts +50 -0
  228. package/dest/gas/gas.d.ts.map +1 -0
  229. package/dest/gas/gas.js +76 -0
  230. package/dest/gas/gas_fees.d.ts +46 -0
  231. package/dest/gas/gas_fees.d.ts.map +1 -0
  232. package/dest/gas/gas_fees.js +77 -0
  233. package/dest/gas/gas_settings.d.ts +136 -0
  234. package/dest/gas/gas_settings.d.ts.map +1 -0
  235. package/dest/gas/gas_settings.js +89 -0
  236. package/dest/gas/gas_used.d.ts +20 -0
  237. package/dest/gas/gas_used.d.ts.map +1 -0
  238. package/dest/gas/gas_used.js +1 -0
  239. package/dest/gas/index.d.ts +5 -0
  240. package/dest/gas/index.d.ts.map +1 -0
  241. package/dest/gas/index.js +4 -0
  242. package/dest/hash/hash.d.ts +77 -0
  243. package/dest/hash/hash.d.ts.map +1 -0
  244. package/dest/hash/hash.js +135 -0
  245. package/dest/hash/index.d.ts +3 -0
  246. package/dest/hash/index.d.ts.map +1 -0
  247. package/dest/hash/index.js +2 -0
  248. package/dest/hash/map_slot.d.ts +12 -0
  249. package/dest/hash/map_slot.d.ts.map +1 -0
  250. package/dest/hash/map_slot.js +12 -0
  251. package/dest/interfaces/archiver.d.ts +9 -0
  252. package/dest/interfaces/archiver.d.ts.map +1 -0
  253. package/dest/interfaces/archiver.js +52 -0
  254. package/dest/interfaces/aztec-node.d.ts +348 -0
  255. package/dest/interfaces/aztec-node.d.ts.map +1 -0
  256. package/dest/interfaces/aztec-node.js +93 -0
  257. package/dest/interfaces/block-builder.d.ts +26 -0
  258. package/dest/interfaces/block-builder.d.ts.map +1 -0
  259. package/dest/interfaces/block-builder.js +1 -0
  260. package/dest/interfaces/client.d.ts +5 -0
  261. package/dest/interfaces/client.d.ts.map +1 -0
  262. package/dest/interfaces/client.js +4 -0
  263. package/dest/interfaces/configs.d.ts +152 -0
  264. package/dest/interfaces/configs.d.ts.map +1 -0
  265. package/dest/interfaces/configs.js +34 -0
  266. package/dest/interfaces/epoch-prover.d.ts +38 -0
  267. package/dest/interfaces/epoch-prover.d.ts.map +1 -0
  268. package/dest/interfaces/epoch-prover.js +1 -0
  269. package/dest/interfaces/get_logs_response.d.ts +73 -0
  270. package/dest/interfaces/get_logs_response.d.ts.map +1 -0
  271. package/dest/interfaces/get_logs_response.js +11 -0
  272. package/dest/interfaces/l2_logs_source.d.ts +42 -0
  273. package/dest/interfaces/l2_logs_source.d.ts.map +1 -0
  274. package/dest/interfaces/l2_logs_source.js +3 -0
  275. package/dest/interfaces/merkle_tree_operations.d.ts +226 -0
  276. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -0
  277. package/dest/interfaces/merkle_tree_operations.js +13 -0
  278. package/dest/interfaces/p2p-bootstrap.d.ts +14 -0
  279. package/dest/interfaces/p2p-bootstrap.d.ts.map +1 -0
  280. package/dest/interfaces/p2p-bootstrap.js +5 -0
  281. package/dest/interfaces/p2p.d.ts +49 -0
  282. package/dest/interfaces/p2p.d.ts.map +1 -0
  283. package/dest/interfaces/p2p.js +30 -0
  284. package/dest/interfaces/private_kernel_prover.d.ts +81 -0
  285. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -0
  286. package/dest/interfaces/private_kernel_prover.js +4 -0
  287. package/dest/interfaces/processed-tx-handler.d.ts +10 -0
  288. package/dest/interfaces/processed-tx-handler.d.ts.map +1 -0
  289. package/dest/interfaces/processed-tx-handler.js +1 -0
  290. package/dest/interfaces/prover-agent.d.ts +11 -0
  291. package/dest/interfaces/prover-agent.d.ts.map +1 -0
  292. package/dest/interfaces/prover-agent.js +9 -0
  293. package/dest/interfaces/prover-broker.d.ts +68 -0
  294. package/dest/interfaces/prover-broker.d.ts.map +1 -0
  295. package/dest/interfaces/prover-broker.js +1 -0
  296. package/dest/interfaces/prover-client.d.ts +76 -0
  297. package/dest/interfaces/prover-client.d.ts.map +1 -0
  298. package/dest/interfaces/prover-client.js +70 -0
  299. package/dest/interfaces/prover-coordination.d.ts +20 -0
  300. package/dest/interfaces/prover-coordination.d.ts.map +1 -0
  301. package/dest/interfaces/prover-coordination.js +7 -0
  302. package/dest/interfaces/prover-node.d.ts +19 -0
  303. package/dest/interfaces/prover-node.d.ts.map +1 -0
  304. package/dest/interfaces/prover-node.js +27 -0
  305. package/dest/interfaces/proving-job-source.d.ts +29 -0
  306. package/dest/interfaces/proving-job-source.d.ts.map +1 -0
  307. package/dest/interfaces/proving-job-source.js +8 -0
  308. package/dest/interfaces/proving-job.d.ts +391 -0
  309. package/dest/interfaces/proving-job.d.ts.map +1 -0
  310. package/dest/interfaces/proving-job.js +259 -0
  311. package/dest/interfaces/pxe.d.ts +347 -0
  312. package/dest/interfaces/pxe.d.ts.map +1 -0
  313. package/dest/interfaces/pxe.js +104 -0
  314. package/dest/interfaces/server.d.ts +20 -0
  315. package/dest/interfaces/server.d.ts.map +1 -0
  316. package/dest/interfaces/server.js +19 -0
  317. package/dest/interfaces/server_circuit_prover.d.ts +86 -0
  318. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -0
  319. package/dest/interfaces/server_circuit_prover.js +3 -0
  320. package/dest/interfaces/service.d.ts +15 -0
  321. package/dest/interfaces/service.d.ts.map +1 -0
  322. package/dest/interfaces/service.js +7 -0
  323. package/dest/interfaces/world_state.d.ts +85 -0
  324. package/dest/interfaces/world_state.d.ts.map +1 -0
  325. package/dest/interfaces/world_state.js +17 -0
  326. package/dest/kernel/combined_constant_data.d.ts +73 -0
  327. package/dest/kernel/combined_constant_data.d.ts.map +1 -0
  328. package/dest/kernel/combined_constant_data.js +73 -0
  329. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +15 -0
  330. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -0
  331. package/dest/kernel/hints/build_note_hash_read_request_hints.js +66 -0
  332. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +24 -0
  333. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -0
  334. package/dest/kernel/hints/build_nullifier_read_request_hints.js +67 -0
  335. package/dest/kernel/hints/build_transient_data_hints.d.ts +10 -0
  336. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -0
  337. package/dest/kernel/hints/build_transient_data_hints.js +51 -0
  338. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +3 -0
  339. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -0
  340. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +104 -0
  341. package/dest/kernel/hints/index.d.ts +17 -0
  342. package/dest/kernel/hints/index.d.ts.map +1 -0
  343. package/dest/kernel/hints/index.js +16 -0
  344. package/dest/kernel/hints/key_validation_hint.d.ts +19 -0
  345. package/dest/kernel/hints/key_validation_hint.d.ts.map +1 -0
  346. package/dest/kernel/hints/key_validation_hint.js +20 -0
  347. package/dest/kernel/hints/key_validation_request.d.ts +25 -0
  348. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -0
  349. package/dest/kernel/hints/key_validation_request.js +50 -0
  350. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +32 -0
  351. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +1 -0
  352. package/dest/kernel/hints/key_validation_request_and_generator.js +44 -0
  353. package/dest/kernel/hints/note_hash_read_request_hints.d.ts +24 -0
  354. package/dest/kernel/hints/note_hash_read_request_hints.d.ts.map +1 -0
  355. package/dest/kernel/hints/note_hash_read_request_hints.js +43 -0
  356. package/dest/kernel/hints/nullifier_read_request_hints.d.ts +21 -0
  357. package/dest/kernel/hints/nullifier_read_request_hints.d.ts.map +1 -0
  358. package/dest/kernel/hints/nullifier_read_request_hints.js +43 -0
  359. package/dest/kernel/hints/private_kernel_reset_hints.d.ts +61 -0
  360. package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -0
  361. package/dest/kernel/hints/private_kernel_reset_hints.js +48 -0
  362. package/dest/kernel/hints/read_request.d.ts +90 -0
  363. package/dest/kernel/hints/read_request.d.ts.map +1 -0
  364. package/dest/kernel/hints/read_request.js +112 -0
  365. package/dest/kernel/hints/read_request_hints.d.ts +78 -0
  366. package/dest/kernel/hints/read_request_hints.d.ts.map +1 -0
  367. package/dest/kernel/hints/read_request_hints.js +114 -0
  368. package/dest/kernel/hints/rollup_validation_requests.d.ts +40 -0
  369. package/dest/kernel/hints/rollup_validation_requests.d.ts.map +1 -0
  370. package/dest/kernel/hints/rollup_validation_requests.js +57 -0
  371. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts +21 -0
  372. package/dest/kernel/hints/scoped_key_validation_request_and_generator.d.ts.map +1 -0
  373. package/dest/kernel/hints/scoped_key_validation_request_and_generator.js +41 -0
  374. package/dest/kernel/hints/scoped_value_cache.d.ts +14 -0
  375. package/dest/kernel/hints/scoped_value_cache.d.ts.map +1 -0
  376. package/dest/kernel/hints/scoped_value_cache.js +14 -0
  377. package/dest/kernel/hints/transient_data_index_hint.d.ts +20 -0
  378. package/dest/kernel/hints/transient_data_index_hint.d.ts.map +1 -0
  379. package/dest/kernel/hints/transient_data_index_hint.js +40 -0
  380. package/dest/kernel/hints/tree_leaf_read_request.d.ts +16 -0
  381. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +1 -0
  382. package/dest/kernel/hints/tree_leaf_read_request.js +33 -0
  383. package/dest/kernel/index.d.ts +31 -0
  384. package/dest/kernel/index.d.ts.map +1 -0
  385. package/dest/kernel/index.js +30 -0
  386. package/dest/kernel/log_hash.d.ts +38 -0
  387. package/dest/kernel/log_hash.d.ts.map +1 -0
  388. package/dest/kernel/log_hash.js +87 -0
  389. package/dest/kernel/note_hash.d.ts +34 -0
  390. package/dest/kernel/note_hash.d.ts.map +1 -0
  391. package/dest/kernel/note_hash.js +80 -0
  392. package/dest/kernel/nullifier.d.ts +36 -0
  393. package/dest/kernel/nullifier.d.ts.map +1 -0
  394. package/dest/kernel/nullifier.js +86 -0
  395. package/dest/kernel/private_accumulated_data.d.ts +92 -0
  396. package/dest/kernel/private_accumulated_data.d.ts.map +1 -0
  397. package/dest/kernel/private_accumulated_data.js +71 -0
  398. package/dest/kernel/private_call_data.d.ts +170 -0
  399. package/dest/kernel/private_call_data.d.ts.map +1 -0
  400. package/dest/kernel/private_call_data.js +167 -0
  401. package/dest/kernel/private_call_request.d.ts +57 -0
  402. package/dest/kernel/private_call_request.d.ts.map +1 -0
  403. package/dest/kernel/private_call_request.js +59 -0
  404. package/dest/kernel/private_circuit_public_inputs.d.ts +238 -0
  405. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -0
  406. package/dest/kernel/private_circuit_public_inputs.js +191 -0
  407. package/dest/kernel/private_context_inputs.d.ts +14 -0
  408. package/dest/kernel/private_context_inputs.d.ts.map +1 -0
  409. package/dest/kernel/private_context_inputs.js +27 -0
  410. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +90 -0
  411. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -0
  412. package/dest/kernel/private_kernel_circuit_public_inputs.js +66 -0
  413. package/dest/kernel/private_kernel_data.d.ts +54 -0
  414. package/dest/kernel/private_kernel_data.d.ts.map +1 -0
  415. package/dest/kernel/private_kernel_data.js +43 -0
  416. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +72 -0
  417. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -0
  418. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +48 -0
  419. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts +39 -0
  420. package/dest/kernel/private_kernel_inner_circuit_private_inputs.d.ts.map +1 -0
  421. package/dest/kernel/private_kernel_inner_circuit_private_inputs.js +31 -0
  422. package/dest/kernel/private_kernel_prover_profile_result.d.ts +25 -0
  423. package/dest/kernel/private_kernel_prover_profile_result.d.ts.map +1 -0
  424. package/dest/kernel/private_kernel_prover_profile_result.js +7 -0
  425. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts +35 -0
  426. package/dest/kernel/private_kernel_reset_circuit_private_inputs.d.ts.map +1 -0
  427. package/dest/kernel/private_kernel_reset_circuit_private_inputs.js +36 -0
  428. package/dest/kernel/private_kernel_reset_dimensions.d.ts +34 -0
  429. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -0
  430. package/dest/kernel/private_kernel_reset_dimensions.js +56 -0
  431. package/dest/kernel/private_kernel_simulated_output.d.ts +28 -0
  432. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -0
  433. package/dest/kernel/private_kernel_simulated_output.js +3 -0
  434. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +31 -0
  435. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -0
  436. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +30 -0
  437. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +114 -0
  438. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -0
  439. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +183 -0
  440. package/dest/kernel/private_log_data.d.ts +40 -0
  441. package/dest/kernel/private_log_data.d.ts.map +1 -0
  442. package/dest/kernel/private_log_data.js +99 -0
  443. package/dest/kernel/private_to_avm_accumulated_data.d.ts +40 -0
  444. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -0
  445. package/dest/kernel/private_to_avm_accumulated_data.js +102 -0
  446. package/dest/kernel/private_to_public_accumulated_data.d.ts +31 -0
  447. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -0
  448. package/dest/kernel/private_to_public_accumulated_data.js +73 -0
  449. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts +34 -0
  450. package/dest/kernel/private_to_public_accumulated_data_builder.d.ts.map +1 -0
  451. package/dest/kernel/private_to_public_accumulated_data_builder.js +72 -0
  452. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +30 -0
  453. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -0
  454. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +65 -0
  455. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +82 -0
  456. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -0
  457. package/dest/kernel/private_to_rollup_accumulated_data.js +99 -0
  458. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +76 -0
  459. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -0
  460. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +85 -0
  461. package/dest/kernel/private_validation_requests.d.ts +82 -0
  462. package/dest/kernel/private_validation_requests.d.ts.map +1 -0
  463. package/dest/kernel/private_validation_requests.js +79 -0
  464. package/dest/kernel/public_call_request.d.ts +73 -0
  465. package/dest/kernel/public_call_request.d.ts.map +1 -0
  466. package/dest/kernel/public_call_request.js +119 -0
  467. package/dest/kernel/utils/index.d.ts +4 -0
  468. package/dest/kernel/utils/index.d.ts.map +1 -0
  469. package/dest/kernel/utils/index.js +3 -0
  470. package/dest/kernel/utils/interfaces.d.ts +7 -0
  471. package/dest/kernel/utils/interfaces.d.ts.map +1 -0
  472. package/dest/kernel/utils/interfaces.js +1 -0
  473. package/dest/kernel/utils/optional_number.d.ts +33 -0
  474. package/dest/kernel/utils/optional_number.d.ts.map +1 -0
  475. package/dest/kernel/utils/optional_number.js +42 -0
  476. package/dest/kernel/utils/order_and_comparison.d.ts +8 -0
  477. package/dest/kernel/utils/order_and_comparison.d.ts.map +1 -0
  478. package/dest/kernel/utils/order_and_comparison.js +52 -0
  479. package/dest/keys/derivation.d.ts +30 -0
  480. package/dest/keys/derivation.d.ts.map +1 -0
  481. package/dest/keys/derivation.js +127 -0
  482. package/dest/keys/index.d.ts +6 -0
  483. package/dest/keys/index.d.ts.map +1 -0
  484. package/dest/keys/index.js +5 -0
  485. package/dest/keys/key_types.d.ts +5 -0
  486. package/dest/keys/key_types.d.ts.map +1 -0
  487. package/dest/keys/key_types.js +6 -0
  488. package/dest/keys/public_key.d.ts +4 -0
  489. package/dest/keys/public_key.d.ts.map +1 -0
  490. package/dest/keys/public_key.js +1 -0
  491. package/dest/keys/public_keys.d.ts +116 -0
  492. package/dest/keys/public_keys.d.ts.map +1 -0
  493. package/dest/keys/public_keys.js +121 -0
  494. package/dest/keys/utils.d.ts +3 -0
  495. package/dest/keys/utils.d.ts.map +1 -0
  496. package/dest/keys/utils.js +6 -0
  497. package/dest/logs/contract_class_log.d.ts +40 -0
  498. package/dest/logs/contract_class_log.d.ts.map +1 -0
  499. package/dest/logs/contract_class_log.js +104 -0
  500. package/dest/logs/extended_contract_class_log.d.ts +53 -0
  501. package/dest/logs/extended_contract_class_log.d.ts.map +1 -0
  502. package/dest/logs/extended_contract_class_log.js +67 -0
  503. package/dest/logs/extended_public_log.d.ts +94 -0
  504. package/dest/logs/extended_public_log.d.ts.map +1 -0
  505. package/dest/logs/extended_public_log.js +73 -0
  506. package/dest/logs/index.d.ts +12 -0
  507. package/dest/logs/index.d.ts.map +1 -0
  508. package/dest/logs/index.js +11 -0
  509. package/dest/logs/indexed_tagging_secret.d.ts +28 -0
  510. package/dest/logs/indexed_tagging_secret.d.ts.map +1 -0
  511. package/dest/logs/indexed_tagging_secret.js +50 -0
  512. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +50 -0
  513. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +1 -0
  514. package/dest/logs/l1_payload/encrypted_log_payload.js +140 -0
  515. package/dest/logs/l1_payload/encryption_util.d.ts +24 -0
  516. package/dest/logs/l1_payload/encryption_util.d.ts.map +1 -0
  517. package/dest/logs/l1_payload/encryption_util.js +46 -0
  518. package/dest/logs/l1_payload/index.d.ts +3 -0
  519. package/dest/logs/l1_payload/index.d.ts.map +1 -0
  520. package/dest/logs/l1_payload/index.js +2 -0
  521. package/dest/logs/l1_payload/l1_note_payload.d.ts +82 -0
  522. package/dest/logs/l1_payload/l1_note_payload.d.ts.map +1 -0
  523. package/dest/logs/l1_payload/l1_note_payload.js +129 -0
  524. package/dest/logs/l1_payload/payload.d.ts +60 -0
  525. package/dest/logs/l1_payload/payload.d.ts.map +1 -0
  526. package/dest/logs/l1_payload/payload.js +61 -0
  527. package/dest/logs/l1_payload/shared_secret_derivation.d.ts +16 -0
  528. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +1 -0
  529. package/dest/logs/l1_payload/shared_secret_derivation.js +23 -0
  530. package/dest/logs/log_filter.d.ts +22 -0
  531. package/dest/logs/log_filter.d.ts.map +1 -0
  532. package/dest/logs/log_filter.js +11 -0
  533. package/dest/logs/log_id.d.ts +72 -0
  534. package/dest/logs/log_id.d.ts.map +1 -0
  535. package/dest/logs/log_id.js +83 -0
  536. package/dest/logs/log_with_tx_data.d.ts +11 -0
  537. package/dest/logs/log_with_tx_data.d.ts.map +1 -0
  538. package/dest/logs/log_with_tx_data.js +36 -0
  539. package/dest/logs/private_log.d.ts +31 -0
  540. package/dest/logs/private_log.d.ts.map +1 -0
  541. package/dest/logs/private_log.js +47 -0
  542. package/dest/logs/public_log.d.ts +29 -0
  543. package/dest/logs/public_log.d.ts.map +1 -0
  544. package/dest/logs/public_log.js +67 -0
  545. package/dest/logs/tx_scoped_l2_log.d.ts +60 -0
  546. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -0
  547. package/dest/logs/tx_scoped_l2_log.js +58 -0
  548. package/dest/messaging/inbox_leaf.d.ts +19 -0
  549. package/dest/messaging/inbox_leaf.d.ts.map +1 -0
  550. package/dest/messaging/inbox_leaf.js +27 -0
  551. package/dest/messaging/index.d.ts +7 -0
  552. package/dest/messaging/index.d.ts.map +1 -0
  553. package/dest/messaging/index.js +6 -0
  554. package/dest/messaging/l1_actor.d.ts +33 -0
  555. package/dest/messaging/l1_actor.d.ts.map +1 -0
  556. package/dest/messaging/l1_actor.js +39 -0
  557. package/dest/messaging/l1_to_l2_message.d.ts +50 -0
  558. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -0
  559. package/dest/messaging/l1_to_l2_message.js +83 -0
  560. package/dest/messaging/l1_to_l2_message_source.d.ts +24 -0
  561. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -0
  562. package/dest/messaging/l1_to_l2_message_source.js +3 -0
  563. package/dest/messaging/l2_actor.d.ts +33 -0
  564. package/dest/messaging/l2_actor.d.ts.map +1 -0
  565. package/dest/messaging/l2_actor.js +39 -0
  566. package/dest/messaging/l2_to_l1_message.d.ts +66 -0
  567. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -0
  568. package/dest/messaging/l2_to_l1_message.js +114 -0
  569. package/dest/network/index.d.ts +32 -0
  570. package/dest/network/index.d.ts.map +1 -0
  571. package/dest/network/index.js +30 -0
  572. package/dest/noir/index.d.ts +128 -0
  573. package/dest/noir/index.d.ts.map +1 -0
  574. package/dest/noir/index.js +15 -0
  575. package/dest/note/comparator.d.ts +12 -0
  576. package/dest/note/comparator.d.ts.map +1 -0
  577. package/dest/note/comparator.js +11 -0
  578. package/dest/note/extended_note.d.ts +124 -0
  579. package/dest/note/extended_note.d.ts.map +1 -0
  580. package/dest/note/extended_note.js +115 -0
  581. package/dest/note/index.d.ts +6 -0
  582. package/dest/note/index.d.ts.map +1 -0
  583. package/dest/note/index.js +5 -0
  584. package/dest/note/note.d.ts +24 -0
  585. package/dest/note/note.d.ts.map +1 -0
  586. package/dest/note/note.js +13 -0
  587. package/dest/note/note_status.d.ts +8 -0
  588. package/dest/note/note_status.d.ts.map +1 -0
  589. package/dest/note/note_status.js +7 -0
  590. package/dest/note/notes_filter.d.ts +27 -0
  591. package/dest/note/notes_filter.d.ts.map +1 -0
  592. package/dest/note/notes_filter.js +13 -0
  593. package/dest/p2p/block_attestation.d.ts +49 -0
  594. package/dest/p2p/block_attestation.d.ts.map +1 -0
  595. package/dest/p2p/block_attestation.js +78 -0
  596. package/dest/p2p/block_proposal.d.ts +45 -0
  597. package/dest/p2p/block_proposal.d.ts.map +1 -0
  598. package/dest/p2p/block_proposal.js +70 -0
  599. package/dest/p2p/client_type.d.ts +5 -0
  600. package/dest/p2p/client_type.d.ts.map +1 -0
  601. package/dest/p2p/client_type.js +7 -0
  602. package/dest/p2p/consensus_payload.d.ts +51 -0
  603. package/dest/p2p/consensus_payload.d.ts.map +1 -0
  604. package/dest/p2p/consensus_payload.js +81 -0
  605. package/dest/p2p/gossipable.d.ts +32 -0
  606. package/dest/p2p/gossipable.d.ts.map +1 -0
  607. package/dest/p2p/gossipable.js +10 -0
  608. package/dest/p2p/index.d.ts +11 -0
  609. package/dest/p2p/index.d.ts.map +1 -0
  610. package/dest/p2p/index.js +10 -0
  611. package/dest/p2p/interface.d.ts +18 -0
  612. package/dest/p2p/interface.d.ts.map +1 -0
  613. package/dest/p2p/interface.js +19 -0
  614. package/dest/p2p/message_validator.d.ts +10 -0
  615. package/dest/p2p/message_validator.d.ts.map +1 -0
  616. package/dest/p2p/message_validator.js +5 -0
  617. package/dest/p2p/peer_error.d.ts +18 -0
  618. package/dest/p2p/peer_error.d.ts.map +1 -0
  619. package/dest/p2p/peer_error.js +15 -0
  620. package/dest/p2p/signature_utils.d.ts +23 -0
  621. package/dest/p2p/signature_utils.d.ts.map +1 -0
  622. package/dest/p2p/signature_utils.js +22 -0
  623. package/dest/p2p/topic_type.d.ts +28 -0
  624. package/dest/p2p/topic_type.d.ts.map +1 -0
  625. package/dest/p2p/topic_type.js +40 -0
  626. package/dest/parity/base_parity_inputs.d.ts +37 -0
  627. package/dest/parity/base_parity_inputs.d.ts.map +1 -0
  628. package/dest/parity/base_parity_inputs.js +45 -0
  629. package/dest/parity/index.d.ts +5 -0
  630. package/dest/parity/index.d.ts.map +1 -0
  631. package/dest/parity/index.js +4 -0
  632. package/dest/parity/parity_public_inputs.d.ts +58 -0
  633. package/dest/parity/parity_public_inputs.d.ts.map +1 -0
  634. package/dest/parity/parity_public_inputs.js +68 -0
  635. package/dest/parity/root_parity_input.d.ts +54 -0
  636. package/dest/parity/root_parity_input.d.ts.map +1 -0
  637. package/dest/parity/root_parity_input.js +50 -0
  638. package/dest/parity/root_parity_inputs.d.ts +39 -0
  639. package/dest/parity/root_parity_inputs.d.ts.map +1 -0
  640. package/dest/parity/root_parity_inputs.js +47 -0
  641. package/dest/proofs/client_ivc_proof.d.ts +21 -0
  642. package/dest/proofs/client_ivc_proof.d.ts.map +1 -0
  643. package/dest/proofs/client_ivc_proof.js +44 -0
  644. package/dest/proofs/index.d.ts +5 -0
  645. package/dest/proofs/index.d.ts.map +1 -0
  646. package/dest/proofs/index.js +4 -0
  647. package/dest/proofs/proof.d.ts +65 -0
  648. package/dest/proofs/proof.d.ts.map +1 -0
  649. package/dest/proofs/proof.js +91 -0
  650. package/dest/proofs/proving_request_type.d.ts +16 -0
  651. package/dest/proofs/proving_request_type.d.ts.map +1 -0
  652. package/dest/proofs/proving_request_type.js +15 -0
  653. package/dest/proofs/recursive_proof.d.ts +101 -0
  654. package/dest/proofs/recursive_proof.d.ts.map +1 -0
  655. package/dest/proofs/recursive_proof.js +93 -0
  656. package/dest/rollup/avm_proof_data.d.ts +17 -0
  657. package/dest/rollup/avm_proof_data.d.ts.map +1 -0
  658. package/dest/rollup/avm_proof_data.js +25 -0
  659. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts +126 -0
  660. package/dest/rollup/base_or_merge_rollup_public_inputs.d.ts.map +1 -0
  661. package/dest/rollup/base_or_merge_rollup_public_inputs.js +92 -0
  662. package/dest/rollup/base_rollup_hints.d.ts +138 -0
  663. package/dest/rollup/base_rollup_hints.d.ts.map +1 -0
  664. package/dest/rollup/base_rollup_hints.js +132 -0
  665. package/dest/rollup/block_merge_rollup.d.ts +45 -0
  666. package/dest/rollup/block_merge_rollup.d.ts.map +1 -0
  667. package/dest/rollup/block_merge_rollup.js +50 -0
  668. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts +159 -0
  669. package/dest/rollup/block_root_or_block_merge_public_inputs.d.ts.map +1 -0
  670. package/dest/rollup/block_root_or_block_merge_public_inputs.js +136 -0
  671. package/dest/rollup/block_root_rollup.d.ts +262 -0
  672. package/dest/rollup/block_root_rollup.d.ts.map +1 -0
  673. package/dest/rollup/block_root_rollup.js +293 -0
  674. package/dest/rollup/constant_rollup_data.d.ts +47 -0
  675. package/dest/rollup/constant_rollup_data.d.ts.map +1 -0
  676. package/dest/rollup/constant_rollup_data.js +45 -0
  677. package/dest/rollup/empty_block_root_rollup_inputs.d.ts +54 -0
  678. package/dest/rollup/empty_block_root_rollup_inputs.d.ts.map +1 -0
  679. package/dest/rollup/empty_block_root_rollup_inputs.js +68 -0
  680. package/dest/rollup/index.d.ts +19 -0
  681. package/dest/rollup/index.d.ts.map +1 -0
  682. package/dest/rollup/index.js +18 -0
  683. package/dest/rollup/merge_rollup.d.ts +45 -0
  684. package/dest/rollup/merge_rollup.d.ts.map +1 -0
  685. package/dest/rollup/merge_rollup.js +50 -0
  686. package/dest/rollup/previous_rollup_block_data.d.ts +58 -0
  687. package/dest/rollup/previous_rollup_block_data.d.ts.map +1 -0
  688. package/dest/rollup/previous_rollup_block_data.js +42 -0
  689. package/dest/rollup/previous_rollup_data.d.ts +58 -0
  690. package/dest/rollup/previous_rollup_data.d.ts.map +1 -0
  691. package/dest/rollup/previous_rollup_data.js +42 -0
  692. package/dest/rollup/private_base_rollup_inputs.d.ts +23 -0
  693. package/dest/rollup/private_base_rollup_inputs.d.ts.map +1 -0
  694. package/dest/rollup/private_base_rollup_inputs.js +44 -0
  695. package/dest/rollup/private_tube_data.d.ts +17 -0
  696. package/dest/rollup/private_tube_data.d.ts.map +1 -0
  697. package/dest/rollup/private_tube_data.js +25 -0
  698. package/dest/rollup/public_base_rollup_inputs.d.ts +25 -0
  699. package/dest/rollup/public_base_rollup_inputs.d.ts.map +1 -0
  700. package/dest/rollup/public_base_rollup_inputs.js +48 -0
  701. package/dest/rollup/public_tube_data.d.ts +17 -0
  702. package/dest/rollup/public_tube_data.d.ts.map +1 -0
  703. package/dest/rollup/public_tube_data.js +25 -0
  704. package/dest/rollup/root_rollup.d.ts +112 -0
  705. package/dest/rollup/root_rollup.d.ts.map +1 -0
  706. package/dest/rollup/root_rollup.js +158 -0
  707. package/dest/rollup/state_diff_hints.d.ts +105 -0
  708. package/dest/rollup/state_diff_hints.d.ts.map +1 -0
  709. package/dest/rollup/state_diff_hints.js +85 -0
  710. package/dest/rollup/tube_inputs.d.ts +40 -0
  711. package/dest/rollup/tube_inputs.d.ts.map +1 -0
  712. package/dest/rollup/tube_inputs.js +57 -0
  713. package/dest/schemas/index.d.ts +2 -0
  714. package/dest/schemas/index.d.ts.map +1 -0
  715. package/dest/schemas/index.js +1 -0
  716. package/dest/schemas/schemas.d.ts +63 -0
  717. package/dest/schemas/schemas.d.ts.map +1 -0
  718. package/dest/schemas/schemas.js +34 -0
  719. package/dest/shared_mutable/index.d.ts +5 -0
  720. package/dest/shared_mutable/index.d.ts.map +1 -0
  721. package/dest/shared_mutable/index.js +4 -0
  722. package/dest/shared_mutable/scheduled_delay_change.d.ts +10 -0
  723. package/dest/shared_mutable/scheduled_delay_change.d.ts.map +1 -0
  724. package/dest/shared_mutable/scheduled_delay_change.js +16 -0
  725. package/dest/shared_mutable/scheduled_value_change.d.ts +11 -0
  726. package/dest/shared_mutable/scheduled_value_change.d.ts.map +1 -0
  727. package/dest/shared_mutable/scheduled_value_change.js +27 -0
  728. package/dest/shared_mutable/shared_mutable_values.d.ts +22 -0
  729. package/dest/shared_mutable/shared_mutable_values.d.ts.map +1 -0
  730. package/dest/shared_mutable/shared_mutable_values.js +78 -0
  731. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts +15 -0
  732. package/dest/shared_mutable/shared_mutable_values_with_hash.d.ts.map +1 -0
  733. package/dest/shared_mutable/shared_mutable_values_with_hash.js +30 -0
  734. package/dest/stats/index.d.ts +2 -0
  735. package/dest/stats/index.d.ts.map +1 -0
  736. package/dest/stats/index.js +1 -0
  737. package/dest/stats/stats.d.ts +224 -0
  738. package/dest/stats/stats.d.ts.map +1 -0
  739. package/dest/stats/stats.js +1 -0
  740. package/dest/tests/factories.d.ts +396 -0
  741. package/dest/tests/factories.d.ts.map +1 -0
  742. package/dest/tests/factories.js +914 -0
  743. package/dest/tests/fixtures.d.ts +6 -0
  744. package/dest/tests/fixtures.d.ts.map +1 -0
  745. package/dest/tests/fixtures.js +25 -0
  746. package/dest/tests/index.d.ts +3 -0
  747. package/dest/tests/index.d.ts.map +1 -0
  748. package/dest/tests/index.js +2 -0
  749. package/dest/tests/jest.d.ts +13 -0
  750. package/dest/tests/jest.d.ts.map +1 -0
  751. package/dest/tests/jest.js +26 -0
  752. package/dest/tests/mocks.d.ts +43 -0
  753. package/dest/tests/mocks.d.ts.map +1 -0
  754. package/dest/tests/mocks.js +179 -0
  755. package/dest/trees/append_only_tree_snapshot.d.ts +70 -0
  756. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -0
  757. package/dest/trees/append_only_tree_snapshot.js +75 -0
  758. package/dest/trees/index.d.ts +9 -0
  759. package/dest/trees/index.d.ts.map +1 -0
  760. package/dest/trees/index.js +8 -0
  761. package/dest/trees/merkle_tree_id.d.ts +23 -0
  762. package/dest/trees/merkle_tree_id.d.ts.map +1 -0
  763. package/dest/trees/merkle_tree_id.js +25 -0
  764. package/dest/trees/nullifier_leaf.d.ts +88 -0
  765. package/dest/trees/nullifier_leaf.d.ts.map +1 -0
  766. package/dest/trees/nullifier_leaf.js +103 -0
  767. package/dest/trees/nullifier_membership_witness.d.ts +112 -0
  768. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -0
  769. package/dest/trees/nullifier_membership_witness.js +47 -0
  770. package/dest/trees/protocol_contract_leaf.d.ts +87 -0
  771. package/dest/trees/protocol_contract_leaf.d.ts.map +1 -0
  772. package/dest/trees/protocol_contract_leaf.js +103 -0
  773. package/dest/trees/public_data_leaf.d.ts +110 -0
  774. package/dest/trees/public_data_leaf.d.ts.map +1 -0
  775. package/dest/trees/public_data_leaf.js +130 -0
  776. package/dest/trees/public_data_witness.d.ts +142 -0
  777. package/dest/trees/public_data_witness.d.ts.map +1 -0
  778. package/dest/trees/public_data_witness.js +81 -0
  779. package/dest/tx/block_header.d.ts +90 -0
  780. package/dest/tx/block_header.d.ts.map +1 -0
  781. package/dest/tx/block_header.js +134 -0
  782. package/dest/tx/call_context.d.ts +94 -0
  783. package/dest/tx/call_context.d.ts.map +1 -0
  784. package/dest/tx/call_context.js +96 -0
  785. package/dest/tx/capsule.d.ts +30 -0
  786. package/dest/tx/capsule.d.ts.map +1 -0
  787. package/dest/tx/capsule.js +37 -0
  788. package/dest/tx/content_commitment.d.ts +105 -0
  789. package/dest/tx/content_commitment.d.ts.map +1 -0
  790. package/dest/tx/content_commitment.js +96 -0
  791. package/dest/tx/function_data.d.ts +69 -0
  792. package/dest/tx/function_data.d.ts.map +1 -0
  793. package/dest/tx/function_data.js +72 -0
  794. package/dest/tx/global_variable_builder.d.ts +21 -0
  795. package/dest/tx/global_variable_builder.d.ts.map +1 -0
  796. package/dest/tx/global_variable_builder.js +3 -0
  797. package/dest/tx/global_variables.d.ts +139 -0
  798. package/dest/tx/global_variables.d.ts.map +1 -0
  799. package/dest/tx/global_variables.js +131 -0
  800. package/dest/tx/hashed_values.d.ts +26 -0
  801. package/dest/tx/hashed_values.d.ts.map +1 -0
  802. package/dest/tx/hashed_values.js +42 -0
  803. package/dest/tx/index.d.ts +28 -0
  804. package/dest/tx/index.d.ts.map +1 -0
  805. package/dest/tx/index.js +27 -0
  806. package/dest/tx/max_block_number.d.ts +55 -0
  807. package/dest/tx/max_block_number.d.ts.map +1 -0
  808. package/dest/tx/max_block_number.js +65 -0
  809. package/dest/tx/partial_state_reference.d.ts +104 -0
  810. package/dest/tx/partial_state_reference.d.ts.map +1 -0
  811. package/dest/tx/partial_state_reference.js +60 -0
  812. package/dest/tx/private_execution_result.d.ts +182 -0
  813. package/dest/tx/private_execution_result.d.ts.map +1 -0
  814. package/dest/tx/private_execution_result.js +261 -0
  815. package/dest/tx/processed_tx.d.ts +70 -0
  816. package/dest/tx/processed_tx.d.ts.map +1 -0
  817. package/dest/tx/processed_tx.js +64 -0
  818. package/dest/tx/public_execution_request.d.ts +45 -0
  819. package/dest/tx/public_execution_request.d.ts.map +1 -0
  820. package/dest/tx/public_execution_request.js +72 -0
  821. package/dest/tx/public_simulation_output.d.ts +31 -0
  822. package/dest/tx/public_simulation_output.d.ts.map +1 -0
  823. package/dest/tx/public_simulation_output.js +68 -0
  824. package/dest/tx/simulated_tx.d.ts +72 -0
  825. package/dest/tx/simulated_tx.d.ts.map +1 -0
  826. package/dest/tx/simulated_tx.js +104 -0
  827. package/dest/tx/state_reference.d.ts +166 -0
  828. package/dest/tx/state_reference.d.ts.map +1 -0
  829. package/dest/tx/state_reference.js +74 -0
  830. package/dest/tx/tree_snapshots.d.ts +26 -0
  831. package/dest/tx/tree_snapshots.d.ts.map +1 -0
  832. package/dest/tx/tree_snapshots.js +63 -0
  833. package/dest/tx/tx.d.ts +174 -0
  834. package/dest/tx/tx.d.ts.map +1 -0
  835. package/dest/tx/tx.js +248 -0
  836. package/dest/tx/tx_constant_data.d.ts +61 -0
  837. package/dest/tx/tx_constant_data.d.ts.map +1 -0
  838. package/dest/tx/tx_constant_data.js +68 -0
  839. package/dest/tx/tx_context.d.ts +196 -0
  840. package/dest/tx/tx_context.d.ts.map +1 -0
  841. package/dest/tx/tx_context.js +80 -0
  842. package/dest/tx/tx_effect.d.ts +170 -0
  843. package/dest/tx/tx_effect.d.ts.map +1 -0
  844. package/dest/tx/tx_effect.js +425 -0
  845. package/dest/tx/tx_execution_request.d.ts +114 -0
  846. package/dest/tx/tx_execution_request.d.ts.map +1 -0
  847. package/dest/tx/tx_execution_request.js +127 -0
  848. package/dest/tx/tx_hash.d.ts +27 -0
  849. package/dest/tx/tx_hash.d.ts.map +1 -0
  850. package/dest/tx/tx_hash.js +51 -0
  851. package/dest/tx/tx_receipt.d.ts +83 -0
  852. package/dest/tx/tx_receipt.d.ts.map +1 -0
  853. package/dest/tx/tx_receipt.js +76 -0
  854. package/dest/tx/tx_request.d.ts +48 -0
  855. package/dest/tx/tx_request.d.ts.map +1 -0
  856. package/dest/tx/tx_request.js +66 -0
  857. package/dest/tx/validator/empty_validator.d.ts +5 -0
  858. package/dest/tx/validator/empty_validator.d.ts.map +1 -0
  859. package/dest/tx/validator/empty_validator.js +7 -0
  860. package/dest/tx/validator/tx_validator.d.ts +46 -0
  861. package/dest/tx/validator/tx_validator.d.ts.map +1 -0
  862. package/dest/tx/validator/tx_validator.js +18 -0
  863. package/dest/types/index.d.ts +2 -0
  864. package/dest/types/index.d.ts.map +1 -0
  865. package/dest/types/index.js +1 -0
  866. package/dest/types/shared.d.ts +41 -0
  867. package/dest/types/shared.d.ts.map +1 -0
  868. package/dest/types/shared.js +34 -0
  869. package/dest/versioning/index.d.ts +2 -0
  870. package/dest/versioning/index.d.ts.map +1 -0
  871. package/dest/versioning/index.js +1 -0
  872. package/dest/versioning/versioning.d.ts +32 -0
  873. package/dest/versioning/versioning.d.ts.map +1 -0
  874. package/dest/versioning/versioning.js +92 -0
  875. package/dest/vks/index.d.ts +3 -0
  876. package/dest/vks/index.d.ts.map +1 -0
  877. package/dest/vks/index.js +2 -0
  878. package/dest/vks/verification_key.d.ts +197 -0
  879. package/dest/vks/verification_key.d.ts.map +1 -0
  880. package/dest/vks/verification_key.js +241 -0
  881. package/dest/vks/vk_witness_data.d.ts +32 -0
  882. package/dest/vks/vk_witness_data.d.ts.map +1 -0
  883. package/dest/vks/vk_witness_data.js +33 -0
  884. package/package.json +142 -0
  885. package/src/abi/abi.ts +504 -0
  886. package/src/abi/buffer.ts +36 -0
  887. package/src/abi/contract_artifact.ts +294 -0
  888. package/src/abi/decoder.ts +187 -0
  889. package/src/abi/encoder.ts +161 -0
  890. package/src/abi/event_selector.ts +93 -0
  891. package/src/abi/function_call.ts +58 -0
  892. package/src/abi/function_selector.ts +123 -0
  893. package/src/abi/index.ts +10 -0
  894. package/src/abi/mocked_keys.ts +2 -0
  895. package/src/abi/note_selector.ts +78 -0
  896. package/src/abi/selector.ts +64 -0
  897. package/src/abi/utils.ts +78 -0
  898. package/src/auth_witness/auth_witness.ts +52 -0
  899. package/src/auth_witness/index.ts +1 -0
  900. package/src/avm/avm.ts +1010 -0
  901. package/src/avm/avm_accumulated_data.ts +133 -0
  902. package/src/avm/avm_circuit_public_inputs.ts +168 -0
  903. package/src/avm/avm_proving_request.ts +11 -0
  904. package/src/avm/contract_storage_read.ts +77 -0
  905. package/src/avm/contract_storage_update_request.ts +93 -0
  906. package/src/avm/index.ts +12 -0
  907. package/src/avm/public_call_stack_item_compressed.ts +113 -0
  908. package/src/avm/public_data_hint.ts +38 -0
  909. package/src/avm/public_data_read.ts +48 -0
  910. package/src/avm/public_data_update_request.ts +106 -0
  911. package/src/avm/public_data_write.ts +80 -0
  912. package/src/avm/public_inner_call_request.ts +85 -0
  913. package/src/avm/revert_code.ts +128 -0
  914. package/src/aztec-address/index.ts +145 -0
  915. package/src/block/block_hash.ts +30 -0
  916. package/src/block/body.ts +101 -0
  917. package/src/block/in_block.ts +36 -0
  918. package/src/block/index.ts +8 -0
  919. package/src/block/l2_block.ts +205 -0
  920. package/src/block/l2_block_code_to_purge.ts +103 -0
  921. package/src/block/l2_block_downloader/index.ts +2 -0
  922. package/src/block/l2_block_downloader/l2_block_downloader.ts +149 -0
  923. package/src/block/l2_block_downloader/l2_block_stream.ts +179 -0
  924. package/src/block/l2_block_number.ts +8 -0
  925. package/src/block/l2_block_source.ts +148 -0
  926. package/src/block/nullifier_with_block_source.ts +7 -0
  927. package/src/config/config.ts +42 -0
  928. package/src/config/index.ts +1 -0
  929. package/src/contract/artifact_hash.ts +115 -0
  930. package/src/contract/complete_address.ts +155 -0
  931. package/src/contract/contract_address.ts +91 -0
  932. package/src/contract/contract_class.ts +81 -0
  933. package/src/contract/contract_class_id.ts +70 -0
  934. package/src/contract/contract_function_dao.ts +13 -0
  935. package/src/contract/contract_instance.ts +151 -0
  936. package/src/contract/contract_instance_update.ts +47 -0
  937. package/src/contract/deployment_info.ts +25 -0
  938. package/src/contract/index.ts +14 -0
  939. package/src/contract/interfaces/contract_class.ts +167 -0
  940. package/src/contract/interfaces/contract_data_source.ts +52 -0
  941. package/src/contract/interfaces/contract_instance.ts +47 -0
  942. package/src/contract/interfaces/contract_instance_update.ts +30 -0
  943. package/src/contract/interfaces/index.ts +6 -0
  944. package/src/contract/interfaces/node-info.ts +33 -0
  945. package/src/contract/interfaces/protocol_contract_addresses.ts +25 -0
  946. package/src/contract/partial_address.ts +7 -0
  947. package/src/contract/private_function.ts +47 -0
  948. package/src/contract/private_function_membership_proof.ts +167 -0
  949. package/src/contract/unconstrained_function_membership_proof.ts +118 -0
  950. package/src/epoch-helpers/index.ts +69 -0
  951. package/src/errors/index.ts +2 -0
  952. package/src/errors/proving_error.ts +18 -0
  953. package/src/errors/simulation_error.ts +261 -0
  954. package/src/event/event.ts +16 -0
  955. package/src/event/event_metadata.ts +56 -0
  956. package/src/event/index.ts +3 -0
  957. package/src/event/l1_event_payload.ts +87 -0
  958. package/src/fees/index.ts +1 -0
  959. package/src/fees/transaction_fee.ts +21 -0
  960. package/src/gas/gas.ts +101 -0
  961. package/src/gas/gas_fees.ts +104 -0
  962. package/src/gas/gas_settings.ts +150 -0
  963. package/src/gas/gas_used.ts +23 -0
  964. package/src/gas/index.ts +4 -0
  965. package/src/hash/hash.ts +143 -0
  966. package/src/hash/index.ts +2 -0
  967. package/src/hash/map_slot.ts +18 -0
  968. package/src/interfaces/archiver.ts +84 -0
  969. package/src/interfaces/aztec-node.ts +614 -0
  970. package/src/interfaces/block-builder.ts +33 -0
  971. package/src/interfaces/client.ts +4 -0
  972. package/src/interfaces/configs.ts +73 -0
  973. package/src/interfaces/epoch-prover.ts +43 -0
  974. package/src/interfaces/get_logs_response.ts +31 -0
  975. package/src/interfaces/l2_logs_source.ts +47 -0
  976. package/src/interfaces/merkle_tree_operations.ts +293 -0
  977. package/src/interfaces/p2p-bootstrap.ts +21 -0
  978. package/src/interfaces/p2p.ts +67 -0
  979. package/src/interfaces/private_kernel_prover.ts +113 -0
  980. package/src/interfaces/processed-tx-handler.ts +10 -0
  981. package/src/interfaces/prover-agent.ts +20 -0
  982. package/src/interfaces/prover-broker.ts +90 -0
  983. package/src/interfaces/prover-client.ts +121 -0
  984. package/src/interfaces/prover-coordination.ts +27 -0
  985. package/src/interfaces/prover-node.ts +46 -0
  986. package/src/interfaces/proving-job-source.ts +40 -0
  987. package/src/interfaces/proving-job.ts +352 -0
  988. package/src/interfaces/pxe.ts +536 -0
  989. package/src/interfaces/server.ts +19 -0
  990. package/src/interfaces/server_circuit_prover.ts +167 -0
  991. package/src/interfaces/service.ts +25 -0
  992. package/src/interfaces/world_state.ts +84 -0
  993. package/src/kernel/combined_constant_data.ts +128 -0
  994. package/src/kernel/hints/build_note_hash_read_request_hints.ts +125 -0
  995. package/src/kernel/hints/build_nullifier_read_request_hints.ts +153 -0
  996. package/src/kernel/hints/build_transient_data_hints.ts +81 -0
  997. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +167 -0
  998. package/src/kernel/hints/index.ts +16 -0
  999. package/src/kernel/hints/key_validation_hint.ts +24 -0
  1000. package/src/kernel/hints/key_validation_request.ts +63 -0
  1001. package/src/kernel/hints/key_validation_request_and_generator.ts +52 -0
  1002. package/src/kernel/hints/note_hash_read_request_hints.ts +94 -0
  1003. package/src/kernel/hints/nullifier_read_request_hints.ts +93 -0
  1004. package/src/kernel/hints/private_kernel_reset_hints.ts +129 -0
  1005. package/src/kernel/hints/read_request.ts +130 -0
  1006. package/src/kernel/hints/read_request_hints.ts +165 -0
  1007. package/src/kernel/hints/rollup_validation_requests.ts +73 -0
  1008. package/src/kernel/hints/scoped_key_validation_request_and_generator.ts +54 -0
  1009. package/src/kernel/hints/scoped_value_cache.ts +19 -0
  1010. package/src/kernel/hints/transient_data_index_hint.ts +42 -0
  1011. package/src/kernel/hints/tree_leaf_read_request.ts +32 -0
  1012. package/src/kernel/index.ts +30 -0
  1013. package/src/kernel/log_hash.ts +91 -0
  1014. package/src/kernel/note_hash.ts +85 -0
  1015. package/src/kernel/nullifier.ts +89 -0
  1016. package/src/kernel/private_accumulated_data.ts +113 -0
  1017. package/src/kernel/private_call_data.ts +207 -0
  1018. package/src/kernel/private_call_request.ts +99 -0
  1019. package/src/kernel/private_circuit_public_inputs.ts +322 -0
  1020. package/src/kernel/private_context_inputs.ts +23 -0
  1021. package/src/kernel/private_kernel_circuit_public_inputs.ts +102 -0
  1022. package/src/kernel/private_kernel_data.ts +61 -0
  1023. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +68 -0
  1024. package/src/kernel/private_kernel_inner_circuit_private_inputs.ts +41 -0
  1025. package/src/kernel/private_kernel_prover_profile_result.ts +7 -0
  1026. package/src/kernel/private_kernel_reset_circuit_private_inputs.ts +77 -0
  1027. package/src/kernel/private_kernel_reset_dimensions.ts +81 -0
  1028. package/src/kernel/private_kernel_simulated_output.ts +35 -0
  1029. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +41 -0
  1030. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +313 -0
  1031. package/src/kernel/private_log_data.ts +107 -0
  1032. package/src/kernel/private_to_avm_accumulated_data.ts +144 -0
  1033. package/src/kernel/private_to_public_accumulated_data.ts +141 -0
  1034. package/src/kernel/private_to_public_accumulated_data_builder.ts +102 -0
  1035. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +96 -0
  1036. package/src/kernel/private_to_rollup_accumulated_data.ts +159 -0
  1037. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +112 -0
  1038. package/src/kernel/private_validation_requests.ts +140 -0
  1039. package/src/kernel/public_call_request.ts +157 -0
  1040. package/src/kernel/utils/index.ts +3 -0
  1041. package/src/kernel/utils/interfaces.ts +7 -0
  1042. package/src/kernel/utils/optional_number.ts +50 -0
  1043. package/src/kernel/utils/order_and_comparison.ts +71 -0
  1044. package/src/keys/derivation.ts +141 -0
  1045. package/src/keys/index.ts +5 -0
  1046. package/src/keys/key_types.ts +5 -0
  1047. package/src/keys/public_key.ts +4 -0
  1048. package/src/keys/public_keys.ts +194 -0
  1049. package/src/keys/utils.ts +9 -0
  1050. package/src/logs/contract_class_log.ts +112 -0
  1051. package/src/logs/extended_contract_class_log.ts +87 -0
  1052. package/src/logs/extended_public_log.ts +94 -0
  1053. package/src/logs/index.ts +11 -0
  1054. package/src/logs/indexed_tagging_secret.ts +45 -0
  1055. package/src/logs/l1_payload/encrypted_log_payload.ts +202 -0
  1056. package/src/logs/l1_payload/encryption_util.ts +54 -0
  1057. package/src/logs/l1_payload/index.ts +2 -0
  1058. package/src/logs/l1_payload/l1_note_payload.ts +182 -0
  1059. package/src/logs/l1_payload/payload.ts +73 -0
  1060. package/src/logs/l1_payload/shared_secret_derivation.ts +35 -0
  1061. package/src/logs/log_filter.ts +31 -0
  1062. package/src/logs/log_id.ts +110 -0
  1063. package/src/logs/log_with_tx_data.ts +36 -0
  1064. package/src/logs/private_log.ts +58 -0
  1065. package/src/logs/public_log.ts +83 -0
  1066. package/src/logs/tx_scoped_l2_log.ts +83 -0
  1067. package/src/messaging/inbox_leaf.ts +28 -0
  1068. package/src/messaging/index.ts +6 -0
  1069. package/src/messaging/l1_actor.ts +43 -0
  1070. package/src/messaging/l1_to_l2_message.ts +97 -0
  1071. package/src/messaging/l1_to_l2_message_source.ts +26 -0
  1072. package/src/messaging/l2_actor.ts +44 -0
  1073. package/src/messaging/l2_to_l1_message.ts +128 -0
  1074. package/src/network/index.ts +32 -0
  1075. package/src/noir/index.ts +154 -0
  1076. package/src/note/comparator.ts +11 -0
  1077. package/src/note/extended_note.ts +168 -0
  1078. package/src/note/index.ts +5 -0
  1079. package/src/note/note.ts +16 -0
  1080. package/src/note/note_status.ts +8 -0
  1081. package/src/note/notes_filter.ts +39 -0
  1082. package/src/p2p/block_attestation.ts +107 -0
  1083. package/src/p2p/block_proposal.ts +102 -0
  1084. package/src/p2p/client_type.ts +6 -0
  1085. package/src/p2p/consensus_payload.ts +91 -0
  1086. package/src/p2p/gossipable.ts +33 -0
  1087. package/src/p2p/index.ts +10 -0
  1088. package/src/p2p/interface.ts +28 -0
  1089. package/src/p2p/message_validator.ts +10 -0
  1090. package/src/p2p/peer_error.ts +17 -0
  1091. package/src/p2p/signature_utils.ts +36 -0
  1092. package/src/p2p/topic_type.ts +45 -0
  1093. package/src/parity/base_parity_inputs.ts +63 -0
  1094. package/src/parity/index.ts +4 -0
  1095. package/src/parity/parity_public_inputs.ts +82 -0
  1096. package/src/parity/root_parity_input.ts +71 -0
  1097. package/src/parity/root_parity_inputs.ts +66 -0
  1098. package/src/proofs/client_ivc_proof.ts +61 -0
  1099. package/src/proofs/index.ts +4 -0
  1100. package/src/proofs/proof.ts +115 -0
  1101. package/src/proofs/proving_request_type.ts +17 -0
  1102. package/src/proofs/recursive_proof.ts +124 -0
  1103. package/src/rollup/avm_proof_data.ts +35 -0
  1104. package/src/rollup/base_or_merge_rollup_public_inputs.ts +146 -0
  1105. package/src/rollup/base_rollup_hints.ts +182 -0
  1106. package/src/rollup/block_merge_rollup.ts +65 -0
  1107. package/src/rollup/block_root_or_block_merge_public_inputs.ts +175 -0
  1108. package/src/rollup/block_root_rollup.ts +362 -0
  1109. package/src/rollup/constant_rollup_data.ts +54 -0
  1110. package/src/rollup/empty_block_root_rollup_inputs.ts +85 -0
  1111. package/src/rollup/index.ts +18 -0
  1112. package/src/rollup/merge_rollup.ts +62 -0
  1113. package/src/rollup/previous_rollup_block_data.ts +54 -0
  1114. package/src/rollup/previous_rollup_data.ts +54 -0
  1115. package/src/rollup/private_base_rollup_inputs.ts +50 -0
  1116. package/src/rollup/private_tube_data.ts +35 -0
  1117. package/src/rollup/public_base_rollup_inputs.ts +59 -0
  1118. package/src/rollup/public_tube_data.ts +35 -0
  1119. package/src/rollup/root_rollup.ts +206 -0
  1120. package/src/rollup/state_diff_hints.ts +126 -0
  1121. package/src/rollup/tube_inputs.ts +70 -0
  1122. package/src/schemas/index.ts +1 -0
  1123. package/src/schemas/schemas.ts +83 -0
  1124. package/src/shared_mutable/index.ts +4 -0
  1125. package/src/shared_mutable/scheduled_delay_change.ts +13 -0
  1126. package/src/shared_mutable/scheduled_value_change.ts +25 -0
  1127. package/src/shared_mutable/shared_mutable_values.ts +92 -0
  1128. package/src/shared_mutable/shared_mutable_values_with_hash.ts +38 -0
  1129. package/src/stats/index.ts +1 -0
  1130. package/src/stats/stats.ts +276 -0
  1131. package/src/tests/factories.ts +1554 -0
  1132. package/src/tests/fixtures.ts +31 -0
  1133. package/src/tests/index.ts +2 -0
  1134. package/src/tests/jest.ts +29 -0
  1135. package/src/tests/mocks.ts +300 -0
  1136. package/src/trees/append_only_tree_snapshot.ts +95 -0
  1137. package/src/trees/index.ts +8 -0
  1138. package/src/trees/merkle_tree_id.ts +42 -0
  1139. package/src/trees/nullifier_leaf.ts +133 -0
  1140. package/src/trees/nullifier_membership_witness.ts +59 -0
  1141. package/src/trees/protocol_contract_leaf.ts +132 -0
  1142. package/src/trees/public_data_leaf.ts +164 -0
  1143. package/src/trees/public_data_witness.ts +103 -0
  1144. package/src/tx/block_header.ts +197 -0
  1145. package/src/tx/call_context.ts +138 -0
  1146. package/src/tx/capsule.ts +46 -0
  1147. package/src/tx/content_commitment.ts +133 -0
  1148. package/src/tx/function_data.ts +102 -0
  1149. package/src/tx/global_variable_builder.ts +28 -0
  1150. package/src/tx/global_variables.ts +193 -0
  1151. package/src/tx/hashed_values.ts +49 -0
  1152. package/src/tx/index.ts +27 -0
  1153. package/src/tx/max_block_number.ts +79 -0
  1154. package/src/tx/partial_state_reference.ts +95 -0
  1155. package/src/tx/private_execution_result.ts +315 -0
  1156. package/src/tx/processed_tx.ts +175 -0
  1157. package/src/tx/public_execution_request.ts +97 -0
  1158. package/src/tx/public_simulation_output.ts +94 -0
  1159. package/src/tx/simulated_tx.ts +179 -0
  1160. package/src/tx/state_reference.ts +93 -0
  1161. package/src/tx/tree_snapshots.ts +96 -0
  1162. package/src/tx/tx.ts +364 -0
  1163. package/src/tx/tx_constant_data.ts +93 -0
  1164. package/src/tx/tx_context.ts +104 -0
  1165. package/src/tx/tx_effect.ts +533 -0
  1166. package/src/tx/tx_execution_request.ts +168 -0
  1167. package/src/tx/tx_hash.ts +67 -0
  1168. package/src/tx/tx_receipt.ts +121 -0
  1169. package/src/tx/tx_request.ts +77 -0
  1170. package/src/tx/validator/empty_validator.ts +7 -0
  1171. package/src/tx/validator/tx_validator.ts +26 -0
  1172. package/src/types/index.ts +1 -0
  1173. package/src/types/shared.ts +45 -0
  1174. package/src/versioning/index.ts +1 -0
  1175. package/src/versioning/versioning.ts +153 -0
  1176. package/src/vks/index.ts +2 -0
  1177. package/src/vks/verification_key.ts +325 -0
  1178. package/src/vks/vk_witness_data.ts +43 -0
@@ -0,0 +1,1554 @@
1
+ import { makeBlockBlobPublicInputs, makeSpongeBlob } from '@aztec/blob-lib/testing';
2
+ import {
3
+ ARCHIVE_HEIGHT,
4
+ AVM_PROOF_LENGTH_IN_FIELDS,
5
+ AZTEC_MAX_EPOCH_DURATION,
6
+ BLOBS_PER_BLOCK,
7
+ CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS,
8
+ FIELDS_PER_BLOB,
9
+ FIXED_DA_GAS,
10
+ FIXED_L2_GAS,
11
+ GeneratorIndex,
12
+ L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH,
13
+ MAX_CONTRACT_CLASS_LOGS_PER_TX,
14
+ MAX_ENQUEUED_CALLS_PER_CALL,
15
+ MAX_ENQUEUED_CALLS_PER_TX,
16
+ MAX_KEY_VALIDATION_REQUESTS_PER_CALL,
17
+ MAX_L2_TO_L1_MSGS_PER_CALL,
18
+ MAX_L2_TO_L1_MSGS_PER_TX,
19
+ MAX_NOTE_HASHES_PER_CALL,
20
+ MAX_NOTE_HASHES_PER_TX,
21
+ MAX_NOTE_HASH_READ_REQUESTS_PER_CALL,
22
+ MAX_NULLIFIERS_PER_CALL,
23
+ MAX_NULLIFIERS_PER_TX,
24
+ MAX_NULLIFIER_READ_REQUESTS_PER_CALL,
25
+ MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL,
26
+ MAX_PRIVATE_LOGS_PER_CALL,
27
+ MAX_PRIVATE_LOGS_PER_TX,
28
+ MAX_PUBLIC_LOGS_PER_TX,
29
+ MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
30
+ NESTED_RECURSIVE_PROOF_LENGTH,
31
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
32
+ NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH,
33
+ NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH,
34
+ NULLIFIER_TREE_HEIGHT,
35
+ NUM_BASE_PARITY_PER_ROOT_PARITY,
36
+ NUM_MSGS_PER_BASE_PARITY,
37
+ PRIVATE_LOG_SIZE_IN_FIELDS,
38
+ PUBLIC_DATA_TREE_HEIGHT,
39
+ PUBLIC_LOG_DATA_SIZE_IN_FIELDS,
40
+ RECURSIVE_PROOF_LENGTH,
41
+ TUBE_PROOF_LENGTH,
42
+ VK_TREE_HEIGHT,
43
+ } from '@aztec/constants';
44
+ import { type FieldsOf, makeHalfFullTuple, makeTuple } from '@aztec/foundation/array';
45
+ import { toBufferBE } from '@aztec/foundation/bigint-buffer';
46
+ import { compact } from '@aztec/foundation/collection';
47
+ import { SchnorrSignature, poseidon2HashWithSeparator } from '@aztec/foundation/crypto';
48
+ import { EthAddress } from '@aztec/foundation/eth-address';
49
+ import { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
50
+ import type { Bufferable } from '@aztec/foundation/serialize';
51
+ import { MembershipWitness } from '@aztec/foundation/trees';
52
+
53
+ import { FunctionSelector } from '../abi/function_selector.js';
54
+ import { ContractStorageRead } from '../avm/contract_storage_read.js';
55
+ import { ContractStorageUpdateRequest } from '../avm/contract_storage_update_request.js';
56
+ import {
57
+ AvmAccumulatedData,
58
+ AvmAppendTreeHint,
59
+ AvmCircuitInputs,
60
+ AvmCircuitPublicInputs,
61
+ AvmContractClassHint,
62
+ AvmContractInstanceHint,
63
+ AvmEnqueuedCallHint,
64
+ AvmExecutionHints,
65
+ AvmNullifierReadTreeHint,
66
+ AvmNullifierWriteTreeHint,
67
+ AvmPublicDataReadTreeHint,
68
+ AvmPublicDataWriteTreeHint,
69
+ RevertCode,
70
+ } from '../avm/index.js';
71
+ import { PublicDataHint } from '../avm/public_data_hint.js';
72
+ import { PublicDataRead } from '../avm/public_data_read.js';
73
+ import { PublicDataWrite } from '../avm/public_data_write.js';
74
+ import { AztecAddress } from '../aztec-address/index.js';
75
+ import {
76
+ type ContractClassPublic,
77
+ type ContractInstanceWithAddress,
78
+ type ExecutablePrivateFunctionWithMembershipProof,
79
+ type PrivateFunction,
80
+ type PublicFunction,
81
+ SerializableContractInstance,
82
+ type UnconstrainedFunctionWithMembershipProof,
83
+ computeContractClassId,
84
+ computePublicBytecodeCommitment,
85
+ } from '../contract/index.js';
86
+ import { Gas, GasFees, GasSettings, type GasUsed } from '../gas/index.js';
87
+ import type { MerkleTreeReadOperations } from '../interfaces/merkle_tree_operations.js';
88
+ import { KeyValidationRequest } from '../kernel/hints/key_validation_request.js';
89
+ import { KeyValidationRequestAndGenerator } from '../kernel/hints/key_validation_request_and_generator.js';
90
+ import { ReadRequest } from '../kernel/hints/read_request.js';
91
+ import { RollupValidationRequests } from '../kernel/hints/rollup_validation_requests.js';
92
+ import {
93
+ CombinedConstantData,
94
+ PartialPrivateTailPublicInputsForPublic,
95
+ PartialPrivateTailPublicInputsForRollup,
96
+ PrivateKernelTailCircuitPublicInputs,
97
+ PrivateToAvmAccumulatedData,
98
+ PrivateToAvmAccumulatedDataArrayLengths,
99
+ PrivateToPublicAccumulatedData,
100
+ PrivateToPublicKernelCircuitPublicInputs,
101
+ PrivateToRollupAccumulatedData,
102
+ mergeAccumulatedData,
103
+ } from '../kernel/index.js';
104
+ import { LogHash, ScopedLogHash } from '../kernel/log_hash.js';
105
+ import { NoteHash } from '../kernel/note_hash.js';
106
+ import { Nullifier } from '../kernel/nullifier.js';
107
+ import { PrivateCallRequest } from '../kernel/private_call_request.js';
108
+ import { PrivateCircuitPublicInputs } from '../kernel/private_circuit_public_inputs.js';
109
+ import { PrivateLogData } from '../kernel/private_log_data.js';
110
+ import { PrivateToRollupKernelCircuitPublicInputs } from '../kernel/private_to_rollup_kernel_circuit_public_inputs.js';
111
+ import { CountedPublicCallRequest, PublicCallRequest } from '../kernel/public_call_request.js';
112
+ import { PublicKeys, computeAddress } from '../keys/index.js';
113
+ import { ContractClassLog } from '../logs/contract_class_log.js';
114
+ import { PrivateLog } from '../logs/private_log.js';
115
+ import { PublicLog } from '../logs/public_log.js';
116
+ import { L2ToL1Message, ScopedL2ToL1Message } from '../messaging/l2_to_l1_message.js';
117
+ import { BaseParityInputs } from '../parity/base_parity_inputs.js';
118
+ import { ParityPublicInputs } from '../parity/parity_public_inputs.js';
119
+ import { RootParityInput } from '../parity/root_parity_input.js';
120
+ import { RootParityInputs } from '../parity/root_parity_inputs.js';
121
+ import { Proof } from '../proofs/proof.js';
122
+ import { ProvingRequestType } from '../proofs/proving_request_type.js';
123
+ import { makeRecursiveProof } from '../proofs/recursive_proof.js';
124
+ import { AvmProofData } from '../rollup/avm_proof_data.js';
125
+ import { BaseOrMergeRollupPublicInputs } from '../rollup/base_or_merge_rollup_public_inputs.js';
126
+ import { PrivateBaseRollupHints, PublicBaseRollupHints } from '../rollup/base_rollup_hints.js';
127
+ import { BlockMergeRollupInputs } from '../rollup/block_merge_rollup.js';
128
+ import { BlockRootOrBlockMergePublicInputs, FeeRecipient } from '../rollup/block_root_or_block_merge_public_inputs.js';
129
+ import {
130
+ BlockRootRollupBlobData,
131
+ BlockRootRollupData,
132
+ BlockRootRollupInputs,
133
+ SingleTxBlockRootRollupInputs,
134
+ } from '../rollup/block_root_rollup.js';
135
+ import { ConstantRollupData } from '../rollup/constant_rollup_data.js';
136
+ import { EmptyBlockRootRollupInputs } from '../rollup/empty_block_root_rollup_inputs.js';
137
+ import { MergeRollupInputs } from '../rollup/merge_rollup.js';
138
+ import { PreviousRollupBlockData } from '../rollup/previous_rollup_block_data.js';
139
+ import { PreviousRollupData } from '../rollup/previous_rollup_data.js';
140
+ import { PrivateBaseRollupInputs } from '../rollup/private_base_rollup_inputs.js';
141
+ import { PrivateTubeData } from '../rollup/private_tube_data.js';
142
+ import { PublicBaseRollupInputs } from '../rollup/public_base_rollup_inputs.js';
143
+ import { PublicTubeData } from '../rollup/public_tube_data.js';
144
+ import { RootRollupInputs, RootRollupPublicInputs } from '../rollup/root_rollup.js';
145
+ import { PrivateBaseStateDiffHints } from '../rollup/state_diff_hints.js';
146
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
147
+ import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
148
+ import { PublicDataTreeLeaf, PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
149
+ import { BlockHeader } from '../tx/block_header.js';
150
+ import { CallContext } from '../tx/call_context.js';
151
+ import { ContentCommitment, NUM_BYTES_PER_SHA256 } from '../tx/content_commitment.js';
152
+ import { FunctionData } from '../tx/function_data.js';
153
+ import { GlobalVariables } from '../tx/global_variables.js';
154
+ import { MaxBlockNumber } from '../tx/max_block_number.js';
155
+ import { PartialStateReference } from '../tx/partial_state_reference.js';
156
+ import { makeProcessedTxFromPrivateOnlyTx, makeProcessedTxFromTxWithPublicCalls } from '../tx/processed_tx.js';
157
+ import { StateReference } from '../tx/state_reference.js';
158
+ import { TreeSnapshots } from '../tx/tree_snapshots.js';
159
+ import { TxConstantData } from '../tx/tx_constant_data.js';
160
+ import { TxContext } from '../tx/tx_context.js';
161
+ import { TxRequest } from '../tx/tx_request.js';
162
+ import { RollupTypes, Vector } from '../types/index.js';
163
+ import { VerificationKey, VerificationKeyAsFields, VerificationKeyData } from '../vks/verification_key.js';
164
+ import { VkWitnessData } from '../vks/vk_witness_data.js';
165
+ import { mockTx } from './mocks.js';
166
+
167
+ /**
168
+ * Creates an arbitrary side effect object with the given seed.
169
+ * @param seed - The seed to use for generating the object.
170
+ * @returns A side effect object.
171
+ */
172
+ function makeLogHash(seed: number) {
173
+ return new LogHash(fr(seed), seed + 1, seed + 2);
174
+ }
175
+
176
+ function makeScopedLogHash(seed: number) {
177
+ return new ScopedLogHash(makeLogHash(seed), makeAztecAddress(seed + 3));
178
+ }
179
+
180
+ function makeNoteHash(seed: number) {
181
+ return new NoteHash(fr(seed), seed + 1);
182
+ }
183
+
184
+ function makeNullifier(seed: number) {
185
+ return new Nullifier(fr(seed), seed + 1, fr(seed + 2));
186
+ }
187
+
188
+ function makeContractClassLog(seed: number) {
189
+ // The '* 1' removes the 'Type instantiation is excessively deep and possibly infinite. ts(2589)' err
190
+ return new ContractClassLog(
191
+ makeAztecAddress(seed),
192
+ makeTuple(CONTRACT_CLASS_LOG_DATA_SIZE_IN_FIELDS * 1, fr, seed + 1),
193
+ );
194
+ }
195
+
196
+ function makePrivateLog(seed: number) {
197
+ return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed));
198
+ }
199
+
200
+ function makePrivateLogData(seed: number) {
201
+ return new PrivateLogData(makePrivateLog(seed + 0x100), seed, seed + 1);
202
+ }
203
+
204
+ function makePublicLog(seed: number) {
205
+ return new PublicLog(makeAztecAddress(seed), makeTuple(PUBLIC_LOG_DATA_SIZE_IN_FIELDS, fr, seed + 1));
206
+ }
207
+
208
+ /**
209
+ * Creates an arbitrary tx context with the given seed.
210
+ * @param seed - The seed to use for generating the tx context.
211
+ * @returns A tx context.
212
+ */
213
+ export function makeTxContext(seed: number = 1): TxContext {
214
+ // @todo @LHerskind should probably take value for chainId as it will be verified later.
215
+ return new TxContext(new Fr(seed), Fr.ZERO, makeGasSettings());
216
+ }
217
+
218
+ /**
219
+ * Creates a default instance of gas settings. No seed value is used to ensure we allocate a sensible amount of gas for testing.
220
+ */
221
+ export function makeGasSettings() {
222
+ return GasSettings.default({ maxFeesPerGas: new GasFees(10, 10) });
223
+ }
224
+
225
+ /**
226
+ * Creates arbitrary selector from the given seed.
227
+ * @param seed - The seed to use for generating the selector.
228
+ * @returns A selector.
229
+ */
230
+ export function makeSelector(seed: number): FunctionSelector {
231
+ return new FunctionSelector(seed);
232
+ }
233
+
234
+ function makeReadRequest(n: number): ReadRequest {
235
+ return new ReadRequest(new Fr(BigInt(n)), n + 1);
236
+ }
237
+
238
+ /**
239
+ * Creates arbitrary KeyValidationRequest from the given seed.
240
+ * @param seed - The seed to use for generating the KeyValidationRequest.
241
+ * @returns A KeyValidationRequest.
242
+ */
243
+ function makeKeyValidationRequests(seed: number): KeyValidationRequest {
244
+ return new KeyValidationRequest(makePoint(seed), fr(seed + 2));
245
+ }
246
+
247
+ /**
248
+ * Creates arbitrary KeyValidationRequestAndGenerator from the given seed.
249
+ * @param seed - The seed to use for generating the KeyValidationRequestAndGenerator.
250
+ * @returns A KeyValidationRequestAndGenerator.
251
+ */
252
+ function makeKeyValidationRequestAndGenerators(seed: number): KeyValidationRequestAndGenerator {
253
+ return new KeyValidationRequestAndGenerator(makeKeyValidationRequests(seed), fr(seed + 4));
254
+ }
255
+
256
+ function makePublicDataWrite(seed = 1) {
257
+ return new PublicDataWrite(fr(seed), fr(seed + 1));
258
+ }
259
+
260
+ /**
261
+ * Creates arbitrary public data read.
262
+ * @param seed - The seed to use for generating the public data read.
263
+ * @returns A public data read.
264
+ */
265
+ export function makePublicDataRead(seed = 1): PublicDataRead {
266
+ return new PublicDataRead(fr(seed), fr(seed + 1), 0);
267
+ }
268
+
269
+ /**
270
+ * Creates empty public data read.
271
+ * @returns An empty public data read.
272
+ */
273
+ export function makeEmptyPublicDataRead(): PublicDataRead {
274
+ return new PublicDataRead(fr(0), fr(0), 0);
275
+ }
276
+
277
+ /**
278
+ * Creates arbitrary contract storage update request.
279
+ * @param seed - The seed to use for generating the contract storage update request.
280
+ * @returns A contract storage update request.
281
+ */
282
+ export function makeContractStorageUpdateRequest(seed = 1): ContractStorageUpdateRequest {
283
+ return new ContractStorageUpdateRequest(fr(seed), fr(seed + 1), seed + 2);
284
+ }
285
+
286
+ /**
287
+ * Creates arbitrary contract storage read.
288
+ * @param seed - The seed to use for generating the contract storage read.
289
+ * @returns A contract storage read.
290
+ */
291
+ export function makeContractStorageRead(seed = 1): ContractStorageRead {
292
+ return new ContractStorageRead(fr(seed), fr(seed + 1), seed + 2);
293
+ }
294
+
295
+ export function makeRollupValidationRequests(seed = 1) {
296
+ return new RollupValidationRequests(new MaxBlockNumber(true, new Fr(seed + 0x31415)));
297
+ }
298
+
299
+ function makeTxConstantData(seed = 1) {
300
+ return new TxConstantData(makeHeader(seed), makeTxContext(seed + 0x100), new Fr(seed + 0x200), new Fr(seed + 0x201));
301
+ }
302
+
303
+ export function makeCombinedConstantData(seed = 1): CombinedConstantData {
304
+ return new CombinedConstantData(
305
+ makeHeader(seed),
306
+ makeTxContext(seed + 0x100),
307
+ new Fr(seed + 0x200),
308
+ new Fr(seed + 0x201),
309
+ makeGlobalVariables(seed + 0x300),
310
+ );
311
+ }
312
+
313
+ /**
314
+ * Creates arbitrary accumulated data.
315
+ * @param seed - The seed to use for generating the accumulated data.
316
+ * @returns An accumulated data.
317
+ */
318
+ export function makePrivateToRollupAccumulatedData(seed = 1, full = false): PrivateToRollupAccumulatedData {
319
+ const tupleGenerator = full ? makeTuple : makeHalfFullTuple;
320
+
321
+ return new PrivateToRollupAccumulatedData(
322
+ tupleGenerator(MAX_NOTE_HASHES_PER_TX, fr, seed + 0x120, Fr.zero),
323
+ tupleGenerator(MAX_NULLIFIERS_PER_TX, fr, seed + 0x200, Fr.zero),
324
+ tupleGenerator(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x600, ScopedL2ToL1Message.empty),
325
+ tupleGenerator(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, seed + 0x700, PrivateLog.empty),
326
+ tupleGenerator(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeScopedLogHash, seed + 0xa00, ScopedLogHash.empty), // contract class logs
327
+ );
328
+ }
329
+
330
+ export function makePrivateToPublicAccumulatedData(seed = 1) {
331
+ return new PrivateToPublicAccumulatedData(
332
+ makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
333
+ makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
334
+ makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
335
+ makeTuple(MAX_PRIVATE_LOGS_PER_TX, makePrivateLog, seed + 0x700),
336
+ makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeScopedLogHash, seed + 0x900),
337
+ makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x500),
338
+ );
339
+ }
340
+
341
+ function makePrivateToAvmAccumulatedData(seed = 1) {
342
+ return new PrivateToAvmAccumulatedData(
343
+ makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
344
+ makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
345
+ makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
346
+ );
347
+ }
348
+
349
+ function makePrivateToAvmAccumulatedDataArrayLengths(seed = 1) {
350
+ return new PrivateToAvmAccumulatedDataArrayLengths(seed, seed + 1, seed + 2);
351
+ }
352
+
353
+ function makeAvmAccumulatedData(seed = 1) {
354
+ return new AvmAccumulatedData(
355
+ makeTuple(MAX_NOTE_HASHES_PER_TX, fr, seed),
356
+ makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x100),
357
+ makeTuple(MAX_L2_TO_L1_MSGS_PER_TX, makeScopedL2ToL1Message, seed + 0x200),
358
+ makeTuple(MAX_PUBLIC_LOGS_PER_TX, makePublicLog, seed + 0x300),
359
+ makeTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, makePublicDataWrite, seed + 0x400),
360
+ );
361
+ }
362
+
363
+ export function makeGas(seed = 1) {
364
+ return new Gas(seed, seed + 1);
365
+ }
366
+
367
+ /**
368
+ * Creates arbitrary call context.
369
+ * @param seed - The seed to use for generating the call context.
370
+ * @returns A call context.
371
+ */
372
+ export function makeCallContext(seed = 0, overrides: Partial<FieldsOf<CallContext>> = {}): CallContext {
373
+ return CallContext.from({
374
+ msgSender: makeAztecAddress(seed),
375
+ contractAddress: makeAztecAddress(seed + 1),
376
+ functionSelector: makeSelector(seed + 3),
377
+ isStaticCall: false,
378
+ ...overrides,
379
+ });
380
+ }
381
+
382
+ /**
383
+ * Creates arbitrary private kernel tail circuit public inputs.
384
+ * @param seed - The seed to use for generating the kernel circuit public inputs.
385
+ * @returns Private kernel tail circuit public inputs.
386
+ */
387
+ export function makePrivateKernelTailCircuitPublicInputs(
388
+ seed = 1,
389
+ isForPublic = true,
390
+ ): PrivateKernelTailCircuitPublicInputs {
391
+ const forPublic = isForPublic
392
+ ? new PartialPrivateTailPublicInputsForPublic(
393
+ makePrivateToPublicAccumulatedData(seed + 0x100),
394
+ makePrivateToPublicAccumulatedData(seed + 0x200),
395
+ makePublicCallRequest(seed + 0x400),
396
+ )
397
+ : undefined;
398
+ const forRollup = !isForPublic
399
+ ? new PartialPrivateTailPublicInputsForRollup(makePrivateToRollupAccumulatedData(seed + 0x100))
400
+ : undefined;
401
+ return new PrivateKernelTailCircuitPublicInputs(
402
+ makeTxConstantData(seed + 0x300),
403
+ makeRollupValidationRequests(seed + 0x500),
404
+ makeGas(seed + 0x600),
405
+ makeAztecAddress(seed + 0x700),
406
+ forPublic,
407
+ forRollup,
408
+ );
409
+ }
410
+
411
+ function makePrivateToPublicKernelCircuitPublicInputs(seed = 1) {
412
+ return new PrivateToPublicKernelCircuitPublicInputs(
413
+ makeTxConstantData(seed),
414
+ makeRollupValidationRequests(seed + 0x100),
415
+ makePrivateToPublicAccumulatedData(seed + 0x200),
416
+ makePrivateToPublicAccumulatedData(seed + 0x300),
417
+ makePublicCallRequest(seed + 0x400),
418
+ makeGas(seed + 0x500),
419
+ makeAztecAddress(seed + 0x600),
420
+ );
421
+ }
422
+
423
+ /**
424
+ * Creates arbitrary public kernel circuit public inputs.
425
+ * @param seed - The seed to use for generating the kernel circuit public inputs.
426
+ * @returns Public kernel circuit public inputs.
427
+ */
428
+ export function makePrivateToRollupKernelCircuitPublicInputs(
429
+ seed = 1,
430
+ fullAccumulatedData = true,
431
+ ): PrivateToRollupKernelCircuitPublicInputs {
432
+ return new PrivateToRollupKernelCircuitPublicInputs(
433
+ makeTxConstantData(seed + 0x100),
434
+ makeRollupValidationRequests(seed),
435
+ makePrivateToRollupAccumulatedData(seed, fullAccumulatedData),
436
+ makeGas(seed + 0x600),
437
+ makeAztecAddress(seed + 0x700),
438
+ );
439
+ }
440
+
441
+ function makeAvmCircuitPublicInputs(seed = 1) {
442
+ return new AvmCircuitPublicInputs(
443
+ makeGlobalVariables(seed),
444
+ makeTreeSnapshots(seed + 0x10),
445
+ makeGas(seed + 0x20),
446
+ makeGasSettings(),
447
+ makeAztecAddress(seed + 0x40),
448
+ makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x100),
449
+ makeTuple(MAX_ENQUEUED_CALLS_PER_TX, makePublicCallRequest, seed + 0x200),
450
+ makePublicCallRequest(seed + 0x300),
451
+ makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x400),
452
+ makePrivateToAvmAccumulatedDataArrayLengths(seed + 0x410),
453
+ makePrivateToAvmAccumulatedData(seed + 0x500),
454
+ makePrivateToAvmAccumulatedData(seed + 0x600),
455
+ makeTreeSnapshots(seed + 0x700),
456
+ makeGas(seed + 0x750),
457
+ makeAvmAccumulatedData(seed + 0x800),
458
+ fr(seed + 0x900),
459
+ false,
460
+ );
461
+ }
462
+
463
+ function makeSiblingPath<N extends number>(seed: number, size: N) {
464
+ return makeTuple(size, fr, seed);
465
+ }
466
+
467
+ /**
468
+ * Creates arbitrary/mocked membership witness where the sibling paths is an array of fields in an ascending order starting from `start`.
469
+ * @param size - The size of the membership witness.
470
+ * @param start - The start of the membership witness.
471
+ * @returns A membership witness.
472
+ */
473
+ export function makeMembershipWitness<N extends number>(size: N, start: number): MembershipWitness<N> {
474
+ return new MembershipWitness(size, BigInt(start), makeSiblingPath(start, size));
475
+ }
476
+
477
+ /**
478
+ * Creates arbitrary/mocked verification key in fields format.
479
+ * @returns A verification key as fields object
480
+ */
481
+ export function makeVerificationKeyAsFields(size: number): VerificationKeyAsFields {
482
+ return VerificationKeyAsFields.makeFake(size);
483
+ }
484
+
485
+ /**
486
+ * Creates arbitrary/mocked verification key.
487
+ * @returns A verification key object
488
+ */
489
+ export function makeVerificationKey(): VerificationKey {
490
+ return VerificationKey.makeFake();
491
+ }
492
+
493
+ /**
494
+ * Creates an arbitrary point in a curve.
495
+ * @param seed - Seed to generate the point values.
496
+ * @returns A point.
497
+ */
498
+ export function makePoint(seed = 1): Point {
499
+ return new Point(fr(seed), fr(seed + 1), false);
500
+ }
501
+
502
+ /**
503
+ * Creates an arbitrary grumpkin scalar.
504
+ * @param seed - Seed to generate the values.
505
+ * @returns A GrumpkinScalar.
506
+ */
507
+ export function makeGrumpkinScalar(seed = 1): GrumpkinScalar {
508
+ return GrumpkinScalar.fromHighLow(fr(seed), fr(seed + 1));
509
+ }
510
+
511
+ /**
512
+ * Makes arbitrary proof.
513
+ * @param seed - The seed to use for generating/mocking the proof.
514
+ * @returns A proof.
515
+ */
516
+ export function makeProof(seed = 1) {
517
+ return new Proof(Buffer.alloc(16, seed), 0);
518
+ }
519
+
520
+ function makePrivateCallRequest(seed = 1): PrivateCallRequest {
521
+ return new PrivateCallRequest(makeCallContext(seed + 0x1), fr(seed + 0x3), fr(seed + 0x4), seed + 0x10, seed + 0x11);
522
+ }
523
+
524
+ export function makePublicCallRequest(seed = 1) {
525
+ return new PublicCallRequest(
526
+ makeAztecAddress(seed),
527
+ makeAztecAddress(seed + 1),
528
+ makeSelector(seed + 2),
529
+ false,
530
+ fr(seed + 0x3),
531
+ );
532
+ }
533
+
534
+ function makeCountedPublicCallRequest(seed = 1) {
535
+ return new CountedPublicCallRequest(makePublicCallRequest(seed), seed + 0x100);
536
+ }
537
+
538
+ /**
539
+ * Makes arbitrary tx request.
540
+ * @param seed - The seed to use for generating the tx request.
541
+ * @returns A tx request.
542
+ */
543
+ export function makeTxRequest(seed = 1): TxRequest {
544
+ return TxRequest.from({
545
+ origin: makeAztecAddress(seed),
546
+ functionData: new FunctionData(makeSelector(seed + 0x100), /*isPrivate=*/ true),
547
+ argsHash: fr(seed + 0x200),
548
+ txContext: makeTxContext(seed + 0x400),
549
+ });
550
+ }
551
+
552
+ /**
553
+ * Makes arbitrary private circuit public inputs.
554
+ * @param seed - The seed to use for generating the private circuit public inputs.
555
+ * @returns A private circuit public inputs.
556
+ */
557
+ export function makePrivateCircuitPublicInputs(seed = 0): PrivateCircuitPublicInputs {
558
+ return PrivateCircuitPublicInputs.from({
559
+ maxBlockNumber: new MaxBlockNumber(true, new Fr(seed + 0x31415)),
560
+ callContext: makeCallContext(seed, { isStaticCall: true }),
561
+ argsHash: fr(seed + 0x100),
562
+ returnsHash: fr(seed + 0x200),
563
+ minRevertibleSideEffectCounter: fr(0),
564
+ noteHashReadRequests: makeTuple(MAX_NOTE_HASH_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x300),
565
+ nullifierReadRequests: makeTuple(MAX_NULLIFIER_READ_REQUESTS_PER_CALL, makeReadRequest, seed + 0x310),
566
+ keyValidationRequestsAndGenerators: makeTuple(
567
+ MAX_KEY_VALIDATION_REQUESTS_PER_CALL,
568
+ makeKeyValidationRequestAndGenerators,
569
+ seed + 0x320,
570
+ ),
571
+ noteHashes: makeTuple(MAX_NOTE_HASHES_PER_CALL, makeNoteHash, seed + 0x400),
572
+ nullifiers: makeTuple(MAX_NULLIFIERS_PER_CALL, makeNullifier, seed + 0x500),
573
+ privateCallRequests: makeTuple(MAX_PRIVATE_CALL_STACK_LENGTH_PER_CALL, makePrivateCallRequest, seed + 0x600),
574
+ publicCallRequests: makeTuple(MAX_ENQUEUED_CALLS_PER_CALL, makeCountedPublicCallRequest, seed + 0x700),
575
+ publicTeardownCallRequest: makePublicCallRequest(seed + 0x800),
576
+ l2ToL1Msgs: makeTuple(MAX_L2_TO_L1_MSGS_PER_CALL, makeL2ToL1Message, seed + 0x800),
577
+ privateLogs: makeTuple(MAX_PRIVATE_LOGS_PER_CALL, makePrivateLogData, seed + 0x875),
578
+ contractClassLogsHashes: makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeLogHash, seed + 0xa00),
579
+ startSideEffectCounter: fr(seed + 0x849),
580
+ endSideEffectCounter: fr(seed + 0x850),
581
+ historicalHeader: makeHeader(seed + 0xd00, undefined),
582
+ txContext: makeTxContext(seed + 0x1400),
583
+ isFeePayer: false,
584
+ });
585
+ }
586
+
587
+ export function makeGlobalVariables(seed = 1, overrides: Partial<FieldsOf<GlobalVariables>> = {}): GlobalVariables {
588
+ return GlobalVariables.from({
589
+ chainId: new Fr(seed),
590
+ version: new Fr(seed + 1),
591
+ blockNumber: new Fr(seed + 2),
592
+ slotNumber: new Fr(seed + 3),
593
+ timestamp: new Fr(seed + 4),
594
+ coinbase: EthAddress.fromField(new Fr(seed + 5)),
595
+ feeRecipient: AztecAddress.fromField(new Fr(seed + 6)),
596
+ gasFees: new GasFees(new Fr(seed + 7), new Fr(seed + 8)),
597
+ ...compact(overrides),
598
+ });
599
+ }
600
+
601
+ export function makeGasFees(seed = 1) {
602
+ return new GasFees(fr(seed), fr(seed + 1));
603
+ }
604
+
605
+ export function makeFeeRecipient(seed = 1) {
606
+ return new FeeRecipient(EthAddress.fromField(fr(seed)), fr(seed + 1));
607
+ }
608
+
609
+ /**
610
+ * Makes constant base rollup data.
611
+ * @param seed - The seed to use for generating the constant base rollup data.
612
+ * @param blockNumber - The block number to use for generating the global variables.
613
+ * @returns A constant base rollup data.
614
+ */
615
+ export function makeConstantRollupData(
616
+ seed = 1,
617
+ globalVariables: GlobalVariables | undefined = undefined,
618
+ ): ConstantRollupData {
619
+ return ConstantRollupData.from({
620
+ lastArchive: makeAppendOnlyTreeSnapshot(seed + 0x300),
621
+ vkTreeRoot: fr(seed + 0x401),
622
+ protocolContractTreeRoot: fr(seed + 0x402),
623
+ globalVariables: globalVariables ?? makeGlobalVariables(seed + 0x500),
624
+ });
625
+ }
626
+
627
+ export function makeScopedL2ToL1Message(seed = 1): ScopedL2ToL1Message {
628
+ return new ScopedL2ToL1Message(makeL2ToL1Message(seed), makeAztecAddress(seed + 3));
629
+ }
630
+
631
+ /**
632
+ * Makes arbitrary append only tree snapshot.
633
+ * @param seed - The seed to use for generating the append only tree snapshot.
634
+ * @returns An append only tree snapshot.
635
+ */
636
+ export function makeAppendOnlyTreeSnapshot(seed = 1): AppendOnlyTreeSnapshot {
637
+ return new AppendOnlyTreeSnapshot(fr(seed), seed);
638
+ }
639
+
640
+ /**
641
+ * Makes arbitrary eth address.
642
+ * @param seed - The seed to use for generating the eth address.
643
+ * @returns An eth address.
644
+ */
645
+ export function makeEthAddress(seed = 1): EthAddress {
646
+ return EthAddress.fromField(fr(seed));
647
+ }
648
+
649
+ /**
650
+ * Creates a buffer of a given size filled with a given value.
651
+ * @param size - The size of the buffer to create.
652
+ * @param fill - The value to fill the buffer with.
653
+ * @returns A buffer of a given size filled with a given value.
654
+ */
655
+ export function makeBytes(size = 32, fill = 1): Buffer {
656
+ return Buffer.alloc(size, fill);
657
+ }
658
+
659
+ /**
660
+ * Makes arbitrary aztec address.
661
+ * @param seed - The seed to use for generating the aztec address.
662
+ * @returns An aztec address.
663
+ */
664
+ export function makeAztecAddress(seed = 1): AztecAddress {
665
+ return AztecAddress.fromField(fr(seed));
666
+ }
667
+
668
+ /**
669
+ * Makes arbitrary Schnorr signature.
670
+ * @param seed - The seed to use for generating the Schnorr signature.
671
+ * @returns A Schnorr signature.
672
+ */
673
+ export function makeSchnorrSignature(seed = 1): SchnorrSignature {
674
+ return new SchnorrSignature(Buffer.alloc(SchnorrSignature.SIZE, seed));
675
+ }
676
+
677
+ /**
678
+ * Makes arbitrary base or merge rollup circuit public inputs.
679
+ * @param seed - The seed to use for generating the base rollup circuit public inputs.
680
+ * @param blockNumber - The block number to use for generating the base rollup circuit public inputs.
681
+ * @returns A base or merge rollup circuit public inputs.
682
+ */
683
+ export function makeBaseOrMergeRollupPublicInputs(
684
+ seed = 0,
685
+ globalVariables: GlobalVariables | undefined = undefined,
686
+ ): BaseOrMergeRollupPublicInputs {
687
+ return new BaseOrMergeRollupPublicInputs(
688
+ RollupTypes.Base,
689
+ 1,
690
+ makeConstantRollupData(seed + 0x200, globalVariables),
691
+ makePartialStateReference(seed + 0x300),
692
+ makePartialStateReference(seed + 0x400),
693
+ makeSpongeBlob(seed + 0x500),
694
+ makeSpongeBlob(seed + 0x600),
695
+ fr(seed + 0x901),
696
+ fr(seed + 0x902),
697
+ fr(seed + 0x903),
698
+ );
699
+ }
700
+
701
+ /**
702
+ * Makes arbitrary block merge or block root rollup circuit public inputs.
703
+ * @param seed - The seed to use for generating the block merge or block root rollup circuit public inputs.
704
+ * @param blockNumber - The block number to use for generating the block merge or block root rollup circuit public inputs.
705
+ * @returns A block merge or block root rollup circuit public inputs.
706
+ */
707
+ export function makeBlockRootOrBlockMergeRollupPublicInputs(
708
+ seed = 0,
709
+ globalVariables: GlobalVariables | undefined = undefined,
710
+ ): BlockRootOrBlockMergePublicInputs {
711
+ return new BlockRootOrBlockMergePublicInputs(
712
+ makeAppendOnlyTreeSnapshot(seed + 0x200),
713
+ makeAppendOnlyTreeSnapshot(seed + 0x300),
714
+ fr(seed + 0x400),
715
+ fr(seed + 0x500),
716
+ globalVariables ?? makeGlobalVariables(seed + 0x501),
717
+ globalVariables ?? makeGlobalVariables(seed + 0x502),
718
+ fr(seed + 0x600),
719
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x700),
720
+ fr(seed + 0x800),
721
+ fr(seed + 0x801),
722
+ fr(seed + 0x900),
723
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeBlockBlobPublicInputs(seed), 0x100),
724
+ );
725
+ }
726
+
727
+ /**
728
+ * Makes arbitrary previous rollup data.
729
+ * @param seed - The seed to use for generating the previous rollup data.
730
+ * @param globalVariables - The global variables to use when generating the previous rollup data.
731
+ * @returns A previous rollup data.
732
+ */
733
+ export function makePreviousRollupData(
734
+ seed = 0,
735
+ globalVariables: GlobalVariables | undefined = undefined,
736
+ ): PreviousRollupData {
737
+ return new PreviousRollupData(
738
+ makeBaseOrMergeRollupPublicInputs(seed, globalVariables),
739
+ makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
740
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
741
+ seed + 0x50,
742
+ ),
743
+ VerificationKeyAsFields.makeFakeHonk(),
744
+ makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
745
+ );
746
+ }
747
+
748
+ /**
749
+ * Makes arbitrary previous rollup block data.
750
+ * @param seed - The seed to use for generating the previous rollup block data.
751
+ * @param globalVariables - The global variables to use when generating the previous rollup block data.
752
+ * @returns A previous rollup block data.
753
+ */
754
+ export function makePreviousRollupBlockData(
755
+ seed = 0,
756
+ globalVariables: GlobalVariables | undefined = undefined,
757
+ ): PreviousRollupBlockData {
758
+ return new PreviousRollupBlockData(
759
+ makeBlockRootOrBlockMergeRollupPublicInputs(seed, globalVariables),
760
+ makeRecursiveProof<typeof NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH>(
761
+ NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH,
762
+ seed + 0x50,
763
+ ),
764
+ VerificationKeyAsFields.makeFakeHonk(),
765
+ makeMembershipWitness(VK_TREE_HEIGHT, seed + 0x120),
766
+ );
767
+ }
768
+
769
+ /**
770
+ * Makes root rollup inputs.
771
+ * @param seed - The seed to use for generating the root rollup inputs.
772
+ * @param globalVariables - The global variables to use.
773
+ * @returns A root rollup inputs.
774
+ */
775
+ export function makeRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): RootRollupInputs {
776
+ return new RootRollupInputs(
777
+ [makePreviousRollupBlockData(seed, globalVariables), makePreviousRollupBlockData(seed + 0x1000, globalVariables)],
778
+ fr(seed + 0x2000),
779
+ );
780
+ }
781
+
782
+ function makeBlockRootRollupData(seed = 0) {
783
+ return new BlockRootRollupData(
784
+ makeRootParityInput<typeof NESTED_RECURSIVE_PROOF_LENGTH>(NESTED_RECURSIVE_PROOF_LENGTH, seed + 0x2000),
785
+ makeTuple(L1_TO_L2_MSG_SUBTREE_SIBLING_PATH_LENGTH, fr, 0x2100),
786
+ makeTuple(ARCHIVE_HEIGHT, fr, 0x2200),
787
+ makeHeader(seed + 0x2300),
788
+ fr(seed + 0x2400),
789
+ );
790
+ }
791
+
792
+ function makeBlockRootRollupBlobData(seed = 0) {
793
+ return new BlockRootRollupBlobData(
794
+ makeTuple(FIELDS_PER_BLOB * BLOBS_PER_BLOCK, fr, 0x2500),
795
+ makeTuple(BLOBS_PER_BLOCK, () => makeTuple(2, fr, 0x2600)),
796
+ fr(seed + 0x2700),
797
+ );
798
+ }
799
+
800
+ /**
801
+ * Makes block root rollup inputs.
802
+ * @param seed - The seed to use for generating the root rollup inputs.
803
+ * @param globalVariables - The global variables to use.
804
+ * @returns A block root rollup inputs.
805
+ */
806
+ export function makeBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables): BlockRootRollupInputs {
807
+ return new BlockRootRollupInputs(
808
+ [makePreviousRollupData(seed, globalVariables), makePreviousRollupData(seed + 0x1000, globalVariables)],
809
+ makeBlockRootRollupData(seed + 0x2000),
810
+ makeBlockRootRollupBlobData(seed + 0x4000),
811
+ );
812
+ }
813
+
814
+ export function makeSingleTxBlockRootRollupInputs(seed = 0, globalVariables?: GlobalVariables) {
815
+ return new SingleTxBlockRootRollupInputs(
816
+ [makePreviousRollupData(seed, globalVariables)],
817
+ makeBlockRootRollupData(seed + 0x2000),
818
+ makeBlockRootRollupBlobData(seed + 0x4000),
819
+ );
820
+ }
821
+
822
+ /**
823
+ * Makes empty block root rollup inputs.
824
+ * @param seed - The seed to use for generating the root rollup inputs.
825
+ * @param globalVariables - The global variables to use.
826
+ * @returns A block root rollup inputs.
827
+ */
828
+ export function makeEmptyBlockRootRollupInputs(
829
+ seed = 0,
830
+ globalVariables?: GlobalVariables,
831
+ ): EmptyBlockRootRollupInputs {
832
+ return new EmptyBlockRootRollupInputs(
833
+ makeBlockRootRollupData(seed + 0x1000),
834
+ makeConstantRollupData(0x2500, globalVariables),
835
+ true,
836
+ );
837
+ }
838
+
839
+ export function makeRootParityInput<PROOF_LENGTH extends number>(
840
+ proofSize: PROOF_LENGTH,
841
+ seed = 0,
842
+ ): RootParityInput<PROOF_LENGTH> {
843
+ return new RootParityInput<PROOF_LENGTH>(
844
+ makeRecursiveProof<PROOF_LENGTH>(proofSize, seed),
845
+ VerificationKeyAsFields.makeFake(seed + 0x100),
846
+ makeTuple(VK_TREE_HEIGHT, fr, 0x200),
847
+ makeParityPublicInputs(seed + 0x300),
848
+ );
849
+ }
850
+
851
+ export function makeParityPublicInputs(seed = 0): ParityPublicInputs {
852
+ return new ParityPublicInputs(
853
+ new Fr(BigInt(seed + 0x200)),
854
+ new Fr(BigInt(seed + 0x300)),
855
+ new Fr(BigInt(seed + 0x400)),
856
+ );
857
+ }
858
+
859
+ export function makeBaseParityInputs(seed = 0): BaseParityInputs {
860
+ return new BaseParityInputs(makeTuple(NUM_MSGS_PER_BASE_PARITY, fr, seed + 0x3000), new Fr(seed + 0x4000));
861
+ }
862
+
863
+ export function makeRootParityInputs(seed = 0): RootParityInputs {
864
+ return new RootParityInputs(
865
+ makeTuple(
866
+ NUM_BASE_PARITY_PER_ROOT_PARITY,
867
+ () => makeRootParityInput<typeof RECURSIVE_PROOF_LENGTH>(RECURSIVE_PROOF_LENGTH),
868
+ seed + 0x4100,
869
+ ),
870
+ );
871
+ }
872
+
873
+ /**
874
+ * Makes root rollup public inputs.
875
+ * @param seed - The seed to use for generating the root rollup public inputs.
876
+ * @param blockNumber - The block number to use in the global variables of a header.
877
+ * @returns A root rollup public inputs.
878
+ */
879
+ export function makeRootRollupPublicInputs(seed = 0): RootRollupPublicInputs {
880
+ return new RootRollupPublicInputs(
881
+ makeAppendOnlyTreeSnapshot(seed + 0x200),
882
+ makeAppendOnlyTreeSnapshot(seed + 0x300),
883
+ fr(seed + 0x400),
884
+ fr(seed + 0x500),
885
+ fr(seed + 0x600),
886
+ fr(seed + 0x700),
887
+ fr(seed + 0x800),
888
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeFeeRecipient(seed), 0x900),
889
+ fr(seed + 0x100),
890
+ fr(seed + 0x101),
891
+ fr(seed + 0x200),
892
+ makeTuple(AZTEC_MAX_EPOCH_DURATION, () => makeBlockBlobPublicInputs(seed), 0x300),
893
+ );
894
+ }
895
+
896
+ /**
897
+ * Makes content commitment
898
+ */
899
+ export function makeContentCommitment(seed = 0): ContentCommitment {
900
+ return new ContentCommitment(
901
+ new Fr(seed),
902
+ toBufferBE(BigInt(seed + 0x100), NUM_BYTES_PER_SHA256),
903
+ toBufferBE(BigInt(seed + 0x200), NUM_BYTES_PER_SHA256),
904
+ toBufferBE(BigInt(seed + 0x300), NUM_BYTES_PER_SHA256),
905
+ );
906
+ }
907
+
908
+ /**
909
+ * Makes header.
910
+ */
911
+ export function makeHeader(
912
+ seed = 0,
913
+ blockNumber: number | undefined = undefined,
914
+ slotNumber: number | undefined = undefined,
915
+ ): BlockHeader {
916
+ return new BlockHeader(
917
+ makeAppendOnlyTreeSnapshot(seed + 0x100),
918
+ makeContentCommitment(seed + 0x200),
919
+ makeStateReference(seed + 0x600),
920
+ makeGlobalVariables((seed += 0x700), {
921
+ ...(blockNumber ? { blockNumber: new Fr(blockNumber) } : {}),
922
+ ...(slotNumber ? { slotNumber: new Fr(slotNumber) } : {}),
923
+ }),
924
+ fr(seed + 0x800),
925
+ fr(seed + 0x900),
926
+ );
927
+ }
928
+
929
+ /**
930
+ * Makes arbitrary state reference.
931
+ * @param seed - The seed to use for generating the state reference.
932
+ * @returns A state reference.
933
+ */
934
+ export function makeStateReference(seed = 0): StateReference {
935
+ return new StateReference(makeAppendOnlyTreeSnapshot(seed), makePartialStateReference(seed + 1));
936
+ }
937
+
938
+ function makeTreeSnapshots(seed = 0) {
939
+ return new TreeSnapshots(
940
+ makeAppendOnlyTreeSnapshot(seed),
941
+ makeAppendOnlyTreeSnapshot(seed + 0x10),
942
+ makeAppendOnlyTreeSnapshot(seed + 0x20),
943
+ makeAppendOnlyTreeSnapshot(seed + 0x30),
944
+ );
945
+ }
946
+
947
+ /**
948
+ * Makes arbitrary L2 to L1 message.
949
+ * @param seed - The seed to use for generating the state reference.
950
+ * @returns L2 to L1 message.
951
+ */
952
+ export function makeL2ToL1Message(seed = 0): L2ToL1Message {
953
+ const recipient = EthAddress.fromField(new Fr(seed));
954
+ const content = new Fr(seed + 1);
955
+
956
+ return new L2ToL1Message(recipient, content, seed + 2);
957
+ }
958
+
959
+ /**
960
+ * Makes arbitrary partial state reference.
961
+ * @param seed - The seed to use for generating the partial state reference.
962
+ * @returns A partial state reference.
963
+ */
964
+ export function makePartialStateReference(seed = 0): PartialStateReference {
965
+ return new PartialStateReference(
966
+ makeAppendOnlyTreeSnapshot(seed),
967
+ makeAppendOnlyTreeSnapshot(seed + 1),
968
+ makeAppendOnlyTreeSnapshot(seed + 2),
969
+ );
970
+ }
971
+
972
+ /**
973
+ * Makes arbitrary merge rollup inputs.
974
+ * @param seed - The seed to use for generating the merge rollup inputs.
975
+ * @returns A merge rollup inputs.
976
+ */
977
+ export function makeMergeRollupInputs(seed = 0): MergeRollupInputs {
978
+ return new MergeRollupInputs([makePreviousRollupData(seed), makePreviousRollupData(seed + 0x1000)]);
979
+ }
980
+
981
+ /**
982
+ * Makes arbitrary block merge rollup inputs.
983
+ * @param seed - The seed to use for generating the merge rollup inputs.
984
+ * @returns A block merge rollup inputs.
985
+ */
986
+ export function makeBlockMergeRollupInputs(seed = 0): BlockMergeRollupInputs {
987
+ return new BlockMergeRollupInputs([makePreviousRollupBlockData(seed), makePreviousRollupBlockData(seed + 0x1000)]);
988
+ }
989
+
990
+ /**
991
+ * Makes arbitrary public data tree leaves.
992
+ * @param seed - The seed to use for generating the public data tree leaf.
993
+ * @returns A public data tree leaf.
994
+ */
995
+ export function makePublicDataTreeLeaf(seed = 0): PublicDataTreeLeaf {
996
+ return new PublicDataTreeLeaf(new Fr(seed), new Fr(seed + 1));
997
+ }
998
+
999
+ /**
1000
+ * Makes arbitrary public data tree leaf preimages.
1001
+ * @param seed - The seed to use for generating the public data tree leaf preimage.
1002
+ * @returns A public data tree leaf preimage.
1003
+ */
1004
+ export function makePublicDataTreeLeafPreimage(seed = 0): PublicDataTreeLeafPreimage {
1005
+ return new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3));
1006
+ }
1007
+
1008
+ /**
1009
+ * Creates an instance of PrivateBaseStateDiffHints with arbitrary values based on the provided seed.
1010
+ * @param seed - The seed to use for generating the hints.
1011
+ * @returns A PrivateBaseStateDiffHints object.
1012
+ */
1013
+ export function makePrivateBaseStateDiffHints(seed = 1): PrivateBaseStateDiffHints {
1014
+ const nullifierPredecessorPreimages = makeTuple(
1015
+ MAX_NULLIFIERS_PER_TX,
1016
+ x => new NullifierLeafPreimage(fr(x), fr(x + 0x100), BigInt(x + 0x200)),
1017
+ seed + 0x1000,
1018
+ );
1019
+
1020
+ const nullifierPredecessorMembershipWitnesses = makeTuple(
1021
+ MAX_NULLIFIERS_PER_TX,
1022
+ x => makeMembershipWitness(NULLIFIER_TREE_HEIGHT, x),
1023
+ seed + 0x2000,
1024
+ );
1025
+
1026
+ const sortedNullifiers = makeTuple(MAX_NULLIFIERS_PER_TX, fr, seed + 0x3000);
1027
+
1028
+ const sortedNullifierIndexes = makeTuple(MAX_NULLIFIERS_PER_TX, i => i, seed + 0x4000);
1029
+
1030
+ const noteHashSubtreeSiblingPath = makeTuple(NOTE_HASH_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x5000);
1031
+
1032
+ const nullifierSubtreeSiblingPath = makeTuple(NULLIFIER_SUBTREE_SIBLING_PATH_LENGTH, fr, seed + 0x6000);
1033
+
1034
+ const feeWriteLowLeafPreimage = makePublicDataTreeLeafPreimage(seed + 0x7000);
1035
+ const feeWriteLowLeafMembershipWitness = makeMembershipWitness(PUBLIC_DATA_TREE_HEIGHT, seed + 0x8000);
1036
+ const feeWriteSiblingPath = makeTuple(PUBLIC_DATA_TREE_HEIGHT, fr, seed + 0x9000);
1037
+
1038
+ return new PrivateBaseStateDiffHints(
1039
+ nullifierPredecessorPreimages,
1040
+ nullifierPredecessorMembershipWitnesses,
1041
+ sortedNullifiers,
1042
+ sortedNullifierIndexes,
1043
+ noteHashSubtreeSiblingPath,
1044
+ nullifierSubtreeSiblingPath,
1045
+ feeWriteLowLeafPreimage,
1046
+ feeWriteLowLeafMembershipWitness,
1047
+ feeWriteSiblingPath,
1048
+ );
1049
+ }
1050
+
1051
+ function makeVkWitnessData(seed = 1) {
1052
+ return new VkWitnessData(VerificationKeyData.makeFakeHonk(), seed, makeTuple(VK_TREE_HEIGHT, fr, seed + 0x100));
1053
+ }
1054
+
1055
+ function makePrivateTubeData(seed = 1, kernelPublicInputs?: PrivateToRollupKernelCircuitPublicInputs) {
1056
+ return new PrivateTubeData(
1057
+ kernelPublicInputs ?? makePrivateToRollupKernelCircuitPublicInputs(seed, true),
1058
+ makeRecursiveProof<typeof TUBE_PROOF_LENGTH>(TUBE_PROOF_LENGTH, seed + 0x100),
1059
+ makeVkWitnessData(seed + 0x200),
1060
+ );
1061
+ }
1062
+
1063
+ function makePrivateBaseRollupHints(seed = 1) {
1064
+ const start = makePartialStateReference(seed + 0x100);
1065
+
1066
+ const startSpongeBlob = makeSpongeBlob(seed + 0x200);
1067
+
1068
+ const stateDiffHints = makePrivateBaseStateDiffHints(seed + 0x600);
1069
+
1070
+ const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
1071
+
1072
+ const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
1073
+
1074
+ const constants = makeConstantRollupData(0x100);
1075
+
1076
+ const feePayerFeeJuiceBalanceReadHint = PublicDataHint.empty();
1077
+
1078
+ return PrivateBaseRollupHints.from({
1079
+ start,
1080
+ startSpongeBlob,
1081
+ stateDiffHints,
1082
+ feePayerFeeJuiceBalanceReadHint,
1083
+ archiveRootMembershipWitness,
1084
+ contractClassLogsPreimages,
1085
+ constants,
1086
+ });
1087
+ }
1088
+
1089
+ function makePublicBaseRollupHints(seed = 1) {
1090
+ const startSpongeBlob = makeSpongeBlob(seed + 0x200);
1091
+
1092
+ const archiveRootMembershipWitness = makeMembershipWitness(ARCHIVE_HEIGHT, seed + 0x9000);
1093
+
1094
+ const contractClassLogsPreimages = makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, makeContractClassLog, seed + 0x800);
1095
+
1096
+ const constants = makeConstantRollupData(0x100);
1097
+
1098
+ return PublicBaseRollupHints.from({
1099
+ startSpongeBlob,
1100
+ archiveRootMembershipWitness,
1101
+ contractClassLogsPreimages,
1102
+ constants,
1103
+ });
1104
+ }
1105
+
1106
+ export function makePrivateBaseRollupInputs(seed = 0) {
1107
+ const tubeData = makePrivateTubeData(seed);
1108
+ const hints = makePrivateBaseRollupHints(seed + 0x100);
1109
+
1110
+ return PrivateBaseRollupInputs.from({
1111
+ tubeData,
1112
+ hints,
1113
+ });
1114
+ }
1115
+
1116
+ function makePublicTubeData(seed = 1) {
1117
+ return new PublicTubeData(
1118
+ makePrivateToPublicKernelCircuitPublicInputs(seed),
1119
+ makeRecursiveProof<typeof TUBE_PROOF_LENGTH>(TUBE_PROOF_LENGTH, seed + 0x100),
1120
+ makeVkWitnessData(seed + 0x200),
1121
+ );
1122
+ }
1123
+
1124
+ function makeAvmProofData(seed = 1) {
1125
+ return new AvmProofData(
1126
+ makeAvmCircuitPublicInputs(seed),
1127
+ makeRecursiveProof<typeof AVM_PROOF_LENGTH_IN_FIELDS>(AVM_PROOF_LENGTH_IN_FIELDS, seed + 0x100),
1128
+ makeVkWitnessData(seed + 0x200),
1129
+ );
1130
+ }
1131
+
1132
+ export function makePublicBaseRollupInputs(seed = 0) {
1133
+ const tubeData = makePublicTubeData(seed);
1134
+ const avmProofData = makeAvmProofData(seed + 0x100);
1135
+ const hints = makePublicBaseRollupHints(seed + 0x200);
1136
+
1137
+ return PublicBaseRollupInputs.from({
1138
+ tubeData,
1139
+ avmProofData,
1140
+ hints,
1141
+ });
1142
+ }
1143
+
1144
+ export function makeExecutablePrivateFunctionWithMembershipProof(
1145
+ seed = 0,
1146
+ ): ExecutablePrivateFunctionWithMembershipProof {
1147
+ return {
1148
+ selector: makeSelector(seed),
1149
+ bytecode: makeBytes(100, seed + 1),
1150
+ artifactTreeSiblingPath: makeTuple(3, fr, seed + 2),
1151
+ artifactTreeLeafIndex: seed + 2,
1152
+ privateFunctionTreeSiblingPath: makeTuple(3, fr, seed + 3),
1153
+ privateFunctionTreeLeafIndex: seed + 3,
1154
+ artifactMetadataHash: fr(seed + 4),
1155
+ functionMetadataHash: fr(seed + 5),
1156
+ unconstrainedFunctionsArtifactTreeRoot: fr(seed + 6),
1157
+ vkHash: fr(seed + 7),
1158
+ };
1159
+ }
1160
+
1161
+ export function makeUnconstrainedFunctionWithMembershipProof(seed = 0): UnconstrainedFunctionWithMembershipProof {
1162
+ return {
1163
+ selector: makeSelector(seed),
1164
+ bytecode: makeBytes(100, seed + 1),
1165
+ artifactTreeSiblingPath: makeTuple(3, fr, seed + 2),
1166
+ artifactTreeLeafIndex: seed + 2,
1167
+ artifactMetadataHash: fr(seed + 4),
1168
+ functionMetadataHash: fr(seed + 5),
1169
+ privateFunctionsArtifactTreeRoot: fr(seed + 6),
1170
+ };
1171
+ }
1172
+
1173
+ export async function makeContractClassPublic(
1174
+ seed = 0,
1175
+ publicDispatchFunction?: PublicFunction,
1176
+ ): Promise<ContractClassPublic> {
1177
+ const artifactHash = fr(seed + 1);
1178
+ const publicFunctions = publicDispatchFunction
1179
+ ? [publicDispatchFunction]
1180
+ : makeTuple(1, makeContractClassPublicFunction, seed + 2);
1181
+ const privateFunctionsRoot = fr(seed + 3);
1182
+ const packedBytecode = publicDispatchFunction?.bytecode ?? makeBytes(100, seed + 4);
1183
+ const publicBytecodeCommitment = await computePublicBytecodeCommitment(packedBytecode);
1184
+ const id = await computeContractClassId({ artifactHash, privateFunctionsRoot, publicBytecodeCommitment });
1185
+ return {
1186
+ id,
1187
+ artifactHash,
1188
+ packedBytecode,
1189
+ privateFunctionsRoot,
1190
+ publicFunctions,
1191
+ privateFunctions: [],
1192
+ unconstrainedFunctions: [],
1193
+ version: 1,
1194
+ };
1195
+ }
1196
+
1197
+ function makeContractClassPublicFunction(seed = 0): PublicFunction {
1198
+ return {
1199
+ selector: FunctionSelector.fromField(fr(seed + 1)),
1200
+ bytecode: makeBytes(100, seed + 2),
1201
+ };
1202
+ }
1203
+
1204
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
1205
+ function makeContractClassPrivateFunction(seed = 0): PrivateFunction {
1206
+ return {
1207
+ selector: FunctionSelector.fromField(fr(seed + 1)),
1208
+ vkHash: fr(seed + 2),
1209
+ };
1210
+ }
1211
+
1212
+ export function makeArray<T extends Bufferable>(length: number, fn: (i: number) => T, offset = 0) {
1213
+ return Array.from({ length }, (_: any, i: number) => fn(i + offset));
1214
+ }
1215
+
1216
+ export function makeArrayAsync<T extends Bufferable>(length: number, fn: (i: number) => Promise<T>, offset = 0) {
1217
+ return Promise.all(
1218
+ Array(length)
1219
+ .fill(0)
1220
+ .map((_: any, i: number) => fn(i + offset)),
1221
+ );
1222
+ }
1223
+
1224
+ export function makeVector<T extends Bufferable>(length: number, fn: (i: number) => T, offset = 0) {
1225
+ return new Vector(makeArray(length, fn, offset));
1226
+ }
1227
+
1228
+ export async function makeVectorAsync<T extends Bufferable>(length: number, fn: (i: number) => Promise<T>, offset = 0) {
1229
+ return new Vector(await makeArrayAsync(length, fn, offset));
1230
+ }
1231
+
1232
+ export function makeMap<T extends Bufferable>(size: number, fn: (i: number) => [string, T], offset = 0) {
1233
+ return new Map(makeArray(size, i => fn(i + offset)));
1234
+ }
1235
+
1236
+ export async function makeMapAsync<T extends Bufferable>(
1237
+ size: number,
1238
+ fn: (i: number) => Promise<[string, T]>,
1239
+ offset = 0,
1240
+ ) {
1241
+ return new Map(await makeArrayAsync(size, i => fn(i + offset)));
1242
+ }
1243
+
1244
+ export function makePublicKeys(seed = 0): PublicKeys {
1245
+ return new PublicKeys(
1246
+ new Point(new Fr(seed + 0), new Fr(seed + 1), false),
1247
+ new Point(new Fr(seed + 2), new Fr(seed + 3), false),
1248
+ new Point(new Fr(seed + 4), new Fr(seed + 5), false),
1249
+ new Point(new Fr(seed + 6), new Fr(seed + 7), false),
1250
+ );
1251
+ }
1252
+
1253
+ export async function makeContractInstanceFromClassId(
1254
+ classId: Fr,
1255
+ seed = 0,
1256
+ overrides?: {
1257
+ deployer?: AztecAddress;
1258
+ initializationHash?: Fr;
1259
+ publicKeys?: PublicKeys;
1260
+ currentClassId?: Fr;
1261
+ },
1262
+ ): Promise<ContractInstanceWithAddress> {
1263
+ const salt = new Fr(seed);
1264
+ const initializationHash = overrides?.initializationHash ?? new Fr(seed + 1);
1265
+ const deployer = overrides?.deployer ?? new AztecAddress(new Fr(seed + 2));
1266
+ const publicKeys = overrides?.publicKeys ?? makePublicKeys(seed + 3);
1267
+
1268
+ const saltedInitializationHash = await poseidon2HashWithSeparator(
1269
+ [salt, initializationHash, deployer],
1270
+ GeneratorIndex.PARTIAL_ADDRESS,
1271
+ );
1272
+ const partialAddress = await poseidon2HashWithSeparator(
1273
+ [classId, saltedInitializationHash],
1274
+ GeneratorIndex.PARTIAL_ADDRESS,
1275
+ );
1276
+ const address = await computeAddress(publicKeys, partialAddress);
1277
+ return new SerializableContractInstance({
1278
+ version: 1,
1279
+ salt,
1280
+ deployer,
1281
+ currentContractClassId: overrides?.currentClassId ?? classId,
1282
+ originalContractClassId: classId,
1283
+ initializationHash,
1284
+ publicKeys,
1285
+ }).withAddress(address);
1286
+ }
1287
+
1288
+ export function makeAvmTreeHints(seed = 0): AvmAppendTreeHint {
1289
+ return new AvmAppendTreeHint(
1290
+ new Fr(seed),
1291
+ new Fr(seed + 1),
1292
+ makeArray(10, i => new Fr(i), seed + 0x1000),
1293
+ );
1294
+ }
1295
+
1296
+ export function makeAvmNullifierReadTreeHints(seed = 0): AvmNullifierReadTreeHint {
1297
+ const lowNullifierPreimage = new NullifierLeafPreimage(new Fr(seed), new Fr(seed + 1), BigInt(seed + 2));
1298
+ return new AvmNullifierReadTreeHint(
1299
+ lowNullifierPreimage,
1300
+ new Fr(seed + 1),
1301
+ makeArray(10, i => new Fr(i), seed + 0x1000),
1302
+ );
1303
+ }
1304
+
1305
+ export function makeAvmPublicDataReadTreeHints(seed = 0): AvmPublicDataReadTreeHint {
1306
+ return new AvmPublicDataReadTreeHint(
1307
+ new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1308
+ new Fr(seed + 1),
1309
+ makeArray(10, i => new Fr(i), seed + 0x1000),
1310
+ );
1311
+ }
1312
+
1313
+ export function makeAvmNullifierInsertionTreeHints(seed = 0): AvmNullifierWriteTreeHint {
1314
+ return new AvmNullifierWriteTreeHint(
1315
+ makeAvmNullifierReadTreeHints(seed),
1316
+ makeArray(20, i => new Fr(i), seed + 0x1000),
1317
+ );
1318
+ }
1319
+
1320
+ export function makeAvmStorageReadTreeHints(seed = 0): AvmPublicDataReadTreeHint {
1321
+ return new AvmPublicDataReadTreeHint(
1322
+ new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1323
+ new Fr(seed + 1),
1324
+ makeArray(10, i => new Fr(i), seed + 0x1000),
1325
+ );
1326
+ }
1327
+
1328
+ export function makeAvmStorageUpdateTreeHints(seed = 0): AvmPublicDataWriteTreeHint {
1329
+ return new AvmPublicDataWriteTreeHint(
1330
+ makeAvmStorageReadTreeHints(seed),
1331
+ new PublicDataTreeLeafPreimage(new Fr(seed), new Fr(seed + 1), new Fr(seed + 2), BigInt(seed + 3)),
1332
+ makeArray(20, i => new Fr(i), seed + 0x1000),
1333
+ );
1334
+ }
1335
+
1336
+ /**
1337
+ * Makes arbitrary AvmContractInstanceHint.
1338
+ * @param seed - The seed to use for generating the state reference.
1339
+ * @returns AvmContractInstanceHint.
1340
+ */
1341
+ export function makeAvmContractInstanceHint(seed = 0): AvmContractInstanceHint {
1342
+ return new AvmContractInstanceHint(
1343
+ new AztecAddress(new Fr(seed)),
1344
+ true /* exists */,
1345
+ new Fr(seed + 0x2),
1346
+ new AztecAddress(new Fr(seed + 0x3)),
1347
+ new Fr(seed + 0x4),
1348
+ new Fr(seed + 0x5),
1349
+ new Fr(seed + 0x6),
1350
+ new PublicKeys(
1351
+ new Point(new Fr(seed + 0x7), new Fr(seed + 0x8), false),
1352
+ new Point(new Fr(seed + 0x9), new Fr(seed + 0x10), false),
1353
+ new Point(new Fr(seed + 0x11), new Fr(seed + 0x12), false),
1354
+ new Point(new Fr(seed + 0x13), new Fr(seed + 0x14), false),
1355
+ ),
1356
+ makeAvmPublicDataReadTreeHints(seed + 0x2000),
1357
+ makeArray(4, i => new Fr(i), seed + 0x3000),
1358
+ );
1359
+ }
1360
+
1361
+ /* Makes arbitrary AvmContractClassHint.
1362
+ * @param seed - The seed to use for generating the state reference.
1363
+ * @returns AvmContractClassHint.
1364
+ */
1365
+ export async function makeAvmContractClassHint(seed = 0): Promise<AvmContractClassHint> {
1366
+ const bytecode = makeBytes(32, seed + 0x5);
1367
+ return new AvmContractClassHint(
1368
+ new Fr(seed),
1369
+ true /* exists */,
1370
+ new Fr(seed + 0x2),
1371
+ new Fr(seed + 0x3),
1372
+ await computePublicBytecodeCommitment(bytecode),
1373
+ bytecode,
1374
+ );
1375
+ }
1376
+
1377
+ export function makeAvmEnqueuedCallHint(seed = 0): AvmEnqueuedCallHint {
1378
+ return AvmEnqueuedCallHint.from({
1379
+ contractAddress: new AztecAddress(new Fr(seed)),
1380
+ calldata: makeVector((seed % 20) + 4, i => new Fr(i), seed + 0x1000),
1381
+ });
1382
+ }
1383
+
1384
+ /**
1385
+ * Creates arbitrary AvmExecutionHints.
1386
+ * @param seed - The seed to use for generating the hints.
1387
+ * @returns the execution hints.
1388
+ */
1389
+ export async function makeAvmExecutionHints(
1390
+ seed = 0,
1391
+ overrides: Partial<FieldsOf<AvmExecutionHints>> = {},
1392
+ ): Promise<AvmExecutionHints> {
1393
+ const lengthOffset = 10;
1394
+ const lengthSeedMod = 10;
1395
+ const baseLength = lengthOffset + (seed % lengthSeedMod);
1396
+
1397
+ return AvmExecutionHints.from({
1398
+ enqueuedCalls: makeVector(baseLength, makeAvmEnqueuedCallHint, seed + 0x4100),
1399
+ contractInstances: makeVector(baseLength + 5, makeAvmContractInstanceHint, seed + 0x4700),
1400
+ contractClasses: await makeVectorAsync(baseLength + 5, makeAvmContractClassHint, seed + 0x4900),
1401
+ publicDataReads: makeVector(baseLength + 7, makeAvmStorageReadTreeHints, seed + 0x4900),
1402
+ publicDataWrites: makeVector(baseLength + 8, makeAvmStorageUpdateTreeHints, seed + 0x4a00),
1403
+ nullifierReads: makeVector(baseLength + 9, makeAvmNullifierReadTreeHints, seed + 0x4b00),
1404
+ nullifierWrites: makeVector(baseLength + 10, makeAvmNullifierInsertionTreeHints, seed + 0x4c00),
1405
+ noteHashReads: makeVector(baseLength + 11, makeAvmTreeHints, seed + 0x4d00),
1406
+ noteHashWrites: makeVector(baseLength + 12, makeAvmTreeHints, seed + 0x4e00),
1407
+ l1ToL2MessageReads: makeVector(baseLength + 13, makeAvmTreeHints, seed + 0x4f00),
1408
+ ...overrides,
1409
+ });
1410
+ }
1411
+
1412
+ /**
1413
+ * Creates arbitrary AvmCircuitInputs.
1414
+ * @param seed - The seed to use for generating the hints.
1415
+ * @returns the execution hints.
1416
+ */
1417
+ export async function makeAvmCircuitInputs(
1418
+ seed = 0,
1419
+ overrides: Partial<FieldsOf<AvmCircuitInputs>> = {},
1420
+ ): Promise<AvmCircuitInputs> {
1421
+ return AvmCircuitInputs.from({
1422
+ functionName: `function${seed}`,
1423
+ calldata: makeArray((seed % 100) + 10, i => new Fr(i), seed + 0x1000),
1424
+ avmHints: await makeAvmExecutionHints(seed + 0x3000),
1425
+ publicInputs: makeAvmCircuitPublicInputs(seed + 0x4000),
1426
+ ...overrides,
1427
+ });
1428
+ }
1429
+
1430
+ /**
1431
+ * TODO: Since the max value check is currently disabled this function is pointless. Should it be removed?
1432
+ * Test only. Easy to identify big endian field serialize.
1433
+ * @param n - The number.
1434
+ * @returns The field.
1435
+ */
1436
+ export function fr(n: number): Fr {
1437
+ return new Fr(BigInt(n));
1438
+ }
1439
+
1440
+ /** Makes a bloated processed tx for testing purposes. */
1441
+ export async function makeBloatedProcessedTx({
1442
+ seed = 1,
1443
+ header,
1444
+ db,
1445
+ chainId = Fr.ZERO,
1446
+ version = Fr.ZERO,
1447
+ gasSettings = GasSettings.default({ maxFeesPerGas: new GasFees(10, 10) }),
1448
+ vkTreeRoot = Fr.ZERO,
1449
+ protocolContractTreeRoot = Fr.ZERO,
1450
+ globalVariables = GlobalVariables.empty(),
1451
+ feePayer,
1452
+ feePaymentPublicDataWrite,
1453
+ privateOnly = false,
1454
+ }: {
1455
+ seed?: number;
1456
+ header?: BlockHeader;
1457
+ db?: MerkleTreeReadOperations;
1458
+ chainId?: Fr;
1459
+ version?: Fr;
1460
+ gasSettings?: GasSettings;
1461
+ vkTreeRoot?: Fr;
1462
+ globalVariables?: GlobalVariables;
1463
+ protocolContractTreeRoot?: Fr;
1464
+ feePayer?: AztecAddress;
1465
+ feePaymentPublicDataWrite?: PublicDataWrite;
1466
+ privateOnly?: boolean;
1467
+ } = {}) {
1468
+ seed *= 0x1000; // Avoid clashing with the previous mock values if seed only increases by 1.
1469
+ header ??= db?.getInitialHeader() ?? makeHeader(seed);
1470
+ feePayer ??= await AztecAddress.random();
1471
+
1472
+ const txConstantData = TxConstantData.empty();
1473
+ txConstantData.historicalHeader = header!;
1474
+ txConstantData.txContext.chainId = chainId;
1475
+ txConstantData.txContext.version = version;
1476
+ txConstantData.txContext.gasSettings = gasSettings;
1477
+ txConstantData.vkTreeRoot = vkTreeRoot;
1478
+ txConstantData.protocolContractTreeRoot = protocolContractTreeRoot;
1479
+
1480
+ const tx = !privateOnly
1481
+ ? await mockTx(seed, { feePayer })
1482
+ : await mockTx(seed, {
1483
+ numberOfNonRevertiblePublicCallRequests: 0,
1484
+ numberOfRevertiblePublicCallRequests: 0,
1485
+ feePayer,
1486
+ });
1487
+ tx.data.constants = txConstantData;
1488
+
1489
+ // No side effects were created in mockTx. The default gasUsed is the tx overhead.
1490
+ tx.data.gasUsed = Gas.from({ daGas: FIXED_DA_GAS, l2Gas: FIXED_L2_GAS });
1491
+
1492
+ if (privateOnly) {
1493
+ const data = makePrivateToRollupAccumulatedData(seed + 0x1000);
1494
+
1495
+ const transactionFee = tx.data.gasUsed.computeFee(globalVariables.gasFees);
1496
+ feePaymentPublicDataWrite ??= new PublicDataWrite(Fr.random(), Fr.random());
1497
+
1498
+ clearLogs(data);
1499
+
1500
+ tx.data.forRollup!.end = data;
1501
+
1502
+ return makeProcessedTxFromPrivateOnlyTx(tx, transactionFee, feePaymentPublicDataWrite, globalVariables);
1503
+ } else {
1504
+ const nonRevertibleData = tx.data.forPublic!.nonRevertibleAccumulatedData;
1505
+ const revertibleData = makePrivateToPublicAccumulatedData(seed + 0x1000);
1506
+
1507
+ revertibleData.nullifiers[MAX_NULLIFIERS_PER_TX - 1] = Fr.ZERO; // Leave one space for the tx hash nullifier in nonRevertibleAccumulatedData.
1508
+
1509
+ clearLogs(revertibleData);
1510
+
1511
+ tx.data.forPublic!.revertibleAccumulatedData = revertibleData;
1512
+
1513
+ const avmOutput = AvmCircuitPublicInputs.empty();
1514
+ avmOutput.globalVariables = globalVariables;
1515
+ avmOutput.accumulatedData.noteHashes = revertibleData.noteHashes;
1516
+ avmOutput.accumulatedData.nullifiers = mergeAccumulatedData(
1517
+ nonRevertibleData.nullifiers,
1518
+ revertibleData.nullifiers,
1519
+ MAX_NULLIFIERS_PER_TX,
1520
+ );
1521
+ avmOutput.accumulatedData.l2ToL1Msgs = revertibleData.l2ToL1Msgs;
1522
+ avmOutput.accumulatedData.publicDataWrites = makeTuple(
1523
+ MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX,
1524
+ i => new PublicDataWrite(new Fr(i), new Fr(i + 10)),
1525
+ seed + 0x2000,
1526
+ );
1527
+
1528
+ const avmCircuitInputs = new AvmCircuitInputs('', [], AvmExecutionHints.empty(), avmOutput);
1529
+
1530
+ const gasUsed = {
1531
+ totalGas: Gas.empty(),
1532
+ teardownGas: Gas.empty(),
1533
+ publicGas: Gas.empty(),
1534
+ billedGas: Gas.empty(),
1535
+ } satisfies GasUsed;
1536
+
1537
+ return makeProcessedTxFromTxWithPublicCalls(
1538
+ tx,
1539
+ {
1540
+ type: ProvingRequestType.PUBLIC_VM,
1541
+ inputs: avmCircuitInputs,
1542
+ },
1543
+ gasUsed,
1544
+ RevertCode.OK,
1545
+ undefined /* revertReason */,
1546
+ );
1547
+ }
1548
+ }
1549
+
1550
+ // Remove all logs as it's ugly to mock them at the moment and we are going to change it to have the preimages be part of the public inputs soon.
1551
+ function clearLogs(data: { publicLogs?: PublicLog[]; contractClassLogsHashes: ScopedLogHash[] }) {
1552
+ data.publicLogs?.forEach((_, i) => (data.publicLogs![i] = PublicLog.empty()));
1553
+ data.contractClassLogsHashes.forEach((_, i) => (data.contractClassLogsHashes[i] = ScopedLogHash.empty()));
1554
+ }