@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,294 @@
1
+ import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
2
+
3
+ import {
4
+ type ABIParameter,
5
+ type ABIParameterVisibility,
6
+ type AbiType,
7
+ type BasicValue,
8
+ type ContractArtifact,
9
+ ContractArtifactSchema,
10
+ type ContractNote,
11
+ type FieldLayout,
12
+ type FunctionArtifact,
13
+ FunctionType,
14
+ type IntegerValue,
15
+ type StructValue,
16
+ type TypedStructFieldValue,
17
+ } from '../abi/index.js';
18
+ import {
19
+ AZTEC_INITIALIZER_ATTRIBUTE,
20
+ AZTEC_INTERNAL_ATTRIBUTE,
21
+ AZTEC_PRIVATE_ATTRIBUTE,
22
+ AZTEC_PUBLIC_ATTRIBUTE,
23
+ AZTEC_VIEW_ATTRIBUTE,
24
+ type NoirCompiledContract,
25
+ } from '../noir/index.js';
26
+
27
+ /**
28
+ * Serializes a contract artifact to a buffer for storage.
29
+ * @param artifact - Artifact to serialize.
30
+ * @returns A buffer.
31
+ */
32
+ export function contractArtifactToBuffer(artifact: ContractArtifact): Buffer {
33
+ return Buffer.from(jsonStringify(artifact), 'utf-8');
34
+ }
35
+
36
+ /**
37
+ * Deserializes a contract artifact from storage.
38
+ * @param buffer - Buffer to deserialize.
39
+ * @returns Deserialized artifact.
40
+ */
41
+ export function contractArtifactFromBuffer(buffer: Buffer): Promise<ContractArtifact> {
42
+ return jsonParseWithSchema(buffer.toString('utf-8'), ContractArtifactSchema);
43
+ }
44
+
45
+ /**
46
+ * Gets nargo build output and returns a valid contract artifact instance.
47
+ * @param input - Input object as generated by nargo compile.
48
+ * @returns A valid contract artifact instance.
49
+ */
50
+ export function loadContractArtifact(input: NoirCompiledContract): ContractArtifact {
51
+ if (isContractArtifact(input)) {
52
+ return input;
53
+ }
54
+ return generateContractArtifact(input);
55
+ }
56
+
57
+ /**
58
+ * Checks if the given input looks like a valid ContractArtifact. The check is not exhaustive,
59
+ * and it's just meant to differentiate between nargo raw build artifacts and the ones
60
+ * produced by this compiler.
61
+ * @param input - Input object.
62
+ * @returns True if it looks like a ContractArtifact.
63
+ */
64
+ function isContractArtifact(input: any): input is ContractArtifact {
65
+ if (typeof input !== 'object') {
66
+ return false;
67
+ }
68
+ const maybeContractArtifact = input as ContractArtifact;
69
+ if (typeof maybeContractArtifact.name !== 'string') {
70
+ return false;
71
+ }
72
+ if (!Array.isArray(maybeContractArtifact.functions)) {
73
+ return false;
74
+ }
75
+ for (const fn of maybeContractArtifact.functions) {
76
+ if (typeof fn.name !== 'string') {
77
+ return false;
78
+ }
79
+ if (typeof fn.functionType !== 'string') {
80
+ return false;
81
+ }
82
+ }
83
+ return true;
84
+ }
85
+
86
+ /** Parameter in a function from a noir contract compilation artifact */
87
+ type NoirCompiledContractFunctionParameter = NoirCompiledContractFunction['abi']['parameters'][number];
88
+
89
+ /**
90
+ * Generates a function parameter out of one generated by a nargo build.
91
+ * @param param - Noir parameter.
92
+ * @returns A function parameter.
93
+ */
94
+ function generateFunctionParameter(param: NoirCompiledContractFunctionParameter): ABIParameter {
95
+ const { visibility } = param;
96
+ if ((visibility as string) === 'databus') {
97
+ throw new Error(`Unsupported visibility ${param.visibility} for noir contract function parameter ${param.name}.`);
98
+ }
99
+ return { ...param, visibility: visibility as ABIParameterVisibility };
100
+ }
101
+
102
+ /** Function from a noir contract compilation artifact */
103
+ type NoirCompiledContractFunction = NoirCompiledContract['functions'][number];
104
+
105
+ /**
106
+ * Generates a function build artifact.
107
+ * @param fn - Noir function entry.
108
+ * @param contract - Parent contract.
109
+ * @returns Function artifact.
110
+ */
111
+ function generateFunctionArtifact(
112
+ fn: NoirCompiledContractFunction,
113
+ contract: NoirCompiledContract,
114
+ ): Omit<FunctionArtifact, 'bytecode'> & { bytecode: string } {
115
+ if (fn.custom_attributes === undefined) {
116
+ throw new Error(
117
+ `No custom attributes found for contract function ${fn.name}. Try rebuilding the contract with the latest nargo version.`,
118
+ );
119
+ }
120
+ const functionType = getFunctionType(fn);
121
+ const isInternal = fn.custom_attributes.includes(AZTEC_INTERNAL_ATTRIBUTE);
122
+ const isStatic = fn.custom_attributes.includes(AZTEC_VIEW_ATTRIBUTE);
123
+
124
+ // If the function is not unconstrained, the first item is inputs or CallContext which we should omit
125
+ let parameters = fn.abi.parameters.map(generateFunctionParameter);
126
+ if (hasKernelFunctionInputs(parameters)) {
127
+ parameters = parameters.slice(1);
128
+ }
129
+
130
+ let returnTypes: AbiType[] = [];
131
+ if (functionType === FunctionType.UNCONSTRAINED) {
132
+ returnTypes = fn.abi.return_type ? [fn.abi.return_type.abi_type] : returnTypes;
133
+ } else {
134
+ const pathToFind = `${contract.name}::${fn.name}_abi`;
135
+ const abiStructs: AbiType[] = contract.outputs.structs['functions'];
136
+
137
+ const returnStruct = abiStructs.find(a => a.kind === 'struct' && a.path === pathToFind);
138
+
139
+ if (returnStruct) {
140
+ if (returnStruct.kind !== 'struct') {
141
+ throw new Error('Could not generate contract function artifact');
142
+ }
143
+
144
+ const returnTypeField = returnStruct.fields.find(field => field.name === 'return_type');
145
+ if (returnTypeField) {
146
+ returnTypes = [returnTypeField.type];
147
+ }
148
+ }
149
+ }
150
+
151
+ return {
152
+ name: fn.name,
153
+ functionType,
154
+ isInternal,
155
+ isStatic,
156
+ isInitializer: fn.custom_attributes.includes(AZTEC_INITIALIZER_ATTRIBUTE),
157
+ parameters,
158
+ returnTypes,
159
+ bytecode: fn.bytecode,
160
+ debugSymbols: fn.debug_symbols,
161
+ errorTypes: fn.abi.error_types,
162
+ ...(fn.assert_messages ? { assertMessages: fn.assert_messages } : undefined),
163
+ ...(fn.verification_key ? { verificationKey: fn.verification_key } : undefined),
164
+ };
165
+ }
166
+
167
+ function getFunctionType(fn: NoirCompiledContractFunction): FunctionType {
168
+ if (fn.custom_attributes.includes(AZTEC_PRIVATE_ATTRIBUTE)) {
169
+ return FunctionType.PRIVATE;
170
+ } else if (fn.custom_attributes.includes(AZTEC_PUBLIC_ATTRIBUTE)) {
171
+ return FunctionType.PUBLIC;
172
+ } else if (fn.is_unconstrained) {
173
+ return FunctionType.UNCONSTRAINED;
174
+ } else {
175
+ // Default to a private function (see simple_macro_example_expanded for an example of this behavior)
176
+ return FunctionType.PRIVATE;
177
+ }
178
+ }
179
+
180
+ /**
181
+ * Returns true if the first parameter is kernel function inputs.
182
+ *
183
+ * Noir macros #[aztec(private|public)] inject the following code
184
+ * fn <name>(inputs: <Public|Private>ContextInputs, ...otherparams) {}
185
+ *
186
+ * Return true if this injected parameter is found
187
+ */
188
+ function hasKernelFunctionInputs(params: ABIParameter[]): boolean {
189
+ const firstParam = params[0];
190
+ return firstParam?.type.kind === 'struct' && firstParam.type.path.includes('ContextInputs');
191
+ }
192
+
193
+ /**
194
+ * Generates a storage layout for the contract artifact.
195
+ * @param input - The compiled noir contract to get storage layout for
196
+ * @returns A storage layout for the contract.
197
+ */
198
+ function getStorageLayout(input: NoirCompiledContract) {
199
+ // If another contract is imported by the main contract, its storage layout its going to also show up here.
200
+ // The layout export includes the contract name, so here we can find the one that belongs to the current one and
201
+ // ignore the rest.
202
+ const storageExports = input.outputs.globals.storage ? (input.outputs.globals.storage as StructValue[]) : [];
203
+ const storageForContract = storageExports.find(storageExport => {
204
+ const contractNameField = storageExport.fields.find(field => field.name === 'contract_name')?.value as BasicValue<
205
+ 'string',
206
+ string
207
+ >;
208
+ return contractNameField.value === input.name;
209
+ });
210
+ const storageFields = storageForContract
211
+ ? ((storageForContract.fields.find(field => field.name == 'fields') as TypedStructFieldValue<StructValue>).value
212
+ .fields as TypedStructFieldValue<StructValue>[])
213
+ : [];
214
+
215
+ if (storageFields.length === 0) {
216
+ return {};
217
+ }
218
+
219
+ return storageFields.reduce((acc: Record<string, Omit<FieldLayout, 'slot'> & { slot: string }>, field) => {
220
+ const name = field.name;
221
+ const slot = field.value.fields[0].value as IntegerValue;
222
+ acc[name] = {
223
+ slot: `0x${slot.value}`,
224
+ };
225
+ return acc;
226
+ }, {});
227
+ }
228
+
229
+ /**
230
+ * Generates records of the notes with note type ids of the artifact.
231
+ * @param input - The compiled noir contract to get note types for
232
+ * @return A record of the note types and their ids
233
+ */
234
+ function getNoteTypes(input: NoirCompiledContract) {
235
+ // The type is useless here as it does not give us any guarantee (e.g. `AbiValue` can be one of many different
236
+ // types) so we nuke it and later we manually check the values are as we expect.
237
+ const notes = input.outputs.globals.notes as any[];
238
+
239
+ if (!notes) {
240
+ return {};
241
+ }
242
+
243
+ return notes.reduce((acc: Record<string, Omit<ContractNote, 'id'> & { id: string }>, note) => {
244
+ const noteFields = note.fields;
245
+
246
+ // We find note type id by looking for respective kinds as each of them is unique
247
+ const rawNoteTypeId = noteFields.find((field: any) => field.kind === 'integer');
248
+ const rawName = noteFields.find((field: any) => field.kind === 'string');
249
+ const rawNoteFields = noteFields.find((field: any) => field.kind === 'struct');
250
+
251
+ if (!rawNoteTypeId || !rawName || !rawNoteFields) {
252
+ throw new Error(`Could not find note type id, name or fields for note ${note}`);
253
+ }
254
+
255
+ const noteTypeId = rawNoteTypeId.value as string;
256
+ const name = rawName.value as string;
257
+
258
+ // Note type id is encoded as a hex string
259
+ const fields = rawNoteFields.fields.map((field: any) => {
260
+ return {
261
+ name: field.name,
262
+ index: parseInt(field.value.fields[0].value.value, 16),
263
+ nullable: field.value.fields[1].value.value,
264
+ };
265
+ });
266
+ acc[name] = {
267
+ id: noteTypeId,
268
+ typ: name,
269
+ fields,
270
+ };
271
+ return acc;
272
+ }, {});
273
+ }
274
+
275
+ /**
276
+ * Given a Nargo output generates an Aztec-compatible contract artifact.
277
+ * @param compiled - Noir build output.
278
+ * @returns Aztec contract build artifact.
279
+ */
280
+ function generateContractArtifact(contract: NoirCompiledContract, aztecNrVersion?: string): ContractArtifact {
281
+ try {
282
+ return ContractArtifactSchema.parse({
283
+ name: contract.name,
284
+ functions: contract.functions.map(f => generateFunctionArtifact(f, contract)),
285
+ outputs: contract.outputs,
286
+ storageLayout: getStorageLayout(contract),
287
+ notes: getNoteTypes(contract),
288
+ fileMap: contract.file_map,
289
+ ...(aztecNrVersion ? { aztecNrVersion } : {}),
290
+ });
291
+ } catch (err) {
292
+ throw new Error(`Could not generate contract artifact for ${contract.name}: ${err}`);
293
+ }
294
+ }
@@ -0,0 +1,187 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+
3
+ import { AztecAddress } from '../aztec-address/index.js';
4
+ import type { ABIParameter, ABIVariable, AbiType } from './abi.js';
5
+ import { isAztecAddressStruct, parseSignedInt } from './utils.js';
6
+
7
+ /**
8
+ * The type of our decoded ABI.
9
+ */
10
+ export type AbiDecoded = bigint | boolean | AztecAddress | AbiDecoded[] | { [key: string]: AbiDecoded };
11
+
12
+ /**
13
+ * Decodes values using a provided ABI.
14
+ */
15
+ class AbiDecoder {
16
+ constructor(private types: AbiType[], private flattened: Fr[]) {}
17
+
18
+ /**
19
+ * Decodes a single return value from field to the given type.
20
+ * @param abiType - The type of the return value.
21
+ * @returns The decoded return value.
22
+ */
23
+ private decodeNext(abiType: AbiType): AbiDecoded {
24
+ switch (abiType.kind) {
25
+ case 'field':
26
+ return this.getNextField().toBigInt();
27
+ case 'integer': {
28
+ const nextField = this.getNextField();
29
+
30
+ if (abiType.sign === 'signed') {
31
+ // We parse the buffer using 2's complement
32
+ return parseSignedInt(nextField.toBuffer(), abiType.width);
33
+ }
34
+
35
+ return nextField.toBigInt();
36
+ }
37
+ case 'boolean':
38
+ return !this.getNextField().isZero();
39
+ case 'array': {
40
+ const array = [];
41
+ for (let i = 0; i < abiType.length; i += 1) {
42
+ array.push(this.decodeNext(abiType.type));
43
+ }
44
+ return array;
45
+ }
46
+ case 'struct': {
47
+ const struct: { [key: string]: AbiDecoded } = {};
48
+ if (isAztecAddressStruct(abiType)) {
49
+ return new AztecAddress(this.getNextField().toBuffer());
50
+ }
51
+
52
+ for (const field of abiType.fields) {
53
+ struct[field.name] = this.decodeNext(field.type);
54
+ }
55
+ return struct;
56
+ }
57
+ case 'string': {
58
+ const array = [];
59
+ for (let i = 0; i < abiType.length; i += 1) {
60
+ array.push(this.getNextField().toBigInt());
61
+ }
62
+ return array;
63
+ }
64
+ case 'tuple': {
65
+ const array = [];
66
+ for (const tupleAbiType of abiType.fields) {
67
+ array.push(this.decodeNext(tupleAbiType));
68
+ }
69
+ return array;
70
+ }
71
+ default:
72
+ throw new Error(`Unsupported type: ${abiType}`);
73
+ }
74
+ }
75
+
76
+ /**
77
+ * Gets the next field in the flattened buffer.
78
+ * @returns The next field in the flattened buffer.
79
+ */
80
+ private getNextField(): Fr {
81
+ const field = this.flattened.shift();
82
+ if (!field) {
83
+ throw new Error('Not enough return values');
84
+ }
85
+ return field;
86
+ }
87
+
88
+ /**
89
+ * Decodes all the values for the given ABI.
90
+ * The decided value can be simple types, structs or arrays
91
+ * @returns The decoded return values.
92
+ */
93
+ public decode(): AbiDecoded {
94
+ if (this.types.length > 1) {
95
+ throw new Error('Multiple types not supported');
96
+ }
97
+ if (this.types.length === 0) {
98
+ return [];
99
+ }
100
+ return this.decodeNext(this.types[0]);
101
+ }
102
+ }
103
+
104
+ /**
105
+ * Decodes values in a flattened Field array using a provided ABI.
106
+ * @param abi - The ABI to use as reference.
107
+ * @param buffer - The flattened Field array to decode.
108
+ * @returns
109
+ */
110
+ export function decodeFromAbi(typ: AbiType[], buffer: Fr[]) {
111
+ return new AbiDecoder(typ, buffer.slice()).decode();
112
+ }
113
+
114
+ /**
115
+ * Decodes the signature of a function from the name and parameters.
116
+ */
117
+ export class FunctionSignatureDecoder {
118
+ private separator: string;
119
+ constructor(private name: string, private parameters: ABIParameter[], private includeNames = false) {
120
+ this.separator = includeNames ? ', ' : ',';
121
+ }
122
+
123
+ /**
124
+ * Decodes a single function parameter type for the function signature.
125
+ * @param param - The parameter type to decode.
126
+ * @returns A string representing the parameter type.
127
+ */
128
+ private getParameterType(param: AbiType): string {
129
+ switch (param.kind) {
130
+ case 'field':
131
+ return 'Field';
132
+ case 'integer':
133
+ if (param.sign === 'signed') {
134
+ throw new Error('Unsupported type: signed integer');
135
+ }
136
+ return `u${param.width}`;
137
+ case 'boolean':
138
+ return 'bool';
139
+ case 'array':
140
+ return `[${this.getParameterType(param.type)};${param.length}]`;
141
+ case 'string':
142
+ return `str<${param.length}>`;
143
+ case 'struct':
144
+ return `(${param.fields.map(field => `${this.decodeParameter(field)}`).join(this.separator)})`;
145
+ default:
146
+ throw new Error(`Unsupported type: ${param}`);
147
+ }
148
+ }
149
+
150
+ /**
151
+ * Decodes a single function parameter for the function signature.
152
+ * @param param - The parameter to decode.
153
+ * @returns A string representing the parameter type and optionally its name.
154
+ */
155
+ private decodeParameter(param: ABIVariable): string {
156
+ const type = this.getParameterType(param.type);
157
+ return this.includeNames ? `${param.name}: ${type}` : type;
158
+ }
159
+
160
+ /**
161
+ * Decodes all the parameters and build the function signature
162
+ * @returns The function signature.
163
+ */
164
+ public decode(): string {
165
+ return `${this.name}(${this.parameters.map(param => this.decodeParameter(param)).join(this.separator)})`;
166
+ }
167
+ }
168
+
169
+ /**
170
+ * Decodes a function signature from the name and parameters.
171
+ * @param name - The name of the function.
172
+ * @param parameters - The parameters of the function.
173
+ * @returns - The function signature.
174
+ */
175
+ export function decodeFunctionSignature(name: string, parameters: ABIParameter[]) {
176
+ return new FunctionSignatureDecoder(name, parameters).decode();
177
+ }
178
+
179
+ /**
180
+ * Decodes a function signature from the name and parameters including parameter names.
181
+ * @param name - The name of the function.
182
+ * @param parameters - The parameters of the function.
183
+ * @returns - The user-friendly function signature.
184
+ */
185
+ export function decodeFunctionSignatureWithParameterNames(name: string, parameters: ABIParameter[]) {
186
+ return new FunctionSignatureDecoder(name, parameters, true).decode();
187
+ }
@@ -0,0 +1,161 @@
1
+ import { Fr } from '@aztec/foundation/fields';
2
+
3
+ import type { AbiType, FunctionAbi } from './abi.js';
4
+ import { isAddressStruct, isFunctionSelectorStruct, isWrappedFieldStruct } from './utils.js';
5
+
6
+ /**
7
+ * Encodes arguments for a function call.
8
+ * Missing support for integer and string.
9
+ */
10
+ class ArgumentEncoder {
11
+ private flattened: Fr[] = [];
12
+
13
+ constructor(private abi: FunctionAbi, private args: any[]) {}
14
+
15
+ static typeSize(abiType: AbiType): number {
16
+ switch (abiType.kind) {
17
+ case 'field':
18
+ case 'boolean':
19
+ case 'integer':
20
+ return 1;
21
+ case 'string':
22
+ return abiType.length;
23
+ case 'array':
24
+ return abiType.length * ArgumentEncoder.typeSize(abiType.type);
25
+ case 'struct':
26
+ return abiType.fields.reduce((acc, field) => acc + ArgumentEncoder.typeSize(field.type), 0);
27
+ case 'tuple':
28
+ return abiType.fields.reduce((acc, field) => acc + ArgumentEncoder.typeSize(field), 0);
29
+ default: {
30
+ const exhaustiveCheck: never = abiType;
31
+ throw new Error(`Unhandled abi type: ${exhaustiveCheck}`);
32
+ }
33
+ }
34
+ }
35
+
36
+ /**
37
+ * Encodes a single argument from the given type to field.
38
+ * @param abiType - The abi type of the argument.
39
+ * @param arg - The value to encode.
40
+ * @param name - Name.
41
+ */
42
+ private encodeArgument(abiType: AbiType, arg: any, name?: string) {
43
+ if (arg === undefined || arg == null) {
44
+ throw new Error(`Undefined argument ${name ?? 'unnamed'} of type ${abiType.kind}`);
45
+ }
46
+ switch (abiType.kind) {
47
+ case 'field':
48
+ if (typeof arg === 'number') {
49
+ this.flattened.push(new Fr(BigInt(arg)));
50
+ } else if (typeof arg === 'bigint') {
51
+ this.flattened.push(new Fr(arg));
52
+ } else if (typeof arg === 'string') {
53
+ this.flattened.push(Fr.fromString(arg));
54
+ } else if (typeof arg === 'boolean') {
55
+ this.flattened.push(new Fr(arg ? 1n : 0n));
56
+ } else if (typeof arg === 'object') {
57
+ if (Buffer.isBuffer(arg)) {
58
+ this.flattened.push(Fr.fromBuffer(arg));
59
+ } else if (typeof arg.toField === 'function') {
60
+ this.flattened.push(arg.toField());
61
+ } else if (typeof arg.value === 'string') {
62
+ this.flattened.push(Fr.fromHexString(arg.value));
63
+ } else {
64
+ throw new Error(`Argument for ${name} cannot be serialized to a field`);
65
+ }
66
+ } else {
67
+ throw new Error(`Invalid argument "${arg}" of type ${abiType.kind}`);
68
+ }
69
+ break;
70
+ case 'boolean':
71
+ this.flattened.push(new Fr(arg ? 1n : 0n));
72
+ break;
73
+ case 'array':
74
+ for (let i = 0; i < abiType.length; i += 1) {
75
+ this.encodeArgument(abiType.type, arg[i], `${name}[${i}]`);
76
+ }
77
+ break;
78
+ case 'string':
79
+ for (let i = 0; i < abiType.length; i += 1) {
80
+ // If the string is shorter than the defined length, pad it with 0s.
81
+ const toInsert = i < arg.length ? BigInt((arg as string).charCodeAt(i)) : 0n;
82
+ this.flattened.push(new Fr(toInsert));
83
+ }
84
+ break;
85
+ case 'struct': {
86
+ // If the type defines the encoding to noir, we use it
87
+ if (arg.encodeToNoir !== undefined) {
88
+ this.flattened.push(...arg.encodeToNoir());
89
+ break;
90
+ }
91
+
92
+ // If the abi expects a struct like { address: Field } and the supplied arg does not have
93
+ // an address field in it, we try to encode it as if it were a field directly.
94
+ const isAddress = isAddressStruct(abiType);
95
+ if (isAddress && typeof arg.address === 'undefined' && typeof arg.inner === 'undefined') {
96
+ this.encodeArgument({ kind: 'field' }, arg, `${name}.inner`);
97
+ break;
98
+ }
99
+ // Or if the supplied argument does have an address field in it, like a CompleteAddress,
100
+ // we encode it directly as a field.
101
+ if (isAddress && typeof arg.address !== 'undefined') {
102
+ this.encodeArgument({ kind: 'field' }, arg.address, `${name}.address`);
103
+ break;
104
+ }
105
+ if (isFunctionSelectorStruct(abiType)) {
106
+ this.encodeArgument({ kind: 'integer', sign: 'unsigned', width: 32 }, arg.value ?? arg, `${name}.inner`);
107
+ break;
108
+ }
109
+ if (isWrappedFieldStruct(abiType)) {
110
+ this.encodeArgument({ kind: 'field' }, arg.inner ?? arg, `${name}.inner`);
111
+ break;
112
+ }
113
+ for (const field of abiType.fields) {
114
+ this.encodeArgument(field.type, arg[field.name], `${name}.${field.name}`);
115
+ }
116
+ break;
117
+ }
118
+ case 'integer':
119
+ if (typeof arg === 'string') {
120
+ const value = BigInt(arg);
121
+ this.flattened.push(new Fr(value));
122
+ } else {
123
+ this.flattened.push(new Fr(arg));
124
+ }
125
+ break;
126
+ default:
127
+ throw new Error(`Unsupported type: ${abiType}`);
128
+ }
129
+ }
130
+
131
+ /**
132
+ * Encodes all the arguments for the given function ABI.
133
+ * @returns The encoded arguments.
134
+ */
135
+ public encode() {
136
+ for (let i = 0; i < this.abi.parameters.length; i += 1) {
137
+ const parameterAbi = this.abi.parameters[i];
138
+ this.encodeArgument(parameterAbi.type, this.args[i], parameterAbi.name);
139
+ }
140
+ return this.flattened;
141
+ }
142
+ }
143
+
144
+ /**
145
+ * Encodes all the arguments for a function call.
146
+ * @param abi - The function ABI entry.
147
+ * @param args - The arguments to encode.
148
+ * @returns The encoded arguments.
149
+ */
150
+ export function encodeArguments(abi: FunctionAbi, args: any[]) {
151
+ return new ArgumentEncoder(abi, args).encode();
152
+ }
153
+
154
+ /**
155
+ * Returns the size of the arguments for a function ABI.
156
+ * @param abi - The function ABI entry.
157
+ * @returns The size of the arguments.
158
+ */
159
+ export function countArgumentsSize(abi: FunctionAbi) {
160
+ return abi.parameters.reduce((acc, parameter) => acc + ArgumentEncoder.typeSize(parameter.type), 0);
161
+ }