@aztec/bb.js 3.0.0-devnet.2 → 3.0.0-devnet.20251212

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 (595) hide show
  1. package/build/amd64-linux/bb +0 -0
  2. package/build/amd64-linux/nodejs_module.node +0 -0
  3. package/build/amd64-macos/bb +0 -0
  4. package/build/amd64-macos/nodejs_module.node +0 -0
  5. package/build/arm64-linux/bb +0 -0
  6. package/build/arm64-linux/nodejs_module.node +0 -0
  7. package/build/arm64-macos/bb +0 -0
  8. package/build/arm64-macos/nodejs_module.node +0 -0
  9. package/dest/browser/async_map/index.d.ts +1 -1
  10. package/dest/browser/async_map/index.js +1 -1
  11. package/dest/browser/barretenberg/backend.d.ts +30 -39
  12. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  13. package/dest/browser/barretenberg/backend.js +103 -98
  14. package/dest/browser/barretenberg/index.d.ts +4 -6
  15. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  16. package/dest/browser/barretenberg/index.js +20 -29
  17. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts +17 -0
  18. package/dest/browser/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  19. package/dest/browser/barretenberg/testing/bigint-buffer.js +37 -0
  20. package/dest/browser/barretenberg/testing/fields.d.ts +16 -0
  21. package/dest/browser/barretenberg/testing/fields.d.ts.map +1 -0
  22. package/dest/browser/barretenberg/testing/fields.js +47 -0
  23. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  34. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  35. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  36. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  37. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  38. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  39. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  40. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  41. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  42. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  43. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  44. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  45. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  46. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  47. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  48. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  49. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  50. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  51. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  52. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  53. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  54. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +9 -2
  55. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +1 -1
  56. package/dest/browser/barretenberg_wasm/index.d.ts +1 -1
  57. package/dest/browser/barretenberg_wasm/index.d.ts.map +1 -1
  58. package/dest/browser/barretenberg_wasm/index.js +2 -3
  59. package/dest/browser/bb_backends/browser/index.d.ts +1 -1
  60. package/dest/browser/bb_backends/browser/index.js +1 -1
  61. package/dest/browser/bb_backends/browser/platform.d.ts +4 -0
  62. package/dest/browser/bb_backends/browser/platform.d.ts.map +1 -0
  63. package/dest/browser/bb_backends/browser/platform.js +10 -0
  64. package/dest/browser/bb_backends/index.d.ts +10 -7
  65. package/dest/browser/bb_backends/index.d.ts.map +1 -1
  66. package/dest/browser/bb_backends/index.js +8 -7
  67. package/dest/browser/bb_backends/interface.d.ts +1 -1
  68. package/dest/browser/bb_backends/wasm.d.ts +1 -1
  69. package/dest/browser/bb_backends/wasm.d.ts.map +1 -1
  70. package/dest/browser/bb_backends/wasm.js +5 -3
  71. package/dest/browser/bbapi_exception.d.ts +7 -0
  72. package/dest/browser/bbapi_exception.d.ts.map +1 -0
  73. package/dest/browser/bbapi_exception.js +14 -0
  74. package/dest/browser/bin/index.d.ts +3 -0
  75. package/dest/browser/bin/index.d.ts.map +1 -0
  76. package/dest/browser/bin/index.js +11 -0
  77. package/dest/browser/cbind/generate.d.ts +1 -1
  78. package/dest/browser/cbind/generate.js +93 -1
  79. package/dest/browser/cbind/generated/api_types.d.ts +632 -400
  80. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -1
  81. package/dest/browser/cbind/generated/api_types.js +773 -465
  82. package/dest/browser/cbind/generated/async.d.ts +16 -11
  83. package/dest/browser/cbind/generated/async.d.ts.map +1 -1
  84. package/dest/browser/cbind/generated/async.js +305 -96
  85. package/dest/browser/cbind/generated/curve_constants.d.ts +45 -0
  86. package/dest/browser/cbind/generated/curve_constants.d.ts.map +1 -0
  87. package/dest/browser/cbind/generated/curve_constants.js +45 -0
  88. package/dest/browser/cbind/generated/sync.d.ts +16 -11
  89. package/dest/browser/cbind/generated/sync.d.ts.map +1 -1
  90. package/dest/browser/cbind/generated/sync.js +300 -96
  91. package/dest/browser/cbind/schema_compiler.d.ts +1 -1
  92. package/dest/browser/cbind/schema_compiler.d.ts.map +1 -1
  93. package/dest/browser/cbind/schema_compiler.js +29 -8
  94. package/dest/browser/crs/browser/cached_net_crs.d.ts +1 -1
  95. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +1 -1
  96. package/dest/browser/crs/browser/cached_net_crs.js +6 -1
  97. package/dest/browser/crs/browser/index.d.ts +1 -1
  98. package/dest/browser/crs/index.d.ts +1 -1
  99. package/dest/browser/crs/net_crs.d.ts +1 -16
  100. package/dest/browser/crs/net_crs.d.ts.map +1 -1
  101. package/dest/browser/crs/net_crs.js +6 -1
  102. package/dest/browser/index.d.ts +6 -3
  103. package/dest/browser/index.d.ts.map +1 -1
  104. package/dest/browser/index.js +5 -2
  105. package/dest/browser/proof/index.d.ts +1 -1
  106. package/dest/browser/proof/index.js +1 -1
  107. package/dest/browser/random/browser/index.d.ts +1 -1
  108. package/dest/browser/random/browser/index.d.ts.map +1 -1
  109. package/dest/browser/random/browser/index.js +1 -1
  110. package/dest/browser/random/index.d.ts +1 -1
  111. package/dest/browser/retry/index.d.ts +1 -1
  112. package/dest/browser/retry/index.js +1 -1
  113. package/dest/node/async_map/index.d.ts +1 -1
  114. package/dest/node/async_map/index.js +1 -1
  115. package/dest/node/barretenberg/backend.d.ts +30 -39
  116. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  117. package/dest/node/barretenberg/backend.js +103 -98
  118. package/dest/node/barretenberg/blake2s.test.d.ts +1 -1
  119. package/dest/node/barretenberg/blake2s.test.js +2 -2
  120. package/dest/node/barretenberg/index.d.ts +4 -6
  121. package/dest/node/barretenberg/index.d.ts.map +1 -1
  122. package/dest/node/barretenberg/index.js +20 -29
  123. package/dest/node/barretenberg/pedersen.test.d.ts +1 -1
  124. package/dest/node/barretenberg/pedersen.test.js +2 -2
  125. package/dest/node/barretenberg/poseidon.bench.test.d.ts +1 -1
  126. package/dest/node/barretenberg/poseidon.bench.test.js +81 -79
  127. package/dest/node/barretenberg/poseidon.test.d.ts +1 -1
  128. package/dest/node/barretenberg/poseidon.test.js +2 -2
  129. package/dest/node/barretenberg/testing/bigint-buffer.d.ts +17 -0
  130. package/dest/node/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  131. package/dest/node/barretenberg/testing/bigint-buffer.js +37 -0
  132. package/dest/node/barretenberg/testing/fields.d.ts +16 -0
  133. package/dest/node/barretenberg/testing/fields.d.ts.map +1 -0
  134. package/dest/node/barretenberg/testing/fields.js +47 -0
  135. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  136. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  137. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  138. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -6
  139. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  140. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  141. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +1 -3
  142. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  143. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  144. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  145. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  146. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  147. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  148. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  149. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  150. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  151. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  152. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  153. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  154. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  155. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  156. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  157. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +1 -3
  158. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  159. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  160. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  161. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  162. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  163. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  164. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  165. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  166. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  167. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  168. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  169. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  170. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  171. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +1 -1
  172. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  173. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  174. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +1 -1
  175. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  176. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  177. package/dest/node/barretenberg_wasm/helpers/browser/index.js +9 -2
  178. package/dest/node/barretenberg_wasm/helpers/index.d.ts +1 -1
  179. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  180. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  181. package/dest/node/barretenberg_wasm/helpers/node/index.js +14 -6
  182. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  183. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  184. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  185. package/dest/node/barretenberg_wasm/index.d.ts +1 -1
  186. package/dest/node/barretenberg_wasm/index.d.ts.map +1 -1
  187. package/dest/node/barretenberg_wasm/index.js +2 -3
  188. package/dest/node/barretenberg_wasm/index.test.d.ts +1 -1
  189. package/dest/node/barretenberg_wasm/index.test.js +1 -1
  190. package/dest/node/bb_backends/browser/index.d.ts +1 -1
  191. package/dest/node/bb_backends/browser/index.js +1 -1
  192. package/dest/node/bb_backends/browser/platform.d.ts +4 -0
  193. package/dest/node/bb_backends/browser/platform.d.ts.map +1 -0
  194. package/dest/node/bb_backends/browser/platform.js +10 -0
  195. package/dest/node/bb_backends/index.d.ts +10 -7
  196. package/dest/node/bb_backends/index.d.ts.map +1 -1
  197. package/dest/node/bb_backends/index.js +8 -7
  198. package/dest/node/bb_backends/interface.d.ts +1 -1
  199. package/dest/node/bb_backends/node/index.d.ts +1 -1
  200. package/dest/node/bb_backends/node/index.d.ts.map +1 -1
  201. package/dest/node/bb_backends/node/index.js +15 -9
  202. package/dest/node/bb_backends/node/native_pipe.d.ts +1 -1
  203. package/dest/node/bb_backends/node/native_pipe.d.ts.map +1 -1
  204. package/dest/node/bb_backends/node/native_pipe.js +11 -10
  205. package/dest/node/bb_backends/node/native_shm.d.ts +3 -3
  206. package/dest/node/bb_backends/node/native_shm.d.ts.map +1 -1
  207. package/dest/node/bb_backends/node/native_shm.js +49 -22
  208. package/dest/node/bb_backends/node/native_shm_async.d.ts +51 -0
  209. package/dest/node/bb_backends/node/native_shm_async.d.ts.map +1 -0
  210. package/dest/node/bb_backends/node/native_shm_async.js +237 -0
  211. package/dest/node/bb_backends/node/native_socket.d.ts +2 -2
  212. package/dest/node/bb_backends/node/native_socket.d.ts.map +1 -1
  213. package/dest/node/bb_backends/node/native_socket.js +43 -31
  214. package/dest/node/bb_backends/node/platform.d.ts +1 -1
  215. package/dest/node/bb_backends/node/platform.js +1 -1
  216. package/dest/node/bb_backends/wasm.d.ts +1 -1
  217. package/dest/node/bb_backends/wasm.d.ts.map +1 -1
  218. package/dest/node/bb_backends/wasm.js +5 -3
  219. package/dest/node/bbapi/exception_handling.test.d.ts +2 -0
  220. package/dest/node/bbapi/exception_handling.test.d.ts.map +1 -0
  221. package/dest/node/bbapi/exception_handling.test.js +48 -0
  222. package/dest/node/bbapi_exception.d.ts +7 -0
  223. package/dest/node/bbapi_exception.d.ts.map +1 -0
  224. package/dest/node/bbapi_exception.js +14 -0
  225. package/dest/node/benchmark/index.d.ts +1 -1
  226. package/dest/node/benchmark/index.js +1 -1
  227. package/dest/node/benchmark/timer.d.ts +1 -1
  228. package/dest/node/benchmark/timer.d.ts.map +1 -1
  229. package/dest/node/benchmark/timer.js +2 -1
  230. package/dest/node/bin/index.d.ts +3 -0
  231. package/dest/node/bin/index.d.ts.map +1 -0
  232. package/dest/node/bin/index.js +11 -0
  233. package/dest/node/cbind/generate.d.ts +1 -1
  234. package/dest/node/cbind/generate.js +93 -1
  235. package/dest/node/cbind/generated/api_types.d.ts +632 -400
  236. package/dest/node/cbind/generated/api_types.d.ts.map +1 -1
  237. package/dest/node/cbind/generated/api_types.js +773 -465
  238. package/dest/node/cbind/generated/async.d.ts +16 -11
  239. package/dest/node/cbind/generated/async.d.ts.map +1 -1
  240. package/dest/node/cbind/generated/async.js +305 -96
  241. package/dest/node/cbind/generated/curve_constants.d.ts +45 -0
  242. package/dest/node/cbind/generated/curve_constants.d.ts.map +1 -0
  243. package/dest/node/cbind/generated/curve_constants.js +45 -0
  244. package/dest/node/cbind/generated/sync.d.ts +16 -11
  245. package/dest/node/cbind/generated/sync.d.ts.map +1 -1
  246. package/dest/node/cbind/generated/sync.js +300 -96
  247. package/dest/node/cbind/schema_compiler.d.ts +1 -1
  248. package/dest/node/cbind/schema_compiler.d.ts.map +1 -1
  249. package/dest/node/cbind/schema_compiler.js +29 -8
  250. package/dest/node/crs/browser/cached_net_crs.d.ts +1 -1
  251. package/dest/node/crs/browser/cached_net_crs.d.ts.map +1 -1
  252. package/dest/node/crs/browser/cached_net_crs.js +6 -1
  253. package/dest/node/crs/browser/index.d.ts +1 -1
  254. package/dest/node/crs/index.d.ts +1 -1
  255. package/dest/node/crs/net_crs.d.ts +1 -16
  256. package/dest/node/crs/net_crs.d.ts.map +1 -1
  257. package/dest/node/crs/net_crs.js +6 -1
  258. package/dest/node/crs/node/index.d.ts +1 -1
  259. package/dest/node/crs/node/index.d.ts.map +1 -1
  260. package/dest/node/crs/node/index.js +11 -6
  261. package/dest/node/index.d.ts +6 -3
  262. package/dest/node/index.d.ts.map +1 -1
  263. package/dest/node/index.js +5 -2
  264. package/dest/node/proof/index.d.ts +1 -1
  265. package/dest/node/proof/index.js +1 -1
  266. package/dest/node/random/browser/index.d.ts +1 -1
  267. package/dest/node/random/browser/index.d.ts.map +1 -1
  268. package/dest/node/random/browser/index.js +1 -1
  269. package/dest/node/random/index.d.ts +1 -1
  270. package/dest/node/random/node/index.d.ts +1 -1
  271. package/dest/node/random/node/index.js +1 -1
  272. package/dest/node/retry/index.d.ts +1 -1
  273. package/dest/node/retry/index.js +1 -1
  274. package/dest/node-cjs/async_map/index.d.ts +1 -1
  275. package/dest/node-cjs/async_map/index.js +1 -1
  276. package/dest/node-cjs/barretenberg/backend.d.ts +30 -39
  277. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  278. package/dest/node-cjs/barretenberg/backend.js +108 -103
  279. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +1 -1
  280. package/dest/node-cjs/barretenberg/blake2s.test.js +6 -6
  281. package/dest/node-cjs/barretenberg/index.d.ts +4 -6
  282. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  283. package/dest/node-cjs/barretenberg/index.js +25 -34
  284. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +1 -1
  285. package/dest/node-cjs/barretenberg/pedersen.test.js +9 -9
  286. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +1 -1
  287. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +89 -87
  288. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +1 -1
  289. package/dest/node-cjs/barretenberg/poseidon.test.js +4 -4
  290. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts +17 -0
  291. package/dest/node-cjs/barretenberg/testing/bigint-buffer.d.ts.map +1 -0
  292. package/dest/node-cjs/barretenberg/testing/bigint-buffer.js +43 -0
  293. package/dest/node-cjs/barretenberg/testing/fields.d.ts +16 -0
  294. package/dest/node-cjs/barretenberg/testing/fields.d.ts.map +1 -0
  295. package/dest/node-cjs/barretenberg/testing/fields.js +51 -0
  296. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  297. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
  298. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  299. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +7 -8
  300. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +1 -1
  301. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
  302. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +3 -5
  303. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +1 -1
  304. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +1 -7
  305. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -1
  306. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
  307. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +1 -3
  308. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +1 -1
  309. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
  310. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +1 -1
  311. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +1 -1
  312. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +5 -4
  313. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +13 -7
  314. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  315. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +45 -18
  316. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +1 -1
  317. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
  318. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +3 -5
  319. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +1 -1
  320. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +1 -7
  321. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -1
  322. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
  323. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +1 -3
  324. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +1 -1
  325. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +1 -7
  326. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +9 -8
  327. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  328. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +4 -3
  329. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +1 -1
  330. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  331. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +1 -1
  332. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  333. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
  334. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +2 -2
  335. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +1 -1
  336. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
  337. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +2 -2
  338. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +2 -2
  339. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
  340. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +9 -2
  341. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +1 -1
  342. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +5 -6
  343. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
  344. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +15 -7
  345. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +2 -2
  346. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +1 -1
  347. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +1 -1
  348. package/dest/node-cjs/barretenberg_wasm/index.d.ts +1 -1
  349. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +1 -1
  350. package/dest/node-cjs/barretenberg_wasm/index.js +2 -3
  351. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +1 -1
  352. package/dest/node-cjs/barretenberg_wasm/index.test.js +1 -1
  353. package/dest/node-cjs/bb_backends/browser/index.d.ts +1 -1
  354. package/dest/node-cjs/bb_backends/browser/index.js +1 -1
  355. package/dest/node-cjs/bb_backends/browser/platform.d.ts +4 -0
  356. package/dest/node-cjs/bb_backends/browser/platform.d.ts.map +1 -0
  357. package/dest/node-cjs/bb_backends/browser/platform.js +15 -0
  358. package/dest/node-cjs/bb_backends/index.d.ts +10 -7
  359. package/dest/node-cjs/bb_backends/index.d.ts.map +1 -1
  360. package/dest/node-cjs/bb_backends/index.js +6 -6
  361. package/dest/node-cjs/bb_backends/interface.d.ts +1 -1
  362. package/dest/node-cjs/bb_backends/node/index.d.ts +1 -1
  363. package/dest/node-cjs/bb_backends/node/index.d.ts.map +1 -1
  364. package/dest/node-cjs/bb_backends/node/index.js +15 -9
  365. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +1 -1
  366. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +1 -1
  367. package/dest/node-cjs/bb_backends/node/native_pipe.js +11 -10
  368. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +3 -3
  369. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +1 -1
  370. package/dest/node-cjs/bb_backends/node/native_shm.js +49 -22
  371. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts +51 -0
  372. package/dest/node-cjs/bb_backends/node/native_shm_async.d.ts.map +1 -0
  373. package/dest/node-cjs/bb_backends/node/native_shm_async.js +241 -0
  374. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +2 -2
  375. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +1 -1
  376. package/dest/node-cjs/bb_backends/node/native_socket.js +43 -31
  377. package/dest/node-cjs/bb_backends/node/platform.d.ts +1 -1
  378. package/dest/node-cjs/bb_backends/node/platform.js +2 -2
  379. package/dest/node-cjs/bb_backends/wasm.d.ts +1 -1
  380. package/dest/node-cjs/bb_backends/wasm.d.ts.map +1 -1
  381. package/dest/node-cjs/bb_backends/wasm.js +5 -3
  382. package/dest/node-cjs/bbapi/exception_handling.test.d.ts +2 -0
  383. package/dest/node-cjs/bbapi/exception_handling.test.d.ts.map +1 -0
  384. package/dest/node-cjs/bbapi/exception_handling.test.js +50 -0
  385. package/dest/node-cjs/bbapi_exception.d.ts +7 -0
  386. package/dest/node-cjs/bbapi_exception.d.ts.map +1 -0
  387. package/dest/node-cjs/bbapi_exception.js +18 -0
  388. package/dest/node-cjs/benchmark/index.d.ts +1 -1
  389. package/dest/node-cjs/benchmark/index.js +2 -2
  390. package/dest/node-cjs/benchmark/timer.d.ts +1 -1
  391. package/dest/node-cjs/benchmark/timer.d.ts.map +1 -1
  392. package/dest/node-cjs/benchmark/timer.js +2 -1
  393. package/dest/node-cjs/bin/index.d.ts +3 -0
  394. package/dest/node-cjs/bin/index.d.ts.map +1 -0
  395. package/dest/node-cjs/bin/index.js +13 -0
  396. package/dest/node-cjs/cbind/generate.d.ts +1 -1
  397. package/dest/node-cjs/cbind/generate.js +93 -1
  398. package/dest/node-cjs/cbind/generated/api_types.d.ts +632 -400
  399. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -1
  400. package/dest/node-cjs/cbind/generated/api_types.js +843 -507
  401. package/dest/node-cjs/cbind/generated/async.d.ts +16 -11
  402. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -1
  403. package/dest/node-cjs/cbind/generated/async.js +304 -95
  404. package/dest/node-cjs/cbind/generated/curve_constants.d.ts +45 -0
  405. package/dest/node-cjs/cbind/generated/curve_constants.d.ts.map +1 -0
  406. package/dest/node-cjs/cbind/generated/curve_constants.js +48 -0
  407. package/dest/node-cjs/cbind/generated/sync.d.ts +16 -11
  408. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -1
  409. package/dest/node-cjs/cbind/generated/sync.js +299 -95
  410. package/dest/node-cjs/cbind/schema_compiler.d.ts +1 -1
  411. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -1
  412. package/dest/node-cjs/cbind/schema_compiler.js +29 -8
  413. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +1 -1
  414. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +1 -1
  415. package/dest/node-cjs/crs/browser/cached_net_crs.js +6 -1
  416. package/dest/node-cjs/crs/browser/index.d.ts +1 -1
  417. package/dest/node-cjs/crs/browser/index.js +2 -2
  418. package/dest/node-cjs/crs/index.d.ts +1 -1
  419. package/dest/node-cjs/crs/index.js +2 -2
  420. package/dest/node-cjs/crs/net_crs.d.ts +1 -16
  421. package/dest/node-cjs/crs/net_crs.d.ts.map +1 -1
  422. package/dest/node-cjs/crs/net_crs.js +6 -1
  423. package/dest/node-cjs/crs/node/index.d.ts +1 -1
  424. package/dest/node-cjs/crs/node/index.d.ts.map +1 -1
  425. package/dest/node-cjs/crs/node/index.js +11 -6
  426. package/dest/node-cjs/index.d.ts +6 -3
  427. package/dest/node-cjs/index.d.ts.map +1 -1
  428. package/dest/node-cjs/index.js +28 -11
  429. package/dest/node-cjs/proof/index.d.ts +1 -1
  430. package/dest/node-cjs/proof/index.js +1 -1
  431. package/dest/node-cjs/random/browser/index.d.ts +1 -1
  432. package/dest/node-cjs/random/browser/index.d.ts.map +1 -1
  433. package/dest/node-cjs/random/browser/index.js +1 -1
  434. package/dest/node-cjs/random/index.d.ts +1 -1
  435. package/dest/node-cjs/random/node/index.d.ts +1 -1
  436. package/dest/node-cjs/random/node/index.js +1 -1
  437. package/dest/node-cjs/retry/index.d.ts +1 -1
  438. package/dest/node-cjs/retry/index.js +1 -1
  439. package/package.json +8 -6
  440. package/src/barretenberg/backend.ts +125 -126
  441. package/src/barretenberg/blake2s.test.ts +1 -1
  442. package/src/barretenberg/index.ts +24 -29
  443. package/src/barretenberg/pedersen.test.ts +1 -1
  444. package/src/barretenberg/poseidon.bench.test.ts +161 -157
  445. package/src/barretenberg/poseidon.test.ts +1 -1
  446. package/src/barretenberg/testing/fields.ts +63 -0
  447. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +1 -2
  448. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +0 -2
  449. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +0 -7
  450. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +0 -2
  451. package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +0 -9
  452. package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +4 -4
  453. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +37 -4
  454. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +0 -2
  455. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +0 -7
  456. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +0 -2
  457. package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +0 -7
  458. package/src/barretenberg_wasm/barretenberg_wasm_thread/index.ts +3 -2
  459. package/src/barretenberg_wasm/helpers/browser/index.ts +8 -1
  460. package/src/barretenberg_wasm/helpers/node/index.ts +13 -6
  461. package/src/barretenberg_wasm/index.ts +1 -2
  462. package/src/bb_backends/browser/platform.ts +11 -0
  463. package/src/bb_backends/index.ts +9 -6
  464. package/src/bb_backends/node/index.ts +16 -8
  465. package/src/bb_backends/node/native_shm.ts +48 -24
  466. package/src/bb_backends/node/native_shm_async.ts +266 -0
  467. package/src/bb_backends/node/native_socket.ts +31 -17
  468. package/src/bb_backends/wasm.ts +1 -2
  469. package/src/bbapi/exception_handling.test.ts +54 -0
  470. package/src/bbapi_exception.ts +13 -0
  471. package/src/bin/index.ts +14 -0
  472. package/src/cbind/generate.ts +99 -0
  473. package/src/cbind/schema_compiler.ts +25 -3
  474. package/src/crs/node/index.ts +4 -5
  475. package/src/index.ts +32 -1
  476. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +0 -15
  477. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  478. package/dest/browser/bb_backends/sync_to_async_adapter.js +0 -20
  479. package/dest/browser/bigint-array/index.d.ts +0 -17
  480. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  481. package/dest/browser/bigint-array/index.js +0 -37
  482. package/dest/browser/log/browser/index.d.ts +0 -6
  483. package/dest/browser/log/browser/index.d.ts.map +0 -1
  484. package/dest/browser/log/browser/index.js +0 -28
  485. package/dest/browser/log/index.d.ts +0 -2
  486. package/dest/browser/log/index.d.ts.map +0 -1
  487. package/dest/browser/log/index.js +0 -2
  488. package/dest/browser/log/types.d.ts +0 -6
  489. package/dest/browser/log/types.d.ts.map +0 -1
  490. package/dest/browser/log/types.js +0 -2
  491. package/dest/browser/serialize/buffer_reader.d.ts +0 -28
  492. package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
  493. package/dest/browser/serialize/buffer_reader.js +0 -66
  494. package/dest/browser/serialize/index.d.ts +0 -3
  495. package/dest/browser/serialize/index.d.ts.map +0 -1
  496. package/dest/browser/serialize/index.js +0 -3
  497. package/dest/browser/serialize/serialize.d.ts +0 -18
  498. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  499. package/dest/browser/serialize/serialize.js +0 -72
  500. package/dest/browser/types/fields.d.ts +0 -43
  501. package/dest/browser/types/fields.d.ts.map +0 -1
  502. package/dest/browser/types/fields.js +0 -102
  503. package/dest/browser/types/index.d.ts +0 -3
  504. package/dest/browser/types/index.d.ts.map +0 -1
  505. package/dest/browser/types/index.js +0 -3
  506. package/dest/browser/types/point.d.ts +0 -16
  507. package/dest/browser/types/point.d.ts.map +0 -1
  508. package/dest/browser/types/point.js +0 -31
  509. package/dest/node/bb_backends/sync_to_async_adapter.d.ts +0 -15
  510. package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  511. package/dest/node/bb_backends/sync_to_async_adapter.js +0 -20
  512. package/dest/node/bigint-array/index.d.ts +0 -17
  513. package/dest/node/bigint-array/index.d.ts.map +0 -1
  514. package/dest/node/bigint-array/index.js +0 -37
  515. package/dest/node/log/browser/index.d.ts +0 -6
  516. package/dest/node/log/browser/index.d.ts.map +0 -1
  517. package/dest/node/log/browser/index.js +0 -28
  518. package/dest/node/log/index.d.ts +0 -2
  519. package/dest/node/log/index.d.ts.map +0 -1
  520. package/dest/node/log/index.js +0 -2
  521. package/dest/node/log/node/index.d.ts +0 -6
  522. package/dest/node/log/node/index.d.ts.map +0 -1
  523. package/dest/node/log/node/index.js +0 -40
  524. package/dest/node/log/types.d.ts +0 -6
  525. package/dest/node/log/types.d.ts.map +0 -1
  526. package/dest/node/log/types.js +0 -2
  527. package/dest/node/serialize/buffer_reader.d.ts +0 -28
  528. package/dest/node/serialize/buffer_reader.d.ts.map +0 -1
  529. package/dest/node/serialize/buffer_reader.js +0 -66
  530. package/dest/node/serialize/index.d.ts +0 -3
  531. package/dest/node/serialize/index.d.ts.map +0 -1
  532. package/dest/node/serialize/index.js +0 -3
  533. package/dest/node/serialize/serialize.d.ts +0 -18
  534. package/dest/node/serialize/serialize.d.ts.map +0 -1
  535. package/dest/node/serialize/serialize.js +0 -72
  536. package/dest/node/types/fields.d.ts +0 -43
  537. package/dest/node/types/fields.d.ts.map +0 -1
  538. package/dest/node/types/fields.js +0 -102
  539. package/dest/node/types/index.d.ts +0 -3
  540. package/dest/node/types/index.d.ts.map +0 -1
  541. package/dest/node/types/index.js +0 -3
  542. package/dest/node/types/point.d.ts +0 -16
  543. package/dest/node/types/point.d.ts.map +0 -1
  544. package/dest/node/types/point.js +0 -31
  545. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +0 -15
  546. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  547. package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +0 -24
  548. package/dest/node-cjs/bigint-array/index.d.ts +0 -17
  549. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  550. package/dest/node-cjs/bigint-array/index.js +0 -43
  551. package/dest/node-cjs/log/browser/index.d.ts +0 -6
  552. package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
  553. package/dest/node-cjs/log/browser/index.js +0 -30
  554. package/dest/node-cjs/log/index.d.ts +0 -2
  555. package/dest/node-cjs/log/index.d.ts.map +0 -1
  556. package/dest/node-cjs/log/index.js +0 -8
  557. package/dest/node-cjs/log/node/index.d.ts +0 -6
  558. package/dest/node-cjs/log/node/index.d.ts.map +0 -1
  559. package/dest/node-cjs/log/node/index.js +0 -42
  560. package/dest/node-cjs/log/types.d.ts +0 -6
  561. package/dest/node-cjs/log/types.d.ts.map +0 -1
  562. package/dest/node-cjs/log/types.js +0 -3
  563. package/dest/node-cjs/serialize/buffer_reader.d.ts +0 -28
  564. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +0 -1
  565. package/dest/node-cjs/serialize/buffer_reader.js +0 -70
  566. package/dest/node-cjs/serialize/index.d.ts +0 -3
  567. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  568. package/dest/node-cjs/serialize/index.js +0 -6
  569. package/dest/node-cjs/serialize/serialize.d.ts +0 -18
  570. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  571. package/dest/node-cjs/serialize/serialize.js +0 -82
  572. package/dest/node-cjs/types/fields.d.ts +0 -43
  573. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  574. package/dest/node-cjs/types/fields.js +0 -107
  575. package/dest/node-cjs/types/index.d.ts +0 -3
  576. package/dest/node-cjs/types/index.d.ts.map +0 -1
  577. package/dest/node-cjs/types/index.js +0 -6
  578. package/dest/node-cjs/types/point.d.ts +0 -16
  579. package/dest/node-cjs/types/point.d.ts.map +0 -1
  580. package/dest/node-cjs/types/point.js +0 -35
  581. package/src/bb_backends/sync_to_async_adapter.ts +0 -21
  582. package/src/cbind/generated/api_types.ts +0 -3757
  583. package/src/cbind/generated/async.ts +0 -504
  584. package/src/cbind/generated/sync.ts +0 -455
  585. package/src/log/browser/index.ts +0 -35
  586. package/src/log/index.ts +0 -1
  587. package/src/log/node/index.ts +0 -52
  588. package/src/log/types.ts +0 -6
  589. package/src/serialize/buffer_reader.ts +0 -85
  590. package/src/serialize/index.ts +0 -2
  591. package/src/serialize/serialize.ts +0 -75
  592. package/src/types/fields.ts +0 -126
  593. package/src/types/index.ts +0 -2
  594. package/src/types/point.ts +0 -38
  595. /package/src/{bigint-array/index.ts → barretenberg/testing/bigint-buffer.ts} +0 -0
Binary file
Binary file
Binary file
Binary file
@@ -7,4 +7,4 @@
7
7
  * The equivalent with asyncMap: `await asyncMap(arr, async e => { ... })`.
8
8
  */
9
9
  export declare function asyncMap<T, U>(arr: T[], fn: (e: T, i: number) => Promise<U>): Promise<U[]>;
10
- //# sourceMappingURL=index.d.ts.map
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hc3luY19tYXAvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUNILHdCQUFzQixRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FNaEcifQ==
@@ -13,4 +13,4 @@ export async function asyncMap(arr, fn) {
13
13
  }
14
14
  return results;
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXN5bmNfbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFFBQVEsQ0FBTyxHQUFRLEVBQUUsRUFBbUM7SUFDaEYsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXN5bmNfbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFFBQVEsQ0FBTyxHQUFRLEVBQUUsRUFBbUMsRUFBZ0I7SUFDaEcsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFBQSxDQUNoQiJ9
@@ -1,53 +1,49 @@
1
- import { BackendOptions, Barretenberg, CircuitOptions } from './index.js';
1
+ import { Barretenberg } from './index.js';
2
2
  import { ProofData } from '../proof/index.js';
3
3
  export declare class AztecClientBackendError extends Error {
4
4
  constructor(message: string);
5
5
  }
6
+ /**
7
+ * Target verification environment for proof generation.
8
+ * This determines the hash function used and whether zero-knowledge is enabled.
9
+ */
10
+ export type VerifierTarget = 'evm' | 'evm-no-zk' | 'noir-recursive' | 'noir-recursive-no-zk' | 'noir-rollup' | 'noir-rollup-no-zk' | 'starknet' | 'starknet-no-zk';
6
11
  /**
7
12
  * Options for the UltraHonkBackend.
8
13
  */
9
14
  export type UltraHonkBackendOptions = {
10
- /** Selecting this option will use the keccak hash function instead of poseidon
11
- * when generating challenges in the proof.
12
- * Use this when you want to verify the created proof on an EVM chain.
15
+ /**
16
+ * Target verification environment. Determines hash function and ZK settings.
17
+ * This is the recommended way to configure proof generation.
18
+ *
19
+ * @example
20
+ * // For EVM/Solidity verification
21
+ * backend.generateProof(witness, { verifierTarget: 'evm' });
22
+ *
23
+ * // For recursive verification in Noir
24
+ * backend.generateProof(witness, { verifierTarget: 'noir-recursive' });
13
25
  */
26
+ verifierTarget?: VerifierTarget;
27
+ /** @deprecated Use verifierTarget: 'evm-no-zk' instead */
14
28
  keccak?: boolean;
15
- /** Selecting this option will use the keccak hash function instead of poseidon
16
- * when generating challenges in the proof.
17
- * Use this when you want to verify the created proof on an EVM chain.
18
- */
29
+ /** @deprecated Use verifierTarget: 'evm' instead */
19
30
  keccakZK?: boolean;
20
- /** Selecting this option will use the poseidon/stark252 hash function instead of poseidon
21
- * when generating challenges in the proof.
22
- * Use this when you want to verify the created proof on an Starknet chain with Garaga.
23
- */
31
+ /** @deprecated Use verifierTarget: 'starknet-no-zk' instead */
24
32
  starknet?: boolean;
25
- /** Selecting this option will use the poseidon/stark252 hash function instead of poseidon
26
- * when generating challenges in the proof.
27
- * Use this when you want to verify the created proof on an Starknet chain with Garaga.
28
- */
33
+ /** @deprecated Use verifierTarget: 'starknet' instead */
29
34
  starknetZK?: boolean;
30
35
  };
31
36
  export declare class UltraHonkVerifierBackend {
32
- protected backendOptions: BackendOptions;
33
- protected circuitOptions: CircuitOptions;
34
- protected api: Barretenberg;
35
- constructor(backendOptions?: BackendOptions, circuitOptions?: CircuitOptions);
36
- /** @ignore */
37
- private instantiate;
37
+ private api;
38
+ constructor(api: Barretenberg);
38
39
  verifyProof(proofData: ProofData & {
39
40
  verificationKey: Uint8Array;
40
41
  }, options?: UltraHonkBackendOptions): Promise<boolean>;
41
- destroy(): Promise<void>;
42
42
  }
43
43
  export declare class UltraHonkBackend {
44
- protected backendOptions: BackendOptions;
45
- protected circuitOptions: CircuitOptions;
46
- protected api: Barretenberg;
47
- protected acirUncompressedBytecode: Uint8Array;
48
- constructor(acirBytecode: string, backendOptions?: BackendOptions, circuitOptions?: CircuitOptions);
49
- /** @ignore */
50
- private instantiate;
44
+ private api;
45
+ private acirUncompressedBytecode;
46
+ constructor(acirBytecode: string, api: Barretenberg);
51
47
  generateProof(compressedWitness: Uint8Array, options?: UltraHonkBackendOptions): Promise<ProofData>;
52
48
  verifyProof(proofData: ProofData, options?: UltraHonkBackendOptions): Promise<boolean>;
53
49
  getVerificationKey(options?: UltraHonkBackendOptions): Promise<Uint8Array>;
@@ -58,18 +54,13 @@ export declare class UltraHonkBackend {
58
54
  vkAsFields: string[];
59
55
  vkHash: string;
60
56
  }>;
61
- destroy(): Promise<void>;
62
57
  }
63
58
  export declare class AztecClientBackend {
64
- protected acirBuf: Uint8Array[];
65
- protected options: BackendOptions;
66
- protected api: Barretenberg;
67
- constructor(acirBuf: Uint8Array[], options?: BackendOptions);
68
- /** @ignore */
69
- private instantiate;
59
+ private acirBuf;
60
+ private api;
61
+ constructor(acirBuf: Uint8Array[], api: Barretenberg);
70
62
  prove(witnessBuf: Uint8Array[], vksBuf?: Uint8Array[]): Promise<[Uint8Array[], Uint8Array, Uint8Array]>;
71
63
  verify(proof: Uint8Array, vk: Uint8Array): Promise<boolean>;
72
64
  gates(): Promise<number[]>;
73
- destroy(): Promise<void>;
74
65
  }
75
- //# sourceMappingURL=backend.d.ts.map
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhcnJldGVuYmVyZy9iYWNrZW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBb0MsTUFBTSxtQkFBbUIsQ0FBQztBQUtoRixxQkFBYSx1QkFBd0IsU0FBUSxLQUFLO0lBQ2hELFlBQVksT0FBTyxFQUFFLE1BQU0sRUFFMUI7Q0FDRjtBQUVEOzs7R0FHRztBQUNILE1BQU0sTUFBTSxjQUFjLEdBQ3RCLEtBQUssR0FDTCxXQUFXLEdBQ1gsZ0JBQWdCLEdBQ2hCLHNCQUFzQixHQUN0QixhQUFhLEdBQ2IsbUJBQW1CLEdBQ25CLFVBQVUsR0FDVixnQkFBZ0IsQ0FBQztBQUVyQjs7R0FFRztBQUNILE1BQU0sTUFBTSx1QkFBdUIsR0FBRztJQUNwQzs7Ozs7Ozs7OztPQVVHO0lBQ0gsY0FBYyxDQUFDLEVBQUUsY0FBYyxDQUFDO0lBSWhDLDBEQUEwRDtJQUMxRCxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDakIsb0RBQW9EO0lBQ3BELFFBQVEsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUNuQiwrREFBK0Q7SUFDL0QsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQ25CLHlEQUF5RDtJQUN6RCxVQUFVLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDdEIsQ0FBQztBQWtGRixxQkFBYSx3QkFBd0I7SUFDdkIsT0FBTyxDQUFDLEdBQUc7SUFBdkIsWUFBb0IsR0FBRyxFQUFFLFlBQVksRUFBSTtJQUVuQyxXQUFXLENBQ2YsU0FBUyxFQUFFLFNBQVMsR0FBRztRQUFFLGVBQWUsRUFBRSxVQUFVLENBQUE7S0FBRSxFQUN0RCxPQUFPLENBQUMsRUFBRSx1QkFBdUIsR0FDaEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQVlsQjtDQUNGO0FBRUQscUJBQWEsZ0JBQWdCO0lBVXpCLE9BQU8sQ0FBQyxHQUFHO0lBSmIsT0FBTyxDQUFDLHdCQUF3QixDQUFhO0lBRTdDLFlBQ0UsWUFBWSxFQUFFLE1BQU0sRUFDWixHQUFHLEVBQUUsWUFBWSxFQUcxQjtJQUVLLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUUsdUJBQXVCLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQW9CeEc7SUFFSyxXQUFXLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsRUFBRSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBb0IzRjtJQUVLLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxFQUFFLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FTL0U7SUFFRCwrQ0FBK0M7SUFDekMsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsRUFBRSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBTTVGO0lBR0ssK0JBQStCLENBRW5DLE1BQU0sRUFBRSxVQUFVLEVBRWxCLGtCQUFrQixFQUFFLE1BQU0sR0FDekIsT0FBTyxDQUFDO1FBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBQUMsQ0FtQzVFO0NBQ0Y7QUFFRCxxQkFBYSxrQkFBa0I7SUFPM0IsT0FBTyxDQUFDLE9BQU87SUFDZixPQUFPLENBQUMsR0FBRztJQUZiLFlBQ1UsT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUNyQixHQUFHLEVBQUUsWUFBWSxFQUN2QjtJQUVFLEtBQUssQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLEVBQUUsTUFBTSxHQUFFLFVBQVUsRUFBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQTJEaEg7SUFFSyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FNaEU7SUFFSyxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBYS9CO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAoC,MAAM,mBAAmB,CAAC;AAMhF,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAsBF,qBAAa,wBAAwB;IAIjC,SAAS,CAAC,cAAc,EAAE,cAAc;IACxC,SAAS,CAAC,cAAc,EAAE,cAAc;IAJ1C,SAAS,CAAC,GAAG,EAAG,YAAY,CAAC;gBAGjB,cAAc,GAAE,cAA+B,EAC/C,cAAc,GAAE,cAAqC;IAEjE,cAAc;YACA,WAAW;IAUnB,WAAW,CACf,SAAS,EAAE,SAAS,GAAG;QAAE,eAAe,EAAE,UAAU,CAAA;KAAE,EACtD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,OAAO,CAAC;IAenB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAMzB;AAED,qBAAa,gBAAgB;IAWzB,SAAS,CAAC,cAAc,EAAE,cAAc;IACxC,SAAS,CAAC,cAAc,EAAE,cAAc;IAN1C,SAAS,CAAC,GAAG,EAAG,YAAY,CAAC;IAC7B,SAAS,CAAC,wBAAwB,EAAE,UAAU,CAAC;gBAG7C,YAAY,EAAE,MAAM,EACV,cAAc,GAAE,cAA+B,EAC/C,cAAc,GAAE,cAAqC;IAIjE,cAAc;YACA,WAAW;IAUnB,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC;IAwBnG,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBtF,kBAAkB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAahF,+CAA+C;IACzC,mBAAmB,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAUvF,+BAA+B,CAEnC,MAAM,EAAE,UAAU,EAElB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAsCvE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B;AAED,qBAAa,kBAAkB;IAS3B,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE;IAC/B,SAAS,CAAC,OAAO,EAAE,cAAc;IAJnC,SAAS,CAAC,GAAG,EAAG,YAAY,CAAC;gBAGjB,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,GAAE,cAA+B;IAGpD,cAAc;YACA,WAAW;IAQnB,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,MAAM,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IA8D3G,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3D,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAgB1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAoC,MAAM,mBAAmB,CAAC;AAKhF,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB,KAAK,GACL,WAAW,GACX,gBAAgB,GAChB,sBAAsB,GACtB,aAAa,GACb,mBAAmB,GACnB,UAAU,GACV,gBAAgB,CAAC;AAErB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAIhC,0DAA0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAkFF,qBAAa,wBAAwB;IACvB,OAAO,CAAC,GAAG;IAAvB,YAAoB,GAAG,EAAE,YAAY,EAAI;IAEnC,WAAW,CACf,SAAS,EAAE,SAAS,GAAG;QAAE,eAAe,EAAE,UAAU,CAAA;KAAE,EACtD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,OAAO,CAAC,CAYlB;CACF;AAED,qBAAa,gBAAgB;IAUzB,OAAO,CAAC,GAAG;IAJb,OAAO,CAAC,wBAAwB,CAAa;IAE7C,YACE,YAAY,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,EAG1B;IAEK,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,CAoBxG;IAEK,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC,CAoB3F;IAEK,kBAAkB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,CAS/E;IAED,+CAA+C;IACzC,mBAAmB,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAM5F;IAGK,+BAA+B,CAEnC,MAAM,EAAE,UAAU,EAElB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAmC5E;CACF;AAED,qBAAa,kBAAkB;IAO3B,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,GAAG;IAFb,YACU,OAAO,EAAE,UAAU,EAAE,EACrB,GAAG,EAAE,YAAY,EACvB;IAEE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,MAAM,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CA2DhH;IAEK,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAMhE;IAEK,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAa/B;CACF"}
@@ -1,8 +1,6 @@
1
- import { Barretenberg } from './index.js';
2
1
  import { uint8ArrayToHex, hexToUint8Array } from '../proof/index.js';
3
- import { fromClientIVCProof, toClientIVCProof } from '../cbind/generated/api_types.js';
2
+ import { fromChonkProof, toChonkProof } from '../cbind/generated/api_types.js';
4
3
  import { ungzip } from 'pako';
5
- import { Buffer } from 'buffer';
6
4
  import { Decoder, Encoder } from 'msgpackr';
7
5
  export class AztecClientBackendError extends Error {
8
6
  constructor(message) {
@@ -10,6 +8,63 @@ export class AztecClientBackendError extends Error {
10
8
  }
11
9
  }
12
10
  function getProofSettingsFromOptions(options) {
11
+ // Check for conflicting options - verifierTarget should not be combined with legacy options
12
+ if (options?.verifierTarget) {
13
+ const legacyOptions = [options.keccak, options.keccakZK, options.starknet, options.starknetZK].filter(Boolean);
14
+ if (legacyOptions.length > 0) {
15
+ throw new Error('Cannot use verifierTarget with legacy options (keccak, keccakZK, starknet, starknetZK). ' +
16
+ 'Use verifierTarget alone.');
17
+ }
18
+ switch (options.verifierTarget) {
19
+ case 'evm':
20
+ return { ipaAccumulation: false, oracleHashType: 'keccak', disableZk: false, optimizedSolidityVerifier: false };
21
+ case 'evm-no-zk':
22
+ return { ipaAccumulation: false, oracleHashType: 'keccak', disableZk: true, optimizedSolidityVerifier: false };
23
+ case 'noir-recursive':
24
+ return {
25
+ ipaAccumulation: false,
26
+ oracleHashType: 'poseidon2',
27
+ disableZk: false,
28
+ optimizedSolidityVerifier: false,
29
+ };
30
+ case 'noir-recursive-no-zk':
31
+ return {
32
+ ipaAccumulation: false,
33
+ oracleHashType: 'poseidon2',
34
+ disableZk: true,
35
+ optimizedSolidityVerifier: false,
36
+ };
37
+ case 'noir-rollup':
38
+ return {
39
+ ipaAccumulation: true,
40
+ oracleHashType: 'poseidon2',
41
+ disableZk: false,
42
+ optimizedSolidityVerifier: false,
43
+ };
44
+ case 'noir-rollup-no-zk':
45
+ return {
46
+ ipaAccumulation: true,
47
+ oracleHashType: 'poseidon2',
48
+ disableZk: true,
49
+ optimizedSolidityVerifier: false,
50
+ };
51
+ case 'starknet':
52
+ return {
53
+ ipaAccumulation: false,
54
+ oracleHashType: 'starknet',
55
+ disableZk: false,
56
+ optimizedSolidityVerifier: false,
57
+ };
58
+ case 'starknet-no-zk':
59
+ return {
60
+ ipaAccumulation: false,
61
+ oracleHashType: 'starknet',
62
+ disableZk: true,
63
+ optimizedSolidityVerifier: false,
64
+ };
65
+ }
66
+ }
67
+ // Legacy options support (deprecated)
13
68
  return {
14
69
  ipaAccumulation: false,
15
70
  oracleHashType: options?.keccak || options?.keccakZK
@@ -17,27 +72,16 @@ function getProofSettingsFromOptions(options) {
17
72
  : options?.starknet || options?.starknetZK
18
73
  ? 'starknet'
19
74
  : 'poseidon2',
20
- // TODO no current way to target non-zk poseidon2 hash
21
75
  disableZk: options?.keccak || options?.starknet ? true : false,
22
76
  optimizedSolidityVerifier: false,
23
77
  };
24
78
  }
25
79
  export class UltraHonkVerifierBackend {
26
- constructor(backendOptions = { threads: 1 }, circuitOptions = { recursive: false }) {
27
- this.backendOptions = backendOptions;
28
- this.circuitOptions = circuitOptions;
29
- }
30
- /** @ignore */
31
- async instantiate() {
32
- if (!this.api) {
33
- const api = await Barretenberg.new(this.backendOptions);
34
- const honkRecursion = true;
35
- await api.initSRSForCircuitSize(0);
36
- this.api = api;
37
- }
80
+ api;
81
+ constructor(api) {
82
+ this.api = api;
38
83
  }
39
84
  async verifyProof(proofData, options) {
40
- await this.instantiate();
41
85
  const proofFrs = [];
42
86
  for (let i = 0; i < proofData.proof.length; i += 32) {
43
87
  proofFrs.push(proofData.proof.slice(i, i + 32));
@@ -50,37 +94,26 @@ export class UltraHonkVerifierBackend {
50
94
  });
51
95
  return verified;
52
96
  }
53
- destroy() {
54
- if (!this.api) {
55
- return Promise.resolve();
56
- }
57
- return this.api.destroy();
58
- }
59
97
  }
60
98
  export class UltraHonkBackend {
61
- constructor(acirBytecode, backendOptions = { threads: 1 }, circuitOptions = { recursive: false }) {
62
- this.backendOptions = backendOptions;
63
- this.circuitOptions = circuitOptions;
99
+ api;
100
+ // These type assertions are used so that we don't
101
+ // have to initialize `api` in the constructor.
102
+ // These are initialized asynchronously in the `init` function,
103
+ // constructors cannot be asynchronous which is why we do this.
104
+ acirUncompressedBytecode;
105
+ constructor(acirBytecode, api) {
106
+ this.api = api;
64
107
  this.acirUncompressedBytecode = acirToUint8Array(acirBytecode);
65
108
  }
66
- /** @ignore */
67
- async instantiate() {
68
- if (!this.api) {
69
- const api = await Barretenberg.new(this.backendOptions);
70
- const honkRecursion = true;
71
- await api.acirInitSRS(this.acirUncompressedBytecode, this.circuitOptions.recursive, honkRecursion);
72
- this.api = api;
73
- }
74
- }
75
109
  async generateProof(compressedWitness, options) {
76
- await this.instantiate();
77
110
  const witness = ungzip(compressedWitness);
78
111
  const { proof, publicInputs } = await this.api.circuitProve({
79
112
  witness,
80
113
  circuit: {
81
114
  name: 'circuit',
82
- bytecode: Buffer.from(this.acirUncompressedBytecode),
83
- verificationKey: Buffer.from([]), // Empty VK - lower performance.
115
+ bytecode: this.acirUncompressedBytecode,
116
+ verificationKey: new Uint8Array(0), // Empty VK - lower performance.
84
117
  },
85
118
  settings: getProofSettingsFromOptions(options),
86
119
  });
@@ -93,7 +126,6 @@ export class UltraHonkBackend {
93
126
  return { proof: flatProof, publicInputs: publicInputs.map(uint8ArrayToHex) };
94
127
  }
95
128
  async verifyProof(proofData, options) {
96
- await this.instantiate();
97
129
  const proofFrs = [];
98
130
  for (let i = 0; i < proofData.proof.length; i += 32) {
99
131
  proofFrs.push(proofData.proof.slice(i, i + 32));
@@ -115,11 +147,10 @@ export class UltraHonkBackend {
115
147
  return verified;
116
148
  }
117
149
  async getVerificationKey(options) {
118
- await this.instantiate();
119
150
  const vkResult = await this.api.circuitComputeVk({
120
151
  circuit: {
121
152
  name: 'circuit',
122
- bytecode: Buffer.from(this.acirUncompressedBytecode),
153
+ bytecode: this.acirUncompressedBytecode,
123
154
  },
124
155
  settings: getProofSettingsFromOptions(options),
125
156
  });
@@ -127,7 +158,6 @@ export class UltraHonkBackend {
127
158
  }
128
159
  /** @description Returns a solidity verifier */
129
160
  async getSolidityVerifier(vk, options) {
130
- await this.instantiate();
131
161
  const result = await this.api.circuitWriteSolidityVerifier({
132
162
  verificationKey: vk,
133
163
  settings: getProofSettingsFromOptions(options),
@@ -140,7 +170,6 @@ export class UltraHonkBackend {
140
170
  _proof,
141
171
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
142
172
  _numOfPublicInputs) {
143
- await this.instantiate();
144
173
  // TODO(https://github.com/noir-lang/noir/issues/5661): This needs to be updated to handle recursive aggregation.
145
174
  // There is still a proofAsFields method but we could consider getting rid of it as the proof itself
146
175
  // is a list of field elements.
@@ -153,7 +182,7 @@ export class UltraHonkBackend {
153
182
  const vkResult = await this.api.circuitComputeVk({
154
183
  circuit: {
155
184
  name: 'circuit',
156
- bytecode: Buffer.from(this.acirUncompressedBytecode),
185
+ bytecode: this.acirUncompressedBytecode,
157
186
  },
158
187
  settings: getProofSettingsFromOptions({}),
159
188
  });
@@ -173,25 +202,17 @@ export class UltraHonkBackend {
173
202
  vkHash: uint8ArrayToHex(vkResult.hash),
174
203
  };
175
204
  }
176
- async destroy() {
177
- if (!this.api) {
178
- return;
179
- }
180
- await this.api.destroy();
181
- }
182
205
  }
183
206
  export class AztecClientBackend {
184
- constructor(acirBuf, options = { threads: 1 }) {
207
+ acirBuf;
208
+ api;
209
+ // These type assertions are used so that we don't
210
+ // have to initialize `api` in the constructor.
211
+ // These are initialized asynchronously in the `init` function,
212
+ // constructors cannot be asynchronous which is why we do this.
213
+ constructor(acirBuf, api) {
185
214
  this.acirBuf = acirBuf;
186
- this.options = options;
187
- }
188
- /** @ignore */
189
- async instantiate() {
190
- if (!this.api) {
191
- const api = await Barretenberg.new(this.options);
192
- await api.initSRSClientIVC();
193
- this.api = api;
194
- }
215
+ this.api = api;
195
216
  }
196
217
  async prove(witnessBuf, vksBuf = []) {
197
218
  if (vksBuf.length !== 0 && this.acirBuf.length !== witnessBuf.length) {
@@ -201,34 +222,33 @@ export class AztecClientBackend {
201
222
  // NOTE: we allow 0 as an explicit 'I have no VKs'. This is a deprecated feature.
202
223
  throw new AztecClientBackendError('Witness and VKs must have the same stack depth!');
203
224
  }
204
- await this.instantiate();
205
225
  // Queue IVC start with the number of circuits
206
- this.api.clientIvcStart({ numCircuits: this.acirBuf.length });
226
+ this.api.chonkStart({ numCircuits: this.acirBuf.length });
207
227
  // Queue load and accumulate for each circuit
208
228
  for (let i = 0; i < this.acirBuf.length; i++) {
209
229
  const bytecode = this.acirBuf[i];
210
- const witness = witnessBuf[i] || Buffer.from([]);
211
- const vk = vksBuf[i] || Buffer.from([]);
230
+ const witness = witnessBuf[i] || new Uint8Array(0);
231
+ const vk = vksBuf[i] || new Uint8Array(0);
212
232
  const functionName = `unknown_wasm_${i}`;
213
233
  // Load the circuit
214
- this.api.clientIvcLoad({
234
+ this.api.chonkLoad({
215
235
  circuit: {
216
236
  name: functionName,
217
- bytecode: Buffer.from(bytecode),
218
- verificationKey: Buffer.from(vk),
237
+ bytecode: bytecode,
238
+ verificationKey: vk,
219
239
  },
220
240
  });
221
241
  // Accumulate with witness
222
- this.api.clientIvcAccumulate({
223
- witness: Buffer.from(witness),
242
+ this.api.chonkAccumulate({
243
+ witness,
224
244
  });
225
245
  }
226
246
  // Generate the proof (and wait for all previous steps to finish)
227
- const proveResult = await this.api.clientIvcProve({});
247
+ const proveResult = await this.api.chonkProve({});
228
248
  // The API currently expects a msgpack-encoded API.
229
- const proof = new Encoder({ useRecords: false }).encode(fromClientIVCProof(proveResult.proof));
249
+ const proof = new Encoder({ useRecords: false }).encode(fromChonkProof(proveResult.proof));
230
250
  // Generate the VK
231
- const vkResult = await this.api.clientIvcComputeIvcVk({
251
+ const vkResult = await this.api.chonkComputeIvcVk({
232
252
  circuit: {
233
253
  name: 'hiding',
234
254
  bytecode: this.acirBuf[this.acirBuf.length - 1],
@@ -237,29 +257,27 @@ export class AztecClientBackend {
237
257
  const proofFields = [
238
258
  proveResult.proof.megaProof,
239
259
  proveResult.proof.goblinProof.mergeProof,
240
- proveResult.proof.goblinProof.eccvmProof.preIpaProof,
241
- proveResult.proof.goblinProof.eccvmProof.ipaProof,
260
+ proveResult.proof.goblinProof.eccvmProof,
261
+ proveResult.proof.goblinProof.ipaProof,
242
262
  proveResult.proof.goblinProof.translatorProof,
243
263
  ].flat();
244
264
  // Note: Verification may not work correctly until we properly serialize the proof
245
265
  if (!(await this.verify(proof, vkResult.bytes))) {
246
- throw new AztecClientBackendError('Failed to verify the private (ClientIVC) transaction proof!');
266
+ throw new AztecClientBackendError('Failed to verify the private (Chonk) transaction proof!');
247
267
  }
248
268
  return [proofFields, proof, vkResult.bytes];
249
269
  }
250
270
  async verify(proof, vk) {
251
- await this.instantiate();
252
- const result = await this.api.clientIvcVerify({
253
- proof: toClientIVCProof(new Decoder({ useRecords: false }).decode(proof)),
254
- vk: Buffer.from(vk),
271
+ const result = await this.api.chonkVerify({
272
+ proof: toChonkProof(new Decoder({ useRecords: false }).decode(proof)),
273
+ vk,
255
274
  });
256
275
  return result.valid;
257
276
  }
258
277
  async gates() {
259
- await this.instantiate();
260
278
  const circuitSizes = [];
261
279
  for (const buf of this.acirBuf) {
262
- const gates = await this.api.clientIvcStats({
280
+ const gates = await this.api.chonkStats({
263
281
  circuit: {
264
282
  name: 'circuit',
265
283
  bytecode: buf,
@@ -270,32 +288,19 @@ export class AztecClientBackend {
270
288
  }
271
289
  return circuitSizes;
272
290
  }
273
- async destroy() {
274
- if (!this.api) {
275
- return;
276
- }
277
- await this.api.destroy();
278
- }
279
291
  }
280
292
  // Converts bytecode from a base64 string to a Uint8Array
281
293
  function acirToUint8Array(base64EncodedBytecode) {
282
294
  const compressedByteCode = base64Decode(base64EncodedBytecode);
283
295
  return ungzip(compressedByteCode);
284
296
  }
285
- // Since this is a simple function, we can use feature detection to
286
- // see if we are in the nodeJs environment or the browser environment.
297
+ // Base64 decode using atob (works in both browser and Node.js 18+)
287
298
  function base64Decode(input) {
288
- if (typeof Buffer !== 'undefined') {
289
- // Node.js environment
290
- const b = Buffer.from(input, 'base64');
291
- return new Uint8Array(b.buffer, b.byteOffset, b.byteLength);
292
- }
293
- else if (typeof atob === 'function') {
294
- // Browser environment
299
+ if (typeof atob === 'function') {
295
300
  return Uint8Array.from(atob(input), c => c.charCodeAt(0));
296
301
  }
297
302
  else {
298
- throw new Error('No implementation found for base64 decoding.');
303
+ throw new Error('atob is not available. Node.js 18+ or browser required.');
299
304
  }
300
305
  }
301
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmcvYmFja2VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLFlBQVksRUFBa0IsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFhLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFNUMsTUFBTSxPQUFPLHVCQUF3QixTQUFRLEtBQUs7SUFDaEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUE0QkQsU0FBUywyQkFBMkIsQ0FBQyxPQUFpQztJQU1wRSxPQUFPO1FBQ0wsZUFBZSxFQUFFLEtBQUs7UUFDdEIsY0FBYyxFQUNaLE9BQU8sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFLFFBQVE7WUFDbEMsQ0FBQyxDQUFDLFFBQVE7WUFDVixDQUFDLENBQUMsT0FBTyxFQUFFLFFBQVEsSUFBSSxPQUFPLEVBQUUsVUFBVTtnQkFDeEMsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLFdBQVc7UUFDbkIsc0RBQXNEO1FBQ3RELFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSztRQUM5RCx5QkFBeUIsRUFBRSxLQUFLO0tBQ2pDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxPQUFPLHdCQUF3QjtJ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
306
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmcvYmFja2VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWEsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU1QyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsS0FBSztJQUNoRCxZQUFZLE9BQWUsRUFBRTtRQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFBQSxDQUNoQjtDQUNGO0FBNkNELFNBQVMsMkJBQTJCLENBQUMsT0FBaUMsRUFLcEU7SUFDQSw0RkFBNEY7SUFDNUYsSUFBSSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7UUFDNUIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9HLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM3QixNQUFNLElBQUksS0FBSyxDQUNiLDBGQUEwRjtnQkFDeEYsMkJBQTJCLENBQzlCLENBQUM7UUFDSixDQUFDO1FBRUQsUUFBUSxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDL0IsS0FBSyxLQUFLO2dCQUNSLE9BQU8sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSx5QkFBeUIsRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUNsSCxLQUFLLFdBQVc7Z0JBQ2QsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLHlCQUF5QixFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ2pILEtBQUssZ0JBQWdCO2dCQUNuQixPQUFPO29CQUNMLGVBQWUsRUFBRSxLQUFLO29CQUN0QixjQUFjLEVBQUUsV0FBVztvQkFDM0IsU0FBUyxFQUFFLEtBQUs7b0JBQ2hCLHlCQUF5QixFQUFFLEtBQUs7aUJBQ2pDLENBQUM7WUFDSixLQUFLLHNCQUFzQjtnQkFDekIsT0FBTztvQkFDTCxlQUFlLEVBQUUsS0FBSztvQkFDdEIsY0FBYyxFQUFFLFdBQVc7b0JBQzNCLFNBQVMsRUFBRSxJQUFJO29CQUNmLHlCQUF5QixFQUFFLEtBQUs7aUJBQ2pDLENBQUM7WUFDSixLQUFLLGFBQWE7Z0JBQ2hCLE9BQU87b0JBQ0wsZUFBZSxFQUFFLElBQUk7b0JBQ3JCLGNBQWMsRUFBRSxXQUFXO29CQUMzQixTQUFTLEVBQUUsS0FBSztvQkFDaEIseUJBQXlCLEVBQUUsS0FBSztpQkFDakMsQ0FBQztZQUNKLEtBQUssbUJBQW1CO2dCQUN0QixPQUFPO29CQUNMLGVBQWUsRUFBRSxJQUFJO29CQUNyQixjQUFjLEVBQUUsV0FBVztvQkFDM0IsU0FBUyxFQUFFLElBQUk7b0JBQ2YseUJBQXlCLEVBQUUsS0FBSztpQkFDakMsQ0FBQztZQUNKLEtBQUssVUFBVTtnQkFDYixPQUFPO29CQUNMLGVBQWUsRUFBRSxLQUFLO29CQUN0QixjQUFjLEVBQUUsVUFBVTtvQkFDMUIsU0FBUyxFQUFFLEtBQUs7b0JBQ2hCLHlCQUF5QixFQUFFLEtBQUs7aUJBQ2pDLENBQUM7WUFDSixLQUFLLGdCQUFnQjtnQkFDbkIsT0FBTztvQkFDTCxlQUFlLEVBQUUsS0FBSztvQkFDdEIsY0FBYyxFQUFFLFVBQVU7b0JBQzFCLFNBQVMsRUFBRSxJQUFJO29CQUNmLHlCQUF5QixFQUFFLEtBQUs7aUJBQ2pDLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxPQUFPO1FBQ0wsZUFBZSxFQUFFLEtBQUs7UUFDdEIsY0FBYyxFQUNaLE9BQU8sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFLFFBQVE7WUFDbEMsQ0FBQyxDQUFDLFFBQVE7WUFDVixDQUFDLENBQUMsT0FBTyxFQUFFLFFBQVEsSUFBSSxPQUFPLEVBQUUsVUFBVTtnQkFDeEMsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLFdBQVc7UUFDbkIsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQzlELHlCQUF5QixFQUFFLEtBQUs7S0FDakMsQ0FBQztBQUFBLENBQ0g7QUFFRCxNQUFNLE9BQU8sd0JBQXdCO0lBQ2YsR0FBRztJQUF2QixZQUFvQixHQUFpQixFQUFFO21CQUFuQixHQUFHO0lBQWlCLENBQUM7SUFFekMsS0FBSyxDQUFDLFdBQVcsQ0FDZixTQUFzRCxFQUN0RCxPQUFpQyxFQUNmO1FBQ2xCLE1BQU0sUUFBUSxHQUFpQixFQUFFLENBQUM7UUFDbEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNwRCxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUM7WUFDaEQsZUFBZSxFQUFFLFNBQVMsQ0FBQyxlQUFlO1lBQzFDLFlBQVksRUFBRSxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUUsMkJBQTJCLENBQUMsT0FBTyxDQUFDO1NBQy9DLENBQUMsQ0FBQztRQUNILE9BQU8sUUFBUSxDQUFDO0lBQUEsQ0FDakI7Q0FDRjtBQUVELE1BQU0sT0FBTyxnQkFBZ0I7SUFVakIsR0FBRztJQVRiLGtEQUFrRDtJQUNsRCwrQ0FBK0M7SUFDL0MsK0RBQStEO0lBQy9ELCtEQUErRDtJQUV2RCx3QkFBd0IsQ0FBYTtJQUU3QyxZQUNFLFlBQW9CLEVBQ1osR0FBaUIsRUFDekI7bUJBRFEsR0FBRztRQUVYLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUFBLENBQ2hFO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBNkIsRUFBRSxPQUFpQyxFQUFzQjtRQUN4RyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMxQyxNQUFNLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7WUFDMUQsT0FBTztZQUNQLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsU0FBUztnQkFDZixRQUFRLEVBQUUsSUFBSSxDQUFDLHdCQUF3QjtnQkFDdkMsZUFBZSxFQUFFLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLGdDQUFnQzthQUNyRTtZQUNELFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxPQUFPLENBQUM7U0FDL0MsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQ0FBb0MsWUFBWSxDQUFDLE1BQU0sc0JBQXNCLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQyxDQUFDO1FBRWpILHFHQUFxRztRQUNyRyxNQUFNLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN2QixTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFBQSxDQUMzQixDQUFDLENBQUM7UUFFSCxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO0lBQUEsQ0FDOUU7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQW9CLEVBQUUsT0FBaUMsRUFBb0I7UUFDM0YsTUFBTSxRQUFRLEdBQWlCLEVBQUUsQ0FBQztRQUNsQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3BELFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFDRCxzRUFBc0U7UUFDdEUsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDO1lBQy9DLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsU0FBUztnQkFDZixRQUFRLEVBQUUsSUFBSSxDQUFDLHdCQUF3QjthQUN4QztZQUNELFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxPQUFPLENBQUM7U0FDL0MsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUM7WUFDaEQsZUFBZSxFQUFFLFFBQVEsQ0FBQyxLQUFLO1lBQy9CLFlBQVksRUFBRSxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixRQUFRLEVBQUUsMkJBQTJCLENBQUMsT0FBTyxDQUFDO1NBQy9DLENBQUMsQ0FBQztRQUNILE9BQU8sUUFBUSxDQUFDO0lBQUEsQ0FDakI7SUFFRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsT0FBaUMsRUFBdUI7UUFDL0UsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDO1lBQy9DLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsU0FBUztnQkFDZixRQUFRLEVBQUUsSUFBSSxDQUFDLHdCQUF3QjthQUN4QztZQUNELFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxPQUFPLENBQUM7U0FDL0MsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQUEsQ0FDdkI7SUFFRCwrQ0FBK0M7SUFDL0MsS0FBSyxDQUFDLG1CQUFtQixDQUFDLEVBQWMsRUFBRSxPQUFpQyxFQUFtQjtRQUM1RixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUM7WUFDekQsZUFBZSxFQUFFLEVBQUU7WUFDbkIsUUFBUSxFQUFFLDJCQUEyQixDQUFDLE9BQU8sQ0FBQztTQUMvQyxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQyxZQUFZLENBQUM7SUFBQSxDQUM1QjtJQUVELDhKQUE4SjtJQUM5SixLQUFLLENBQUMsK0JBQStCO0lBQ25DLDZEQUE2RDtJQUM3RCxNQUFrQjtJQUNsQiw2REFBNkQ7SUFDN0Qsa0JBQTBCLEVBQ2tEO1FBQzVFLGlIQUFpSDtRQUNqSCxvR0FBb0c7UUFDcEcsK0JBQStCO1FBQy9CLHdHQUF3RztRQUN4Ryx5QkFBeUI7UUFDekIsNkRBQTZEO1FBQzdELHFHQUFxRztRQUVyRywyRUFBMkU7UUFDM0UsMEJBQTBCO1FBQzFCLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQztZQUMvQyxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyx3QkFBd0I7YUFDeEM7WUFDRCxRQUFRLEVBQUUsMkJBQTJCLENBQUMsRUFBRSxDQUFDO1NBQzFDLENBQUMsQ0FBQztRQUVILHNEQUFzRDtRQUN0RCxNQUFNLFVBQVUsR0FBYSxFQUFFLENBQUM7UUFDaEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNuRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUVELE9BQU87WUFDTCxzREFBc0Q7WUFDdEQsYUFBYSxFQUFFLEVBQUU7WUFDakIsVUFBVTtZQUNWLG1HQUFtRztZQUNuRyxzR0FBc0c7WUFDdEcsY0FBYztZQUNkLE1BQU0sRUFBRSxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztTQUN2QyxDQUFDO0lBQUEsQ0FDSDtDQUNGO0FBRUQsTUFBTSxPQUFPLGtCQUFrQjtJQU9uQixPQUFPO0lBQ1AsR0FBRztJQVBiLGtEQUFrRDtJQUNsRCwrQ0FBK0M7SUFDL0MsK0RBQStEO0lBQy9ELCtEQUErRDtJQUUvRCxZQUNVLE9BQXFCLEVBQ3JCLEdBQWlCLEVBQ3pCO3VCQUZRLE9BQU87bUJBQ1AsR0FBRztJQUNWLENBQUM7SUFFSixLQUFLLENBQUMsS0FBSyxDQUFDLFVBQXdCLEVBQUUsTUFBTSxHQUFpQixFQUFFLEVBQW1EO1FBQ2hILElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3JFLE1BQU0sSUFBSSx1QkFBdUIsQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBQzdGLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9ELGlGQUFpRjtZQUNqRixNQUFNLElBQUksdUJBQXVCLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUN2RixDQUFDO1FBRUQsOENBQThDO1FBQzlDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUUxRCw2Q0FBNkM7UUFDN0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDN0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFDLE1BQU0sWUFBWSxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUV6QyxtQkFBbUI7WUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUM7Z0JBQ2pCLE9BQU8sRUFBRTtvQkFDUCxJQUFJLEVBQUUsWUFBWTtvQkFDbEIsUUFBUSxFQUFFLFFBQVE7b0JBQ2xCLGVBQWUsRUFBRSxFQUFFO2lCQUNwQjthQUNGLENBQUMsQ0FBQztZQUVILDBCQUEwQjtZQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztnQkFDdkIsT0FBTzthQUNSLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxpRUFBaUU7UUFDakUsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRCxtREFBbUQ7UUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxPQUFPLENBQUMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzNGLGtCQUFrQjtRQUNsQixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUM7WUFDaEQsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxRQUFRO2dCQUNkLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQzthQUNoRDtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHO1lBQ2xCLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUztZQUMzQixXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxVQUFVO1lBQ3hDLFdBQVcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDeEMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUTtZQUN0QyxXQUFXLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlO1NBQzlDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFVCxrRkFBa0Y7UUFDbEYsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hELE1BQU0sSUFBSSx1QkFBdUIsQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFDRCxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFBQSxDQUM3QztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBaUIsRUFBRSxFQUFjLEVBQW9CO1FBQ2hFLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7WUFDeEMsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRSxFQUFFO1NBQ0gsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQUEsQ0FDckI7SUFFRCxLQUFLLENBQUMsS0FBSyxHQUFzQjtRQUMvQixNQUFNLFlBQVksR0FBYSxFQUFFLENBQUM7UUFDbEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDL0IsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQztnQkFDdEMsT0FBTyxFQUFFO29CQUNQLElBQUksRUFBRSxTQUFTO29CQUNmLFFBQVEsRUFBRSxHQUFHO2lCQUNkO2dCQUNELHFCQUFxQixFQUFFLEtBQUs7YUFDN0IsQ0FBQyxDQUFDO1lBQ0gsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELE9BQU8sWUFBWSxDQUFDO0lBQUEsQ0FDckI7Q0FDRjtBQUVELHlEQUF5RDtBQUN6RCxTQUFTLGdCQUFnQixDQUFDLHFCQUE2QixFQUFjO0lBQ25FLE1BQU0sa0JBQWtCLEdBQUcsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDL0QsT0FBTyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUFBLENBQ25DO0FBRUQsbUVBQW1FO0FBQ25FLFNBQVMsWUFBWSxDQUFDLEtBQWEsRUFBYztJQUMvQyxJQUFJLE9BQU8sSUFBSSxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQy9CLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLElBQUksS0FBSyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztBQUFBLENBQ0YifQ==
@@ -2,7 +2,7 @@ import { AsyncApi } from '../cbind/generated/async.js';
2
2
  import { SyncApi } from '../cbind/generated/sync.js';
3
3
  import { IMsgpackBackendSync, IMsgpackBackendAsync } from '../bb_backends/interface.js';
4
4
  import { BackendOptions } from '../bb_backends/index.js';
5
- export { UltraHonkBackend, UltraHonkVerifierBackend, AztecClientBackend } from './backend.js';
5
+ export { UltraHonkBackend, UltraHonkVerifierBackend, AztecClientBackend, type UltraHonkBackendOptions, type VerifierTarget, } from './backend.js';
6
6
  export * from '../bb_backends/index.js';
7
7
  export type CircuitOptions = {
8
8
  /** @description Whether to produce SNARK friendly proofs */
@@ -20,15 +20,13 @@ export declare class Barretenberg extends AsyncApi {
20
20
  *
21
21
  * If options.backend is set: uses that specific backend (throws if unavailable)
22
22
  * If options.backend is unset: tries backends in order with fallback:
23
- * 1. NativeSharedMemory (if bb binary available)
23
+ * 1. NativeUnixSocket (if bb binary available)
24
24
  * 2. WasmWorker (in browser) or Wasm (in Node.js)
25
25
  */
26
26
  static new(options?: BackendOptions): Promise<Barretenberg>;
27
- initSRSForCircuitSize(circuitSize: number): Promise<void>;
28
- initSRSClientIVC(srsSize?: number): Promise<void>;
27
+ initSRSChonk(srsSize?: number): Promise<void>;
29
28
  getDefaultSrsSize(): number;
30
29
  acirGetCircuitSizes(bytecode: Uint8Array, recursive: boolean, honkRecursion: boolean): Promise<[number, number]>;
31
- acirInitSRS(bytecode: Uint8Array, recursive: boolean, honkRecursion: boolean): Promise<void>;
32
30
  destroy(): Promise<void>;
33
31
  /**
34
32
  * Initialize the singleton instance of Barretenberg.
@@ -64,4 +62,4 @@ export declare class BarretenbergSync extends SyncApi {
64
62
  static destroySingleton(): void;
65
63
  static getSingleton(): BarretenbergSync;
66
64
  }
67
- //# sourceMappingURL=index.d.ts.map
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFlLE1BQU0seUJBQXlCLENBQUM7QUFHdEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQix3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLEtBQUssdUJBQXVCLEVBQzVCLEtBQUssY0FBYyxHQUNwQixNQUFNLGNBQWMsQ0FBQztBQUN0QixjQUFjLHlCQUF5QixDQUFDO0FBRXhDLE1BQU0sTUFBTSxjQUFjLEdBQUc7SUFDM0IsNERBQTREO0lBQzVELFNBQVMsRUFBRSxPQUFPLENBQUM7Q0FDcEIsQ0FBQztBQUVGOzs7R0FHRztBQUNILHFCQUFhLFlBQWEsU0FBUSxRQUFRO0lBQ3hDLE9BQU8sQ0FBQyxPQUFPLENBQWlCO0lBRWhDLFlBQVksT0FBTyxFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxjQUFjLEVBR2pFO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE9BQWEsR0FBRyxDQUFDLE9BQU8sR0FBRSxjQUFtQix5QkEyQjVDO0lBRUssWUFBWSxDQUFDLE9BQU8sU0FBMkIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBU3BFO0lBRUQsaUJBQWlCLElBQUksTUFBTSxDQU8xQjtJQUVLLG1CQUFtQixDQUN2QixRQUFRLEVBQUUsVUFBVSxFQUNwQixTQUFTLEVBQUUsT0FBTyxFQUNsQixhQUFhLEVBQUUsT0FBTyxHQUNyQixPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FZM0I7SUFFSyxPQUFPLGtCQUVaO0lBRUQ7OztPQUdHO0lBQ0gsT0FBYSxhQUFhLENBQUMsT0FBTyxHQUFFLGNBQW1CLHlCQWF0RDtJQUVELE9BQWEsZ0JBQWdCLGtCQU01QjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxZQUFZLGlCQUtsQjtDQUNGO0FBUUQscUJBQWEsZ0JBQWlCLFNBQVEsT0FBTztJQUMzQyxZQUFZLE9BQU8sRUFBRSxtQkFBbUIsRUFFdkM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsT0FBYSxHQUFHLENBQUMsT0FBTyxHQUFFLGNBQW1CLDZCQWU1QztJQUVEOzs7T0FHRztJQUNILE9BQWEsYUFBYSxDQUFDLE9BQU8sR0FBRSxjQUFtQiw2QkFPdEQ7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLFNBTXRCO0lBRUQsTUFBTSxDQUFDLFlBQVkscUJBS2xCO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAE,cAAc,EAAe,MAAM,yBAAyB,CAAC;AAGtE,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC9F,cAAc,yBAAyB,CAAC;AAExC,MAAM,MAAM,cAAc,GAAG;IAC3B,4DAA4D;IAC5D,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,QAAQ;IACxC,OAAO,CAAC,OAAO,CAAiB;gBAEpB,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,cAAc;IAKlE;;;;;;;OAOG;WACU,GAAG,CAAC,OAAO,GAAE,cAAmB;IA0BvC,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,gBAAgB,CAAC,OAAO,SAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,iBAAiB,IAAI,MAAM;IASrB,mBAAmB,CACvB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IActB,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5F,OAAO;IAIb;;;OAGG;WACU,aAAa,CAAC,OAAO,GAAE,cAAmB;WAe1C,gBAAgB;IAQ7B;;;OAGG;IACH,MAAM,CAAC,YAAY;CAMpB;AAQD,qBAAa,gBAAiB,SAAQ,OAAO;gBAC/B,OAAO,EAAE,mBAAmB;IAIxC;;;;;;;;;;OAUG;WACU,GAAG,CAAC,OAAO,GAAE,cAAmB;IAiB7C;;;OAGG;WACU,aAAa,CAAC,OAAO,GAAE,cAAmB;IASvD,MAAM,CAAC,gBAAgB;IAQvB,MAAM,CAAC,YAAY;CAMpB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAE,cAAc,EAAe,MAAM,yBAAyB,CAAC;AAGtE,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,cAAc,yBAAyB,CAAC;AAExC,MAAM,MAAM,cAAc,GAAG;IAC3B,4DAA4D;IAC5D,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,QAAQ;IACxC,OAAO,CAAC,OAAO,CAAiB;IAEhC,YAAY,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,cAAc,EAGjE;IAED;;;;;;;OAOG;IACH,OAAa,GAAG,CAAC,OAAO,GAAE,cAAmB,yBA2B5C;IAEK,YAAY,CAAC,OAAO,SAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CASpE;IAED,iBAAiB,IAAI,MAAM,CAO1B;IAEK,mBAAmB,CACvB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAY3B;IAEK,OAAO,kBAEZ;IAED;;;OAGG;IACH,OAAa,aAAa,CAAC,OAAO,GAAE,cAAmB,yBAatD;IAED,OAAa,gBAAgB,kBAM5B;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,iBAKlB;CACF;AAQD,qBAAa,gBAAiB,SAAQ,OAAO;IAC3C,YAAY,OAAO,EAAE,mBAAmB,EAEvC;IAED;;;;;;;;;;OAUG;IACH,OAAa,GAAG,CAAC,OAAO,GAAE,cAAmB,6BAe5C;IAED;;;OAGG;IACH,OAAa,aAAa,CAAC,OAAO,GAAE,cAAmB,6BAOtD;IAED,MAAM,CAAC,gBAAgB,SAMtB;IAED,MAAM,CAAC,YAAY,qBAKlB;CACF"}