@aztec/pxe 0.0.1-commit.f2ce05ee → 0.0.1-commit.f5a9928

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 (544) hide show
  1. package/dest/bin/check_oracle_version.js +41 -112
  2. package/dest/bin/index.d.ts +2 -0
  3. package/dest/bin/index.d.ts.map +1 -0
  4. package/dest/bin/index.js +1 -0
  5. package/dest/bin/oracle_version_helpers.d.ts +34 -0
  6. package/dest/bin/oracle_version_helpers.d.ts.map +1 -0
  7. package/dest/bin/oracle_version_helpers.js +46 -0
  8. package/dest/block_synchronizer/block_stream_source.d.ts +10 -0
  9. package/dest/block_synchronizer/block_stream_source.d.ts.map +1 -0
  10. package/dest/block_synchronizer/block_stream_source.js +37 -0
  11. package/dest/block_synchronizer/block_synchronizer.d.ts +22 -16
  12. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  13. package/dest/block_synchronizer/block_synchronizer.js +71 -28
  14. package/dest/config/index.d.ts +9 -2
  15. package/dest/config/index.d.ts.map +1 -1
  16. package/dest/config/index.js +14 -15
  17. package/dest/config/package_info.js +1 -1
  18. package/dest/contract/contract_class_service.d.ts +24 -0
  19. package/dest/contract/contract_class_service.d.ts.map +1 -0
  20. package/dest/contract/contract_class_service.js +36 -0
  21. package/dest/contract/contract_sync_service.d.ts +48 -0
  22. package/dest/contract/contract_sync_service.d.ts.map +1 -0
  23. package/dest/contract/contract_sync_service.js +119 -0
  24. package/dest/contract/helpers.d.ts +7 -0
  25. package/dest/contract/helpers.d.ts.map +1 -0
  26. package/dest/contract/helpers.js +20 -0
  27. package/dest/contract/skip_sync_contracts.d.ts +11 -0
  28. package/dest/contract/skip_sync_contracts.d.ts.map +1 -0
  29. package/dest/contract/skip_sync_contracts.js +18 -0
  30. package/dest/contract_function_simulator/anchored_contract_data.d.ts +36 -0
  31. package/dest/contract_function_simulator/anchored_contract_data.d.ts.map +1 -0
  32. package/dest/contract_function_simulator/anchored_contract_data.js +54 -0
  33. package/dest/contract_function_simulator/contract_function_simulator.d.ts +72 -43
  34. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  35. package/dest/contract_function_simulator/contract_function_simulator.js +266 -114
  36. package/dest/contract_function_simulator/ephemeral_array_service.d.ts +28 -0
  37. package/dest/contract_function_simulator/ephemeral_array_service.d.ts.map +1 -0
  38. package/dest/contract_function_simulator/ephemeral_array_service.js +78 -0
  39. package/dest/contract_function_simulator/execution_note_cache.d.ts +4 -10
  40. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  41. package/dest/contract_function_simulator/execution_note_cache.js +10 -29
  42. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +7 -11
  43. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  44. package/dest/contract_function_simulator/execution_tagging_index_cache.js +19 -15
  45. package/dest/contract_function_simulator/index.d.ts +26 -5
  46. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  47. package/dest/contract_function_simulator/index.js +11 -3
  48. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts +29 -0
  49. package/dest/contract_function_simulator/noir-structs/bounded_vec.d.ts.map +1 -0
  50. package/dest/contract_function_simulator/noir-structs/bounded_vec.js +30 -0
  51. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts +9 -0
  52. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.d.ts.map +1 -0
  53. package/dest/contract_function_simulator/noir-structs/contract_class_log_data.js +1 -0
  54. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts +7 -0
  55. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.d.ts.map +1 -0
  56. package/dest/contract_function_simulator/noir-structs/embedded_curve_point.js +1 -0
  57. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts +37 -0
  58. package/dest/contract_function_simulator/noir-structs/ephemeral_array.d.ts.map +1 -0
  59. package/dest/contract_function_simulator/noir-structs/ephemeral_array.js +59 -0
  60. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +3 -4
  61. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  62. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +9 -10
  63. package/dest/contract_function_simulator/noir-structs/fact.d.ts +16 -0
  64. package/dest/contract_function_simulator/noir-structs/fact.d.ts.map +1 -0
  65. package/dest/contract_function_simulator/noir-structs/fact.js +6 -0
  66. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts +27 -0
  67. package/dest/contract_function_simulator/noir-structs/fact_collection.d.ts.map +1 -0
  68. package/dest/contract_function_simulator/noir-structs/fact_collection.js +31 -0
  69. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +19 -10
  70. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  71. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +12 -24
  72. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +11 -9
  73. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  74. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +2 -63
  75. package/dest/contract_function_simulator/noir-structs/note_data.d.ts +27 -0
  76. package/dest/contract_function_simulator/noir-structs/note_data.d.ts.map +1 -0
  77. package/dest/contract_function_simulator/noir-structs/note_data.js +3 -0
  78. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +3 -5
  79. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  80. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +8 -12
  81. package/dest/contract_function_simulator/noir-structs/option.d.ts +59 -0
  82. package/dest/contract_function_simulator/noir-structs/option.d.ts.map +1 -0
  83. package/dest/contract_function_simulator/noir-structs/option.js +67 -0
  84. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts +11 -0
  85. package/dest/contract_function_simulator/noir-structs/origin_block.d.ts.map +1 -0
  86. package/dest/contract_function_simulator/noir-structs/origin_block.js +5 -0
  87. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts +11 -0
  88. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.d.ts.map +1 -0
  89. package/dest/contract_function_simulator/noir-structs/pending_tagged_log.js +4 -0
  90. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts +8 -0
  91. package/dest/contract_function_simulator/noir-structs/provided_secret.d.ts.map +1 -0
  92. package/dest/contract_function_simulator/noir-structs/provided_secret.js +1 -0
  93. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts +28 -0
  94. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.d.ts.map +1 -0
  95. package/dest/contract_function_simulator/noir-structs/resolved_tagging_strategy.js +50 -0
  96. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts +19 -0
  97. package/dest/contract_function_simulator/noir-structs/resolved_tx.d.ts.map +1 -0
  98. package/dest/contract_function_simulator/noir-structs/resolved_tx.js +9 -0
  99. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts +15 -0
  100. package/dest/contract_function_simulator/noir-structs/tx_effect_data.d.ts.map +1 -0
  101. package/dest/contract_function_simulator/noir-structs/tx_effect_data.js +5 -0
  102. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +6 -11
  103. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  104. package/dest/contract_function_simulator/noir-structs/utility_context.js +1 -20
  105. package/dest/contract_function_simulator/oracle/acir_callback.d.ts +21 -0
  106. package/dest/contract_function_simulator/oracle/acir_callback.d.ts.map +1 -0
  107. package/dest/contract_function_simulator/oracle/acir_callback.js +115 -0
  108. package/dest/contract_function_simulator/oracle/index.d.ts +2 -13
  109. package/dest/contract_function_simulator/oracle/index.d.ts.map +1 -1
  110. package/dest/contract_function_simulator/oracle/index.js +1 -1
  111. package/dest/contract_function_simulator/oracle/interfaces.d.ts +15 -98
  112. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  113. package/dest/contract_function_simulator/oracle/interfaces.js +2 -2
  114. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts +39 -0
  115. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.d.ts.map +1 -0
  116. package/dest/contract_function_simulator/oracle/legacy_oracle_registry.js +107 -0
  117. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +3 -14
  118. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  119. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -24
  120. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +2 -2
  121. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  122. package/dest/contract_function_simulator/oracle/note_packing_utils.js +2 -2
  123. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts +139 -0
  124. package/dest/contract_function_simulator/oracle/oracle_registry.d.ts.map +1 -0
  125. package/dest/contract_function_simulator/oracle/oracle_registry.js +1016 -0
  126. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts +274 -0
  127. package/dest/contract_function_simulator/oracle/oracle_type_mappings.d.ts.map +1 -0
  128. package/dest/contract_function_simulator/oracle/oracle_type_mappings.js +1243 -0
  129. package/dest/contract_function_simulator/oracle/private_execution.d.ts +1 -1
  130. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  131. package/dest/contract_function_simulator/oracle/private_execution.js +7 -6
  132. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +82 -98
  133. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  134. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +263 -117
  135. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +206 -83
  136. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  137. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +688 -188
  138. package/dest/contract_function_simulator/pick_notes.d.ts +1 -1
  139. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  140. package/dest/contract_function_simulator/pick_notes.js +20 -3
  141. package/dest/contract_function_simulator/transient_array_service.d.ts +31 -0
  142. package/dest/contract_function_simulator/transient_array_service.d.ts.map +1 -0
  143. package/dest/contract_function_simulator/transient_array_service.js +62 -0
  144. package/dest/contract_logging.d.ts +27 -0
  145. package/dest/contract_logging.d.ts.map +1 -0
  146. package/dest/contract_logging.js +38 -0
  147. package/dest/debug/pxe_debug_utils.d.ts +5 -9
  148. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  149. package/dest/debug/pxe_debug_utils.js +4 -10
  150. package/dest/entrypoints/client/bundle/index.d.ts +4 -1
  151. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  152. package/dest/entrypoints/client/bundle/index.js +3 -0
  153. package/dest/entrypoints/client/bundle/utils.d.ts +2 -2
  154. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  155. package/dest/entrypoints/client/bundle/utils.js +29 -8
  156. package/dest/entrypoints/client/lazy/index.d.ts +4 -1
  157. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  158. package/dest/entrypoints/client/lazy/index.js +3 -0
  159. package/dest/entrypoints/client/lazy/utils.d.ts +2 -2
  160. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  161. package/dest/entrypoints/client/lazy/utils.js +29 -8
  162. package/dest/entrypoints/client/store.d.ts +14 -0
  163. package/dest/entrypoints/client/store.d.ts.map +1 -0
  164. package/dest/entrypoints/client/store.js +42 -0
  165. package/dest/entrypoints/pxe_creation_options.d.ts +16 -2
  166. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  167. package/dest/entrypoints/pxe_creation_options.js +3 -1
  168. package/dest/entrypoints/server/index.d.ts +8 -3
  169. package/dest/entrypoints/server/index.d.ts.map +1 -1
  170. package/dest/entrypoints/server/index.js +6 -2
  171. package/dest/entrypoints/server/store.d.ts +18 -0
  172. package/dest/entrypoints/server/store.d.ts.map +1 -0
  173. package/dest/entrypoints/server/store.js +28 -0
  174. package/dest/entrypoints/server/utils.d.ts +4 -3
  175. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  176. package/dest/entrypoints/server/utils.js +30 -8
  177. package/dest/error_enriching.d.ts +5 -3
  178. package/dest/error_enriching.d.ts.map +1 -1
  179. package/dest/error_enriching.js +15 -12
  180. package/dest/events/event_service.d.ts +21 -5
  181. package/dest/events/event_service.d.ts.map +1 -1
  182. package/dest/events/event_service.js +51 -17
  183. package/dest/events/private_event_filter_validator.d.ts +3 -2
  184. package/dest/events/private_event_filter_validator.d.ts.map +1 -1
  185. package/dest/events/private_event_filter_validator.js +15 -0
  186. package/dest/hooks/authorize_utility_call.d.ts +41 -0
  187. package/dest/hooks/authorize_utility_call.d.ts.map +1 -0
  188. package/dest/hooks/authorize_utility_call.js +4 -0
  189. package/dest/hooks/execution_hooks.d.ts +62 -0
  190. package/dest/hooks/execution_hooks.d.ts.map +1 -0
  191. package/dest/hooks/execution_hooks.js +9 -0
  192. package/dest/hooks/index.d.ts +5 -0
  193. package/dest/hooks/index.d.ts.map +1 -0
  194. package/dest/hooks/index.js +2 -0
  195. package/dest/hooks/resolve_custom_request.d.ts +23 -0
  196. package/dest/hooks/resolve_custom_request.d.ts.map +1 -0
  197. package/dest/hooks/resolve_custom_request.js +3 -0
  198. package/dest/hooks/resolve_tagging_secret_strategy.d.ts +50 -0
  199. package/dest/hooks/resolve_tagging_secret_strategy.d.ts.map +1 -0
  200. package/dest/hooks/resolve_tagging_secret_strategy.js +3 -0
  201. package/dest/logs/log_service.d.ts +21 -10
  202. package/dest/logs/log_service.d.ts.map +1 -1
  203. package/dest/logs/log_service.js +184 -90
  204. package/dest/messages/tx_resolver_service.d.ts +28 -0
  205. package/dest/messages/tx_resolver_service.d.ts.map +1 -0
  206. package/dest/messages/tx_resolver_service.js +62 -0
  207. package/dest/node/benchmarked_node.d.ts +20 -0
  208. package/dest/node/benchmarked_node.d.ts.map +1 -0
  209. package/dest/node/benchmarked_node.js +94 -0
  210. package/dest/node/caching_aztec_node.d.ts +24 -0
  211. package/dest/node/caching_aztec_node.d.ts.map +1 -0
  212. package/dest/node/caching_aztec_node.js +268 -0
  213. package/dest/notes/note_service.d.ts +34 -6
  214. package/dest/notes/note_service.d.ts.map +1 -1
  215. package/dest/notes/note_service.js +85 -59
  216. package/dest/notes_filter.d.ts +24 -0
  217. package/dest/notes_filter.d.ts.map +1 -0
  218. package/dest/notes_filter.js +4 -0
  219. package/dest/oracle_version.d.ts +4 -3
  220. package/dest/oracle_version.d.ts.map +1 -1
  221. package/dest/oracle_version.js +20 -10
  222. package/dest/private_kernel/batch_planner.d.ts +47 -0
  223. package/dest/private_kernel/batch_planner.d.ts.map +1 -0
  224. package/dest/private_kernel/batch_planner.js +104 -0
  225. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  226. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  227. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  228. package/dest/private_kernel/hints/index.d.ts +1 -1
  229. package/dest/private_kernel/hints/index.js +1 -1
  230. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
  231. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  232. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +138 -72
  233. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  234. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  235. package/dest/private_kernel/hints/test_utils.js +202 -0
  236. package/dest/private_kernel/private_kernel_execution_prover.d.ts +6 -2
  237. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  238. package/dest/private_kernel/private_kernel_execution_prover.js +165 -82
  239. package/dest/private_kernel/private_kernel_oracle.d.ts +17 -11
  240. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  241. package/dest/private_kernel/private_kernel_oracle.js +47 -29
  242. package/dest/pxe.d.ts +219 -68
  243. package/dest/pxe.d.ts.map +1 -1
  244. package/dest/pxe.js +423 -243
  245. package/dest/storage/address_store/address_store.d.ts +1 -1
  246. package/dest/storage/address_store/address_store.d.ts.map +1 -1
  247. package/dest/storage/address_store/address_store.js +2 -1
  248. package/dest/storage/allowed_scopes.d.ts +6 -0
  249. package/dest/storage/allowed_scopes.d.ts.map +1 -0
  250. package/dest/storage/allowed_scopes.js +7 -0
  251. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -6
  252. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -1
  253. package/dest/storage/anchor_block_store/anchor_block_store.js +9 -7
  254. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts +42 -0
  255. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.d.ts.map +1 -0
  256. package/dest/storage/backwards_compatibility_tests/kv_store_snapshot.js +93 -0
  257. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts +15 -0
  258. package/dest/storage/backwards_compatibility_tests/schema_tests.d.ts.map +1 -0
  259. package/dest/storage/backwards_compatibility_tests/schema_tests.js +671 -0
  260. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts +19 -0
  261. package/dest/storage/backwards_compatibility_tests/store_spy.d.ts.map +1 -0
  262. package/dest/storage/backwards_compatibility_tests/store_spy.js +63 -0
  263. package/dest/storage/capsule_store/capsule_service.d.ts +21 -0
  264. package/dest/storage/capsule_store/capsule_service.d.ts.map +1 -0
  265. package/dest/storage/capsule_store/capsule_service.js +47 -0
  266. package/dest/storage/capsule_store/capsule_store.d.ts +9 -9
  267. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -1
  268. package/dest/storage/capsule_store/capsule_store.js +37 -29
  269. package/dest/storage/capsule_store/index.d.ts +2 -1
  270. package/dest/storage/capsule_store/index.d.ts.map +1 -1
  271. package/dest/storage/capsule_store/index.js +1 -0
  272. package/dest/storage/contract_store/contract_store.d.ts +63 -33
  273. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  274. package/dest/storage/contract_store/contract_store.js +179 -130
  275. package/dest/storage/contract_store/private_functions_tree.d.ts +1 -1
  276. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -1
  277. package/dest/storage/contract_store/private_functions_tree.js +2 -1
  278. package/dest/storage/fact_store/fact_service.d.ts +22 -0
  279. package/dest/storage/fact_store/fact_service.d.ts.map +1 -0
  280. package/dest/storage/fact_store/fact_service.js +45 -0
  281. package/dest/storage/fact_store/fact_store.d.ts +95 -0
  282. package/dest/storage/fact_store/fact_store.d.ts.map +1 -0
  283. package/dest/storage/fact_store/fact_store.js +411 -0
  284. package/dest/storage/fact_store/fact_store_keys.d.ts +34 -0
  285. package/dest/storage/fact_store/fact_store_keys.d.ts.map +1 -0
  286. package/dest/storage/fact_store/fact_store_keys.js +50 -0
  287. package/dest/storage/fact_store/index.d.ts +6 -0
  288. package/dest/storage/fact_store/index.d.ts.map +1 -0
  289. package/dest/storage/fact_store/index.js +4 -0
  290. package/dest/storage/fact_store/origin_state.d.ts +59 -0
  291. package/dest/storage/fact_store/origin_state.d.ts.map +1 -0
  292. package/dest/storage/fact_store/origin_state.js +60 -0
  293. package/dest/storage/fact_store/stored_fact.d.ts +32 -0
  294. package/dest/storage/fact_store/stored_fact.d.ts.map +1 -0
  295. package/dest/storage/fact_store/stored_fact.js +64 -0
  296. package/dest/storage/index.d.ts +3 -2
  297. package/dest/storage/index.d.ts.map +1 -1
  298. package/dest/storage/index.js +2 -1
  299. package/dest/storage/metadata.d.ts +2 -2
  300. package/dest/storage/metadata.d.ts.map +1 -1
  301. package/dest/storage/metadata.js +1 -1
  302. package/dest/storage/note_store/note_store.d.ts +44 -35
  303. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  304. package/dest/storage/note_store/note_store.js +203 -174
  305. package/dest/storage/note_store/stored_note.d.ts +3 -8
  306. package/dest/storage/note_store/stored_note.d.ts.map +1 -1
  307. package/dest/storage/note_store/stored_note.js +4 -20
  308. package/dest/storage/open_pxe_stores.d.ts +35 -0
  309. package/dest/storage/open_pxe_stores.d.ts.map +1 -0
  310. package/dest/storage/open_pxe_stores.js +29 -0
  311. package/dest/storage/private_event_store/private_event_store.d.ts +13 -16
  312. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -1
  313. package/dest/storage/private_event_store/private_event_store.js +48 -45
  314. package/dest/storage/private_event_store/stored_private_event.js +1 -1
  315. package/dest/storage/store_identity.d.ts +35 -0
  316. package/dest/storage/store_identity.d.ts.map +1 -0
  317. package/dest/storage/store_identity.js +44 -0
  318. package/dest/storage/tagging_store/index.d.ts +2 -2
  319. package/dest/storage/tagging_store/index.d.ts.map +1 -1
  320. package/dest/storage/tagging_store/index.js +1 -1
  321. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  322. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  323. package/dest/storage/tagging_store/sender_tagging_store.d.ts +63 -31
  324. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  325. package/dest/storage/tagging_store/sender_tagging_store.js +210 -129
  326. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts +51 -0
  327. package/dest/storage/tagging_store/tagging_secret_sources_store.d.ts.map +1 -0
  328. package/dest/storage/tagging_store/tagging_secret_sources_store.js +105 -0
  329. package/dest/tagging/constants.d.ts +11 -2
  330. package/dest/tagging/constants.d.ts.map +1 -1
  331. package/dest/tagging/constants.js +38 -10
  332. package/dest/tagging/get_all_logs_by_tags.d.ts +55 -10
  333. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  334. package/dest/tagging/get_all_logs_by_tags.js +65 -32
  335. package/dest/tagging/index.d.ts +8 -7
  336. package/dest/tagging/index.d.ts.map +1 -1
  337. package/dest/tagging/index.js +6 -5
  338. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts +29 -0
  339. package/dest/tagging/persist_sender_tagging_index_ranges.d.ts.map +1 -0
  340. package/dest/tagging/persist_sender_tagging_index_ranges.js +42 -0
  341. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts +74 -0
  342. package/dest/tagging/recipient_sync/sync_tagged_private_logs.d.ts.map +1 -0
  343. package/dest/tagging/recipient_sync/sync_tagged_private_logs.js +235 -0
  344. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +3 -3
  345. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -1
  346. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +2 -2
  347. package/dest/tagging/reconcile_tagging_index_ranges.d.ts +36 -0
  348. package/dest/tagging/reconcile_tagging_index_ranges.d.ts.map +1 -0
  349. package/dest/tagging/reconcile_tagging_index_ranges.js +74 -0
  350. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +8 -10
  351. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  352. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +25 -22
  353. package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts +22 -0
  354. package/dest/tagging/sender_sync/utils/classify_pending_txs.d.ts.map +1 -0
  355. package/dest/tagging/sender_sync/utils/classify_pending_txs.js +62 -0
  356. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +17 -9
  357. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  358. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +53 -39
  359. package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts +29 -0
  360. package/dest/tagging/sender_sync/utils/resolve_pending_txs.d.ts.map +1 -0
  361. package/dest/tagging/sender_sync/utils/resolve_pending_txs.js +42 -0
  362. package/dest/tagging/sender_sync/utils/test_utils.d.ts +16 -0
  363. package/dest/tagging/sender_sync/utils/test_utils.d.ts.map +1 -0
  364. package/dest/tagging/sender_sync/utils/test_utils.js +24 -0
  365. package/dest/tagging/testing/tag_query_test_utils.d.ts +6 -0
  366. package/dest/tagging/testing/tag_query_test_utils.d.ts.map +1 -0
  367. package/dest/tagging/testing/tag_query_test_utils.js +10 -0
  368. package/package.json +20 -17
  369. package/src/bin/check_oracle_version.ts +46 -135
  370. package/src/bin/index.ts +1 -0
  371. package/src/bin/oracle_version_helpers.ts +54 -0
  372. package/src/block_synchronizer/block_stream_source.ts +42 -0
  373. package/src/block_synchronizer/block_synchronizer.ts +86 -40
  374. package/src/config/index.ts +16 -9
  375. package/src/config/package_info.ts +1 -1
  376. package/src/contract/contract_class_service.ts +45 -0
  377. package/src/contract/contract_sync_service.ts +179 -0
  378. package/src/contract/helpers.ts +35 -0
  379. package/src/contract/skip_sync_contracts.ts +23 -0
  380. package/src/contract_function_simulator/anchored_contract_data.ts +74 -0
  381. package/src/contract_function_simulator/contract_function_simulator.ts +468 -180
  382. package/src/contract_function_simulator/ephemeral_array_service.ts +110 -0
  383. package/src/contract_function_simulator/execution_note_cache.ts +10 -30
  384. package/src/contract_function_simulator/execution_tagging_index_cache.ts +19 -18
  385. package/src/contract_function_simulator/index.ts +89 -4
  386. package/src/contract_function_simulator/noir-structs/bounded_vec.ts +43 -0
  387. package/src/contract_function_simulator/noir-structs/contract_class_log_data.ts +9 -0
  388. package/src/contract_function_simulator/noir-structs/embedded_curve_point.ts +4 -0
  389. package/src/contract_function_simulator/noir-structs/ephemeral_array.ts +66 -0
  390. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +10 -9
  391. package/src/contract_function_simulator/noir-structs/fact.ts +13 -0
  392. package/src/contract_function_simulator/noir-structs/fact_collection.ts +64 -0
  393. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +27 -20
  394. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +14 -64
  395. package/src/contract_function_simulator/noir-structs/note_data.ts +27 -0
  396. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +6 -11
  397. package/src/contract_function_simulator/noir-structs/option.ts +75 -0
  398. package/src/contract_function_simulator/noir-structs/origin_block.ts +8 -0
  399. package/src/contract_function_simulator/noir-structs/pending_tagged_log.ts +12 -0
  400. package/src/contract_function_simulator/noir-structs/provided_secret.ts +5 -0
  401. package/src/contract_function_simulator/noir-structs/resolved_tagging_strategy.ts +66 -0
  402. package/src/contract_function_simulator/noir-structs/resolved_tx.ts +19 -0
  403. package/src/contract_function_simulator/noir-structs/tx_effect_data.ts +16 -0
  404. package/src/contract_function_simulator/noir-structs/utility_context.ts +5 -17
  405. package/src/contract_function_simulator/oracle/acir_callback.ts +154 -0
  406. package/src/contract_function_simulator/oracle/index.ts +1 -15
  407. package/src/contract_function_simulator/oracle/interfaces.ts +11 -176
  408. package/src/contract_function_simulator/oracle/legacy_oracle_registry.ts +147 -0
  409. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +6 -21
  410. package/src/contract_function_simulator/oracle/note_packing_utils.ts +3 -3
  411. package/src/contract_function_simulator/oracle/oracle_registry.ts +710 -0
  412. package/src/contract_function_simulator/oracle/oracle_type_mappings.ts +1052 -0
  413. package/src/contract_function_simulator/oracle/private_execution.ts +6 -7
  414. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +320 -210
  415. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +1028 -268
  416. package/src/contract_function_simulator/pick_notes.ts +22 -3
  417. package/src/contract_function_simulator/transient_array_service.ts +91 -0
  418. package/src/contract_logging.ts +52 -0
  419. package/src/debug/pxe_debug_utils.ts +11 -17
  420. package/src/entrypoints/client/bundle/index.ts +3 -0
  421. package/src/entrypoints/client/bundle/utils.ts +35 -9
  422. package/src/entrypoints/client/lazy/index.ts +3 -0
  423. package/src/entrypoints/client/lazy/utils.ts +35 -9
  424. package/src/entrypoints/client/store.ts +54 -0
  425. package/src/entrypoints/pxe_creation_options.ts +21 -1
  426. package/src/entrypoints/server/index.ts +8 -2
  427. package/src/entrypoints/server/store.ts +47 -0
  428. package/src/entrypoints/server/utils.ts +46 -21
  429. package/src/error_enriching.ts +30 -13
  430. package/src/events/event_service.ts +85 -26
  431. package/src/events/private_event_filter_validator.ts +21 -1
  432. package/src/hooks/authorize_utility_call.ts +44 -0
  433. package/src/hooks/execution_hooks.ts +68 -0
  434. package/src/hooks/index.ts +13 -0
  435. package/src/hooks/resolve_custom_request.ts +24 -0
  436. package/src/hooks/resolve_tagging_secret_strategy.ts +60 -0
  437. package/src/logs/log_service.ts +231 -157
  438. package/src/messages/tx_resolver_service.ts +81 -0
  439. package/src/node/benchmarked_node.ts +140 -0
  440. package/src/node/caching_aztec_node.ts +407 -0
  441. package/src/notes/note_service.ts +128 -86
  442. package/src/notes_filter.ts +24 -0
  443. package/src/oracle_version.ts +20 -10
  444. package/src/private_kernel/batch_planner.ts +169 -0
  445. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  446. package/src/private_kernel/hints/index.ts +1 -1
  447. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +179 -121
  448. package/src/private_kernel/hints/test_utils.ts +318 -0
  449. package/src/private_kernel/private_kernel_execution_prover.ts +252 -116
  450. package/src/private_kernel/private_kernel_oracle.ts +65 -36
  451. package/src/pxe.ts +698 -311
  452. package/src/storage/address_store/address_store.ts +2 -1
  453. package/src/storage/allowed_scopes.ts +14 -0
  454. package/src/storage/anchor_block_store/anchor_block_store.ts +9 -7
  455. package/src/storage/backwards_compatibility_tests/__snapshots__/AddressStore.json +22 -0
  456. package/src/storage/backwards_compatibility_tests/__snapshots__/AnchorBlockStore.json +3 -0
  457. package/src/storage/backwards_compatibility_tests/__snapshots__/CapsuleStore.json +16 -0
  458. package/src/storage/backwards_compatibility_tests/__snapshots__/ContractStore.json +28 -0
  459. package/src/storage/backwards_compatibility_tests/__snapshots__/FactStore.json +40 -0
  460. package/src/storage/backwards_compatibility_tests/__snapshots__/KeyStore.json +52 -0
  461. package/src/storage/backwards_compatibility_tests/__snapshots__/L2TipsKVStore.json +40 -0
  462. package/src/storage/backwards_compatibility_tests/__snapshots__/NoteStore.json +56 -0
  463. package/src/storage/backwards_compatibility_tests/__snapshots__/PrivateEventStore.json +44 -0
  464. package/src/storage/backwards_compatibility_tests/__snapshots__/RecipientTaggingStore.json +26 -0
  465. package/src/storage/backwards_compatibility_tests/__snapshots__/SenderTaggingStore.json +30 -0
  466. package/src/storage/backwards_compatibility_tests/__snapshots__/TaggingSecretSourcesStore.json +30 -0
  467. package/src/storage/backwards_compatibility_tests/__snapshots__/opened_stores.json +117 -0
  468. package/src/storage/backwards_compatibility_tests/kv_store_snapshot.ts +122 -0
  469. package/src/storage/backwards_compatibility_tests/schema_tests.ts +803 -0
  470. package/src/storage/backwards_compatibility_tests/store_spy.ts +73 -0
  471. package/src/storage/capsule_store/capsule_service.ts +85 -0
  472. package/src/storage/capsule_store/capsule_store.ts +45 -27
  473. package/src/storage/capsule_store/index.ts +1 -0
  474. package/src/storage/contract_store/contract_store.ts +238 -166
  475. package/src/storage/contract_store/private_functions_tree.ts +2 -1
  476. package/src/storage/fact_store/fact_service.ts +69 -0
  477. package/src/storage/fact_store/fact_store.ts +488 -0
  478. package/src/storage/fact_store/fact_store_keys.ts +75 -0
  479. package/src/storage/fact_store/index.ts +15 -0
  480. package/src/storage/fact_store/origin_state.ts +84 -0
  481. package/src/storage/fact_store/stored_fact.ts +80 -0
  482. package/src/storage/index.ts +2 -1
  483. package/src/storage/metadata.ts +1 -1
  484. package/src/storage/note_store/note_store.ts +236 -194
  485. package/src/storage/note_store/stored_note.ts +5 -27
  486. package/src/storage/open_pxe_stores.ts +52 -0
  487. package/src/storage/private_event_store/private_event_store.ts +55 -56
  488. package/src/storage/private_event_store/stored_private_event.ts +1 -1
  489. package/src/storage/store_identity.ts +72 -0
  490. package/src/storage/tagging_store/index.ts +1 -1
  491. package/src/storage/tagging_store/recipient_tagging_store.ts +5 -5
  492. package/src/storage/tagging_store/sender_tagging_store.ts +278 -158
  493. package/src/storage/tagging_store/tagging_secret_sources_store.ts +138 -0
  494. package/src/tagging/constants.ts +42 -10
  495. package/src/tagging/get_all_logs_by_tags.ts +125 -36
  496. package/src/tagging/index.ts +12 -6
  497. package/src/tagging/persist_sender_tagging_index_ranges.ts +57 -0
  498. package/src/tagging/recipient_sync/sync_tagged_private_logs.ts +356 -0
  499. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +4 -4
  500. package/src/tagging/reconcile_tagging_index_ranges.ts +102 -0
  501. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +32 -27
  502. package/src/tagging/sender_sync/utils/classify_pending_txs.ts +92 -0
  503. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +57 -50
  504. package/src/tagging/sender_sync/utils/resolve_pending_txs.ts +65 -0
  505. package/src/tagging/sender_sync/utils/test_utils.ts +46 -0
  506. package/src/tagging/testing/tag_query_test_utils.ts +11 -0
  507. package/dest/contract_function_simulator/benchmarked_node.d.ts +0 -9
  508. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +0 -1
  509. package/dest/contract_function_simulator/benchmarked_node.js +0 -77
  510. package/dest/contract_function_simulator/oracle/oracle.d.ts +0 -60
  511. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +0 -1
  512. package/dest/contract_function_simulator/oracle/oracle.js +0 -368
  513. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +0 -6
  514. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +0 -1
  515. package/dest/contract_function_simulator/proxied_contract_data_source.js +0 -80
  516. package/dest/contract_sync/contract_sync_service.d.ts +0 -41
  517. package/dest/contract_sync/contract_sync_service.d.ts.map +0 -1
  518. package/dest/contract_sync/contract_sync_service.js +0 -82
  519. package/dest/contract_sync/helpers.d.ts +0 -28
  520. package/dest/contract_sync/helpers.d.ts.map +0 -1
  521. package/dest/contract_sync/helpers.js +0 -55
  522. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  523. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
  524. package/dest/storage/tagging_store/sender_address_book_store.d.ts +0 -14
  525. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +0 -1
  526. package/dest/storage/tagging_store/sender_address_book_store.js +0 -36
  527. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +0 -15
  528. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +0 -1
  529. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +0 -99
  530. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +0 -15
  531. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +0 -1
  532. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +0 -32
  533. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +0 -11
  534. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +0 -1
  535. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +0 -29
  536. package/src/contract_function_simulator/benchmarked_node.ts +0 -103
  537. package/src/contract_function_simulator/oracle/oracle.ts +0 -637
  538. package/src/contract_function_simulator/proxied_contract_data_source.ts +0 -83
  539. package/src/contract_sync/contract_sync_service.ts +0 -129
  540. package/src/contract_sync/helpers.ts +0 -93
  541. package/src/storage/tagging_store/sender_address_book_store.ts +0 -48
  542. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +0 -143
  543. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +0 -49
  544. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +0 -36
@@ -1,107 +1,24 @@
1
- import type { ARCHIVE_HEIGHT, L1_TO_L2_MSG_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT } from '@aztec/constants';
2
- import type { BlockNumber } from '@aztec/foundation/branded-types';
3
- import { Fr } from '@aztec/foundation/curves/bn254';
4
- import { Point } from '@aztec/foundation/curves/grumpkin';
5
- import { MembershipWitness } from '@aztec/foundation/trees';
6
- import type { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
7
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
8
- import { BlockHash } from '@aztec/stdlib/block';
9
- import type { CompleteAddress, ContractInstance } from '@aztec/stdlib/contract';
10
- import type { KeyValidationRequest } from '@aztec/stdlib/kernel';
11
- import type { ContractClassLog, Tag } from '@aztec/stdlib/logs';
12
- import type { Note, NoteStatus } from '@aztec/stdlib/note';
13
- import { type NullifierMembershipWitness, PublicDataWitness } from '@aztec/stdlib/trees';
14
- import type { BlockHeader } from '@aztec/stdlib/tx';
15
- import type { UtilityContext } from '../noir-structs/utility_context.js';
16
- import type { MessageLoadOracleInputs } from './message_load_oracle_inputs.js';
1
+ import type { HandlersForPrefix, ORACLE_REGISTRY } from './oracle_registry.js';
17
2
  /**
18
- * Information about a note needed during execution.
3
+ * Miscellaneous oracle methods, not very Aztec-specific and expected to be available in all scenarios in which aztec-nr
4
+ * code runs, except #[external("public")] functions (since those are transpiled to AVM bytecode, where there are no
5
+ * oracles).
19
6
  */
20
- export interface NoteData {
21
- /** The actual note content (the fields of the Noir #[note] struct). */
22
- note: Note;
23
- /** The address of the contract that owns the note. */
24
- contractAddress: AztecAddress;
25
- /** The owner of the note. */
26
- owner: AztecAddress;
27
- /** The storage slot of the note. */
28
- storageSlot: Fr;
29
- /** The randomness injected to the note */
30
- randomness: Fr;
31
- /** The nonce injected into the note hash preimage by kernels. */
32
- noteNonce: Fr;
33
- /** A hash of the note as it gets stored in the note hash tree. */
34
- noteHash: Fr;
35
- /** True if the note is pending, false if settled. */
36
- isPending: boolean;
37
- /** The corresponding nullifier of the note. Undefined for pending notes. */
38
- siloedNullifier?: Fr;
39
- }
40
- /**
41
- * Miscellaneous oracle methods, not very Aztec-specific and expected to be available all scenarios in which aztec-nr
42
- * code runs, except #[external("public")] functions (since those are transpiled to AVM bytecode, where there are no oracles).
43
- */
44
- export interface IMiscOracle {
7
+ export type IMiscOracle = HandlersForPrefix<typeof ORACLE_REGISTRY, 'misc'> & {
45
8
  isMisc: true;
46
- utilityGetRandomField(): Fr;
47
- utilityAssertCompatibleOracleVersion(version: number): void;
48
- utilityDebugLog(level: number, message: string, fields: Fr[]): Promise<void>;
49
- }
9
+ };
50
10
  /**
51
- * Oracle methods associated with the execution of an Aztec #[external("utility")] function. Note that the IMiscOracles are also
52
- * expected to be available in these contexts.
11
+ * Oracle methods associated with the execution of an Aztec #[external("utility")] function. Note that the IMiscOracle
12
+ * methods are also expected to be available in these contexts.
53
13
  */
54
- export interface IUtilityExecutionOracle {
14
+ export type IUtilityExecutionOracle = HandlersForPrefix<typeof ORACLE_REGISTRY, 'utl'> & {
55
15
  isUtility: true;
56
- utilityGetUtilityContext(): UtilityContext;
57
- utilityGetKeyValidationRequest(pkMHash: Fr): Promise<KeyValidationRequest>;
58
- utilityGetContractInstance(address: AztecAddress): Promise<ContractInstance>;
59
- utilityGetNoteHashMembershipWitness(anchorBlockHash: BlockHash, noteHash: Fr): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
60
- utilityGetBlockHashMembershipWitness(anchorBlockHash: BlockHash, blockHash: BlockHash): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
61
- utilityGetNullifierMembershipWitness(anchorBlockHash: BlockHash, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
62
- utilityGetPublicDataWitness(anchorBlockHash: BlockHash, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
63
- utilityGetLowNullifierMembershipWitness(anchorBlockHash: BlockHash, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
64
- utilityGetBlockHeader(blockNumber: BlockNumber): Promise<BlockHeader | undefined>;
65
- utilityTryGetPublicKeysAndPartialAddress(account: AztecAddress): Promise<CompleteAddress | undefined>;
66
- utilityGetAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
67
- utilityGetNotes(owner: AztecAddress | undefined, storageSlot: Fr, numSelects: number, selectByIndexes: number[], selectByOffsets: number[], selectByLengths: number[], selectValues: Fr[], selectComparators: number[], sortByIndexes: number[], sortByOffsets: number[], sortByLengths: number[], sortOrder: number[], limit: number, offset: number, status: NoteStatus): Promise<NoteData[]>;
68
- utilityCheckNullifierExists(innerNullifier: Fr): Promise<boolean>;
69
- utilityGetL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
70
- utilityStorageRead(anchorBlockHash: BlockHash, contractAddress: AztecAddress, startStorageSlot: Fr, numberOfElements: number): Promise<Fr[]>;
71
- utilityFetchTaggedLogs(pendingTaggedLogArrayBaseSlot: Fr): Promise<void>;
72
- utilityValidateAndStoreEnqueuedNotesAndEvents(contractAddress: AztecAddress, noteValidationRequestsArrayBaseSlot: Fr, eventValidationRequestsArrayBaseSlot: Fr): Promise<void>;
73
- utilityBulkRetrieveLogs(contractAddress: AztecAddress, logRetrievalRequestsArrayBaseSlot: Fr, logRetrievalResponsesArrayBaseSlot: Fr): Promise<void>;
74
- utilityStoreCapsule(contractAddress: AztecAddress, key: Fr, capsule: Fr[]): Promise<void>;
75
- utilityLoadCapsule(contractAddress: AztecAddress, key: Fr): Promise<Fr[] | null>;
76
- utilityDeleteCapsule(contractAddress: AztecAddress, key: Fr): Promise<void>;
77
- utilityCopyCapsule(contractAddress: AztecAddress, srcKey: Fr, dstKey: Fr, numEntries: number): Promise<void>;
78
- utilityAes128Decrypt(ciphertext: Buffer, iv: Buffer, symKey: Buffer): Promise<Buffer>;
79
- utilityGetSharedSecret(address: AztecAddress, ephPk: Point): Promise<Point>;
80
- }
16
+ };
81
17
  /**
82
- * Oracle methods associated with the execution of an Aztec #[external("private")] function. Note that both the IMiscOracles and
83
- * IUtilityExecutionOracle are also expected to be available in these contexts.
18
+ * Oracle methods associated with the execution of an Aztec #[external("private")] function. Note that both the
19
+ * IMiscOracle and IUtilityExecutionOracle methods are also expected to be available in these contexts.
84
20
  */
85
- export interface IPrivateExecutionOracle {
21
+ export type IPrivateExecutionOracle = HandlersForPrefix<typeof ORACLE_REGISTRY, 'prv'> & {
86
22
  isPrivate: true;
87
- privateStoreInExecutionCache(values: Fr[], hash: Fr): void;
88
- privateLoadFromExecutionCache(hash: Fr): Promise<Fr[]>;
89
- privateNotifyCreatedNote(owner: AztecAddress, storageSlot: Fr, randomness: Fr, noteTypeId: NoteSelector, note: Fr[], noteHash: Fr, counter: number): void;
90
- privateNotifyNullifiedNote(innerNullifier: Fr, noteHash: Fr, counter: number): Promise<void>;
91
- privateNotifyCreatedNullifier(innerNullifier: Fr): Promise<void>;
92
- privateIsNullifierPending(innerNullifier: Fr, contractAddress: AztecAddress): Promise<boolean>;
93
- privateNotifyCreatedContractClassLog(log: ContractClassLog, counter: number): void;
94
- privateCallPrivateFunction(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean): Promise<{
95
- endSideEffectCounter: Fr;
96
- returnsHash: Fr;
97
- }>;
98
- privateNotifyEnqueuedPublicFunctionCall(targetContractAddress: AztecAddress, calldataHash: Fr, sideEffectCounter: number, isStaticCall: boolean): Promise<void>;
99
- privateNotifySetPublicTeardownFunctionCall(targetContractAddress: AztecAddress, calldataHash: Fr, sideEffectCounter: number, isStaticCall: boolean): Promise<void>;
100
- privateNotifySetMinRevertibleSideEffectCounter(minRevertibleSideEffectCounter: number): Promise<void>;
101
- privateIsSideEffectCounterRevertible(sideEffectCounter: number): Promise<boolean>;
102
- privateGetSenderForTags(): Promise<AztecAddress | undefined>;
103
- privateSetSenderForTags(senderForTags: AztecAddress): Promise<void>;
104
- privateGetNextAppTagAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<Tag>;
105
- utilityEmitOffchainEffect(data: Fr[]): Promise<void>;
106
- }
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyYWN0X2Z1bmN0aW9uX3NpbXVsYXRvci9vcmFjbGUvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsd0JBQXdCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RyxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRixPQUFPLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsS0FBSywwQkFBMEIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXBELE9B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
23
+ };
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyYWN0X2Z1bmN0aW9uX3NpbXVsYXRvci9vcmFjbGUvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUvRTs7OztHQUlHO0FBQ0gsTUFBTSxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLGVBQWUsRUFBRSxNQUFNLENBQUMsR0FBRztJQUFFLE1BQU0sRUFBRSxJQUFJLENBQUE7Q0FBRSxDQUFDO0FBRS9GOzs7R0FHRztBQUNILE1BQU0sTUFBTSx1QkFBdUIsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLGVBQWUsRUFBRSxLQUFLLENBQUMsR0FBRztJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUE7Q0FBRSxDQUFDO0FBRTdHOzs7R0FHRztBQUNILE1BQU0sTUFBTSx1QkFBdUIsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLGVBQWUsRUFBRSxLQUFLLENBQUMsR0FBRztJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUE7Q0FBRSxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE/E;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,eAAe,EAAE,MAAM,CAAC,GAAG;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,CAAC;AAE/F;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,OAAO,eAAe,EAAE,KAAK,CAAC,GAAG;IAAE,SAAS,EAAE,IAAI,CAAA;CAAE,CAAC;AAE7G;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,OAAO,eAAe,EAAE,KAAK,CAAC,GAAG;IAAE,SAAS,EAAE,IAAI,CAAA;CAAE,CAAC"}
@@ -1,4 +1,4 @@
1
1
  /**
2
- * Oracle methods associated with the execution of an Aztec #[external("private")] function. Note that both the IMiscOracles and
3
- * IUtilityExecutionOracle are also expected to be available in these contexts.
2
+ * Oracle methods associated with the execution of an Aztec #[external("private")] function. Note that both the
3
+ * IMiscOracle and IUtilityExecutionOracle methods are also expected to be available in these contexts.
4
4
  */ export { };
@@ -0,0 +1,39 @@
1
+ import { ORACLE_REGISTRY, type RegistryParam } from './oracle_registry.js';
2
+ import { type TypeMapping } from './oracle_type_mappings.js';
3
+ /**
4
+ * Wire shapes that already-deployed contracts still call by their original oracle name, keyed by that retired name.
5
+ * New Aztec.nr calls the current name in `ORACLE_REGISTRY`; old bytecode keeps calling the name compiled into it and
6
+ * is served from here, so versioning an oracle's wire (e.g. adding return fields) stops being a breaking change.
7
+ *
8
+ * Append-only. Drop an entry only once the `ORACLE_VERSION_MAJOR` that introduced its successor is retired, since
9
+ * older contracts can no longer run against this environment.
10
+ */
11
+ export declare const LEGACY_ORACLE_REGISTRY: Record<string, LegacyOracleEntry>;
12
+ type Registry = typeof ORACLE_REGISTRY;
13
+ /**
14
+ * A legacy oracle adapter, stored under the retired oracle name that already-deployed contracts still call. It reuses
15
+ * the handler of `modernOracle` and overrides only the wire side(s) that changed; an omitted side falls back to that
16
+ * modern entry.
17
+ */
18
+ export interface LegacyOracleEntry {
19
+ /** The current oracle whose handler this reuses and whose param/return wire it inherits by default. */
20
+ modernOracle: keyof Registry;
21
+ /**
22
+ * Old param wire. `legacyType` deserializes the old wire; `mapping` bridges the deserialized legacy args to the
23
+ * modern handler's args. The mapping may be async. Omit when the param wire is unchanged.
24
+ */
25
+ params?: {
26
+ legacyType: readonly RegistryParam[];
27
+ mapping: (legacyArgs: any) => readonly unknown[] | Promise<readonly unknown[]>;
28
+ };
29
+ /**
30
+ * Old return wire. `legacyType` serializes the subset the old contract reads; `mapping` bridges the handler's
31
+ * current result to that subset's value type. Omit when the return wire is unchanged.
32
+ */
33
+ returnType?: {
34
+ legacyType: TypeMapping;
35
+ mapping: (result: any) => unknown;
36
+ };
37
+ }
38
+ export {};
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5X29yYWNsZV9yZWdpc3RyeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyYWN0X2Z1bmN0aW9uX3NpbXVsYXRvci9vcmFjbGUvbGVnYWN5X29yYWNsZV9yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLEVBRUwsZUFBZSxFQUdmLEtBQUssYUFBYSxFQUNuQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFPTCxLQUFLLFdBQVcsRUFDakIsTUFBTSwyQkFBMkIsQ0FBQztBQXNCbkM7Ozs7Ozs7R0FPRztBQUNILGVBQU8sTUFBTSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLGlCQUFpQixDQW9DcEUsQ0FBQztBQWNGLEtBQUssUUFBUSxHQUFHLE9BQU8sZUFBZSxDQUFDO0FBUXZDOzs7O0dBSUc7QUFDSCxNQUFNLFdBQVcsaUJBQWlCO0lBQ2hDLHVHQUF1RztJQUN2RyxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7SUFDN0I7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEVBQUU7UUFDUCxVQUFVLEVBQUUsU0FBUyxhQUFhLEVBQUUsQ0FBQztRQUNyQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLEVBQUUsR0FBRyxLQUFLLFNBQVMsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDLFNBQVMsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUNoRixDQUFDO0lBQ0Y7OztPQUdHO0lBQ0gsVUFBVSxDQUFDLEVBQUU7UUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDO1FBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxPQUFPLENBQUE7S0FBRSxDQUFDO0NBQzdFIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy_oracle_registry.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/legacy_oracle_registry.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,eAAe,EAGf,KAAK,aAAa,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAsBnC;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAoCpE,CAAC;AAcF,KAAK,QAAQ,GAAG,OAAO,eAAe,CAAC;AAQvC;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,uGAAuG;IACvG,YAAY,EAAE,MAAM,QAAQ,CAAC;IAC7B;;;OAGG;IACH,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,SAAS,aAAa,EAAE,CAAC;QACrC,OAAO,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,SAAS,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;KAChF,CAAC;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE;QAAE,UAAU,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAA;KAAE,CAAC;CAC7E"}
@@ -0,0 +1,107 @@
1
+ /* eslint-disable camelcase */ import { MAX_NOTE_HASHES_PER_TX, PRIVATE_LOG_CIPHERTEXT_LEN, PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
+ import { computeFeeJuiceMessageNullifier } from '@aztec/stdlib/messaging';
3
+ import { Option } from '../noir-structs/option.js';
4
+ import { AZTEC_ADDRESS, EPHEMERAL_ARRAY, FIELD, FIXED_BOUNDED_VEC, STRUCT, TX_HASH } from './oracle_type_mappings.js';
5
+ const LEGACY_LOG_RETRIEVAL_RESPONSE = STRUCT([
6
+ {
7
+ name: 'logPayload',
8
+ type: FIXED_BOUNDED_VEC(FIELD, PRIVATE_LOG_CIPHERTEXT_LEN)
9
+ },
10
+ {
11
+ name: 'txHash',
12
+ type: TX_HASH
13
+ },
14
+ {
15
+ name: 'uniqueNoteHashesInTx',
16
+ type: FIXED_BOUNDED_VEC(FIELD, MAX_NOTE_HASHES_PER_TX)
17
+ },
18
+ {
19
+ name: 'firstNullifierInTx',
20
+ type: FIELD
21
+ }
22
+ ]);
23
+ // Block-less transaction context: the prefix of `ResolvedTx`'s wire carried by the original `getPendingTaggedLogs`
24
+ // oracle. Known as `MessageContext` in the Aztec.nr versions that call that oracle.
25
+ const LEGACY_MESSAGE_CONTEXT = STRUCT([
26
+ {
27
+ name: 'txHash',
28
+ type: TX_HASH
29
+ },
30
+ {
31
+ name: 'uniqueNoteHashesInTx',
32
+ type: FIXED_BOUNDED_VEC(FIELD, MAX_NOTE_HASHES_PER_TX)
33
+ },
34
+ {
35
+ name: 'firstNullifierInTx',
36
+ type: FIELD
37
+ }
38
+ ]);
39
+ const LEGACY_PENDING_TAGGED_LOG = STRUCT([
40
+ {
41
+ name: 'log',
42
+ type: FIXED_BOUNDED_VEC(FIELD, PRIVATE_LOG_SIZE_IN_FIELDS)
43
+ },
44
+ {
45
+ name: 'context',
46
+ type: LEGACY_MESSAGE_CONTEXT
47
+ }
48
+ ]);
49
+ /**
50
+ * Wire shapes that already-deployed contracts still call by their original oracle name, keyed by that retired name.
51
+ * New Aztec.nr calls the current name in `ORACLE_REGISTRY`; old bytecode keeps calling the name compiled into it and
52
+ * is served from here, so versioning an oracle's wire (e.g. adding return fields) stops being a breaking change.
53
+ *
54
+ * Append-only. Drop an entry only once the `ORACLE_VERSION_MAJOR` that introduced its successor is retired, since
55
+ * older contracts can no longer run against this environment.
56
+ */ export const LEGACY_ORACLE_REGISTRY = {
57
+ aztec_utl_getL1ToL2MembershipWitness: legacyOracle({
58
+ modernOracle: 'aztec_utl_getL1ToL2MembershipWitnessV2',
59
+ // The old wire passed the contract address and secret, the modern oracle takes the unsiloed nullifier (plus the
60
+ // address to silo it with) instead. We derive it here so already-deployed contracts that still emit the old call
61
+ // keep working.
62
+ //
63
+ // This is the fee juice message nullifier derivation: only contracts using that scheme call this retired oracle.
64
+ params: {
65
+ legacyType: [
66
+ {
67
+ name: 'contractAddress',
68
+ type: AZTEC_ADDRESS
69
+ },
70
+ {
71
+ name: 'messageHash',
72
+ type: FIELD
73
+ },
74
+ {
75
+ name: 'secret',
76
+ type: FIELD
77
+ }
78
+ ],
79
+ mapping: async ([contractAddress, messageHash, secret])=>[
80
+ messageHash,
81
+ Option.some({
82
+ contractAddress,
83
+ nullifier: await computeFeeJuiceMessageNullifier(messageHash, secret)
84
+ })
85
+ ]
86
+ }
87
+ }),
88
+ aztec_utl_getLogsByTag: legacyOracle({
89
+ modernOracle: 'aztec_utl_getLogsByTagV2',
90
+ returnType: {
91
+ legacyType: EPHEMERAL_ARRAY(EPHEMERAL_ARRAY(LEGACY_LOG_RETRIEVAL_RESPONSE)),
92
+ // We can map this directly, since the new type is a superset of the old type
93
+ mapping: (result)=>result
94
+ }
95
+ }),
96
+ aztec_utl_getPendingTaggedLogs: legacyOracle({
97
+ modernOracle: 'aztec_utl_getPendingTaggedLogsV2',
98
+ returnType: {
99
+ legacyType: EPHEMERAL_ARRAY(LEGACY_PENDING_TAGGED_LOG),
100
+ // We can map this directly, since `ResolvedTx` carries the legacy context's fields under the same names
101
+ mapping: (result)=>result
102
+ }
103
+ })
104
+ };
105
+ function legacyOracle(entry) {
106
+ return entry;
107
+ }
@@ -1,19 +1,8 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
1
  import type { SiblingPath } from '@aztec/foundation/trees';
3
- export declare class MessageLoadOracleInputs<N extends number> {
2
+ export type MessageLoadOracleInputs<N extends number> = {
4
3
  /** The index of the message commitment in the merkle tree. */
5
4
  index: bigint;
6
5
  /** The path in the merkle tree to the message. */
7
6
  siblingPath: SiblingPath<N>;
8
- constructor(
9
- /** The index of the message commitment in the merkle tree. */
10
- index: bigint,
11
- /** The path in the merkle tree to the message. */
12
- siblingPath: SiblingPath<N>);
13
- toFields(): Fr[];
14
- /**
15
- * Returns a representation of the public data witness as expected by intrinsic Noir deserialization.
16
- */
17
- toNoirRepresentation(): (string | string[])[];
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZV9sb2FkX29yYWNsZV9pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdF9mdW5jdGlvbl9zaW11bGF0b3Ivb3JhY2xlL21lc3NhZ2VfbG9hZF9vcmFjbGVfaW5wdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUUzRCxxQkFBYSx1QkFBdUIsQ0FBQyxDQUFDLFNBQVMsTUFBTTtJQUVqRCw4REFBOEQ7SUFDdkQsS0FBSyxFQUFFLE1BQU07SUFDcEIsa0RBQWtEO0lBQzNDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBSnBDO0lBQ0UsOERBQThEO0lBQ3ZELEtBQUssRUFBRSxNQUFNO0lBQ3BCLGtEQUFrRDtJQUMzQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUNoQztJQUVKLFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVEOztPQUVHO0lBQ0ksb0JBQW9CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUduRDtDQUNGIn0=
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZV9sb2FkX29yYWNsZV9pbnB1dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdF9mdW5jdGlvbl9zaW11bGF0b3Ivb3JhY2xlL21lc3NhZ2VfbG9hZF9vcmFjbGVfaW5wdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTNELE1BQU0sTUFBTSx1QkFBdUIsQ0FBQyxDQUFDLFNBQVMsTUFBTSxJQUFJO0lBQ3RELDhEQUE4RDtJQUM5RCxLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2Qsa0RBQWtEO0lBQ2xELFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDN0IsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"message_load_oracle_inputs.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/message_load_oracle_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qBAAa,uBAAuB,CAAC,CAAC,SAAS,MAAM;IAEjD,8DAA8D;IACvD,KAAK,EAAE,MAAM;IACpB,kDAAkD;IAC3C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAJpC;IACE,8DAA8D;IACvD,KAAK,EAAE,MAAM;IACpB,kDAAkD;IAC3C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,EAChC;IAEJ,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED;;OAEG;IACI,oBAAoB,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAGnD;CACF"}
1
+ {"version":3,"file":"message_load_oracle_inputs.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/message_load_oracle_inputs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,MAAM,IAAI;IACtD,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC"}
@@ -1,24 +1 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- export class MessageLoadOracleInputs {
3
- index;
4
- siblingPath;
5
- constructor(/** The index of the message commitment in the merkle tree. */ index, /** The path in the merkle tree to the message. */ siblingPath){
6
- this.index = index;
7
- this.siblingPath = siblingPath;
8
- }
9
- toFields() {
10
- return [
11
- new Fr(this.index),
12
- ...this.siblingPath.toFields()
13
- ];
14
- }
15
- /**
16
- * Returns a representation of the public data witness as expected by intrinsic Noir deserialization.
17
- */ toNoirRepresentation() {
18
- // TODO(#12874): remove the stupid as string conversion by modifying ForeignCallOutput type in acvm.js
19
- return [
20
- new Fr(this.index).toString(),
21
- this.siblingPath.toFields().map((fr)=>fr.toString())
22
- ];
23
- }
24
- }
1
+ export { };
@@ -24,5 +24,5 @@ export declare function packAsHintedNote({ contractAddress, owner, randomness, s
24
24
  noteNonce: Fr;
25
25
  isPending: boolean;
26
26
  note: Note;
27
- }): (AztecAddress | Fr)[];
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZV9wYWNraW5nX3V0aWxzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJhY3RfZnVuY3Rpb25fc2ltdWxhdG9yL29yYWNsZS9ub3RlX3BhY2tpbmdfdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBaUIvQzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FBQyxFQUMvQixlQUFlLEVBQ2YsS0FBSyxFQUNMLFVBQVUsRUFDVixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLEVBQ0wsRUFBRTtJQUNELGVBQWUsRUFBRSxZQUFZLENBQUM7SUFDOUIsS0FBSyxFQUFFLFlBQVksQ0FBQztJQUNwQixVQUFVLEVBQUUsRUFBRSxDQUFDO0lBQ2YsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUNoQixTQUFTLEVBQUUsRUFBRSxDQUFDO0lBQ2QsU0FBUyxFQUFFLE9BQU8sQ0FBQztJQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDO0NBQ1oseUJBaUJBIn0=
27
+ }): Fr[];
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZV9wYWNraW5nX3V0aWxzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJhY3RfZnVuY3Rpb25fc2ltdWxhdG9yL29yYWNsZS9ub3RlX3BhY2tpbmdfdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBaUIvQzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FBQyxFQUMvQixlQUFlLEVBQ2YsS0FBSyxFQUNMLFVBQVUsRUFDVixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLEVBQ0wsRUFBRTtJQUNELGVBQWUsRUFBRSxZQUFZLENBQUM7SUFDOUIsS0FBSyxFQUFFLFlBQVksQ0FBQztJQUNwQixVQUFVLEVBQUUsRUFBRSxDQUFDO0lBQ2YsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUNoQixTQUFTLEVBQUUsRUFBRSxDQUFDO0lBQ2QsU0FBUyxFQUFFLE9BQU8sQ0FBQztJQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDO0NBQ1osR0FBRyxFQUFFLEVBQUUsQ0FpQlAifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"note_packing_utils.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/note_packing_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAiB/C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,eAAe,EACf,KAAK,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,IAAI,EACL,EAAE;IACD,eAAe,EAAE,YAAY,CAAC;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,EAAE,CAAC;IACf,WAAW,EAAE,EAAE,CAAC;IAChB,SAAS,EAAE,EAAE,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ,yBAiBA"}
1
+ {"version":3,"file":"note_packing_utils.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/note_packing_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAiB/C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,eAAe,EACf,KAAK,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,IAAI,EACL,EAAE;IACD,eAAe,EAAE,YAAY,CAAC;IAC9B,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,EAAE,CAAC;IACf,WAAW,EAAE,EAAE,CAAC;IAChB,SAAS,EAAE,EAAE,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,IAAI,CAAC;CACZ,GAAG,EAAE,EAAE,CAiBP"}
@@ -44,8 +44,8 @@ function fromRawData(nonzeroNoteHashCounter, maybeNoteNonce) {
44
44
  // Pack in order: note, contract_address, owner, randomness, storage_slot, metadata (stage, maybe_note_nonce)
45
45
  return [
46
46
  ...note.items,
47
- contractAddress,
48
- owner,
47
+ contractAddress.toField(),
48
+ owner.toField(),
49
49
  randomness,
50
50
  storageSlot,
51
51
  new Fr(noteMetadata.stage),
@@ -0,0 +1,139 @@
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import type { UnsiloedMessageNullifier } from '@aztec/stdlib/messaging';
3
+ import { type InputSlot, type MaybePromise, type OutputSlot, type TypeMapping } from './oracle_type_mappings.js';
4
+ export { ARRAY, AZTEC_ADDRESS, BIGINT, BLOCK_NUMBER, BOOL, BOUNDED_VEC, U8, CONTRACT_CLASS_LOG, DELIVERY_MODE, RESOLVED_TAGGING_STRATEGY, EPHEMERAL_ARRAY, EVENT_VALIDATION_REQUEST, FIELD, FUNCTION_SELECTOR, LOG_RETRIEVAL_REQUEST, LOG_RETRIEVAL_RESPONSE, MEMBERSHIP_WITNESS, NOTE_VALIDATION_REQUEST, OPTION, PENDING_TAGGED_LOG, POINT, PROVIDED_SECRET, RESOLVED_TX, STR, U32, slotsOf, type InputSlot, type MaybePromise, type OutputSlot, type SlotShape, type TypeMapping, } from './oracle_type_mappings.js';
5
+ export declare const ORACLE_REGISTRY: {
6
+ aztec_misc_assertCompatibleOracleVersion: OracleRegistryEntry<[NamedValue<"major", number>, NamedValue<"minor", number>], any>;
7
+ aztec_misc_getRandomField: OracleRegistryEntry<NamedValue<string, any>[], Fr>;
8
+ aztec_misc_log: OracleRegistryEntry<[NamedValue<"level", number>, NamedValue<"message", string>, NamedValue<"fieldsSize", number>, NamedValue<"fields", Fr[]>], any>;
9
+ aztec_utl_getUtilityContext: OracleRegistryEntry<NamedValue<string, any>[], import("../index.js").UtilityContext>;
10
+ aztec_utl_getKeyValidationRequest: OracleRegistryEntry<[NamedValue<"pkMHash", Fr>, NamedValue<"keyIndex", Fr>], import("@aztec/stdlib/kernel").KeyValidationRequest>;
11
+ aztec_utl_getContractInstance: OracleRegistryEntry<[NamedValue<"address", import("@aztec/stdlib/aztec-address").AztecAddress>], import("./oracle_type_mappings.js").ContractInstancePreimage>;
12
+ aztec_utl_getNoteHashMembershipWitness: OracleRegistryEntry<[NamedValue<"anchorBlockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"noteHash", Fr>], import("./oracle_type_mappings.js").MembershipWitness<42>>;
13
+ aztec_utl_getBlockHashMembershipWitness: OracleRegistryEntry<[NamedValue<"anchorBlockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"blockHash", import("./oracle_type_mappings.js").BlockHash>], import("../index.js").Option<import("./oracle_type_mappings.js").MembershipWitness<30>>>;
14
+ aztec_utl_areBlockHashesInArchive: OracleRegistryEntry<[NamedValue<"anchorBlockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"blockHashes", import("../index.js").EphemeralArray<import("./oracle_type_mappings.js").BlockHash>>], import("../index.js").EphemeralArray<boolean>>;
15
+ aztec_utl_getNullifierMembershipWitness: OracleRegistryEntry<[NamedValue<"blockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"nullifier", Fr>], import("./oracle_type_mappings.js").NullifierMembershipWitness>;
16
+ aztec_utl_getLowNullifierMembershipWitness: OracleRegistryEntry<[NamedValue<"blockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"nullifier", Fr>], import("./oracle_type_mappings.js").NullifierMembershipWitness>;
17
+ aztec_utl_getPublicDataWitness: OracleRegistryEntry<[NamedValue<"blockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"leafSlot", Fr>], import("./oracle_type_mappings.js").PublicDataWitness>;
18
+ aztec_utl_getBlockHeader: OracleRegistryEntry<[NamedValue<"blockNumber", import("@aztec/foundation/branded-types").BlockNumber>], import("./oracle_type_mappings.js").BlockHeader>;
19
+ aztec_utl_getAuthWitness: OracleRegistryEntry<[NamedValue<"messageHash", Fr>], Fr[]>;
20
+ aztec_utl_getPublicKeysAndPartialAddress: OracleRegistryEntry<[NamedValue<"address", import("@aztec/stdlib/aztec-address").AztecAddress>], import("../index.js").Option<{
21
+ publicKeys: import("@aztec/stdlib/keys").PublicKeys;
22
+ partialAddress: Fr;
23
+ }>>;
24
+ aztec_utl_doesNullifierExist: OracleRegistryEntry<[NamedValue<"innerNullifier", Fr>], boolean>;
25
+ aztec_utl_getL1ToL2MembershipWitnessV2: OracleRegistryEntry<[NamedValue<"messageHash", Fr>, NamedValue<"nullifier", import("../index.js").Option<UnsiloedMessageNullifier>>], import("./message_load_oracle_inputs.js").MessageLoadOracleInputs<36>>;
26
+ aztec_utl_getFromPublicStorage: OracleRegistryEntry<[NamedValue<"blockHash", import("./oracle_type_mappings.js").BlockHash>, NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"startStorageSlot", Fr>, NamedValue<"numberOfElements", number>], Fr[]>;
27
+ aztec_utl_getNotes: OracleRegistryEntry<[NamedValue<"owner", import("../index.js").Option<import("@aztec/stdlib/aztec-address").AztecAddress>>, NamedValue<"storageSlot", Fr>, NamedValue<"numSelects", number>, NamedValue<"selectByIndexes", number[]>, NamedValue<"selectByOffsets", number[]>, NamedValue<"selectByLengths", number[]>, NamedValue<"selectValues", Fr[]>, NamedValue<"selectComparators", number[]>, NamedValue<"sortByIndexes", number[]>, NamedValue<"sortByOffsets", number[]>, NamedValue<"sortByLengths", number[]>, NamedValue<"sortOrder", number[]>, NamedValue<"limit", number>, NamedValue<"offset", number>, NamedValue<"status", number>, NamedValue<"maxNotes", number>, NamedValue<"packedHintedNoteLength", number>], import("../index.js").BoundedVec<import("../index.js").NoteData>>;
28
+ aztec_utl_getPendingTaggedLogsV2: OracleRegistryEntry<[NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"providedSecrets", import("../index.js").EphemeralArray<import("../index.js").ProvidedSecret>>], import("../index.js").EphemeralArray<import("./oracle_type_mappings.js").PendingTaggedLog>>;
29
+ aztec_utl_validateAndStoreEnqueuedNotesAndEvents: OracleRegistryEntry<[NamedValue<"noteValidationRequests", import("../index.js").EphemeralArray<import("../index.js").NoteValidationRequest>>, NamedValue<"eventValidationRequests", import("../index.js").EphemeralArray<import("../index.js").EventValidationRequest>>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
30
+ aztec_utl_getLogsByTagV2: OracleRegistryEntry<[NamedValue<"requests", import("../index.js").EphemeralArray<import("../index.js").LogRetrievalRequest>>], import("../index.js").EphemeralArray<import("../index.js").EphemeralArray<import("../index.js").LogRetrievalResponse>>>;
31
+ aztec_utl_getResolvedTxs: OracleRegistryEntry<[NamedValue<"requests", import("../index.js").EphemeralArray<Fr>>], import("../index.js").EphemeralArray<import("../index.js").Option<import("../index.js").ResolvedTx>>>;
32
+ aztec_utl_getTxEffect: OracleRegistryEntry<[NamedValue<"txHash", import("@aztec/stdlib/tx/tx-hash").TxHash>], import("../index.js").Option<import("../index.js").TxEffectData>>;
33
+ aztec_utl_getTxEffects: OracleRegistryEntry<[NamedValue<"txHashes", import("../index.js").EphemeralArray<import("@aztec/stdlib/tx/tx-hash").TxHash>>], import("../index.js").EphemeralArray<import("../index.js").Option<import("../index.js").TxEffectData>>>;
34
+ aztec_utl_setCapsule: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"slot", Fr>, NamedValue<"capsule", Fr[]>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
35
+ aztec_utl_getCapsule: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"slot", Fr>, NamedValue<"tSize", number>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], import("../index.js").Option<Fr[]>>;
36
+ aztec_utl_deleteCapsule: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"slot", Fr>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
37
+ aztec_utl_copyCapsule: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"srcSlot", Fr>, NamedValue<"dstSlot", Fr>, NamedValue<"numEntries", number>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
38
+ aztec_utl_decryptAes128: OracleRegistryEntry<[NamedValue<"ciphertext", import("../index.js").BoundedVec<number>>, NamedValue<"iv", number[]>, NamedValue<"symKey", number[]>], import("../index.js").Option<import("../index.js").BoundedVec<number>>>;
39
+ aztec_utl_getSharedSecrets: OracleRegistryEntry<[NamedValue<"address", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"ephPks", import("../index.js").EphemeralArray<import("../index.js").EmbeddedCurvePoint>>, NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>], import("../index.js").EphemeralArray<Fr>>;
40
+ aztec_utl_setContractSyncCacheInvalid: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"scopes", import("../index.js").BoundedVec<import("@aztec/stdlib/aztec-address").AztecAddress>>], any>;
41
+ aztec_utl_emitOffchainEffect: OracleRegistryEntry<[NamedValue<"data", Fr[]>], any>;
42
+ aztec_utl_recordFact: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"factCollectionTypeId", Fr>, NamedValue<"factCollectionId", Fr>, NamedValue<"factTypeId", Fr>, NamedValue<"payload", import("../index.js").EphemeralArray<Fr>>, NamedValue<"originBlock", import("../index.js").Option<import("../../storage/index.js").OriginBlock>>], any>;
43
+ aztec_utl_deleteFactCollection: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"factCollectionTypeId", Fr>, NamedValue<"factCollectionId", Fr>], any>;
44
+ aztec_utl_getFactCollection: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"factCollectionTypeId", Fr>, NamedValue<"factCollectionId", Fr>], import("../index.js").Option<import("../index.js").FactCollection>>;
45
+ aztec_utl_getFactCollectionsByType: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"factCollectionTypeId", Fr>], import("../index.js").EphemeralArray<import("../index.js").FactCollection>>;
46
+ aztec_utl_callUtilityFunction: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"functionSelector", import("@aztec/stdlib/abi").FunctionSelector>, NamedValue<"args", Fr[]>], Fr[]>;
47
+ aztec_utl_pushEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"elements", Fr[]>], number>;
48
+ aztec_utl_popEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>], Fr[]>;
49
+ aztec_utl_getEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>], Fr[]>;
50
+ aztec_utl_setEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>, NamedValue<"elements", Fr[]>], any>;
51
+ aztec_utl_getEphemeralLen: OracleRegistryEntry<[NamedValue<"slot", Fr>], number>;
52
+ aztec_utl_removeEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>], any>;
53
+ aztec_utl_clearEphemeral: OracleRegistryEntry<[NamedValue<"slot", Fr>], any>;
54
+ aztec_utl_pushTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"elements", Fr[]>], number>;
55
+ aztec_utl_popTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>], Fr[]>;
56
+ aztec_utl_getTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>], Fr[]>;
57
+ aztec_utl_setTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>, NamedValue<"elements", Fr[]>], any>;
58
+ aztec_utl_getTransientLen: OracleRegistryEntry<[NamedValue<"slot", Fr>], number>;
59
+ aztec_utl_removeTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>, NamedValue<"index", number>], any>;
60
+ aztec_utl_clearTransient: OracleRegistryEntry<[NamedValue<"slot", Fr>], any>;
61
+ aztec_prv_setHashPreimage: OracleRegistryEntry<[NamedValue<"values", Fr[]>, NamedValue<"hash", Fr>], any>;
62
+ aztec_prv_getHashPreimage: OracleRegistryEntry<[NamedValue<"returnsHash", Fr>], Fr[]>;
63
+ aztec_prv_notifyCreatedNote: OracleRegistryEntry<[NamedValue<"owner", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"storageSlot", Fr>, NamedValue<"randomness", Fr>, NamedValue<"noteTypeId", import("@aztec/stdlib/abi").NoteSelector>, NamedValue<"note", Fr[]>, NamedValue<"noteHash", Fr>, NamedValue<"counter", number>], any>;
64
+ aztec_prv_notifyNullifiedNote: OracleRegistryEntry<[NamedValue<"innerNullifier", Fr>, NamedValue<"noteHash", Fr>, NamedValue<"counter", number>], any>;
65
+ aztec_prv_notifyCreatedNullifier: OracleRegistryEntry<[NamedValue<"innerNullifier", Fr>], any>;
66
+ aztec_prv_isNullifierPending: OracleRegistryEntry<[NamedValue<"innerNullifier", Fr>, NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>], boolean>;
67
+ aztec_prv_notifyCreatedContractClassLog: OracleRegistryEntry<[NamedValue<"log", import("../index.js").ContractClassLogData>, NamedValue<"counter", number>], any>;
68
+ aztec_prv_callPrivateFunction: OracleRegistryEntry<[NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"functionSelector", import("@aztec/stdlib/abi").FunctionSelector>, NamedValue<"argsHash", Fr>, NamedValue<"sideEffectCounter", number>, NamedValue<"isStaticCall", boolean>], {
69
+ endSideEffectCounter: Fr;
70
+ returnsHash: Fr;
71
+ }>;
72
+ aztec_prv_assertValidPublicCalldata: OracleRegistryEntry<[NamedValue<"calldataHash", Fr>], any>;
73
+ aztec_prv_notifyRevertiblePhaseStart: OracleRegistryEntry<[NamedValue<"minRevertibleSideEffectCounter", number>], any>;
74
+ aztec_prv_isExecutionInRevertiblePhase: OracleRegistryEntry<[NamedValue<"sideEffectCounter", number>], boolean>;
75
+ aztec_prv_getAppTaggingSecret: OracleRegistryEntry<[NamedValue<"sender", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"recipient", import("@aztec/stdlib/aztec-address").AztecAddress>], import("../index.js").Option<Fr>>;
76
+ aztec_prv_getNextTaggingIndex: OracleRegistryEntry<[NamedValue<"secret", Fr>, NamedValue<"deliveryMode", import("./oracle_type_mappings.js").AppTaggingSecretKind>], number>;
77
+ aztec_prv_getSenderForTags: OracleRegistryEntry<NamedValue<string, any>[], import("../index.js").Option<import("@aztec/stdlib/aztec-address").AztecAddress>>;
78
+ aztec_prv_resolveTaggingStrategy: OracleRegistryEntry<[NamedValue<"sender", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"recipient", import("@aztec/stdlib/aztec-address").AztecAddress>, NamedValue<"deliveryMode", import("./oracle_type_mappings.js").AppTaggingSecretKind>], import("../index.js").ResolvedTaggingStrategy>;
79
+ aztec_prv_resolveCustomRequest: OracleRegistryEntry<[NamedValue<"kind", Fr>, NamedValue<"payload", Fr[]>], Fr[]>;
80
+ };
81
+ /**
82
+ * A full oracle registry entry describing param and return serialization.
83
+ *
84
+ * TDeserializedParams — the array of named pairs returned by `deserializeParams`.
85
+ * TReturnValue — the typed handler return value consumed by `serializeReturn`.
86
+ */
87
+ export interface OracleRegistryEntry<TDeserializedParams extends readonly NamedValue[] = readonly NamedValue[], TReturnValue = any> {
88
+ /** Deserialize all ACVM inputs into named pairs in positional order. */
89
+ deserializeParams(inputs: InputSlot[]): TDeserializedParams;
90
+ /** Serialize a handler return value into ACVM output slots. */
91
+ serializeReturn(result: TReturnValue): OutputSlot[];
92
+ /** The ordered named parameters with their {@link TypeMapping}s. Lets callers introspect the oracle's wire ABI. */
93
+ readonly params: readonly RegistryParam[];
94
+ /** The return {@link TypeMapping}, or `undefined` for oracles that return nothing. */
95
+ readonly returnType?: TypeMapping<TReturnValue>;
96
+ }
97
+ export declare function makeEntry<const TParams extends RegistryParam[] = [], TReturnValue = void>({ params, returnType }?: {
98
+ params?: [...TParams];
99
+ returnType?: TypeMapping<TReturnValue>;
100
+ }): OracleRegistryEntry<InferDeserializedParams<TParams>, TReturnValue>;
101
+ /** A named oracle parameter with its TypeMapping. */
102
+ export interface RegistryParam<TName extends string = string, T = any> {
103
+ name: TName;
104
+ type: TypeMapping<T>;
105
+ }
106
+ /** One named param entry from a deserializeParams result. */
107
+ export type NamedValue<TName extends string = string, TValue = any> = {
108
+ readonly name: TName;
109
+ readonly value: TValue;
110
+ };
111
+ /**
112
+ * Extracts the positional type tuple from a {@link OracleRegistryEntry.deserializeParams} result,
113
+ * stripping names to produce the handler's argument types.
114
+ *
115
+ * @example `ParamTypes<[NamedValue<'addr', AztecAddress>, NamedValue<'slot', Fr>]>` → `[AztecAddress, Fr]`
116
+ */
117
+ export type ParamTypes<T extends readonly NamedValue[]> = {
118
+ [K in keyof T]: T[K] extends NamedValue<string, infer V> ? V : never;
119
+ };
120
+ /**
121
+ * Maps a registry entry's `params` declaration to the return type of
122
+ * {@link OracleRegistryEntry.deserializeParams}: each `RegistryParam<Name, Type>` becomes a
123
+ * `NamedValue<Name, Type>` at the same position.
124
+ *
125
+ * @example `InferDeserializedParams<[RegistryParam<'addr', AztecAddress>, RegistryParam<'slot', Fr>]>`
126
+ * → `[NamedValue<'addr', AztecAddress>, NamedValue<'slot', Fr>]`
127
+ */
128
+ export type InferDeserializedParams<T extends RegistryParam[]> = {
129
+ [K in keyof T]: T[K] extends RegistryParam<infer N, infer V> ? NamedValue<N, V> : never;
130
+ };
131
+ /** Strips the `aztec_{scope}_` prefix from an oracle key to get the handler method name. */
132
+ type StripOraclePrefix<K extends string> = K extends `aztec_${string}_${infer M}` ? M : never;
133
+ /** Derives the handler function signature from a registry entry's deserialization/serialization types. */
134
+ type HandlerFn<E extends OracleRegistryEntry> = (...args: ParamTypes<ReturnType<E['deserializeParams']>>) => MaybePromise<Parameters<E['serializeReturn']>[0]>;
135
+ /** Collects all oracle handler methods for a given name prefix into a single object type. */
136
+ export type HandlersForPrefix<R extends Record<string, OracleRegistryEntry>, P extends string> = {
137
+ [K in keyof R as K extends `aztec_${P}_${string}` ? StripOraclePrefix<K & string> : never]: HandlerFn<R[K]>;
138
+ };
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JhY2xlX3JlZ2lzdHJ5LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJhY3RfZnVuY3Rpb25fc2ltdWxhdG9yL29yYWNsZS9vcmFjbGVfcmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BELE9BQU8sS0FBSyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEUsT0FBTyxFQWtCTCxLQUFLLFNBQVMsRUFNZCxLQUFLLFlBQVksRUFPakIsS0FBSyxVQUFVLEVBWWYsS0FBSyxXQUFXLEVBTWpCLE1BQU0sMkJBQTJCLENBQUM7QUFFbkMsT0FBTyxFQUNMLEtBQUssRUFDTCxhQUFhLEVBQ2IsTUFBTSxFQUNOLFlBQVksRUFDWixJQUFJLEVBQ0osV0FBVyxFQUNYLEVBQUUsRUFDRixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLHlCQUF5QixFQUN6QixlQUFlLEVBQ2Ysd0JBQXdCLEVBQ3hCLEtBQUssRUFDTCxpQkFBaUIsRUFDakIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLE1BQU0sRUFDTixrQkFBa0IsRUFDbEIsS0FBSyxFQUNMLGVBQWUsRUFDZixXQUFXLEVBQ1gsR0FBRyxFQUNILEdBQUcsRUFDSCxPQUFPLEVBQ1AsS0FBSyxTQUFTLEVBQ2QsS0FBSyxZQUFZLEVBQ2pCLEtBQUssVUFBVSxFQUNmLEtBQUssU0FBUyxFQUNkLEtBQUssV0FBVyxHQUNqQixNQUFNLDJCQUEyQixDQUFDO0FBRW5DLGVBQU8sTUFBTSxlQUFlOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FxZm1CLENBQUM7QUFJaEQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFdBQVcsbUJBQW1CLENBQ2xDLG1C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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oracle_registry.d.ts","sourceRoot":"","sources":["../../../src/contract_function_simulator/oracle/oracle_registry.ts"],"names":[],"mappings":"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"}