@aztec/pxe 0.0.1-commit.b655e406 → 0.0.1-commit.d1f2d6c

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 (388) hide show
  1. package/dest/bin/check_oracle_version.d.ts +1 -1
  2. package/dest/bin/check_oracle_version.js +105 -15
  3. package/dest/block_synchronizer/block_synchronizer.d.ts +43 -0
  4. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -0
  5. package/dest/block_synchronizer/block_synchronizer.js +147 -0
  6. package/dest/block_synchronizer/index.d.ts +2 -0
  7. package/dest/block_synchronizer/index.d.ts.map +1 -0
  8. package/dest/block_synchronizer/index.js +1 -0
  9. package/dest/config/index.d.ts +6 -12
  10. package/dest/config/index.d.ts.map +1 -1
  11. package/dest/config/index.js +24 -13
  12. package/dest/config/package_info.d.ts +1 -1
  13. package/dest/config/package_info.js +1 -1
  14. package/dest/contract_function_simulator/benchmarked_node.d.ts +9 -0
  15. package/dest/contract_function_simulator/benchmarked_node.d.ts.map +1 -0
  16. package/dest/contract_function_simulator/benchmarked_node.js +77 -0
  17. package/dest/contract_function_simulator/contract_function_simulator.d.ts +44 -16
  18. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  19. package/dest/contract_function_simulator/contract_function_simulator.js +78 -38
  20. package/dest/contract_function_simulator/execution_note_cache.d.ts +25 -14
  21. package/dest/contract_function_simulator/execution_note_cache.d.ts.map +1 -1
  22. package/dest/contract_function_simulator/execution_note_cache.js +59 -34
  23. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +2 -2
  24. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  25. package/dest/contract_function_simulator/execution_tagging_index_cache.js +1 -1
  26. package/dest/contract_function_simulator/hashed_values_cache.d.ts +2 -2
  27. package/dest/contract_function_simulator/hashed_values_cache.d.ts.map +1 -1
  28. package/dest/contract_function_simulator/index.d.ts +2 -2
  29. package/dest/contract_function_simulator/index.d.ts.map +1 -1
  30. package/dest/contract_function_simulator/index.js +1 -1
  31. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +4 -3
  32. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  33. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +5 -2
  34. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts +5 -4
  35. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.d.ts.map +1 -1
  36. package/dest/contract_function_simulator/noir-structs/log_retrieval_request.js +7 -6
  37. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +3 -3
  38. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  39. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +1 -1
  40. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +6 -4
  41. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  42. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +12 -3
  43. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts +4 -10
  44. package/dest/contract_function_simulator/noir-structs/utility_context.d.ts.map +1 -1
  45. package/dest/contract_function_simulator/noir-structs/utility_context.js +7 -18
  46. package/dest/contract_function_simulator/oracle/index.d.ts +1 -1
  47. package/dest/contract_function_simulator/oracle/interfaces.d.ts +27 -17
  48. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  49. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts +2 -2
  50. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.d.ts.map +1 -1
  51. package/dest/contract_function_simulator/oracle/message_load_oracle_inputs.js +1 -1
  52. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts +14 -8
  53. package/dest/contract_function_simulator/oracle/note_packing_utils.d.ts.map +1 -1
  54. package/dest/contract_function_simulator/oracle/note_packing_utils.js +16 -11
  55. package/dest/contract_function_simulator/oracle/oracle.d.ts +12 -9
  56. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  57. package/dest/contract_function_simulator/oracle/oracle.js +67 -39
  58. package/dest/contract_function_simulator/oracle/private_execution.d.ts +10 -16
  59. package/dest/contract_function_simulator/oracle/private_execution.d.ts.map +1 -1
  60. package/dest/contract_function_simulator/oracle/private_execution.js +28 -18
  61. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +37 -33
  62. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  63. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +59 -49
  64. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +76 -25
  65. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  66. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +171 -64
  67. package/dest/contract_function_simulator/pick_notes.d.ts +2 -2
  68. package/dest/contract_function_simulator/pick_notes.d.ts.map +1 -1
  69. package/dest/contract_function_simulator/pick_notes.js +1 -1
  70. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts +4 -4
  71. package/dest/contract_function_simulator/proxied_contract_data_source.d.ts.map +1 -1
  72. package/dest/contract_function_simulator/proxied_contract_data_source.js +23 -5
  73. package/dest/debug/pxe_debug_utils.d.ts +31 -0
  74. package/dest/debug/pxe_debug_utils.d.ts.map +1 -0
  75. package/dest/debug/pxe_debug_utils.js +38 -0
  76. package/dest/entrypoints/client/bundle/index.d.ts +1 -2
  77. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  78. package/dest/entrypoints/client/bundle/index.js +0 -1
  79. package/dest/entrypoints/client/bundle/utils.d.ts +1 -1
  80. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  81. package/dest/entrypoints/client/bundle/utils.js +13 -4
  82. package/dest/entrypoints/client/lazy/index.d.ts +1 -2
  83. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  84. package/dest/entrypoints/client/lazy/index.js +0 -1
  85. package/dest/entrypoints/client/lazy/utils.d.ts +1 -1
  86. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  87. package/dest/entrypoints/client/lazy/utils.js +13 -4
  88. package/dest/entrypoints/pxe_creation_options.d.ts +5 -2
  89. package/dest/entrypoints/pxe_creation_options.d.ts.map +1 -1
  90. package/dest/entrypoints/server/index.d.ts +3 -2
  91. package/dest/entrypoints/server/index.d.ts.map +1 -1
  92. package/dest/entrypoints/server/index.js +2 -1
  93. package/dest/entrypoints/server/utils.d.ts +1 -1
  94. package/dest/entrypoints/server/utils.d.ts.map +1 -1
  95. package/dest/entrypoints/server/utils.js +13 -20
  96. package/dest/error_enriching.d.ts +4 -4
  97. package/dest/error_enriching.d.ts.map +1 -1
  98. package/dest/error_enriching.js +6 -6
  99. package/dest/events/event_service.d.ts +16 -0
  100. package/dest/events/event_service.d.ts.map +1 -0
  101. package/dest/events/event_service.js +45 -0
  102. package/dest/events/index.d.ts +2 -0
  103. package/dest/events/index.d.ts.map +1 -0
  104. package/dest/events/index.js +1 -0
  105. package/dest/events/private_event_filter_validator.d.ts +9 -0
  106. package/dest/events/private_event_filter_validator.d.ts.map +1 -0
  107. package/dest/events/private_event_filter_validator.js +38 -0
  108. package/dest/job_coordinator/job_coordinator.d.ts +74 -0
  109. package/dest/job_coordinator/job_coordinator.d.ts.map +1 -0
  110. package/dest/job_coordinator/job_coordinator.js +93 -0
  111. package/dest/logs/log_service.d.ts +27 -0
  112. package/dest/logs/log_service.d.ts.map +1 -0
  113. package/dest/logs/log_service.js +129 -0
  114. package/dest/notes/index.d.ts +2 -0
  115. package/dest/notes/index.d.ts.map +1 -0
  116. package/dest/notes/index.js +1 -0
  117. package/dest/notes/note_service.d.ts +49 -0
  118. package/dest/notes/note_service.d.ts.map +1 -0
  119. package/dest/notes/note_service.js +149 -0
  120. package/dest/oracle_version.d.ts +3 -3
  121. package/dest/oracle_version.d.ts.map +1 -1
  122. package/dest/oracle_version.js +4 -3
  123. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +1 -1
  124. package/dest/private_kernel/hints/index.d.ts +2 -2
  125. package/dest/private_kernel/hints/index.d.ts.map +1 -1
  126. package/dest/private_kernel/hints/index.js +1 -1
  127. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +28 -0
  128. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -0
  129. package/dest/private_kernel/hints/{build_private_kernel_reset_private_inputs.js → private_kernel_reset_private_inputs_builder.js} +19 -13
  130. package/dest/private_kernel/index.d.ts +1 -1
  131. package/dest/private_kernel/private_kernel_execution_prover.d.ts +1 -1
  132. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  133. package/dest/private_kernel/private_kernel_execution_prover.js +15 -15
  134. package/dest/private_kernel/private_kernel_oracle.d.ts +26 -29
  135. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  136. package/dest/private_kernel/private_kernel_oracle.js +90 -2
  137. package/dest/pxe.d.ts +54 -83
  138. package/dest/pxe.d.ts.map +1 -1
  139. package/dest/pxe.js +193 -241
  140. package/dest/storage/address_store/address_store.d.ts +11 -0
  141. package/dest/storage/address_store/address_store.d.ts.map +1 -0
  142. package/dest/storage/{address_data_provider/address_data_provider.js → address_store/address_store.js} +1 -1
  143. package/dest/storage/address_store/index.d.ts +2 -0
  144. package/dest/storage/address_store/index.d.ts.map +1 -0
  145. package/dest/storage/address_store/index.js +1 -0
  146. package/dest/storage/anchor_block_store/anchor_block_store.d.ts +9 -0
  147. package/dest/storage/anchor_block_store/anchor_block_store.d.ts.map +1 -0
  148. package/dest/storage/{sync_data_provider/sync_data_provider.js → anchor_block_store/anchor_block_store.js} +2 -9
  149. package/dest/storage/anchor_block_store/index.d.ts +2 -0
  150. package/dest/storage/anchor_block_store/index.d.ts.map +1 -0
  151. package/dest/storage/anchor_block_store/index.js +1 -0
  152. package/dest/storage/capsule_store/capsule_store.d.ts +72 -0
  153. package/dest/storage/capsule_store/capsule_store.d.ts.map +1 -0
  154. package/dest/storage/capsule_store/capsule_store.js +255 -0
  155. package/dest/storage/capsule_store/index.d.ts +2 -0
  156. package/dest/storage/capsule_store/index.d.ts.map +1 -0
  157. package/dest/storage/capsule_store/index.js +1 -0
  158. package/dest/storage/{contract_data_provider/contract_data_provider.d.ts → contract_store/contract_store.d.ts} +8 -15
  159. package/dest/storage/contract_store/contract_store.d.ts.map +1 -0
  160. package/dest/storage/{contract_data_provider/contract_data_provider.js → contract_store/contract_store.js} +46 -15
  161. package/dest/storage/contract_store/index.d.ts +2 -0
  162. package/dest/storage/contract_store/index.d.ts.map +1 -0
  163. package/dest/storage/contract_store/index.js +1 -0
  164. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.d.ts +1 -1
  165. package/dest/storage/contract_store/private_functions_tree.d.ts.map +1 -0
  166. package/dest/storage/{contract_data_provider → contract_store}/private_functions_tree.js +1 -1
  167. package/dest/storage/index.d.ts +8 -8
  168. package/dest/storage/index.d.ts.map +1 -1
  169. package/dest/storage/index.js +7 -7
  170. package/dest/storage/metadata.d.ts +1 -1
  171. package/dest/storage/note_store/index.d.ts +3 -0
  172. package/dest/storage/note_store/index.d.ts.map +1 -0
  173. package/dest/storage/note_store/index.js +2 -0
  174. package/dest/storage/note_store/note_store.d.ts +73 -0
  175. package/dest/storage/note_store/note_store.d.ts.map +1 -0
  176. package/dest/storage/note_store/note_store.js +303 -0
  177. package/dest/storage/note_store/stored_note.d.ts +16 -0
  178. package/dest/storage/note_store/stored_note.d.ts.map +1 -0
  179. package/dest/storage/note_store/stored_note.js +43 -0
  180. package/dest/storage/private_event_store/private_event_store.d.ts +91 -0
  181. package/dest/storage/private_event_store/private_event_store.d.ts.map +1 -0
  182. package/dest/storage/private_event_store/private_event_store.js +250 -0
  183. package/dest/storage/private_event_store/stored_private_event.d.ts +23 -0
  184. package/dest/storage/private_event_store/stored_private_event.d.ts.map +1 -0
  185. package/dest/storage/private_event_store/stored_private_event.js +56 -0
  186. package/dest/storage/tagging_store/index.d.ts +4 -0
  187. package/dest/storage/tagging_store/index.d.ts.map +1 -0
  188. package/dest/storage/tagging_store/index.js +3 -0
  189. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +28 -0
  190. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -0
  191. package/dest/storage/tagging_store/recipient_tagging_store.js +99 -0
  192. package/dest/storage/tagging_store/sender_address_book_store.d.ts +14 -0
  193. package/dest/storage/tagging_store/sender_address_book_store.d.ts.map +1 -0
  194. package/dest/storage/tagging_store/sender_address_book_store.js +30 -0
  195. package/dest/storage/tagging_store/sender_tagging_store.d.ts +77 -0
  196. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -0
  197. package/dest/storage/tagging_store/sender_tagging_store.js +278 -0
  198. package/dest/tagging/constants.d.ts +2 -2
  199. package/dest/tagging/constants.d.ts.map +1 -1
  200. package/dest/tagging/constants.js +10 -2
  201. package/dest/tagging/get_all_logs_by_tags.d.ts +24 -0
  202. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -0
  203. package/dest/tagging/get_all_logs_by_tags.js +46 -0
  204. package/dest/tagging/index.d.ts +16 -6
  205. package/dest/tagging/index.d.ts.map +1 -1
  206. package/dest/tagging/index.js +15 -5
  207. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +15 -0
  208. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -0
  209. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +99 -0
  210. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts +12 -0
  211. package/dest/tagging/recipient_sync/utils/find_highest_indexes.d.ts.map +1 -0
  212. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +20 -0
  213. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +15 -0
  214. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -0
  215. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +32 -0
  216. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +21 -0
  217. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -0
  218. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +74 -0
  219. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts +11 -0
  220. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.d.ts.map +1 -0
  221. package/dest/tagging/sender_sync/utils/get_status_change_of_pending.js +29 -0
  222. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +21 -0
  223. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -0
  224. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +60 -0
  225. package/package.json +20 -19
  226. package/src/bin/check_oracle_version.ts +130 -20
  227. package/src/block_synchronizer/block_synchronizer.ts +174 -0
  228. package/src/block_synchronizer/index.ts +1 -0
  229. package/src/config/index.ts +24 -25
  230. package/src/config/package_info.ts +1 -1
  231. package/src/contract_function_simulator/benchmarked_node.ts +103 -0
  232. package/src/contract_function_simulator/contract_function_simulator.ts +127 -42
  233. package/src/contract_function_simulator/execution_note_cache.ts +58 -28
  234. package/src/contract_function_simulator/execution_tagging_index_cache.ts +1 -1
  235. package/src/contract_function_simulator/hashed_values_cache.ts +1 -1
  236. package/src/contract_function_simulator/index.ts +1 -1
  237. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +5 -1
  238. package/src/contract_function_simulator/noir-structs/log_retrieval_request.ts +6 -5
  239. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +2 -2
  240. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +14 -2
  241. package/src/contract_function_simulator/noir-structs/utility_context.ts +6 -25
  242. package/src/contract_function_simulator/oracle/interfaces.ts +40 -15
  243. package/src/contract_function_simulator/oracle/message_load_oracle_inputs.ts +1 -1
  244. package/src/contract_function_simulator/oracle/note_packing_utils.ts +30 -14
  245. package/src/contract_function_simulator/oracle/oracle.ts +86 -41
  246. package/src/contract_function_simulator/oracle/private_execution.ts +42 -30
  247. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +139 -60
  248. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +260 -70
  249. package/src/contract_function_simulator/pick_notes.ts +1 -1
  250. package/src/contract_function_simulator/proxied_contract_data_source.ts +24 -7
  251. package/src/debug/pxe_debug_utils.ts +49 -0
  252. package/src/entrypoints/client/bundle/index.ts +0 -1
  253. package/src/entrypoints/client/bundle/utils.ts +10 -4
  254. package/src/entrypoints/client/lazy/index.ts +0 -1
  255. package/src/entrypoints/client/lazy/utils.ts +10 -5
  256. package/src/entrypoints/pxe_creation_options.ts +4 -1
  257. package/src/entrypoints/server/index.ts +2 -1
  258. package/src/entrypoints/server/utils.ts +13 -31
  259. package/src/error_enriching.ts +7 -15
  260. package/src/events/event_service.ts +73 -0
  261. package/src/events/index.ts +1 -0
  262. package/src/events/private_event_filter_validator.ts +46 -0
  263. package/src/job_coordinator/job_coordinator.ts +149 -0
  264. package/src/logs/log_service.ts +221 -0
  265. package/src/notes/index.ts +1 -0
  266. package/src/notes/note_service.ts +198 -0
  267. package/src/oracle_version.ts +4 -3
  268. package/src/private_kernel/hints/index.ts +1 -1
  269. package/src/private_kernel/hints/{build_private_kernel_reset_private_inputs.ts → private_kernel_reset_private_inputs_builder.ts} +38 -31
  270. package/src/private_kernel/private_kernel_execution_prover.ts +15 -21
  271. package/src/private_kernel/private_kernel_oracle.ts +118 -37
  272. package/src/pxe.ts +263 -313
  273. package/src/storage/{address_data_provider/address_data_provider.ts → address_store/address_store.ts} +1 -1
  274. package/src/storage/address_store/index.ts +1 -0
  275. package/src/storage/{sync_data_provider/sync_data_provider.ts → anchor_block_store/anchor_block_store.ts} +2 -11
  276. package/src/storage/anchor_block_store/index.ts +1 -0
  277. package/src/storage/capsule_store/capsule_store.ts +315 -0
  278. package/src/storage/capsule_store/index.ts +1 -0
  279. package/src/storage/{contract_data_provider/contract_data_provider.ts → contract_store/contract_store.ts} +65 -20
  280. package/src/storage/contract_store/index.ts +1 -0
  281. package/src/storage/{contract_data_provider → contract_store}/private_functions_tree.ts +1 -1
  282. package/src/storage/index.ts +7 -7
  283. package/src/storage/note_store/index.ts +2 -0
  284. package/src/storage/note_store/note_store.ts +381 -0
  285. package/src/storage/note_store/stored_note.ts +48 -0
  286. package/src/storage/private_event_store/private_event_store.ts +363 -0
  287. package/src/storage/private_event_store/stored_private_event.ts +73 -0
  288. package/src/storage/tagging_store/index.ts +3 -0
  289. package/src/storage/tagging_store/recipient_tagging_store.ts +129 -0
  290. package/src/storage/tagging_store/sender_address_book_store.ts +42 -0
  291. package/src/storage/tagging_store/sender_tagging_store.ts +345 -0
  292. package/src/tagging/constants.ts +10 -2
  293. package/src/tagging/get_all_logs_by_tags.ts +68 -0
  294. package/src/tagging/index.ts +18 -5
  295. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +143 -0
  296. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +34 -0
  297. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +49 -0
  298. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +99 -0
  299. package/src/tagging/sender_sync/utils/get_status_change_of_pending.ts +36 -0
  300. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +84 -0
  301. package/dest/contract_function_simulator/execution_data_provider.d.ts +0 -274
  302. package/dest/contract_function_simulator/execution_data_provider.d.ts.map +0 -1
  303. package/dest/contract_function_simulator/execution_data_provider.js +0 -14
  304. package/dest/contract_function_simulator/proxied_node.d.ts +0 -9
  305. package/dest/contract_function_simulator/proxied_node.d.ts.map +0 -1
  306. package/dest/contract_function_simulator/proxied_node.js +0 -27
  307. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts +0 -122
  308. package/dest/contract_function_simulator/pxe_oracle_interface.d.ts.map +0 -1
  309. package/dest/contract_function_simulator/pxe_oracle_interface.js +0 -701
  310. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts +0 -28
  311. package/dest/private_kernel/hints/build_private_kernel_reset_private_inputs.d.ts.map +0 -1
  312. package/dest/private_kernel/private_kernel_oracle_impl.d.ts +0 -45
  313. package/dest/private_kernel/private_kernel_oracle_impl.d.ts.map +0 -1
  314. package/dest/private_kernel/private_kernel_oracle_impl.js +0 -86
  315. package/dest/storage/address_data_provider/address_data_provider.d.ts +0 -11
  316. package/dest/storage/address_data_provider/address_data_provider.d.ts.map +0 -1
  317. package/dest/storage/address_data_provider/index.d.ts +0 -2
  318. package/dest/storage/address_data_provider/index.d.ts.map +0 -1
  319. package/dest/storage/address_data_provider/index.js +0 -1
  320. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts +0 -25
  321. package/dest/storage/capsule_data_provider/capsule_data_provider.d.ts.map +0 -1
  322. package/dest/storage/capsule_data_provider/capsule_data_provider.js +0 -118
  323. package/dest/storage/capsule_data_provider/index.d.ts +0 -2
  324. package/dest/storage/capsule_data_provider/index.d.ts.map +0 -1
  325. package/dest/storage/capsule_data_provider/index.js +0 -1
  326. package/dest/storage/contract_data_provider/contract_data_provider.d.ts.map +0 -1
  327. package/dest/storage/contract_data_provider/index.d.ts +0 -2
  328. package/dest/storage/contract_data_provider/index.d.ts.map +0 -1
  329. package/dest/storage/contract_data_provider/index.js +0 -1
  330. package/dest/storage/contract_data_provider/private_functions_tree.d.ts.map +0 -1
  331. package/dest/storage/note_data_provider/index.d.ts +0 -3
  332. package/dest/storage/note_data_provider/index.d.ts.map +0 -1
  333. package/dest/storage/note_data_provider/index.js +0 -2
  334. package/dest/storage/note_data_provider/note_dao.d.ts +0 -100
  335. package/dest/storage/note_data_provider/note_dao.d.ts.map +0 -1
  336. package/dest/storage/note_data_provider/note_dao.js +0 -102
  337. package/dest/storage/note_data_provider/note_data_provider.d.ts +0 -83
  338. package/dest/storage/note_data_provider/note_data_provider.d.ts.map +0 -1
  339. package/dest/storage/note_data_provider/note_data_provider.js +0 -308
  340. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts +0 -43
  341. package/dest/storage/private_event_data_provider/private_event_data_provider.d.ts.map +0 -1
  342. package/dest/storage/private_event_data_provider/private_event_data_provider.js +0 -104
  343. package/dest/storage/sync_data_provider/index.d.ts +0 -2
  344. package/dest/storage/sync_data_provider/index.d.ts.map +0 -1
  345. package/dest/storage/sync_data_provider/index.js +0 -1
  346. package/dest/storage/sync_data_provider/sync_data_provider.d.ts +0 -10
  347. package/dest/storage/sync_data_provider/sync_data_provider.d.ts.map +0 -1
  348. package/dest/storage/tagging_data_provider/index.d.ts +0 -2
  349. package/dest/storage/tagging_data_provider/index.d.ts.map +0 -1
  350. package/dest/storage/tagging_data_provider/index.js +0 -1
  351. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts +0 -40
  352. package/dest/storage/tagging_data_provider/tagging_data_provider.d.ts.map +0 -1
  353. package/dest/storage/tagging_data_provider/tagging_data_provider.js +0 -89
  354. package/dest/synchronizer/index.d.ts +0 -2
  355. package/dest/synchronizer/index.d.ts.map +0 -1
  356. package/dest/synchronizer/index.js +0 -1
  357. package/dest/synchronizer/synchronizer.d.ts +0 -35
  358. package/dest/synchronizer/synchronizer.d.ts.map +0 -1
  359. package/dest/synchronizer/synchronizer.js +0 -101
  360. package/dest/tagging/siloed_tag.d.ts +0 -14
  361. package/dest/tagging/siloed_tag.d.ts.map +0 -1
  362. package/dest/tagging/siloed_tag.js +0 -20
  363. package/dest/tagging/tag.d.ts +0 -12
  364. package/dest/tagging/tag.d.ts.map +0 -1
  365. package/dest/tagging/tag.js +0 -17
  366. package/dest/tagging/utils.d.ts +0 -18
  367. package/dest/tagging/utils.d.ts.map +0 -1
  368. package/dest/tagging/utils.js +0 -24
  369. package/src/contract_function_simulator/execution_data_provider.ts +0 -343
  370. package/src/contract_function_simulator/proxied_node.ts +0 -33
  371. package/src/contract_function_simulator/pxe_oracle_interface.ts +0 -1019
  372. package/src/private_kernel/private_kernel_oracle_impl.ts +0 -132
  373. package/src/storage/address_data_provider/index.ts +0 -1
  374. package/src/storage/capsule_data_provider/capsule_data_provider.ts +0 -147
  375. package/src/storage/capsule_data_provider/index.ts +0 -1
  376. package/src/storage/contract_data_provider/index.ts +0 -1
  377. package/src/storage/note_data_provider/index.ts +0 -2
  378. package/src/storage/note_data_provider/note_dao.ts +0 -154
  379. package/src/storage/note_data_provider/note_data_provider.ts +0 -393
  380. package/src/storage/private_event_data_provider/private_event_data_provider.ts +0 -148
  381. package/src/storage/sync_data_provider/index.ts +0 -1
  382. package/src/storage/tagging_data_provider/index.ts +0 -1
  383. package/src/storage/tagging_data_provider/tagging_data_provider.ts +0 -120
  384. package/src/synchronizer/index.ts +0 -1
  385. package/src/synchronizer/synchronizer.ts +0 -120
  386. package/src/tagging/siloed_tag.ts +0 -22
  387. package/src/tagging/tag.ts +0 -16
  388. package/src/tagging/utils.ts +0 -31
@@ -1,5 +1,5 @@
1
- import { vkAsFieldsMegaHonk } from '@aztec/foundation/crypto';
2
- import { Fr } from '@aztec/foundation/fields';
1
+ import { vkAsFieldsMegaHonk } from '@aztec/foundation/crypto/keys';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { createLogger } from '@aztec/foundation/log';
4
4
  import { pushTestData } from '@aztec/foundation/testing';
5
5
  import { Timer } from '@aztec/foundation/timer';
@@ -8,9 +8,9 @@ import { ProtocolContractsList } from '@aztec/protocol-contracts';
8
8
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
9
9
  import { HidingKernelToPublicPrivateInputs, HidingKernelToRollupPrivateInputs, PaddedSideEffectAmounts, PrivateCallData, PrivateKernelCircuitPublicInputs, PrivateKernelData, PrivateKernelInitCircuitPrivateInputs, PrivateKernelInnerCircuitPrivateInputs, PrivateKernelTailCircuitPrivateInputs, PrivateVerificationKeyHints } from '@aztec/stdlib/kernel';
10
10
  import { ChonkProof } from '@aztec/stdlib/proofs';
11
- import { collectNoteHashLeafIndexMap, collectNoteHashNullifierCounterMap, getFinalMinRevertibleSideEffectCounter } from '@aztec/stdlib/tx';
11
+ import { collectNoteHashNullifierCounterMap, getFinalMinRevertibleSideEffectCounter } from '@aztec/stdlib/tx';
12
12
  import { VerificationKeyAsFields, VerificationKeyData, VkData } from '@aztec/stdlib/vks';
13
- import { PrivateKernelResetPrivateInputsBuilder } from './hints/build_private_kernel_reset_private_inputs.js';
13
+ import { PrivateKernelResetPrivateInputsBuilder } from './hints/private_kernel_reset_private_inputs_builder.js';
14
14
  const NULL_SIMULATE_OUTPUT = {
15
15
  publicInputs: PrivateKernelCircuitPublicInputs.empty(),
16
16
  verificationKey: VerificationKeyData.empty(),
@@ -60,15 +60,15 @@ const NULL_SIMULATE_OUTPUT = {
60
60
  let firstIteration = true;
61
61
  let output = NULL_SIMULATE_OUTPUT;
62
62
  const executionSteps = [];
63
- const noteHashLeafIndexMap = collectNoteHashLeafIndexMap(executionResult);
64
63
  const noteHashNullifierCounterMap = collectNoteHashNullifierCounterMap(executionResult);
65
- const validationRequestsSplitCounter = isPrivateOnlyTx ? 0 : getFinalMinRevertibleSideEffectCounter(executionResult);
64
+ const minRevertibleSideEffectCounter = getFinalMinRevertibleSideEffectCounter(executionResult);
65
+ const splitCounter = isPrivateOnlyTx ? 0 : minRevertibleSideEffectCounter;
66
66
  while(executionStack.length){
67
67
  if (!firstIteration) {
68
- let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, validationRequestsSplitCounter);
68
+ let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, splitCounter);
69
69
  while(resetBuilder.needsReset()){
70
70
  const witgenTimer = new Timer();
71
- const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
71
+ const privateInputs = await resetBuilder.build(this.oracle);
72
72
  output = generateWitnesses ? await this.proofCreator.generateResetOutput(privateInputs) : await this.proofCreator.simulateReset(privateInputs);
73
73
  executionSteps.push({
74
74
  functionName: 'private_kernel_reset',
@@ -79,7 +79,7 @@ const NULL_SIMULATE_OUTPUT = {
79
79
  witgen: witgenTimer.ms()
80
80
  }
81
81
  });
82
- resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, validationRequestsSplitCounter);
82
+ resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, splitCounter);
83
83
  }
84
84
  }
85
85
  const currentExecution = executionStack.pop();
@@ -100,7 +100,7 @@ const NULL_SIMULATE_OUTPUT = {
100
100
  const privateCallData = await this.createPrivateCallData(currentExecution);
101
101
  if (firstIteration) {
102
102
  const witgenTimer = new Timer();
103
- const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), ProtocolContractsList, privateCallData, isPrivateOnlyTx, executionResult.firstNullifier);
103
+ const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), ProtocolContractsList, privateCallData, isPrivateOnlyTx, executionResult.firstNullifier, minRevertibleSideEffectCounter);
104
104
  this.log.debug(`Calling private kernel init with isPrivateOnly ${isPrivateOnlyTx} and firstNullifierHint ${proofInput.firstNullifierHint}`);
105
105
  pushTestData('private-kernel-inputs-init', proofInput);
106
106
  output = generateWitnesses ? await this.proofCreator.generateInitOutput(proofInput) : await this.proofCreator.simulateInit(proofInput);
@@ -133,10 +133,10 @@ const NULL_SIMULATE_OUTPUT = {
133
133
  firstIteration = false;
134
134
  }
135
135
  // Reset.
136
- let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, validationRequestsSplitCounter);
136
+ let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, splitCounter);
137
137
  while(resetBuilder.needsReset()){
138
138
  const witgenTimer = new Timer();
139
- const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
139
+ const privateInputs = await resetBuilder.build(this.oracle);
140
140
  output = generateWitnesses ? await this.proofCreator.generateResetOutput(privateInputs) : await this.proofCreator.simulateReset(privateInputs);
141
141
  executionSteps.push({
142
142
  functionName: 'private_kernel_reset',
@@ -147,7 +147,7 @@ const NULL_SIMULATE_OUTPUT = {
147
147
  witgen: witgenTimer.ms()
148
148
  }
149
149
  });
150
- resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, validationRequestsSplitCounter);
150
+ resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, splitCounter);
151
151
  }
152
152
  if (output.publicInputs.feePayer.isZero() && skipFeeEnforcement) {
153
153
  if (!skipProofGeneration) {
@@ -180,8 +180,8 @@ const NULL_SIMULATE_OUTPUT = {
180
180
  witgen: witgenTimer.ms()
181
181
  }
182
182
  });
183
- // Hiding circuit is only executed if we are generating witnesses.
184
- // For simulation, we can end with the tail, since the hiding circuit will simply return the same tail output.
183
+ // Hiding kernel is only executed if we are generating witnesses.
184
+ // For simulation, we can end with the tail, since the Hiding kernel will simply return the same tail output.
185
185
  if (generateWitnesses) {
186
186
  const previousKernelVkData = await this.getVkData(tailOutput.verificationKey);
187
187
  const witgenTimer = new Timer();
@@ -1,62 +1,59 @@
1
1
  import { FUNCTION_TREE_HEIGHT, NOTE_HASH_TREE_HEIGHT, VK_TREE_HEIGHT } from '@aztec/constants';
2
- import type { Fr, GrumpkinScalar, Point } from '@aztec/foundation/fields';
2
+ import type { Fr } from '@aztec/foundation/curves/bn254';
3
+ import type { GrumpkinScalar, Point } from '@aztec/foundation/curves/grumpkin';
3
4
  import { MembershipWitness } from '@aztec/foundation/trees';
5
+ import type { KeyStore } from '@aztec/key-store';
4
6
  import type { FunctionSelector } from '@aztec/stdlib/abi';
5
7
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
8
+ import { L2BlockHash } from '@aztec/stdlib/block';
9
+ import { type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
10
+ import type { AztecNode } from '@aztec/stdlib/interfaces/client';
6
11
  import { UpdatedClassIdHints } from '@aztec/stdlib/kernel';
7
- import type { PublicKeys } from '@aztec/stdlib/keys';
8
12
  import type { NullifierMembershipWitness } from '@aztec/stdlib/trees';
9
13
  import type { VerificationKeyAsFields } from '@aztec/stdlib/vks';
14
+ import type { ContractStore } from '../storage/contract_store/contract_store.js';
10
15
  /**
11
16
  * Provides functionality needed by the private kernel for interacting with our state trees.
12
- * This is either PrivateKernelOracleImpl, or a mocked test implementation.
13
17
  */
14
- export interface PrivateKernelOracle {
18
+ export declare class PrivateKernelOracle {
19
+ private contractStore;
20
+ private keyStore;
21
+ private node;
22
+ private blockHash;
23
+ constructor(contractStore: ContractStore, keyStore: KeyStore, node: AztecNode, blockHash: L2BlockHash);
15
24
  /** Retrieves the preimage of a contract address from the registered contract instances db. */
16
- getContractAddressPreimage(address: AztecAddress): Promise<{
25
+ getContractAddressPreimage(address: AztecAddress): Promise<ContractInstanceWithAddress & {
17
26
  saltedInitializationHash: Fr;
18
- publicKeys: PublicKeys;
19
- currentContractClassId: Fr;
20
- originalContractClassId: Fr;
21
27
  }>;
22
28
  /** Retrieves the preimage of a contract class id from the contract classes db. */
23
- getContractClassIdPreimage(contractClassId: Fr): Promise<{
24
- artifactHash: Fr;
25
- publicBytecodeCommitment: Fr;
26
- privateFunctionsRoot: Fr;
27
- }>;
28
- /**
29
- * Returns a membership witness with the sibling path and leaf index in our private functions tree.
30
- */
29
+ getContractClassIdPreimage(contractClassId: Fr): Promise<import("@aztec/stdlib/contract").ContractClassIdPreimage>;
30
+ /** Returns a membership witness with the sibling path and leaf index in our private functions tree. */
31
31
  getFunctionMembershipWitness(contractClassId: Fr, selector: FunctionSelector): Promise<MembershipWitness<typeof FUNCTION_TREE_HEIGHT>>;
32
32
  /**
33
33
  * Returns a membership witness with the sibling path and leaf index in our protocol VK indexed merkle tree.
34
34
  * Used to validate the previous kernel's verification key.
35
35
  */
36
36
  getVkMembershipWitness(vk: VerificationKeyAsFields): Promise<MembershipWitness<typeof VK_TREE_HEIGHT>>;
37
- /**
38
- * Returns a membership witness with the sibling path and leaf index in our private function indexed merkle tree.
39
- */ getNoteHashMembershipWitness(leafIndex: bigint): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT>>;
40
- /**
41
- * Returns a membership witness with the sibling path and leaf index in our nullifier indexed merkle tree.
42
- */
37
+ /** Returns a membership witness with the sibling path and leaf index in our note hash tree. */
38
+ getNoteHashMembershipWitness(noteHash: Fr): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
39
+ /** Returns a membership witness with the sibling path and leaf index in our nullifier indexed merkle tree. */
43
40
  getNullifierMembershipWitness(nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
44
- /**
45
- * Returns the root of our note hash merkle tree.
46
- */
41
+ /** Returns the root of our note hash merkle tree. */
47
42
  getNoteHashTreeRoot(): Promise<Fr>;
48
43
  /**
49
44
  * Retrieves the sk_m corresponding to the pk_m.
50
45
  * @throws If the provided public key is not associated with any of the registered accounts.
51
- * @param pkM - The master public key to get secret key for.
46
+ * @param masterPublicKey - The master public key to get secret key for.
52
47
  * @returns A Promise that resolves to sk_m.
53
48
  * @dev Used when feeding the sk_m to the kernel circuit for keys verification.
54
49
  */
55
50
  getMasterSecretKey(masterPublicKey: Point): Promise<GrumpkinScalar>;
56
51
  /** Use debug data to get the function name corresponding to a selector. */
57
52
  getDebugFunctionName(contractAddress: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
58
- /** Returns a membership witness and leaf index to our public data indexed merkle tree,
59
- * along with an associated DelayedPublicMutable containing the class ID to update. */
53
+ /**
54
+ * Returns a membership witness and leaf index to our public data indexed merkle tree,
55
+ * along with an associated DelayedPublicMutable containing the class ID to update.
56
+ */
60
57
  getUpdatedClassIdHints(contractAddress: AztecAddress): Promise<UpdatedClassIdHints>;
61
58
  }
62
- //# sourceMappingURL=private_kernel_oracle.d.ts.map
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9rZXJuZWxfb3JhY2xlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJpdmF0ZV9rZXJuZWwvcHJpdmF0ZV9rZXJuZWxfb3JhY2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBMkIsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEgsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR2pELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFDTCxLQUFLLDJCQUEyQixFQUdqQyxNQUFNLHdCQUF3QixDQUFDO0FBR2hDLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUVqRjs7R0FFRztBQUNILHFCQUFhLG1CQUFtQjtJQUU1QixPQUFPLENBQUMsYUFBYTtJQUNyQixPQUFPLENBQUMsUUFBUTtJQUNoQixPQUFPLENBQUMsSUFBSTtJQUNaLE9BQU8sQ0FBQyxTQUFTO0lBSm5CLFlBQ1UsYUFBYSxFQUFFLGFBQWEsRUFDNUIsUUFBUSxFQUFFLFFBQVEsRUFDbEIsSUFBSSxFQUFFLFNBQVMsRUFDZixTQUFTLEVBQUUsV0FBVyxFQUM1QjtJQUVKLDhGQUE4RjtJQUNqRiwwQkFBMEIsQ0FDckMsT0FBTyxFQUFFLFlBQVksR0FDcEIsT0FBTyxDQUFDLDJCQUEyQixHQUFHO1FBQUUsd0JBQXdCLEVBQUUsRUFBRSxDQUFBO0tBQUUsQ0FBQyxDQVN6RTtJQUVELGtGQUFrRjtJQUNyRSwwQkFBMEIsQ0FBQyxlQUFlLEVBQUUsRUFBRSxxRUFNMUQ7SUFFRCx1R0FBdUc7SUFDMUYsNEJBQTRCLENBQ3ZDLGVBQWUsRUFBRSxFQUFFLEVBQ25CLFFBQVEsRUFBRSxnQkFBZ0IsR0FDekIsT0FBTyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sb0JBQW9CLENBQUMsQ0FBQyxDQVF6RDtJQUVEOzs7T0FHRztJQUNJLHNCQUFzQixDQUFDLEVBQUUsRUFBRSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsT0FBTyxjQUFjLENBQUMsQ0FBQyxDQUc1RztJQUVELCtGQUErRjtJQUMvRiw0QkFBNEIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLHFCQUFxQixDQUFDLEdBQUcsU0FBUyxDQUFDLENBRS9HO0lBRUQsOEdBQThHO0lBQzlHLDZCQUE2QixDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLDBCQUEwQixHQUFHLFNBQVMsQ0FBQyxDQUU1RjtJQUVELHFEQUFxRDtJQUMvQyxtQkFBbUIsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBTXZDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksa0JBQWtCLENBQUMsZUFBZSxFQUFFLEtBQUssR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLENBRXpFO0lBRUQsMkVBQTJFO0lBQ3BFLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBRWxIO0lBRUQ7OztPQUdHO0lBQ1Usc0JBQXNCLENBQUMsZUFBZSxFQUFFLFlBQVksR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0E4Qi9GO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"private_kernel_oracle.d.ts","sourceRoot":"","sources":["../../src/private_kernel/private_kernel_oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC/F,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,8FAA8F;IAC9F,0BAA0B,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC;QACzD,wBAAwB,EAAE,EAAE,CAAC;QAC7B,UAAU,EAAE,UAAU,CAAC;QACvB,sBAAsB,EAAE,EAAE,CAAC;QAC3B,uBAAuB,EAAE,EAAE,CAAC;KAC7B,CAAC,CAAC;IAEH,kFAAkF;IAClF,0BAA0B,CACxB,eAAe,EAAE,EAAE,GAClB,OAAO,CAAC;QAAE,YAAY,EAAE,EAAE,CAAC;QAAC,wBAAwB,EAAE,EAAE,CAAC;QAAC,oBAAoB,EAAE,EAAE,CAAA;KAAE,CAAC,CAAC;IAEzF;;OAEG;IACH,4BAA4B,CAC1B,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,iBAAiB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;IAE3D;;;OAGG;IACH,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC;IAEvG;;OAEG,CAAC,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;IAE9G;;OAEG;IACH,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAAC;IAC9F;;OAEG;IACH,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IAEnC;;;;;;OAMG;IACH,kBAAkB,CAAC,eAAe,EAAE,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEpE,2EAA2E;IAC3E,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7G;0FACsF;IACtF,sBAAsB,CAAC,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrF"}
1
+ {"version":3,"file":"private_kernel_oracle.d.ts","sourceRoot":"","sources":["../../src/private_kernel/private_kernel_oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA2B,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACxH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACL,KAAK,2BAA2B,EAGjC,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAEjF;;GAEG;AACH,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,SAAS;IAJnB,YACU,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,WAAW,EAC5B;IAEJ,8FAA8F;IACjF,0BAA0B,CACrC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,2BAA2B,GAAG;QAAE,wBAAwB,EAAE,EAAE,CAAA;KAAE,CAAC,CASzE;IAED,kFAAkF;IACrE,0BAA0B,CAAC,eAAe,EAAE,EAAE,qEAM1D;IAED,uGAAuG;IAC1F,4BAA4B,CACvC,eAAe,EAAE,EAAE,EACnB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,iBAAiB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAQzD;IAED;;;OAGG;IACI,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,cAAc,CAAC,CAAC,CAG5G;IAED,+FAA+F;IAC/F,4BAA4B,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,GAAG,SAAS,CAAC,CAE/G;IAED,8GAA8G;IAC9G,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAE5F;IAED,qDAAqD;IAC/C,mBAAmB,IAAI,OAAO,CAAC,EAAE,CAAC,CAMvC;IAED;;;;;;OAMG;IACI,kBAAkB,CAAC,eAAe,EAAE,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,CAEzE;IAED,2EAA2E;IACpE,oBAAoB,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAElH;IAED;;;OAGG;IACU,sBAAsB,CAAC,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA8B/F;CACF"}
@@ -1,4 +1,92 @@
1
+ import { PUBLIC_DATA_TREE_HEIGHT, VK_TREE_HEIGHT } from '@aztec/constants';
2
+ import { MembershipWitness } from '@aztec/foundation/trees';
3
+ import { getVKIndex, getVKSiblingPath } from '@aztec/noir-protocol-circuits-types/vk-tree';
4
+ import { ProtocolContractAddress } from '@aztec/protocol-contracts';
5
+ import { computeContractClassIdPreimage, computeSaltedInitializationHash } from '@aztec/stdlib/contract';
6
+ import { DelayedPublicMutableValues, DelayedPublicMutableValuesWithHash } from '@aztec/stdlib/delayed-public-mutable';
7
+ import { computePublicDataTreeLeafSlot } from '@aztec/stdlib/hash';
8
+ import { UpdatedClassIdHints } from '@aztec/stdlib/kernel';
1
9
  /**
2
10
  * Provides functionality needed by the private kernel for interacting with our state trees.
3
- * This is either PrivateKernelOracleImpl, or a mocked test implementation.
4
- */ export { };
11
+ */ export class PrivateKernelOracle {
12
+ contractStore;
13
+ keyStore;
14
+ node;
15
+ blockHash;
16
+ constructor(contractStore, keyStore, node, blockHash){
17
+ this.contractStore = contractStore;
18
+ this.keyStore = keyStore;
19
+ this.node = node;
20
+ this.blockHash = blockHash;
21
+ }
22
+ /** Retrieves the preimage of a contract address from the registered contract instances db. */ async getContractAddressPreimage(address) {
23
+ const instance = await this.contractStore.getContractInstance(address);
24
+ if (!instance) {
25
+ throw new Error(`Contract instance not found when getting address preimage. Contract address: ${address}.`);
26
+ }
27
+ return {
28
+ saltedInitializationHash: await computeSaltedInitializationHash(instance),
29
+ ...instance
30
+ };
31
+ }
32
+ /** Retrieves the preimage of a contract class id from the contract classes db. */ async getContractClassIdPreimage(contractClassId) {
33
+ const contractClass = await this.contractStore.getContractClass(contractClassId);
34
+ if (!contractClass) {
35
+ throw new Error(`Contract class not found when getting class id preimage. Class id: ${contractClassId}.`);
36
+ }
37
+ return computeContractClassIdPreimage(contractClass);
38
+ }
39
+ /** Returns a membership witness with the sibling path and leaf index in our private functions tree. */ async getFunctionMembershipWitness(contractClassId, selector) {
40
+ const membershipWitness = await this.contractStore.getFunctionMembershipWitness(contractClassId, selector);
41
+ if (!membershipWitness) {
42
+ throw new Error(`Membership witness not found for contract class id ${contractClassId} and selector ${selector}.`);
43
+ }
44
+ return membershipWitness;
45
+ }
46
+ /**
47
+ * Returns a membership witness with the sibling path and leaf index in our protocol VK indexed merkle tree.
48
+ * Used to validate the previous kernel's verification key.
49
+ */ getVkMembershipWitness(vk) {
50
+ const leafIndex = getVKIndex(vk);
51
+ return Promise.resolve(new MembershipWitness(VK_TREE_HEIGHT, BigInt(leafIndex), getVKSiblingPath(leafIndex)));
52
+ }
53
+ /** Returns a membership witness with the sibling path and leaf index in our note hash tree. */ getNoteHashMembershipWitness(noteHash) {
54
+ return this.node.getNoteHashMembershipWitness(this.blockHash, noteHash);
55
+ }
56
+ /** Returns a membership witness with the sibling path and leaf index in our nullifier indexed merkle tree. */ getNullifierMembershipWitness(nullifier) {
57
+ return this.node.getNullifierMembershipWitness(this.blockHash, nullifier);
58
+ }
59
+ /** Returns the root of our note hash merkle tree. */ async getNoteHashTreeRoot() {
60
+ const header = await this.node.getBlockHeader(this.blockHash);
61
+ if (!header) {
62
+ throw new Error(`No block header found for block hash ${this.blockHash}`);
63
+ }
64
+ return header.state.partial.noteHashTree.root;
65
+ }
66
+ /**
67
+ * Retrieves the sk_m corresponding to the pk_m.
68
+ * @throws If the provided public key is not associated with any of the registered accounts.
69
+ * @param masterPublicKey - The master public key to get secret key for.
70
+ * @returns A Promise that resolves to sk_m.
71
+ * @dev Used when feeding the sk_m to the kernel circuit for keys verification.
72
+ */ getMasterSecretKey(masterPublicKey) {
73
+ return this.keyStore.getMasterSecretKey(masterPublicKey);
74
+ }
75
+ /** Use debug data to get the function name corresponding to a selector. */ getDebugFunctionName(contractAddress, selector) {
76
+ return this.contractStore.getDebugFunctionName(contractAddress, selector);
77
+ }
78
+ /**
79
+ * Returns a membership witness and leaf index to our public data indexed merkle tree,
80
+ * along with an associated DelayedPublicMutable containing the class ID to update.
81
+ */ async getUpdatedClassIdHints(contractAddress) {
82
+ const { delayedPublicMutableSlot, delayedPublicMutableHashSlot } = await DelayedPublicMutableValuesWithHash.getContractUpdateSlots(contractAddress);
83
+ const hashLeafSlot = await computePublicDataTreeLeafSlot(ProtocolContractAddress.ContractInstanceRegistry, delayedPublicMutableHashSlot);
84
+ const updatedClassIdWitness = await this.node.getPublicDataWitness(this.blockHash, hashLeafSlot);
85
+ if (!updatedClassIdWitness) {
86
+ throw new Error(`No public data tree witness found for ${hashLeafSlot}`);
87
+ }
88
+ const readStorage = (storageSlot)=>this.node.getPublicStorageAt(this.blockHash, ProtocolContractAddress.ContractInstanceRegistry, storageSlot);
89
+ const delayedPublicMutableValues = await DelayedPublicMutableValues.readFromTree(delayedPublicMutableSlot, readStorage);
90
+ return new UpdatedClassIdHints(new MembershipWitness(PUBLIC_DATA_TREE_HEIGHT, updatedClassIdWitness.index, updatedClassIdWitness.siblingPath.toTuple()), updatedClassIdWitness.leafPreimage, delayedPublicMutableValues);
91
+ }
92
+ }
package/dest/pxe.d.ts CHANGED
@@ -1,16 +1,21 @@
1
- import { Fr } from '@aztec/foundation/fields';
1
+ import type { PrivateEventFilter } from '@aztec/aztec.js/wallet';
2
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
3
  import { type Logger } from '@aztec/foundation/log';
3
4
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
4
5
  import { type ProtocolContractsProvider } from '@aztec/protocol-contracts';
5
6
  import type { CircuitSimulator } from '@aztec/simulator/client';
6
- import { type ContractArtifact, type EventMetadataDefinition } from '@aztec/stdlib/abi';
7
+ import { type ContractArtifact, EventSelector, FunctionCall } from '@aztec/stdlib/abi';
7
8
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
8
9
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
9
- import { CompleteAddress, type ContractClassWithId, type ContractInstanceWithAddress, type PartialAddress } from '@aztec/stdlib/contract';
10
+ import { CompleteAddress, type ContractInstanceWithAddress, type PartialAddress } from '@aztec/stdlib/contract';
10
11
  import type { AztecNode, PrivateKernelProver } from '@aztec/stdlib/interfaces/client';
11
- import { type NotesFilter, UniqueNote } from '@aztec/stdlib/note';
12
- import { SimulationOverrides, TxExecutionRequest, TxProfileResult, TxProvingResult, TxSimulationResult, UtilitySimulationResult } from '@aztec/stdlib/tx';
12
+ import { type InTx, SimulationOverrides, TxExecutionRequest, TxProfileResult, TxProvingResult, TxSimulationResult, UtilitySimulationResult } from '@aztec/stdlib/tx';
13
13
  import type { PXEConfig } from './config/index.js';
14
+ import { PXEDebugUtils } from './debug/pxe_debug_utils.js';
15
+ export type PackedPrivateEvent = InTx & {
16
+ packedEvent: Fr[];
17
+ eventSelector: EventSelector;
18
+ };
14
19
  /**
15
20
  * Private eXecution Environment (PXE) is a library used by wallets to simulate private phase of transactions and to
16
21
  * manage private state of users.
@@ -18,21 +23,25 @@ import type { PXEConfig } from './config/index.js';
18
23
  export declare class PXE {
19
24
  #private;
20
25
  private node;
21
- private synchronizer;
26
+ private blockStateSynchronizer;
22
27
  private keyStore;
23
- private contractDataProvider;
24
- private noteDataProvider;
25
- private capsuleDataProvider;
26
- private syncDataProvider;
27
- private taggingDataProvider;
28
- private addressDataProvider;
29
- private privateEventDataProvider;
28
+ private contractStore;
29
+ private noteStore;
30
+ private capsuleStore;
31
+ private anchorBlockStore;
32
+ private senderTaggingStore;
33
+ private senderAddressBookStore;
34
+ private recipientTaggingStore;
35
+ private addressStore;
36
+ private privateEventStore;
30
37
  private simulator;
31
38
  private proverEnabled;
32
39
  private proofCreator;
33
40
  private protocolContractsProvider;
34
41
  private log;
35
42
  private jobQueue;
43
+ private jobCoordinator;
44
+ debug: PXEDebugUtils;
36
45
  private constructor();
37
46
  /**
38
47
  * Creates an instance of a PXE by instantiating all the necessary data providers and services.
@@ -44,40 +53,11 @@ export declare class PXE {
44
53
  static create(node: AztecNode, store: AztecAsyncKVStore, proofCreator: PrivateKernelProver, simulator: CircuitSimulator, protocolContractsProvider: ProtocolContractsProvider, config: PXEConfig, loggerOrSuffix?: string | Logger): Promise<PXE>;
45
54
  getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
46
55
  /**
47
- * Returns the contract class metadata given a contract class id.
48
- * The metadata consists of its contract class, whether it has been publicly registered, and its artifact.
49
- * @remark - it queries the node to check whether the contract class with the given id has been publicly registered.
50
- * @param id - Identifier of the class.
51
- * @param includeArtifact - Identifier of the class.
52
- * @returns - It returns the contract class metadata, with the artifact field being optional, and will only be returned if true is passed in
53
- * for `includeArtifact`
54
- * TODO(@spalladino): The PXE actually holds artifacts and not classes, what should we return? Also,
55
- * should the pxe query the node for contract public info, and merge it with its own definitions?
56
- * TODO(@spalladino): This method is strictly needed to decide whether to publicly register a class or not
57
- * during a public deployment. We probably want a nicer and more general API for this, but it'll have to
58
- * do for the time being.
59
- */
60
- getContractClassMetadata(id: Fr, includeArtifact?: boolean): Promise<{
61
- contractClass: ContractClassWithId | undefined;
62
- isContractClassPubliclyRegistered: boolean;
63
- artifact: ContractArtifact | undefined;
64
- }>;
65
- /**
66
- * Returns the contract metadata given an address.
67
- * The metadata consists of its contract instance, which includes the contract class identifier,
68
- * initialization hash, deployment salt, and public keys hash; whether the contract instance has been initialized;
69
- * and whether the contract instance with the given address has been publicly deployed.
70
- * @remark - it queries the node to check whether the contract instance has been initialized / publicly deployed through a node.
71
- * This query is not dependent on the PXE.
72
- * @param address - The address that the contract instance resides at.
73
- * @returns - It returns the contract metadata
74
- * TODO(@spalladino): Should we return the public keys in plain as well here?
75
- */
76
- getContractMetadata(address: AztecAddress): Promise<{
77
- contractInstance: ContractInstanceWithAddress | undefined;
78
- isContractInitialized: boolean;
79
- isContractPublished: boolean;
80
- }>;
56
+ * Returns the contract artifact for a given contract class id, if it's registered in the PXE.
57
+ * @param id - Identifier of the contract class.
58
+ * @returns The contract artifact if found, undefined otherwise.
59
+ */
60
+ getContractArtifact(id: Fr): Promise<ContractArtifact | undefined>;
81
61
  /**
82
62
  * Registers a user account in PXE given its master encryption private key.
83
63
  * Once a new account is registered, the PXE will trial-decrypt all published notes on
@@ -90,24 +70,26 @@ export declare class PXE {
90
70
  */
91
71
  registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress>;
92
72
  /**
93
- * Registers a user contact in PXE.
73
+ * Registers a sender in this PXE.
94
74
  *
95
- * Once a new contact is registered, the PXE will be able to receive notes tagged from this contact.
96
- * Will do nothing if the account is already registered.
75
+ * After registering a new sender, the PXE will sync private logs that are tagged with this sender's address.
76
+ * Will do nothing if the address is already registered.
97
77
  *
98
- * @param address - Address of the user to add to the address book
99
- * @returns The address address of the account.
78
+ * @param sender - Address of the sender to register.
79
+ * @returns The address of the sender.
80
+ * TODO: It's strange that we return the address here and I (benesjan) think we should drop the return value.
100
81
  */
101
- registerSender(address: AztecAddress): Promise<AztecAddress>;
82
+ registerSender(sender: AztecAddress): Promise<AztecAddress>;
102
83
  /**
103
- * Retrieves the addresses stored as senders on this PXE.
104
- * @returns An array of the senders on this PXE.
84
+ * Retrieves senders registered in this PXE.
85
+ * @returns Senders registered in this PXE.
105
86
  */
106
87
  getSenders(): Promise<AztecAddress[]>;
107
88
  /**
108
- * Removes a sender in the address book.
89
+ * Removes a sender registered in this PXE.
90
+ * @param sender - The address of the sender to remove.
109
91
  */
110
- removeSender(address: AztecAddress): Promise<void>;
92
+ removeSender(sender: AztecAddress): Promise<void>;
111
93
  /**
112
94
  * Retrieves the user accounts registered on this PXE.
113
95
  * @returns An array of the accounts registered on this PXE.
@@ -146,18 +128,6 @@ export declare class PXE {
146
128
  * @returns An array of contracts addresses registered on this PXE.
147
129
  */
148
130
  getContracts(): Promise<AztecAddress[]>;
149
- /**
150
- * A debugging utility to get notes based on the provided filter.
151
- *
152
- * Note that this should not be used in production code because the structure of notes is considered to be
153
- * an implementation detail of contracts. This is only meant to be used for debugging purposes. If you need to obtain
154
- * note-related information in production code, please implement a custom utility function on your contract and call
155
- * that function instead (e.g. `get_balance(owner: AztecAddress) -> u128` utility function on a Token contract).
156
- *
157
- * @param filter - The filter to apply to the notes.
158
- * @returns The requested notes.
159
- */
160
- getNotes(filter: NotesFilter): Promise<UniqueNote[]>;
161
131
  /**
162
132
  * Proves the private portion of a simulated transaction, ready to send to the network
163
133
  * (where validators prove the public portion).
@@ -205,29 +175,30 @@ export declare class PXE {
205
175
  /**
206
176
  * Simulate the execution of a contract utility function.
207
177
  *
208
- * @param functionName - The name of the utility contract function to be called.
209
- * @param args - The arguments to be provided to the function.
210
- * @param to - The address of the contract to be called.
178
+ * @param call - The function call containing the function details, arguments, and target contract address.
211
179
  * @param authwits - (Optional) The authentication witnesses required for the function call.
212
- * @param from - (Optional) The msg sender to set for the call.
213
180
  * @param scopes - (Optional) The accounts whose notes we can access in this call. Currently optional and will
214
181
  * default to all.
215
182
  * @returns The result of the utility function call, structured based on the function ABI.
216
183
  */
217
- simulateUtility(functionName: string, args: any[], to: AztecAddress, authwits?: AuthWitness[], _from?: AztecAddress, scopes?: AztecAddress[]): Promise<UtilitySimulationResult>;
184
+ simulateUtility(call: FunctionCall, authwits?: AuthWitness[], scopes?: AztecAddress[]): Promise<UtilitySimulationResult>;
218
185
  /**
219
186
  * Returns the private events given search parameters.
220
- * @param contractAddress - The address of the contract to get events from.
221
- * @param eventMetadata - Metadata of the event. This should be the class generated from the contract. e.g. Contract.events.Event
222
- * @param from - The block number to search from.
223
- * @param numBlocks - The amount of blocks to search.
224
- * @param recipients - The addresses that decrypted the logs.
225
- * @returns - The deserialized events.
226
- */
227
- getPrivateEvents<T>(contractAddress: AztecAddress, eventMetadataDef: EventMetadataDefinition, from: number, numBlocks: number, recipients: AztecAddress[]): Promise<T[]>;
187
+ * @param eventSelector - Event selector to search for.
188
+ * @param filter
189
+ * contractAddress - The address of the contract to get events from. Required.
190
+ * scopes - One or more event scope addresses to filter by. Required.
191
+ * fromBlock - The block number to search from (inclusive). Optional. If provided, it must be >= 0.
192
+ * Defaults to 0.
193
+ * If toBlock is defined but fromBlock is not, fromBlock defaults to toBlock - 1.
194
+ * toBlock - The block number to search up to (exclusive). Optional. If provided, it must be > 0.
195
+ * Defaults to the latest known block to PXE + 1.
196
+ * @returns - The packed events with block and tx metadata.
197
+ */
198
+ getPrivateEvents(eventSelector: EventSelector, filter: PrivateEventFilter): Promise<PackedPrivateEvent[]>;
228
199
  /**
229
200
  * Stops the PXE's job queue.
230
201
  */
231
202
  stop(): Promise<void>;
232
203
  }
233
- //# sourceMappingURL=pxe.d.ts.map
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHhlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcHhlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUlsRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFBRSxLQUFLLHlCQUF5QixFQUF5QixNQUFNLDJCQUEyQixDQUFDO0FBQ2xHLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUNMLEtBQUssZ0JBQWdCLEVBQ3JCLGFBQWEsRUFDYixZQUFZLEVBR2IsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEVBQ0wsZUFBZSxFQUNmLEtBQUssMkJBQTJCLEVBQ2hDLEtBQUssY0FBYyxFQUdwQixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBTXRGLE9BQU8sRUFFTCxLQUFLLElBQUksRUFLVCxtQkFBbUIsRUFHbkIsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLHVCQUF1QixFQUN4QixNQUFNLGtCQUFrQixDQUFDO0FBSzFCLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBUW5ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIs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
package/dest/pxe.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../src/pxe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../src/pxe.ts"],"names":[],"mappings":"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"}