@aztec/bb.js 3.0.0-nightly.20251026 → 3.0.0-nightly.20251030

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 (578) hide show
  1. package/README.md +1 -1
  2. package/package.json +4 -3
  3. package/src/barretenberg/backend.ts +12 -12
  4. package/src/barretenberg/index.ts +1 -1
  5. package/src/barretenberg/poseidon.bench.test.ts +2 -1
  6. package/src/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.ts +4 -4
  7. package/src/bb_backends/wasm.ts +2 -9
  8. package/src/bbapi_exception.ts +13 -0
  9. package/src/cbind/generate.ts +99 -0
  10. package/src/cbind/schema_compiler.ts +25 -3
  11. package/src/index.ts +28 -1
  12. package/src/serialize/index.ts +0 -1
  13. package/src/types/fields.ts +14 -63
  14. package/src/types/point.ts +13 -19
  15. package/dest/browser/async_map/index.d.ts +0 -10
  16. package/dest/browser/async_map/index.d.ts.map +0 -1
  17. package/dest/browser/async_map/index.js +0 -16
  18. package/dest/browser/barretenberg/backend.d.ts +0 -75
  19. package/dest/browser/barretenberg/backend.d.ts.map +0 -1
  20. package/dest/browser/barretenberg/backend.js +0 -301
  21. package/dest/browser/barretenberg/index.d.ts +0 -67
  22. package/dest/browser/barretenberg/index.d.ts.map +0 -1
  23. package/dest/browser/barretenberg/index.js +0 -191
  24. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -45
  25. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
  26. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +0 -125
  27. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
  28. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
  29. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +0 -11
  30. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -2
  31. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
  32. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +0 -12
  33. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
  34. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
  35. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +0 -70
  36. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -53
  37. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
  38. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +0 -170
  39. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
  40. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
  41. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +0 -11
  42. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -2
  43. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
  44. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +0 -12
  45. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -29
  46. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
  47. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +0 -40
  48. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
  49. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
  50. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +0 -2
  51. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
  52. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
  53. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +0 -2
  54. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
  55. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
  56. package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +0 -36
  57. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +0 -2
  58. package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
  59. package/dest/browser/barretenberg_wasm/fetch_code/index.js +0 -2
  60. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +0 -13
  61. package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
  62. package/dest/browser/barretenberg_wasm/helpers/browser/index.js +0 -40
  63. package/dest/browser/barretenberg_wasm/helpers/index.d.ts +0 -2
  64. package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +0 -1
  65. package/dest/browser/barretenberg_wasm/helpers/index.js +0 -2
  66. package/dest/browser/barretenberg_wasm/index.d.ts +0 -5
  67. package/dest/browser/barretenberg_wasm/index.d.ts.map +0 -1
  68. package/dest/browser/barretenberg_wasm/index.js +0 -16
  69. package/dest/browser/bb_backends/browser/index.d.ts +0 -11
  70. package/dest/browser/bb_backends/browser/index.d.ts.map +0 -1
  71. package/dest/browser/bb_backends/browser/index.js +0 -39
  72. package/dest/browser/bb_backends/index.d.ts +0 -45
  73. package/dest/browser/bb_backends/index.d.ts.map +0 -1
  74. package/dest/browser/bb_backends/index.js +0 -15
  75. package/dest/browser/bb_backends/interface.d.ts +0 -33
  76. package/dest/browser/bb_backends/interface.d.ts.map +0 -1
  77. package/dest/browser/bb_backends/interface.js +0 -2
  78. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts +0 -15
  79. package/dest/browser/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  80. package/dest/browser/bb_backends/sync_to_async_adapter.js +0 -20
  81. package/dest/browser/bb_backends/wasm.d.ts +0 -56
  82. package/dest/browser/bb_backends/wasm.d.ts.map +0 -1
  83. package/dest/browser/bb_backends/wasm.js +0 -90
  84. package/dest/browser/bigint-array/index.d.ts +0 -17
  85. package/dest/browser/bigint-array/index.d.ts.map +0 -1
  86. package/dest/browser/bigint-array/index.js +0 -37
  87. package/dest/browser/cbind/generate.d.ts +0 -5
  88. package/dest/browser/cbind/generate.d.ts.map +0 -1
  89. package/dest/browser/cbind/generate.js +0 -59
  90. package/dest/browser/cbind/generated/api_types.d.ts +0 -1805
  91. package/dest/browser/cbind/generated/api_types.d.ts.map +0 -1
  92. package/dest/browser/cbind/generated/api_types.js +0 -2421
  93. package/dest/browser/cbind/generated/async.d.ts +0 -57
  94. package/dest/browser/cbind/generated/async.d.ts.map +0 -1
  95. package/dest/browser/cbind/generated/async.js +0 -454
  96. package/dest/browser/cbind/generated/sync.d.ts +0 -57
  97. package/dest/browser/cbind/generated/sync.d.ts.map +0 -1
  98. package/dest/browser/cbind/generated/sync.js +0 -406
  99. package/dest/browser/cbind/schema_compiler.d.ts +0 -68
  100. package/dest/browser/cbind/schema_compiler.d.ts.map +0 -1
  101. package/dest/browser/cbind/schema_compiler.js +0 -579
  102. package/dest/browser/crs/browser/cached_net_crs.d.ts +0 -43
  103. package/dest/browser/crs/browser/cached_net_crs.d.ts.map +0 -1
  104. package/dest/browser/crs/browser/cached_net_crs.js +0 -90
  105. package/dest/browser/crs/browser/index.d.ts +0 -2
  106. package/dest/browser/crs/browser/index.d.ts.map +0 -1
  107. package/dest/browser/crs/browser/index.js +0 -2
  108. package/dest/browser/crs/index.d.ts +0 -2
  109. package/dest/browser/crs/index.d.ts.map +0 -1
  110. package/dest/browser/crs/index.js +0 -2
  111. package/dest/browser/crs/net_crs.d.ts +0 -85
  112. package/dest/browser/crs/net_crs.d.ts.map +0 -1
  113. package/dest/browser/crs/net_crs.js +0 -136
  114. package/dest/browser/index.d.ts +0 -6
  115. package/dest/browser/index.d.ts.map +0 -1
  116. package/dest/browser/index.js +0 -6
  117. package/dest/browser/log/browser/index.d.ts +0 -6
  118. package/dest/browser/log/browser/index.d.ts.map +0 -1
  119. package/dest/browser/log/browser/index.js +0 -28
  120. package/dest/browser/log/index.d.ts +0 -2
  121. package/dest/browser/log/index.d.ts.map +0 -1
  122. package/dest/browser/log/index.js +0 -2
  123. package/dest/browser/log/types.d.ts +0 -6
  124. package/dest/browser/log/types.d.ts.map +0 -1
  125. package/dest/browser/log/types.js +0 -2
  126. package/dest/browser/proof/index.d.ts +0 -21
  127. package/dest/browser/proof/index.d.ts.map +0 -1
  128. package/dest/browser/proof/index.js +0 -63
  129. package/dest/browser/random/browser/index.d.ts +0 -2
  130. package/dest/browser/random/browser/index.d.ts.map +0 -1
  131. package/dest/browser/random/browser/index.js +0 -31
  132. package/dest/browser/random/index.d.ts +0 -2
  133. package/dest/browser/random/index.d.ts.map +0 -1
  134. package/dest/browser/random/index.js +0 -2
  135. package/dest/browser/retry/index.d.ts +0 -26
  136. package/dest/browser/retry/index.d.ts.map +0 -1
  137. package/dest/browser/retry/index.js +0 -50
  138. package/dest/browser/serialize/buffer_reader.d.ts +0 -28
  139. package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
  140. package/dest/browser/serialize/buffer_reader.js +0 -66
  141. package/dest/browser/serialize/index.d.ts +0 -3
  142. package/dest/browser/serialize/index.d.ts.map +0 -1
  143. package/dest/browser/serialize/index.js +0 -3
  144. package/dest/browser/serialize/serialize.d.ts +0 -18
  145. package/dest/browser/serialize/serialize.d.ts.map +0 -1
  146. package/dest/browser/serialize/serialize.js +0 -72
  147. package/dest/browser/types/fields.d.ts +0 -43
  148. package/dest/browser/types/fields.d.ts.map +0 -1
  149. package/dest/browser/types/fields.js +0 -102
  150. package/dest/browser/types/index.d.ts +0 -3
  151. package/dest/browser/types/index.d.ts.map +0 -1
  152. package/dest/browser/types/index.js +0 -3
  153. package/dest/browser/types/point.d.ts +0 -16
  154. package/dest/browser/types/point.d.ts.map +0 -1
  155. package/dest/browser/types/point.js +0 -31
  156. package/dest/node/async_map/index.d.ts +0 -10
  157. package/dest/node/async_map/index.d.ts.map +0 -1
  158. package/dest/node/async_map/index.js +0 -16
  159. package/dest/node/barretenberg/__snapshots__/pedersen.test.js.snap +0 -156
  160. package/dest/node/barretenberg/__snapshots__/poseidon.test.js.snap +0 -40
  161. package/dest/node/barretenberg/backend.d.ts +0 -75
  162. package/dest/node/barretenberg/backend.d.ts.map +0 -1
  163. package/dest/node/barretenberg/backend.js +0 -301
  164. package/dest/node/barretenberg/blake2s.test.d.ts +0 -2
  165. package/dest/node/barretenberg/blake2s.test.d.ts.map +0 -1
  166. package/dest/node/barretenberg/blake2s.test.js +0 -57
  167. package/dest/node/barretenberg/index.d.ts +0 -67
  168. package/dest/node/barretenberg/index.d.ts.map +0 -1
  169. package/dest/node/barretenberg/index.js +0 -191
  170. package/dest/node/barretenberg/pedersen.test.d.ts +0 -2
  171. package/dest/node/barretenberg/pedersen.test.d.ts.map +0 -1
  172. package/dest/node/barretenberg/pedersen.test.js +0 -62
  173. package/dest/node/barretenberg/poseidon.bench.test.d.ts +0 -2
  174. package/dest/node/barretenberg/poseidon.bench.test.d.ts.map +0 -1
  175. package/dest/node/barretenberg/poseidon.bench.test.js +0 -216
  176. package/dest/node/barretenberg/poseidon.test.d.ts +0 -2
  177. package/dest/node/barretenberg/poseidon.test.d.ts.map +0 -1
  178. package/dest/node/barretenberg/poseidon.test.js +0 -35
  179. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  180. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -45
  181. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
  182. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +0 -125
  183. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
  184. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
  185. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +0 -11
  186. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -2
  187. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
  188. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +0 -12
  189. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +0 -3
  190. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +0 -1
  191. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +0 -21
  192. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +0 -2
  193. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +0 -1
  194. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +0 -16
  195. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
  196. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
  197. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +0 -70
  198. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -53
  199. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
  200. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +0 -170
  201. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
  202. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
  203. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +0 -11
  204. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -2
  205. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
  206. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +0 -12
  207. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +0 -3
  208. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +0 -1
  209. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +0 -21
  210. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +0 -2
  211. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +0 -1
  212. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +0 -16
  213. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -29
  214. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
  215. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.js +0 -40
  216. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
  217. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
  218. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +0 -3
  219. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
  220. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
  221. package/dest/node/barretenberg_wasm/fetch_code/browser/barretenberg.js +0 -3
  222. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
  223. package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
  224. package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +0 -36
  225. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts +0 -2
  226. package/dest/node/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
  227. package/dest/node/barretenberg_wasm/fetch_code/index.js +0 -2
  228. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +0 -2
  229. package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +0 -1
  230. package/dest/node/barretenberg_wasm/fetch_code/node/index.js +0 -35
  231. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +0 -13
  232. package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
  233. package/dest/node/barretenberg_wasm/helpers/browser/index.js +0 -40
  234. package/dest/node/barretenberg_wasm/helpers/index.d.ts +0 -2
  235. package/dest/node/barretenberg_wasm/helpers/index.d.ts.map +0 -1
  236. package/dest/node/barretenberg_wasm/helpers/index.js +0 -2
  237. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +0 -22
  238. package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +0 -1
  239. package/dest/node/barretenberg_wasm/helpers/node/index.js +0 -48
  240. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +0 -8
  241. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +0 -1
  242. package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.js +0 -28
  243. package/dest/node/barretenberg_wasm/index.d.ts +0 -5
  244. package/dest/node/barretenberg_wasm/index.d.ts.map +0 -1
  245. package/dest/node/barretenberg_wasm/index.js +0 -16
  246. package/dest/node/barretenberg_wasm/index.test.d.ts +0 -2
  247. package/dest/node/barretenberg_wasm/index.test.d.ts.map +0 -1
  248. package/dest/node/barretenberg_wasm/index.test.js +0 -39
  249. package/dest/node/bb_backends/browser/index.d.ts +0 -11
  250. package/dest/node/bb_backends/browser/index.d.ts.map +0 -1
  251. package/dest/node/bb_backends/browser/index.js +0 -39
  252. package/dest/node/bb_backends/index.d.ts +0 -45
  253. package/dest/node/bb_backends/index.d.ts.map +0 -1
  254. package/dest/node/bb_backends/index.js +0 -15
  255. package/dest/node/bb_backends/interface.d.ts +0 -33
  256. package/dest/node/bb_backends/interface.d.ts.map +0 -1
  257. package/dest/node/bb_backends/interface.js +0 -2
  258. package/dest/node/bb_backends/node/index.d.ts +0 -11
  259. package/dest/node/bb_backends/node/index.d.ts.map +0 -1
  260. package/dest/node/bb_backends/node/index.js +0 -80
  261. package/dest/node/bb_backends/node/native_pipe.d.ts +0 -25
  262. package/dest/node/bb_backends/node/native_pipe.d.ts.map +0 -1
  263. package/dest/node/bb_backends/node/native_pipe.js +0 -113
  264. package/dest/node/bb_backends/node/native_shm.d.ts +0 -28
  265. package/dest/node/bb_backends/node/native_shm.d.ts.map +0 -1
  266. package/dest/node/bb_backends/node/native_shm.js +0 -150
  267. package/dest/node/bb_backends/node/native_socket.d.ts +0 -34
  268. package/dest/node/bb_backends/node/native_socket.d.ts.map +0 -1
  269. package/dest/node/bb_backends/node/native_socket.js +0 -269
  270. package/dest/node/bb_backends/node/platform.d.ts +0 -27
  271. package/dest/node/bb_backends/node/platform.d.ts.map +0 -1
  272. package/dest/node/bb_backends/node/platform.js +0 -124
  273. package/dest/node/bb_backends/sync_to_async_adapter.d.ts +0 -15
  274. package/dest/node/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  275. package/dest/node/bb_backends/sync_to_async_adapter.js +0 -20
  276. package/dest/node/bb_backends/wasm.d.ts +0 -56
  277. package/dest/node/bb_backends/wasm.d.ts.map +0 -1
  278. package/dest/node/bb_backends/wasm.js +0 -90
  279. package/dest/node/benchmark/index.d.ts +0 -3
  280. package/dest/node/benchmark/index.d.ts.map +0 -1
  281. package/dest/node/benchmark/index.js +0 -25
  282. package/dest/node/benchmark/timer.d.ts +0 -34
  283. package/dest/node/benchmark/timer.d.ts.map +0 -1
  284. package/dest/node/benchmark/timer.js +0 -41
  285. package/dest/node/bigint-array/index.d.ts +0 -17
  286. package/dest/node/bigint-array/index.d.ts.map +0 -1
  287. package/dest/node/bigint-array/index.js +0 -37
  288. package/dest/node/cbind/generate.d.ts +0 -5
  289. package/dest/node/cbind/generate.d.ts.map +0 -1
  290. package/dest/node/cbind/generate.js +0 -59
  291. package/dest/node/cbind/generated/api_types.d.ts +0 -1805
  292. package/dest/node/cbind/generated/api_types.d.ts.map +0 -1
  293. package/dest/node/cbind/generated/api_types.js +0 -2421
  294. package/dest/node/cbind/generated/async.d.ts +0 -57
  295. package/dest/node/cbind/generated/async.d.ts.map +0 -1
  296. package/dest/node/cbind/generated/async.js +0 -454
  297. package/dest/node/cbind/generated/sync.d.ts +0 -57
  298. package/dest/node/cbind/generated/sync.d.ts.map +0 -1
  299. package/dest/node/cbind/generated/sync.js +0 -406
  300. package/dest/node/cbind/schema_compiler.d.ts +0 -68
  301. package/dest/node/cbind/schema_compiler.d.ts.map +0 -1
  302. package/dest/node/cbind/schema_compiler.js +0 -579
  303. package/dest/node/crs/browser/cached_net_crs.d.ts +0 -43
  304. package/dest/node/crs/browser/cached_net_crs.d.ts.map +0 -1
  305. package/dest/node/crs/browser/cached_net_crs.js +0 -90
  306. package/dest/node/crs/browser/index.d.ts +0 -2
  307. package/dest/node/crs/browser/index.d.ts.map +0 -1
  308. package/dest/node/crs/browser/index.js +0 -2
  309. package/dest/node/crs/index.d.ts +0 -2
  310. package/dest/node/crs/index.d.ts.map +0 -1
  311. package/dest/node/crs/index.js +0 -2
  312. package/dest/node/crs/net_crs.d.ts +0 -85
  313. package/dest/node/crs/net_crs.d.ts.map +0 -1
  314. package/dest/node/crs/net_crs.js +0 -136
  315. package/dest/node/crs/node/index.d.ts +0 -38
  316. package/dest/node/crs/node/index.d.ts.map +0 -1
  317. package/dest/node/crs/node/index.js +0 -102
  318. package/dest/node/index.d.ts +0 -6
  319. package/dest/node/index.d.ts.map +0 -1
  320. package/dest/node/index.js +0 -6
  321. package/dest/node/log/browser/index.d.ts +0 -6
  322. package/dest/node/log/browser/index.d.ts.map +0 -1
  323. package/dest/node/log/browser/index.js +0 -28
  324. package/dest/node/log/index.d.ts +0 -2
  325. package/dest/node/log/index.d.ts.map +0 -1
  326. package/dest/node/log/index.js +0 -2
  327. package/dest/node/log/node/index.d.ts +0 -6
  328. package/dest/node/log/node/index.d.ts.map +0 -1
  329. package/dest/node/log/node/index.js +0 -40
  330. package/dest/node/log/types.d.ts +0 -6
  331. package/dest/node/log/types.d.ts.map +0 -1
  332. package/dest/node/log/types.js +0 -2
  333. package/dest/node/proof/index.d.ts +0 -21
  334. package/dest/node/proof/index.d.ts.map +0 -1
  335. package/dest/node/proof/index.js +0 -63
  336. package/dest/node/random/browser/index.d.ts +0 -2
  337. package/dest/node/random/browser/index.d.ts.map +0 -1
  338. package/dest/node/random/browser/index.js +0 -31
  339. package/dest/node/random/index.d.ts +0 -2
  340. package/dest/node/random/index.d.ts.map +0 -1
  341. package/dest/node/random/index.js +0 -2
  342. package/dest/node/random/node/index.d.ts +0 -2
  343. package/dest/node/random/node/index.d.ts.map +0 -1
  344. package/dest/node/random/node/index.js +0 -5
  345. package/dest/node/retry/index.d.ts +0 -26
  346. package/dest/node/retry/index.d.ts.map +0 -1
  347. package/dest/node/retry/index.js +0 -50
  348. package/dest/node/serialize/buffer_reader.d.ts +0 -28
  349. package/dest/node/serialize/buffer_reader.d.ts.map +0 -1
  350. package/dest/node/serialize/buffer_reader.js +0 -66
  351. package/dest/node/serialize/index.d.ts +0 -3
  352. package/dest/node/serialize/index.d.ts.map +0 -1
  353. package/dest/node/serialize/index.js +0 -3
  354. package/dest/node/serialize/serialize.d.ts +0 -18
  355. package/dest/node/serialize/serialize.d.ts.map +0 -1
  356. package/dest/node/serialize/serialize.js +0 -72
  357. package/dest/node/types/fields.d.ts +0 -43
  358. package/dest/node/types/fields.d.ts.map +0 -1
  359. package/dest/node/types/fields.js +0 -102
  360. package/dest/node/types/index.d.ts +0 -3
  361. package/dest/node/types/index.d.ts.map +0 -1
  362. package/dest/node/types/index.js +0 -3
  363. package/dest/node/types/point.d.ts +0 -16
  364. package/dest/node/types/point.d.ts.map +0 -1
  365. package/dest/node/types/point.js +0 -31
  366. package/dest/node-cjs/async_map/index.d.ts +0 -10
  367. package/dest/node-cjs/async_map/index.d.ts.map +0 -1
  368. package/dest/node-cjs/async_map/index.js +0 -19
  369. package/dest/node-cjs/barretenberg/backend.d.ts +0 -75
  370. package/dest/node-cjs/barretenberg/backend.d.ts.map +0 -1
  371. package/dest/node-cjs/barretenberg/backend.js +0 -308
  372. package/dest/node-cjs/barretenberg/blake2s.test.d.ts +0 -2
  373. package/dest/node-cjs/barretenberg/blake2s.test.d.ts.map +0 -1
  374. package/dest/node-cjs/barretenberg/blake2s.test.js +0 -59
  375. package/dest/node-cjs/barretenberg/index.d.ts +0 -67
  376. package/dest/node-cjs/barretenberg/index.d.ts.map +0 -1
  377. package/dest/node-cjs/barretenberg/index.js +0 -200
  378. package/dest/node-cjs/barretenberg/pedersen.test.d.ts +0 -2
  379. package/dest/node-cjs/barretenberg/pedersen.test.d.ts.map +0 -1
  380. package/dest/node-cjs/barretenberg/pedersen.test.js +0 -64
  381. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts +0 -2
  382. package/dest/node-cjs/barretenberg/poseidon.bench.test.d.ts.map +0 -1
  383. package/dest/node-cjs/barretenberg/poseidon.bench.test.js +0 -218
  384. package/dest/node-cjs/barretenberg/poseidon.test.d.ts +0 -2
  385. package/dest/node-cjs/barretenberg/poseidon.test.d.ts.map +0 -1
  386. package/dest/node-cjs/barretenberg/poseidon.test.js +0 -37
  387. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  388. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -45
  389. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
  390. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +0 -129
  391. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
  392. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
  393. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +0 -14
  394. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -2
  395. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
  396. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +0 -14
  397. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +0 -3
  398. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +0 -1
  399. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +0 -24
  400. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts +0 -2
  401. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.d.ts.map +0 -1
  402. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +0 -18
  403. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
  404. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
  405. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +0 -74
  406. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -53
  407. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
  408. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +0 -174
  409. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
  410. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
  411. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +0 -14
  412. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -2
  413. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
  414. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +0 -14
  415. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +0 -3
  416. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +0 -1
  417. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +0 -24
  418. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts +0 -2
  419. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.d.ts.map +0 -1
  420. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +0 -18
  421. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -29
  422. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
  423. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.js +0 -44
  424. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
  425. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
  426. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +0 -6
  427. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
  428. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
  429. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/barretenberg.js +0 -6
  430. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
  431. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
  432. package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +0 -40
  433. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts +0 -2
  434. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
  435. package/dest/node-cjs/barretenberg_wasm/fetch_code/index.js +0 -5
  436. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +0 -2
  437. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +0 -1
  438. package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +0 -39
  439. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +0 -13
  440. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
  441. package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +0 -50
  442. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts +0 -2
  443. package/dest/node-cjs/barretenberg_wasm/helpers/index.d.ts.map +0 -1
  444. package/dest/node-cjs/barretenberg_wasm/helpers/index.js +0 -5
  445. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +0 -22
  446. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +0 -1
  447. package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +0 -57
  448. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +0 -8
  449. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts.map +0 -1
  450. package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +0 -31
  451. package/dest/node-cjs/barretenberg_wasm/index.d.ts +0 -5
  452. package/dest/node-cjs/barretenberg_wasm/index.d.ts.map +0 -1
  453. package/dest/node-cjs/barretenberg_wasm/index.js +0 -19
  454. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts +0 -2
  455. package/dest/node-cjs/barretenberg_wasm/index.test.d.ts.map +0 -1
  456. package/dest/node-cjs/barretenberg_wasm/index.test.js +0 -41
  457. package/dest/node-cjs/bb_backends/browser/index.d.ts +0 -11
  458. package/dest/node-cjs/bb_backends/browser/index.d.ts.map +0 -1
  459. package/dest/node-cjs/bb_backends/browser/index.js +0 -43
  460. package/dest/node-cjs/bb_backends/index.d.ts +0 -45
  461. package/dest/node-cjs/bb_backends/index.d.ts.map +0 -1
  462. package/dest/node-cjs/bb_backends/index.js +0 -18
  463. package/dest/node-cjs/bb_backends/interface.d.ts +0 -33
  464. package/dest/node-cjs/bb_backends/interface.d.ts.map +0 -1
  465. package/dest/node-cjs/bb_backends/interface.js +0 -3
  466. package/dest/node-cjs/bb_backends/node/index.d.ts +0 -11
  467. package/dest/node-cjs/bb_backends/node/index.d.ts.map +0 -1
  468. package/dest/node-cjs/bb_backends/node/index.js +0 -84
  469. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts +0 -25
  470. package/dest/node-cjs/bb_backends/node/native_pipe.d.ts.map +0 -1
  471. package/dest/node-cjs/bb_backends/node/native_pipe.js +0 -117
  472. package/dest/node-cjs/bb_backends/node/native_shm.d.ts +0 -28
  473. package/dest/node-cjs/bb_backends/node/native_shm.d.ts.map +0 -1
  474. package/dest/node-cjs/bb_backends/node/native_shm.js +0 -154
  475. package/dest/node-cjs/bb_backends/node/native_socket.d.ts +0 -34
  476. package/dest/node-cjs/bb_backends/node/native_socket.d.ts.map +0 -1
  477. package/dest/node-cjs/bb_backends/node/native_socket.js +0 -274
  478. package/dest/node-cjs/bb_backends/node/platform.d.ts +0 -27
  479. package/dest/node-cjs/bb_backends/node/platform.d.ts.map +0 -1
  480. package/dest/node-cjs/bb_backends/node/platform.js +0 -131
  481. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts +0 -15
  482. package/dest/node-cjs/bb_backends/sync_to_async_adapter.d.ts.map +0 -1
  483. package/dest/node-cjs/bb_backends/sync_to_async_adapter.js +0 -24
  484. package/dest/node-cjs/bb_backends/wasm.d.ts +0 -56
  485. package/dest/node-cjs/bb_backends/wasm.d.ts.map +0 -1
  486. package/dest/node-cjs/bb_backends/wasm.js +0 -95
  487. package/dest/node-cjs/benchmark/index.d.ts +0 -3
  488. package/dest/node-cjs/benchmark/index.d.ts.map +0 -1
  489. package/dest/node-cjs/benchmark/index.js +0 -29
  490. package/dest/node-cjs/benchmark/timer.d.ts +0 -34
  491. package/dest/node-cjs/benchmark/timer.d.ts.map +0 -1
  492. package/dest/node-cjs/benchmark/timer.js +0 -45
  493. package/dest/node-cjs/bigint-array/index.d.ts +0 -17
  494. package/dest/node-cjs/bigint-array/index.d.ts.map +0 -1
  495. package/dest/node-cjs/bigint-array/index.js +0 -43
  496. package/dest/node-cjs/cbind/generate.d.ts +0 -5
  497. package/dest/node-cjs/cbind/generate.d.ts.map +0 -1
  498. package/dest/node-cjs/cbind/generate.js +0 -61
  499. package/dest/node-cjs/cbind/generated/api_types.d.ts +0 -1805
  500. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +0 -1
  501. package/dest/node-cjs/cbind/generated/api_types.js +0 -2633
  502. package/dest/node-cjs/cbind/generated/async.d.ts +0 -57
  503. package/dest/node-cjs/cbind/generated/async.d.ts.map +0 -1
  504. package/dest/node-cjs/cbind/generated/async.js +0 -458
  505. package/dest/node-cjs/cbind/generated/sync.d.ts +0 -57
  506. package/dest/node-cjs/cbind/generated/sync.d.ts.map +0 -1
  507. package/dest/node-cjs/cbind/generated/sync.js +0 -410
  508. package/dest/node-cjs/cbind/schema_compiler.d.ts +0 -68
  509. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +0 -1
  510. package/dest/node-cjs/cbind/schema_compiler.js +0 -586
  511. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts +0 -43
  512. package/dest/node-cjs/crs/browser/cached_net_crs.d.ts.map +0 -1
  513. package/dest/node-cjs/crs/browser/cached_net_crs.js +0 -95
  514. package/dest/node-cjs/crs/browser/index.d.ts +0 -2
  515. package/dest/node-cjs/crs/browser/index.d.ts.map +0 -1
  516. package/dest/node-cjs/crs/browser/index.js +0 -7
  517. package/dest/node-cjs/crs/index.d.ts +0 -2
  518. package/dest/node-cjs/crs/index.d.ts.map +0 -1
  519. package/dest/node-cjs/crs/index.js +0 -7
  520. package/dest/node-cjs/crs/net_crs.d.ts +0 -85
  521. package/dest/node-cjs/crs/net_crs.d.ts.map +0 -1
  522. package/dest/node-cjs/crs/net_crs.js +0 -141
  523. package/dest/node-cjs/crs/node/index.d.ts +0 -38
  524. package/dest/node-cjs/crs/node/index.d.ts.map +0 -1
  525. package/dest/node-cjs/crs/node/index.js +0 -107
  526. package/dest/node-cjs/index.d.ts +0 -6
  527. package/dest/node-cjs/index.d.ts.map +0 -1
  528. package/dest/node-cjs/index.js +0 -22
  529. package/dest/node-cjs/log/browser/index.d.ts +0 -6
  530. package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
  531. package/dest/node-cjs/log/browser/index.js +0 -30
  532. package/dest/node-cjs/log/index.d.ts +0 -2
  533. package/dest/node-cjs/log/index.d.ts.map +0 -1
  534. package/dest/node-cjs/log/index.js +0 -8
  535. package/dest/node-cjs/log/node/index.d.ts +0 -6
  536. package/dest/node-cjs/log/node/index.d.ts.map +0 -1
  537. package/dest/node-cjs/log/node/index.js +0 -42
  538. package/dest/node-cjs/log/types.d.ts +0 -6
  539. package/dest/node-cjs/log/types.d.ts.map +0 -1
  540. package/dest/node-cjs/log/types.js +0 -3
  541. package/dest/node-cjs/package.json +0 -3
  542. package/dest/node-cjs/proof/index.d.ts +0 -21
  543. package/dest/node-cjs/proof/index.d.ts.map +0 -1
  544. package/dest/node-cjs/proof/index.js +0 -72
  545. package/dest/node-cjs/random/browser/index.d.ts +0 -2
  546. package/dest/node-cjs/random/browser/index.d.ts.map +0 -1
  547. package/dest/node-cjs/random/browser/index.js +0 -35
  548. package/dest/node-cjs/random/index.d.ts +0 -2
  549. package/dest/node-cjs/random/index.d.ts.map +0 -1
  550. package/dest/node-cjs/random/index.js +0 -5
  551. package/dest/node-cjs/random/node/index.d.ts +0 -2
  552. package/dest/node-cjs/random/node/index.d.ts.map +0 -1
  553. package/dest/node-cjs/random/node/index.js +0 -8
  554. package/dest/node-cjs/retry/index.d.ts +0 -26
  555. package/dest/node-cjs/retry/index.d.ts.map +0 -1
  556. package/dest/node-cjs/retry/index.js +0 -55
  557. package/dest/node-cjs/serialize/buffer_reader.d.ts +0 -28
  558. package/dest/node-cjs/serialize/buffer_reader.d.ts.map +0 -1
  559. package/dest/node-cjs/serialize/buffer_reader.js +0 -70
  560. package/dest/node-cjs/serialize/index.d.ts +0 -3
  561. package/dest/node-cjs/serialize/index.d.ts.map +0 -1
  562. package/dest/node-cjs/serialize/index.js +0 -6
  563. package/dest/node-cjs/serialize/serialize.d.ts +0 -18
  564. package/dest/node-cjs/serialize/serialize.d.ts.map +0 -1
  565. package/dest/node-cjs/serialize/serialize.js +0 -82
  566. package/dest/node-cjs/types/fields.d.ts +0 -43
  567. package/dest/node-cjs/types/fields.d.ts.map +0 -1
  568. package/dest/node-cjs/types/fields.js +0 -107
  569. package/dest/node-cjs/types/index.d.ts +0 -3
  570. package/dest/node-cjs/types/index.d.ts.map +0 -1
  571. package/dest/node-cjs/types/index.js +0 -6
  572. package/dest/node-cjs/types/point.d.ts +0 -16
  573. package/dest/node-cjs/types/point.d.ts.map +0 -1
  574. package/dest/node-cjs/types/point.js +0 -35
  575. package/src/cbind/generated/api_types.ts +0 -3757
  576. package/src/cbind/generated/async.ts +0 -504
  577. package/src/cbind/generated/sync.ts +0 -455
  578. package/src/serialize/buffer_reader.ts +0 -85
@@ -1,586 +0,0 @@
1
- "use strict";
2
- /**
3
- * Unified schema compiler with integrated strategies
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SchemaCompiler = void 0;
7
- exports.createSharedTypesCompiler = createSharedTypesCompiler;
8
- exports.createSyncApiCompiler = createSyncApiCompiler;
9
- exports.createAsyncApiCompiler = createAsyncApiCompiler;
10
- // Helper functions
11
- function capitalize(s) {
12
- return s.charAt(0).toUpperCase() + s.substring(1);
13
- }
14
- function camelCase(s) {
15
- return s
16
- .split('_')
17
- .map((part, index) => (index === 0 ? part.charAt(0).toLowerCase() + part.substring(1) : capitalize(part)))
18
- .join('');
19
- }
20
- function pascalCase(s) {
21
- return s.split('_').map(capitalize).join('');
22
- }
23
- class SchemaCompiler {
24
- constructor(config) {
25
- this.config = config;
26
- this.typeCache = new Map();
27
- this.functionMetadata = [];
28
- // WORKTODO(bbapi): AI slop fixup - redundant with typeCache, remove
29
- this.referencedTypes = new Set();
30
- }
31
- /**
32
- * Process API schema and extract function metadata
33
- */
34
- processApiSchema(commandsSchema, responsesSchema) {
35
- // Process types
36
- this.processSchema(commandsSchema);
37
- this.processSchema(responsesSchema);
38
- // Extract function metadata from named unions
39
- if (!Array.isArray(commandsSchema) ||
40
- commandsSchema[0] !== 'named_union' ||
41
- !Array.isArray(responsesSchema) ||
42
- responsesSchema[0] !== 'named_union') {
43
- throw new Error('Expected named_union schema format');
44
- }
45
- const commands = commandsSchema[1];
46
- const responses = responsesSchema[1];
47
- for (let i = 0; i < commands.length; i++) {
48
- const [commandName] = commands[i];
49
- const [responseName] = responses[i];
50
- this.functionMetadata.push({
51
- name: camelCase(commandName),
52
- commandType: pascalCase(commandName),
53
- responseType: pascalCase(responseName),
54
- });
55
- }
56
- }
57
- /**
58
- * Process a schema and populate type cache
59
- */
60
- processSchema(schema) {
61
- const key = this.getSchemaKey(schema);
62
- if (this.typeCache.has(key)) {
63
- const ret = this.typeCache.get(key);
64
- if (ret.typeName === 'unknown') {
65
- throw new Error(`Recursive schema detected at ${key}, please check your schema for circular references.`);
66
- }
67
- return ret;
68
- }
69
- this.typeCache.set(key, { typeName: 'unknown', msgpackTypeName: '' });
70
- const typeInfo = this.generateTypeInfo(schema);
71
- this.typeCache.set(key, typeInfo);
72
- return typeInfo;
73
- }
74
- /**
75
- * Generate the complete output
76
- */
77
- compile() {
78
- const parts = ['// AUTOGENERATED FILE - DO NOT EDIT', ''];
79
- // Generate imports
80
- parts.push(...this.generateImports());
81
- parts.push('');
82
- // Generate type declarations only for 'types' mode
83
- if (this.config.mode === 'types') {
84
- const sortedTypes = Array.from(this.typeCache.values())
85
- .filter(t => t.declaration)
86
- .sort((a, b) => a.typeName.localeCompare(b.typeName));
87
- // Group declarations
88
- const typeAliases = sortedTypes.filter(t => t.declaration?.startsWith('export type') && !t.declaration?.includes('interface'));
89
- const publicInterfaces = sortedTypes.filter(t => t.declaration?.includes('export interface'));
90
- const privateInterfaces = sortedTypes.filter(t => t.declaration?.includes('interface Msgpack'));
91
- // Add type aliases if needed
92
- if (typeAliases.length > 0) {
93
- parts.push('// Type aliases');
94
- for (const type of typeAliases) {
95
- parts.push(type.declaration);
96
- }
97
- parts.push('');
98
- }
99
- // Add tuple helper if needed
100
- if (this.needsTupleHelper()) {
101
- parts.push('// Tuple type for fixed-size arrays', 'type Tuple<T, N extends number> = N extends N ? (number extends N ? T[] : _TupleOf<T, N, []>) : never;', "type _TupleOf<T, N extends number, R extends unknown[]> = R['length'] extends N ? R : _TupleOf<T, N, [T, ...R]>;", '', '// Helper functions', 'function mapTuple<T, S, N extends number>(tuple: Tuple<T, N>, fn: (item: T) => S): Tuple<S, N> {', ' return tuple.map(fn) as Tuple<S, N>;', '}', '');
102
- }
103
- // Add public interfaces
104
- if (publicInterfaces.length > 0) {
105
- parts.push('// Public interfaces (exported)');
106
- for (const type of publicInterfaces) {
107
- parts.push(type.declaration, '');
108
- }
109
- }
110
- // Add private interfaces
111
- if (privateInterfaces.length > 0) {
112
- parts.push('// Private Msgpack interfaces (not exported)');
113
- for (const type of privateInterfaces) {
114
- parts.push(type.declaration, '');
115
- }
116
- }
117
- // Add conversion functions (only for api_types.ts)
118
- const conversions = sortedTypes.filter(t => t.toMethod || t.fromMethod);
119
- if (conversions.length > 0) {
120
- parts.push('// Conversion functions (exported)');
121
- for (const type of conversions) {
122
- if (type.toMethod) {
123
- parts.push('export ' + type.toMethod, '');
124
- }
125
- if (type.fromMethod) {
126
- parts.push('export ' + type.fromMethod, '');
127
- }
128
- }
129
- }
130
- // Add BbApiBase interface
131
- if (this.functionMetadata.length > 0) {
132
- parts.push('', '// Base API interface');
133
- parts.push(this.generateBbApiBaseInterface());
134
- }
135
- }
136
- // Add API class for non-types modes
137
- if (this.config.mode !== 'types' && this.functionMetadata.length > 0) {
138
- parts.push(this.generateApiClass());
139
- }
140
- return parts.join('\n') + '\n';
141
- }
142
- getSchemaKey(schema) {
143
- if (typeof schema === 'string')
144
- return schema;
145
- if (Array.isArray(schema))
146
- return JSON.stringify(schema);
147
- if (typeof schema === 'object')
148
- return schema.__typename || JSON.stringify(schema);
149
- return String(schema);
150
- }
151
- needsTupleHelper() {
152
- return Array.from(this.typeCache.values()).some(t => t.typeName.includes('Tuple<'));
153
- }
154
- trackTypeUsage(typeName) {
155
- // Only track for API modes
156
- if (this.config.mode === 'types')
157
- return;
158
- // Extract base types from complex types
159
- const baseTypes = this.extractBaseTypes(typeName);
160
- for (const type of baseTypes) {
161
- // Skip built-in types
162
- if (['string', 'number', 'boolean', 'Uint8Array'].includes(type)) {
163
- continue;
164
- }
165
- this.referencedTypes.add(type);
166
- }
167
- }
168
- extractBaseTypes(typeName) {
169
- const types = [];
170
- // Handle arrays
171
- const arrayMatch = typeName.match(/^(.+)\[\]$/);
172
- if (arrayMatch) {
173
- types.push(...this.extractBaseTypes(arrayMatch[1]));
174
- return types;
175
- }
176
- // Handle Tuple
177
- const tupleMatch = typeName.match(/^Tuple<(.+),\s*\d+>$/);
178
- if (tupleMatch) {
179
- types.push(...this.extractBaseTypes(tupleMatch[1]));
180
- return types;
181
- }
182
- // Handle Record
183
- const recordMatch = typeName.match(/^Record<(.+),\s*(.+)>$/);
184
- if (recordMatch) {
185
- types.push(...this.extractBaseTypes(recordMatch[1]));
186
- types.push(...this.extractBaseTypes(recordMatch[2]));
187
- return types;
188
- }
189
- // Handle union types
190
- if (typeName.includes(' | ')) {
191
- const parts = typeName.split(' | ');
192
- for (const part of parts) {
193
- types.push(...this.extractBaseTypes(part.trim()));
194
- }
195
- return types;
196
- }
197
- // Base case - simple type
198
- types.push(typeName);
199
- return types;
200
- }
201
- generateTypeInfo(schema) {
202
- if (Array.isArray(schema)) {
203
- return this.processArraySchema(schema);
204
- }
205
- else if (typeof schema === 'string') {
206
- return this.processPrimitiveSchema(schema);
207
- }
208
- else if (typeof schema === 'object') {
209
- return this.processObjectSchema(schema);
210
- }
211
- throw new Error(`Unsupported schema type: ${schema}`);
212
- }
213
- processArraySchema(schema) {
214
- const [type, ...args] = schema;
215
- switch (type) {
216
- case 'array': {
217
- const [subtype, size] = args[0];
218
- // Special case: byte arrays should be Uint8Array
219
- if (subtype === 'unsigned char') {
220
- return { typeName: 'Uint8Array' };
221
- }
222
- // For other types, use T[] - idiomatic TypeScript for fixed-length homogeneous arrays
223
- const subtypeInfo = this.processSchema(subtype);
224
- return {
225
- typeName: `${subtypeInfo.typeName}[]`,
226
- msgpackTypeName: `${subtypeInfo.msgpackTypeName || subtypeInfo.typeName}[]`,
227
- };
228
- }
229
- case 'variant': {
230
- const variants = args[0];
231
- const variantInfos = variants.map(v => this.processSchema(v));
232
- const typeName = variantInfos.map(v => v.typeName).join(' | ');
233
- const msgpackUnion = variantInfos.map(v => v.msgpackTypeName || v.typeName).join(' | ');
234
- return {
235
- typeName,
236
- msgpackTypeName: `[number, ${msgpackUnion}]`,
237
- };
238
- }
239
- case 'named_union': {
240
- const namedTypes = args[0];
241
- const tupleTypes = [];
242
- for (const [name, schemaOrName] of namedTypes) {
243
- let typeInfo = this.processSchema(schemaOrName);
244
- // Track usage of the type
245
- this.trackTypeUsage(typeInfo.typeName);
246
- tupleTypes.push(`["${name}", ${typeInfo.typeName}]`);
247
- }
248
- return {
249
- typeName: tupleTypes.join(' | '),
250
- msgpackTypeName: tupleTypes.join(' | '),
251
- };
252
- }
253
- case 'vector': {
254
- const [subtype] = args[0];
255
- if (subtype === 'unsigned char') {
256
- return { typeName: 'Uint8Array' };
257
- }
258
- const subtypeInfo = this.processSchema(subtype);
259
- return {
260
- typeName: `${subtypeInfo.typeName}[]`,
261
- msgpackTypeName: `${subtypeInfo.msgpackTypeName || subtypeInfo.typeName}[]`,
262
- };
263
- }
264
- case 'alias': {
265
- const [rawTypeName, msgpackName] = args[0];
266
- const typeName = pascalCase(rawTypeName);
267
- let targetType;
268
- if (msgpackName.startsWith('bin')) {
269
- targetType = 'Uint8Array';
270
- }
271
- else if (['int', 'unsigned int', 'unsigned short'].includes(msgpackName)) {
272
- targetType = 'number';
273
- }
274
- else {
275
- throw new Error(`Unsupported alias type: ${msgpackName}`);
276
- }
277
- // Create a proper type alias declaration
278
- return {
279
- typeName,
280
- msgpackTypeName: targetType,
281
- declaration: `export type ${typeName} = ${targetType};`,
282
- };
283
- }
284
- case 'shared_ptr': {
285
- const [subtype] = args[0];
286
- return this.processSchema(subtype);
287
- }
288
- case 'map': {
289
- const [keyType, valueType] = args[0];
290
- const keyInfo = this.processSchema(keyType);
291
- const valueInfo = this.processSchema(valueType);
292
- return {
293
- typeName: `Record<${keyInfo.typeName}, ${valueInfo.typeName}>`,
294
- msgpackTypeName: `Record<${keyInfo.msgpackTypeName || keyInfo.typeName}, ${valueInfo.msgpackTypeName || valueInfo.typeName}>`,
295
- };
296
- }
297
- default:
298
- throw new Error(`Unsupported array schema type: ${type}`);
299
- }
300
- }
301
- processPrimitiveSchema(schema) {
302
- switch (schema) {
303
- case 'bool':
304
- return { typeName: 'boolean' };
305
- case 'int':
306
- case 'unsigned int':
307
- case 'unsigned short':
308
- case 'unsigned long':
309
- case 'unsigned char':
310
- case 'double':
311
- return { typeName: 'number' };
312
- case 'string':
313
- return { typeName: 'string' };
314
- case 'bin32':
315
- return { typeName: 'Uint8Array' };
316
- default:
317
- return { typeName: pascalCase(schema) };
318
- }
319
- }
320
- processObjectSchema(schema) {
321
- const typeName = pascalCase(schema.__typename);
322
- const msgpackTypeName = 'Msgpack' + typeName;
323
- const declaration = this.generateInterfaces(typeName, schema);
324
- const toMethod = this.generateToMethod(typeName, schema);
325
- const fromMethod = this.generateFromMethod(typeName, schema);
326
- return {
327
- typeName,
328
- msgpackTypeName,
329
- declaration,
330
- toMethod,
331
- fromMethod,
332
- };
333
- }
334
- getOrCreateEmptyType(typeName) {
335
- const key = `empty_${typeName}`;
336
- if (this.typeCache.has(key)) {
337
- return this.typeCache.get(key);
338
- }
339
- const typeInfo = {
340
- typeName,
341
- msgpackTypeName: 'Msgpack' + typeName,
342
- declaration: `export interface ${typeName} {}\n\ninterface Msgpack${typeName} {}`,
343
- toMethod: `function to${typeName}(o: Msgpack${typeName}): ${typeName} {\n return {};\n}`,
344
- fromMethod: `function from${typeName}(o: ${typeName}): Msgpack${typeName} {\n return {};\n}`,
345
- };
346
- this.typeCache.set(key, typeInfo);
347
- return typeInfo;
348
- }
349
- generateInterfaces(name, schema) {
350
- const publicInterface = this.generatePublicInterface(name, schema);
351
- const msgpackInterface = this.generateMsgpackInterface(name, schema);
352
- return publicInterface + '\n\n' + msgpackInterface;
353
- }
354
- generatePublicInterface(name, schema) {
355
- let result = `export interface ${name} {\n`;
356
- for (const [key, value] of Object.entries(schema)) {
357
- if (key === '__typename')
358
- continue;
359
- const typeInfo = this.processSchema(value);
360
- // Track type usage
361
- this.trackTypeUsage(typeInfo.typeName);
362
- result += ` ${camelCase(key)}: ${typeInfo.typeName};\n`;
363
- }
364
- result += '}';
365
- return result;
366
- }
367
- generateMsgpackInterface(name, schema) {
368
- let result = `interface Msgpack${name} {\n`;
369
- for (const [key, value] of Object.entries(schema)) {
370
- if (key === '__typename')
371
- continue;
372
- const typeInfo = this.processSchema(value);
373
- result += ` ${key}: ${typeInfo.msgpackTypeName || typeInfo.typeName};\n`;
374
- }
375
- result += '}';
376
- return result;
377
- }
378
- generateToMethod(name, schema) {
379
- const fields = Object.entries(schema).filter(([key]) => key !== '__typename');
380
- if (fields.length === 0) {
381
- return `function to${name}(o: Msgpack${name}): ${name} {\n return {};\n}`;
382
- }
383
- const checks = fields
384
- .map(([key]) => ` if (o.${key} === undefined) { throw new Error("Expected ${key} in ${name} deserialization"); }`)
385
- .join('\n');
386
- const conversions = fields
387
- .map(([key, value]) => {
388
- const typeInfo = this.processSchema(value);
389
- const converter = this.generateConverter(typeInfo, `o.${key}`, 'to');
390
- return ` ${camelCase(key)}: ${converter},`;
391
- })
392
- .join('\n');
393
- return `function to${name}(o: Msgpack${name}): ${name} {
394
- ${checks};
395
- return {
396
- ${conversions}
397
- };
398
- }`;
399
- }
400
- generateFromMethod(name, schema) {
401
- const fields = Object.entries(schema).filter(([key]) => key !== '__typename');
402
- if (fields.length === 0) {
403
- return `function from${name}(o: ${name}): Msgpack${name} {\n return {};\n}`;
404
- }
405
- const checks = fields
406
- .map(([key]) => ` if (o.${camelCase(key)} === undefined) { throw new Error("Expected ${camelCase(key)} in ${name} serialization"); }`)
407
- .join('\n');
408
- const conversions = fields
409
- .map(([key, value]) => {
410
- const typeInfo = this.processSchema(value);
411
- const converter = this.generateConverter(typeInfo, `o.${camelCase(key)}`, 'from');
412
- return ` ${key}: ${converter},`;
413
- })
414
- .join('\n');
415
- return `function from${name}(o: ${name}): Msgpack${name} {
416
- ${checks};
417
- return {
418
- ${conversions}
419
- };
420
- }`;
421
- }
422
- generateConverter(typeInfo, value, direction) {
423
- // Handle arrays/tuples
424
- if (typeInfo.typeName.includes('[]') || typeInfo.typeName.includes('Tuple<')) {
425
- const elementType = typeInfo.typeName.match(/^(.+)\[\]$/) || typeInfo.typeName.match(/^Tuple<(.+),/);
426
- if (elementType) {
427
- const isTuple = typeInfo.typeName.includes('Tuple<');
428
- const mapFn = isTuple ? 'mapTuple' : 'map';
429
- return `${value}.${mapFn}((v: any) => v)`; // Simplified for now
430
- }
431
- }
432
- // Handle custom types that have conversion methods (not just type aliases)
433
- if (typeInfo.toMethod || typeInfo.fromMethod) {
434
- return `${direction}${typeInfo.typeName}(${value})`;
435
- }
436
- return value;
437
- }
438
- generateImports() {
439
- const imports = [];
440
- // Base imports
441
- if (this.config.imports) {
442
- imports.push(...this.config.imports);
443
- }
444
- // For API modes, import from api_types
445
- if (this.config.mode !== 'types') {
446
- const neededImports = new Set();
447
- // Add types and conversion functions from function metadata
448
- for (const metadata of this.functionMetadata) {
449
- neededImports.add(metadata.commandType);
450
- neededImports.add(metadata.responseType);
451
- neededImports.add(`from${metadata.commandType}`);
452
- neededImports.add(`to${metadata.responseType}`);
453
- }
454
- // Add referenced types
455
- for (const type of this.referencedTypes) {
456
- neededImports.add(type);
457
- }
458
- // Add BbApiBase interface
459
- neededImports.add('BbApiBase');
460
- if (neededImports.size > 0) {
461
- const sortedImports = Array.from(neededImports).sort();
462
- // Remove duplicates
463
- const uniqueImports = sortedImports.filter((item, index) => sortedImports.indexOf(item) === index);
464
- imports.push(`import { ${uniqueImports.join(', ')} } from './api_types.js';`);
465
- }
466
- }
467
- return imports;
468
- }
469
- generateBbApiBaseInterface() {
470
- const methods = this.functionMetadata
471
- .map(m => ` ${m.name}(command: ${m.commandType}): Promise<${m.responseType}>;`)
472
- .join('\n');
473
- return `export interface BbApiBase {
474
- ${methods}
475
- destroy(): Promise<void>;
476
- }`;
477
- }
478
- generateApiClass() {
479
- const className = this.getApiClassName();
480
- const methods = this.functionMetadata.map(m => this.generateApiMethod(m)).join('\n\n');
481
- // For sync API, don't implement BbApiBase since methods are synchronous
482
- const implementsClause = this.config.mode === 'sync' ? '' : ' implements BbApiBase';
483
- // For tracing all calls to bb.
484
- // const msgpackCallHelper =
485
- // `${this.config.mode === 'async' ? 'async ' : ''}function msgpackCall(backend: ${this.getBackendType()}, input: any[]) {\n` +
486
- // ` const commandName = input[0]?.[0] || 'unknown';\n` +
487
- // ` process.stderr.write(\`[BB MSGPACK ${this.config.mode === 'async' ? 'ASYNC' : 'SYNC'}] \${commandName}\\n\`);\n` +
488
- // ` const inputBuffer = new Encoder({ useRecords: false }).pack(input);\n` +
489
- // ` const encodedResult = ${this.config.mode === 'async' ? 'await ' : ''}backend.call(inputBuffer);\n` +
490
- // ` const result = new Decoder({ useRecords: false }).unpack(encodedResult);\n` +
491
- // ` process.stderr.write(\`[BB MSGPACK ${this.config.mode === 'async' ? 'ASYNC' : 'SYNC'}] \${commandName} => completed\\n\`);\n` +
492
- // ` return result;\n` +
493
- // `}\n`;
494
- const msgpackCallHelper = `${this.config.mode === 'async' ? 'async ' : ''}function msgpackCall(backend: ${this.getBackendType()}, input: any[]) {` +
495
- ` const inputBuffer = new Encoder({ useRecords: false }).pack(input);` +
496
- ` const encodedResult = ${this.config.mode === 'async' ? 'await ' : ''}backend.call(inputBuffer);` +
497
- ` return new Decoder({ useRecords: false }).unpack(encodedResult);` +
498
- `}\n`;
499
- const destroyMethod = this.config.mode === 'sync'
500
- ? ` destroy(): void {
501
- if (this.backend.destroy) this.backend.destroy();
502
- }`
503
- : ` destroy(): Promise<void> {
504
- return this.backend.destroy ? this.backend.destroy() : Promise.resolve();
505
- }`;
506
- return (msgpackCallHelper +
507
- `export class ${className}${implementsClause} {
508
- constructor(protected backend: ${this.getBackendType()}) {}
509
-
510
- ${methods}
511
-
512
- ${destroyMethod}
513
- }`);
514
- }
515
- getApiClassName() {
516
- switch (this.config.mode) {
517
- case 'sync':
518
- return 'SyncApi';
519
- case 'async':
520
- return 'AsyncApi';
521
- default:
522
- throw new Error(`Invalid mode: ${this.config.mode}`);
523
- }
524
- }
525
- getBackendType() {
526
- switch (this.config.mode) {
527
- case 'sync':
528
- return 'IMsgpackBackendSync';
529
- case 'async':
530
- return 'IMsgpackBackendAsync';
531
- default:
532
- return '';
533
- }
534
- }
535
- generateApiMethod(metadata) {
536
- const { name, commandType, responseType } = metadata;
537
- // For async mode, queue immediately and return promise
538
- if (this.config.mode === 'async') {
539
- return ` ${name}(command: ${commandType}): Promise<${responseType}> {
540
- const msgpackCommand = from${commandType}(command);
541
- return msgpackCall(this.backend, [["${capitalize(name)}", msgpackCommand]]).then(([variantName, result]: [string, any]) => {
542
- if (variantName !== '${responseType}') {
543
- throw new Error(\`Expected variant name '${responseType}' but got '\${variantName}'\`);
544
- }
545
- return to${responseType}(result);
546
- });
547
- }`;
548
- }
549
- // For sync mode, keep the synchronous behavior
550
- return ` ${name}(command: ${commandType}): ${responseType} {
551
- const msgpackCommand = from${commandType}(command);
552
- const [variantName, result] = msgpackCall(this.backend, [["${capitalize(name)}", msgpackCommand]]);
553
- if (variantName !== '${responseType}') {
554
- throw new Error(\`Expected variant name '${responseType}' but got '\${variantName}'\`);
555
- }
556
- return to${responseType}(result);
557
- }`;
558
- }
559
- }
560
- exports.SchemaCompiler = SchemaCompiler;
561
- // Factory methods for creating configured compilers
562
- function createSharedTypesCompiler() {
563
- return new SchemaCompiler({
564
- mode: 'types',
565
- imports: [],
566
- });
567
- }
568
- function createSyncApiCompiler() {
569
- return new SchemaCompiler({
570
- mode: 'sync',
571
- imports: [
572
- `import { IMsgpackBackendSync } from '../../bb_backends/interface.js';`,
573
- `import { Decoder, Encoder } from 'msgpackr';`,
574
- ],
575
- });
576
- }
577
- function createAsyncApiCompiler() {
578
- return new SchemaCompiler({
579
- mode: 'async',
580
- imports: [
581
- `import { IMsgpackBackendAsync } from '../../bb_backends/interface.js';`,
582
- `import { Decoder, Encoder } from 'msgpackr';`,
583
- ],
584
- });
585
- }
586
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hX2NvbXBpbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NiaW5kL3NjaGVtYV9jb21waWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQXVyQkgsOERBS0M7QUFFRCxzREFRQztBQUVELHdEQVFDO0FBenFCRCxtQkFBbUI7QUFDbkIsU0FBUyxVQUFVLENBQUMsQ0FBUztJQUMzQixPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBRUQsU0FBUyxTQUFTLENBQUMsQ0FBUztJQUMxQixPQUFPLENBQUM7U0FDTCxLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ3pHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxDQUFTO0lBQzNCLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFhLGNBQWM7SUFNekIsWUFBb0IsTUFBc0I7UUFBdEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFMbEMsY0FBUyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDO1FBQ3hDLHFCQUFnQixHQUF1QixFQUFFLENB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
@@ -1,43 +0,0 @@
1
- /**
2
- * Downloader for CRS from the web or local.
3
- */
4
- export declare class CachedNetCrs {
5
- readonly numPoints: number;
6
- private g1Data;
7
- private g2Data;
8
- constructor(numPoints: number);
9
- static new(numPoints: number): Promise<CachedNetCrs>;
10
- /**
11
- * Download the data.
12
- */
13
- init(): Promise<void>;
14
- /**
15
- * G1 points data for prover key.
16
- * @returns The points data.
17
- */
18
- getG1Data(): Uint8Array;
19
- /**
20
- * G2 points data for verification key.
21
- * @returns The points data.
22
- */
23
- getG2Data(): Uint8Array;
24
- }
25
- /**
26
- * Downloader for CRS from the web or local.
27
- */
28
- export declare class CachedNetGrumpkinCrs {
29
- readonly numPoints: number;
30
- private g1Data;
31
- constructor(numPoints: number);
32
- static new(numPoints: number): Promise<CachedNetGrumpkinCrs>;
33
- /**
34
- * Download the data.
35
- */
36
- init(): Promise<void>;
37
- /**
38
- * G1 points data for prover key.
39
- * @returns The points data.
40
- */
41
- getG1Data(): Uint8Array;
42
- }
43
- //# sourceMappingURL=cached_net_crs.d.ts.map