@aztec/foundation 0.0.0-test.1 → 0.0.1-commit.03f7ef2

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 (669) hide show
  1. package/dest/array/array.d.ts +6 -9
  2. package/dest/array/array.d.ts.map +1 -1
  3. package/dest/array/array.js +11 -11
  4. package/dest/array/index.d.ts +1 -1
  5. package/dest/async-map/index.d.ts +1 -1
  6. package/dest/async-pool/index.d.ts +1 -1
  7. package/dest/async-pool/index.d.ts.map +1 -1
  8. package/dest/async-pool/index.js +1 -0
  9. package/dest/bigint/index.d.ts +7 -0
  10. package/dest/bigint/index.d.ts.map +1 -0
  11. package/dest/bigint/index.js +15 -0
  12. package/dest/bigint-buffer/index.d.ts +1 -3
  13. package/dest/bigint-buffer/index.d.ts.map +1 -1
  14. package/dest/branded-types/block_number.d.ts +53 -0
  15. package/dest/branded-types/block_number.d.ts.map +1 -0
  16. package/dest/branded-types/block_number.js +75 -0
  17. package/dest/branded-types/checkpoint_number.d.ts +46 -0
  18. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  19. package/dest/branded-types/checkpoint_number.js +68 -0
  20. package/dest/branded-types/epoch.d.ts +42 -0
  21. package/dest/branded-types/epoch.d.ts.map +1 -0
  22. package/dest/branded-types/epoch.js +59 -0
  23. package/dest/branded-types/index.d.ts +6 -0
  24. package/dest/branded-types/index.d.ts.map +1 -0
  25. package/dest/branded-types/index.js +4 -0
  26. package/dest/branded-types/slot.d.ts +42 -0
  27. package/dest/branded-types/slot.d.ts.map +1 -0
  28. package/dest/branded-types/slot.js +59 -0
  29. package/dest/branded-types/types.d.ts +5 -0
  30. package/dest/branded-types/types.d.ts.map +1 -0
  31. package/dest/branded-types/types.js +1 -0
  32. package/dest/buffer/buffer16.d.ts +77 -0
  33. package/dest/buffer/buffer16.d.ts.map +1 -0
  34. package/dest/buffer/buffer16.js +100 -0
  35. package/dest/buffer/buffer32.d.ts +5 -12
  36. package/dest/buffer/buffer32.d.ts.map +1 -1
  37. package/dest/buffer/buffer32.js +7 -7
  38. package/dest/buffer/index.d.ts +2 -1
  39. package/dest/buffer/index.d.ts.map +1 -1
  40. package/dest/buffer/index.js +1 -0
  41. package/dest/collection/array.d.ts +17 -4
  42. package/dest/collection/array.d.ts.map +1 -1
  43. package/dest/collection/array.js +57 -3
  44. package/dest/collection/index.d.ts +1 -1
  45. package/dest/collection/object.d.ts +17 -1
  46. package/dest/collection/object.d.ts.map +1 -1
  47. package/dest/collection/object.js +25 -0
  48. package/dest/committable/committable.d.ts +1 -1
  49. package/dest/committable/committable.d.ts.map +1 -1
  50. package/dest/committable/index.d.ts +1 -1
  51. package/dest/config/env_var.d.ts +2 -2
  52. package/dest/config/env_var.d.ts.map +1 -1
  53. package/dest/config/index.d.ts +57 -2
  54. package/dest/config/index.d.ts.map +1 -1
  55. package/dest/config/index.js +128 -6
  56. package/dest/config/network_config.d.ts +54 -0
  57. package/dest/config/network_config.d.ts.map +1 -0
  58. package/dest/config/network_config.js +11 -0
  59. package/dest/config/network_name.d.ts +3 -0
  60. package/dest/config/network_name.d.ts.map +1 -0
  61. package/dest/config/network_name.js +19 -0
  62. package/dest/config/secret_value.d.ts +28 -0
  63. package/dest/config/secret_value.d.ts.map +1 -0
  64. package/dest/config/secret_value.js +34 -0
  65. package/dest/crypto/aes128/index.d.ts +3 -5
  66. package/dest/crypto/aes128/index.d.ts.map +1 -1
  67. package/dest/crypto/aes128/index.js +19 -6
  68. package/dest/crypto/bls/bn254_keystore.d.ts +296 -0
  69. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
  70. package/dest/crypto/bls/bn254_keystore.js +218 -0
  71. package/dest/crypto/bls/index.d.ts +13 -0
  72. package/dest/crypto/bls/index.d.ts.map +1 -0
  73. package/dest/crypto/bls/index.js +87 -0
  74. package/dest/crypto/bn254/index.d.ts +39 -0
  75. package/dest/crypto/bn254/index.d.ts.map +1 -0
  76. package/dest/crypto/bn254/index.js +56 -0
  77. package/dest/crypto/ecdsa/index.d.ts +3 -3
  78. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  79. package/dest/crypto/ecdsa/index.js +62 -48
  80. package/dest/crypto/ecdsa/signature.d.ts +3 -14
  81. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  82. package/dest/crypto/ecdsa/signature.js +2 -2
  83. package/dest/crypto/grumpkin/index.d.ts +10 -15
  84. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  85. package/dest/crypto/grumpkin/index.js +61 -55
  86. package/dest/crypto/keccak/index.d.ts +3 -5
  87. package/dest/crypto/keccak/index.d.ts.map +1 -1
  88. package/dest/crypto/keys/index.d.ts +2 -4
  89. package/dest/crypto/keys/index.d.ts.map +1 -1
  90. package/dest/crypto/keys/index.js +8 -5
  91. package/dest/crypto/pedersen/index.d.ts +1 -1
  92. package/dest/crypto/pedersen/pedersen.noble.d.ts +3 -5
  93. package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -1
  94. package/dest/crypto/pedersen/pedersen.wasm.d.ts +4 -6
  95. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  96. package/dest/crypto/pedersen/pedersen.wasm.js +24 -14
  97. package/dest/crypto/poseidon/index.d.ts +2 -4
  98. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  99. package/dest/crypto/poseidon/index.js +33 -18
  100. package/dest/crypto/random/index.d.ts +2 -4
  101. package/dest/crypto/random/index.d.ts.map +1 -1
  102. package/dest/crypto/random/index.js +2 -34
  103. package/dest/crypto/random/randomness_singleton.d.ts +1 -3
  104. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  105. package/dest/crypto/schnorr/index.d.ts +3 -2
  106. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  107. package/dest/crypto/schnorr/index.js +30 -38
  108. package/dest/crypto/schnorr/signature.d.ts +5 -7
  109. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  110. package/dest/crypto/schnorr/signature.js +2 -2
  111. package/dest/crypto/secp256k1/index.d.ts +5 -7
  112. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  113. package/dest/crypto/secp256k1/index.js +23 -18
  114. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  115. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  116. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  117. package/dest/crypto/secp256k1-signer/utils.d.ts +56 -5
  118. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  119. package/dest/crypto/secp256k1-signer/utils.js +92 -6
  120. package/dest/crypto/serialize.d.ts +5 -7
  121. package/dest/crypto/serialize.d.ts.map +1 -1
  122. package/dest/crypto/sha256/index.d.ts +23 -6
  123. package/dest/crypto/sha256/index.d.ts.map +1 -1
  124. package/dest/crypto/sha256/index.js +43 -1
  125. package/dest/crypto/sha512/index.d.ts +3 -5
  126. package/dest/crypto/sha512/index.d.ts.map +1 -1
  127. package/dest/crypto/sha512/index.js +1 -1
  128. package/dest/crypto/signature/index.d.ts +2 -4
  129. package/dest/crypto/signature/index.d.ts.map +1 -1
  130. package/dest/crypto/sync/index.d.ts +1 -1
  131. package/dest/crypto/sync/index.js +1 -1
  132. package/dest/crypto/sync/pedersen/index.d.ts +4 -6
  133. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  134. package/dest/crypto/sync/pedersen/index.js +18 -11
  135. package/dest/crypto/sync/poseidon/index.d.ts +2 -4
  136. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  137. package/dest/crypto/sync/poseidon/index.js +28 -13
  138. package/dest/curves/bls12/field.d.ts +148 -0
  139. package/dest/curves/bls12/field.d.ts.map +1 -0
  140. package/dest/curves/bls12/field.js +359 -0
  141. package/dest/curves/bls12/index.d.ts +3 -0
  142. package/dest/curves/bls12/index.d.ts.map +1 -0
  143. package/dest/curves/bls12/index.js +2 -0
  144. package/dest/curves/bls12/point.d.ts +220 -0
  145. package/dest/curves/bls12/point.d.ts.map +1 -0
  146. package/dest/curves/bls12/point.js +398 -0
  147. package/dest/curves/bn254/field.d.ts +179 -0
  148. package/dest/curves/bn254/field.d.ts.map +1 -0
  149. package/dest/{fields/fields.js → curves/bn254/field.js} +82 -60
  150. package/dest/curves/bn254/index.d.ts +3 -0
  151. package/dest/curves/bn254/index.d.ts.map +1 -0
  152. package/dest/curves/bn254/index.js +2 -0
  153. package/dest/curves/bn254/point.d.ts +54 -0
  154. package/dest/curves/bn254/point.d.ts.map +1 -0
  155. package/dest/curves/bn254/point.js +143 -0
  156. package/dest/curves/grumpkin/index.d.ts +10 -0
  157. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  158. package/dest/curves/grumpkin/index.js +3 -0
  159. package/dest/{fields → curves/grumpkin}/point.d.ts +15 -17
  160. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  161. package/dest/{fields → curves/grumpkin}/point.js +27 -10
  162. package/dest/decorators/index.d.ts +1 -1
  163. package/dest/decorators/memoize.d.ts +1 -1
  164. package/dest/decorators/memoize.d.ts.map +1 -1
  165. package/dest/error/index.d.ts +4 -4
  166. package/dest/error/index.d.ts.map +1 -1
  167. package/dest/eth-address/index.d.ts +18 -9
  168. package/dest/eth-address/index.d.ts.map +1 -1
  169. package/dest/eth-address/index.js +28 -1
  170. package/dest/eth-signature/eth_signature.d.ts +17 -18
  171. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  172. package/dest/eth-signature/eth_signature.js +31 -17
  173. package/dest/eth-signature/index.d.ts +1 -1
  174. package/dest/fs/index.d.ts +2 -1
  175. package/dest/fs/index.d.ts.map +1 -1
  176. package/dest/fs/index.js +1 -0
  177. package/dest/fs/run_in_dir.d.ts +1 -1
  178. package/dest/fs/try_rm_dir.d.ts +3 -0
  179. package/dest/fs/try_rm_dir.d.ts.map +1 -0
  180. package/dest/fs/try_rm_dir.js +16 -0
  181. package/dest/iterable/all.d.ts +1 -1
  182. package/dest/iterable/filter.d.ts +1 -1
  183. package/dest/iterable/filter.js +1 -1
  184. package/dest/iterable/index.d.ts +1 -1
  185. package/dest/iterable/isAsyncIt.d.ts +1 -1
  186. package/dest/iterable/map.d.ts +1 -1
  187. package/dest/iterable/map.js +1 -1
  188. package/dest/iterable/peek.d.ts +1 -1
  189. package/dest/iterable/sort.d.ts +1 -1
  190. package/dest/iterable/take.d.ts +1 -1
  191. package/dest/iterable/toArray.d.ts +1 -1
  192. package/dest/iterator/filter.d.ts +3 -0
  193. package/dest/iterator/filter.d.ts.map +1 -0
  194. package/dest/iterator/filter.js +7 -0
  195. package/dest/iterator/index.d.ts +2 -0
  196. package/dest/iterator/index.d.ts.map +1 -0
  197. package/dest/iterator/index.js +1 -0
  198. package/dest/jest/env.js +48 -0
  199. package/dest/jest/setupAfterEnv.js +3 -0
  200. package/dest/json-rpc/client/fetch.d.ts +3 -3
  201. package/dest/json-rpc/client/fetch.d.ts.map +1 -1
  202. package/dest/json-rpc/client/fetch.js +16 -30
  203. package/dest/json-rpc/client/index.d.ts +1 -1
  204. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +10 -4
  205. package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -1
  206. package/dest/json-rpc/client/safe_json_rpc_client.js +173 -13
  207. package/dest/json-rpc/client/undici.d.ts +1 -1
  208. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  209. package/dest/json-rpc/client/undici.js +6 -7
  210. package/dest/json-rpc/convert.d.ts +3 -10
  211. package/dest/json-rpc/convert.d.ts.map +1 -1
  212. package/dest/json-rpc/convert.js +1 -9
  213. package/dest/json-rpc/errors.d.ts +4 -0
  214. package/dest/json-rpc/errors.d.ts.map +1 -0
  215. package/dest/json-rpc/errors.js +6 -0
  216. package/dest/json-rpc/fixtures/class_a.d.ts +4 -2
  217. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  218. package/dest/json-rpc/fixtures/class_b.d.ts +4 -2
  219. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  220. package/dest/json-rpc/fixtures/test_state.d.ts +1 -1
  221. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  222. package/dest/json-rpc/index.d.ts +3 -2
  223. package/dest/json-rpc/index.d.ts.map +1 -1
  224. package/dest/json-rpc/index.js +2 -1
  225. package/dest/json-rpc/js_utils.d.ts +1 -1
  226. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  227. package/dest/json-rpc/server/index.d.ts +1 -1
  228. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +22 -23
  229. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  230. package/dest/json-rpc/server/safe_json_rpc_server.js +161 -56
  231. package/dest/json-rpc/server/telemetry.d.ts +1 -1
  232. package/dest/json-rpc/test/index.d.ts +1 -1
  233. package/dest/json-rpc/test/integration.d.ts +2 -3
  234. package/dest/json-rpc/test/integration.d.ts.map +1 -1
  235. package/dest/log/console.d.ts +1 -1
  236. package/dest/log/console.d.ts.map +1 -1
  237. package/dest/log/gcloud-logger-config.d.ts +1 -2
  238. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  239. package/dest/log/gcloud-logger-config.js +1 -9
  240. package/dest/log/index.d.ts +5 -5
  241. package/dest/log/index.d.ts.map +1 -1
  242. package/dest/log/index.js +4 -4
  243. package/dest/log/libp2p_logger.d.ts +1 -1
  244. package/dest/log/libp2p_logger.js +13 -2
  245. package/dest/log/log-filters.d.ts +1 -1
  246. package/dest/log/log-levels.d.ts +1 -1
  247. package/dest/log/log_fn.d.ts +2 -2
  248. package/dest/log/log_fn.d.ts.map +1 -1
  249. package/dest/log/noir_debug_log_util.d.ts +14 -0
  250. package/dest/log/noir_debug_log_util.d.ts.map +1 -0
  251. package/dest/log/noir_debug_log_util.js +14 -0
  252. package/dest/log/pino-logger.d.ts +4 -4
  253. package/dest/log/pino-logger.d.ts.map +1 -1
  254. package/dest/log/pino-logger.js +28 -2
  255. package/dest/message/index.d.ts +1 -1
  256. package/dest/message/index.d.ts.map +1 -1
  257. package/dest/mutex/index.d.ts +1 -1
  258. package/dest/mutex/index.d.ts.map +1 -1
  259. package/dest/mutex/mutex_database.d.ts +1 -1
  260. package/dest/mutex/mutex_database.d.ts.map +1 -1
  261. package/dest/noir/index.d.ts +1 -1
  262. package/dest/noir/noir_package_config.d.ts +9 -9
  263. package/dest/number/index.d.ts +3 -0
  264. package/dest/number/index.d.ts.map +1 -0
  265. package/dest/number/index.js +12 -0
  266. package/dest/profiler/index.d.ts +2 -0
  267. package/dest/profiler/index.d.ts.map +1 -0
  268. package/dest/profiler/index.js +1 -0
  269. package/dest/profiler/profiler.d.ts +8 -0
  270. package/dest/profiler/profiler.d.ts.map +1 -0
  271. package/dest/profiler/profiler.js +97 -0
  272. package/dest/promise/index.d.ts +1 -1
  273. package/dest/promise/running-promise.d.ts +2 -2
  274. package/dest/promise/running-promise.d.ts.map +1 -1
  275. package/dest/promise/running-promise.js +2 -2
  276. package/dest/promise/utils.d.ts +1 -1
  277. package/dest/queue/base_memory_queue.d.ts +1 -1
  278. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  279. package/dest/queue/batch_queue.d.ts +2 -2
  280. package/dest/queue/batch_queue.d.ts.map +1 -1
  281. package/dest/queue/batch_queue.js +1 -1
  282. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  283. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  284. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  285. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  286. package/dest/queue/index.d.ts +1 -1
  287. package/dest/queue/priority_memory_queue.d.ts +1 -1
  288. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  289. package/dest/queue/priority_queue.d.ts +1 -1
  290. package/dest/queue/priority_queue.d.ts.map +1 -1
  291. package/dest/queue/semaphore.d.ts +1 -1
  292. package/dest/queue/semaphore.d.ts.map +1 -1
  293. package/dest/queue/serial_queue.d.ts +3 -3
  294. package/dest/queue/serial_queue.d.ts.map +1 -1
  295. package/dest/queue/serial_queue.js +7 -5
  296. package/dest/retry/index.d.ts +4 -3
  297. package/dest/retry/index.d.ts.map +1 -1
  298. package/dest/retry/index.js +2 -2
  299. package/dest/running-promise/index.d.ts +1 -1
  300. package/dest/schemas/api.d.ts +1 -1
  301. package/dest/schemas/api.d.ts.map +1 -1
  302. package/dest/schemas/index.d.ts +1 -1
  303. package/dest/schemas/parse.d.ts +1 -1
  304. package/dest/schemas/parse.js +1 -1
  305. package/dest/schemas/schemas.d.ts +21 -20
  306. package/dest/schemas/schemas.d.ts.map +1 -1
  307. package/dest/schemas/schemas.js +29 -11
  308. package/dest/schemas/types.d.ts +31 -1
  309. package/dest/schemas/types.d.ts.map +1 -1
  310. package/dest/schemas/types.js +25 -1
  311. package/dest/schemas/utils.d.ts +4 -6
  312. package/dest/schemas/utils.d.ts.map +1 -1
  313. package/dest/schemas/utils.js +15 -5
  314. package/dest/serialize/buffer_reader.d.ts +28 -3
  315. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  316. package/dest/serialize/buffer_reader.js +44 -2
  317. package/dest/serialize/field_reader.d.ts +12 -3
  318. package/dest/serialize/field_reader.d.ts.map +1 -1
  319. package/dest/serialize/field_reader.js +19 -2
  320. package/dest/serialize/free_funcs.d.ts +25 -23
  321. package/dest/serialize/free_funcs.d.ts.map +1 -1
  322. package/dest/serialize/free_funcs.js +22 -28
  323. package/dest/serialize/index.d.ts +1 -1
  324. package/dest/serialize/serialize.d.ts +6 -7
  325. package/dest/serialize/serialize.d.ts.map +1 -1
  326. package/dest/serialize/serialize.js +1 -1
  327. package/dest/serialize/type_registry.d.ts +1 -1
  328. package/dest/serialize/type_registry.d.ts.map +1 -1
  329. package/dest/serialize/types.d.ts +1 -1
  330. package/dest/sleep/index.d.ts +3 -1
  331. package/dest/sleep/index.d.ts.map +1 -1
  332. package/dest/sleep/index.js +4 -0
  333. package/dest/string/index.d.ts +8 -3
  334. package/dest/string/index.d.ts.map +1 -1
  335. package/dest/string/index.js +27 -1
  336. package/dest/testing/files/index.d.ts +2 -3
  337. package/dest/testing/files/index.d.ts.map +1 -1
  338. package/dest/testing/files/index.js +3 -3
  339. package/dest/testing/formatting.d.ts +4 -0
  340. package/dest/testing/formatting.d.ts.map +1 -0
  341. package/dest/testing/formatting.js +3 -0
  342. package/dest/testing/index.d.ts +2 -1
  343. package/dest/testing/index.d.ts.map +1 -1
  344. package/dest/testing/index.js +1 -0
  345. package/dest/testing/port_allocator.d.ts +1 -1
  346. package/dest/testing/snapshot_serializer.d.ts +1 -1
  347. package/dest/testing/test_data.d.ts +1 -1
  348. package/dest/timer/date.d.ts +4 -2
  349. package/dest/timer/date.d.ts.map +1 -1
  350. package/dest/timer/date.js +8 -3
  351. package/dest/timer/elapsed.d.ts +1 -1
  352. package/dest/timer/index.d.ts +2 -2
  353. package/dest/timer/index.d.ts.map +1 -1
  354. package/dest/timer/index.js +1 -1
  355. package/dest/timer/timeout.d.ts +19 -6
  356. package/dest/timer/timeout.d.ts.map +1 -1
  357. package/dest/timer/timeout.js +43 -22
  358. package/dest/timer/timer.d.ts +1 -1
  359. package/dest/timer/timer.d.ts.map +1 -1
  360. package/dest/transport/dispatch/create_dispatch_fn.d.ts +1 -1
  361. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -1
  362. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +1 -1
  363. package/dest/transport/dispatch/messages.d.ts +1 -1
  364. package/dest/transport/index.d.ts +1 -2
  365. package/dest/transport/index.d.ts.map +1 -1
  366. package/dest/transport/index.js +0 -1
  367. package/dest/transport/interface/connector.d.ts +1 -1
  368. package/dest/transport/interface/connector.d.ts.map +1 -1
  369. package/dest/transport/interface/listener.d.ts +1 -2
  370. package/dest/transport/interface/listener.d.ts.map +1 -1
  371. package/dest/transport/interface/socket.d.ts +1 -1
  372. package/dest/transport/interface/socket.d.ts.map +1 -1
  373. package/dest/transport/interface/transferable.d.ts +1 -1
  374. package/dest/transport/node/index.d.ts +1 -1
  375. package/dest/transport/node/node_connector.d.ts +1 -2
  376. package/dest/transport/node/node_connector.d.ts.map +1 -1
  377. package/dest/transport/node/node_connector_socket.d.ts +1 -2
  378. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  379. package/dest/transport/node/node_listener.d.ts +1 -2
  380. package/dest/transport/node/node_listener.d.ts.map +1 -1
  381. package/dest/transport/node/node_listener_socket.d.ts +1 -2
  382. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  383. package/dest/transport/transport_client.d.ts +1 -2
  384. package/dest/transport/transport_client.d.ts.map +1 -1
  385. package/dest/transport/transport_server.d.ts +1 -10
  386. package/dest/transport/transport_server.d.ts.map +1 -1
  387. package/dest/trees/balanced_merkle_tree.d.ts +22 -0
  388. package/dest/trees/balanced_merkle_tree.d.ts.map +1 -0
  389. package/dest/trees/balanced_merkle_tree.js +66 -0
  390. package/dest/trees/hasher.d.ts +5 -7
  391. package/dest/trees/hasher.d.ts.map +1 -1
  392. package/dest/trees/index.d.ts +3 -1
  393. package/dest/trees/index.d.ts.map +1 -1
  394. package/dest/trees/index.js +2 -0
  395. package/dest/trees/indexed_merkle_tree.d.ts +1 -3
  396. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  397. package/dest/trees/indexed_merkle_tree.js +1 -1
  398. package/dest/trees/indexed_merkle_tree_calculator.d.ts +2 -4
  399. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  400. package/dest/trees/indexed_tree_leaf.d.ts +1 -3
  401. package/dest/trees/indexed_tree_leaf.d.ts.map +1 -1
  402. package/dest/trees/membership_witness.d.ts +6 -11
  403. package/dest/trees/membership_witness.d.ts.map +1 -1
  404. package/dest/trees/membership_witness.js +14 -1
  405. package/dest/trees/merkle_tree.d.ts +1 -3
  406. package/dest/trees/merkle_tree.d.ts.map +1 -1
  407. package/dest/trees/merkle_tree_calculator.d.ts +2 -4
  408. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  409. package/dest/trees/merkle_tree_calculator.js +1 -1
  410. package/dest/trees/sibling_path.d.ts +6 -42
  411. package/dest/trees/sibling_path.d.ts.map +1 -1
  412. package/dest/trees/sibling_path.js +2 -2
  413. package/dest/trees/unbalanced_merkle_tree.d.ts +23 -10
  414. package/dest/trees/unbalanced_merkle_tree.d.ts.map +1 -1
  415. package/dest/trees/unbalanced_merkle_tree.js +72 -50
  416. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +49 -0
  417. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -0
  418. package/dest/trees/unbalanced_merkle_tree_calculator.js +158 -0
  419. package/dest/trees/unbalanced_tree_store.d.ts +2 -1
  420. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  421. package/dest/trees/unbalanced_tree_store.js +6 -0
  422. package/dest/types/index.d.ts +28 -3
  423. package/dest/types/index.d.ts.map +1 -1
  424. package/dest/types/index.js +3 -0
  425. package/dest/url/index.d.ts +1 -1
  426. package/dest/url/index.d.ts.map +1 -1
  427. package/dest/url/index.js +1 -1
  428. package/dest/validation/index.d.ts +1 -1
  429. package/package.json +59 -45
  430. package/src/array/array.ts +13 -16
  431. package/src/async-pool/index.ts +1 -0
  432. package/src/bigint/index.ts +20 -0
  433. package/src/branded-types/block_number.ts +112 -0
  434. package/src/branded-types/checkpoint_number.ts +100 -0
  435. package/src/branded-types/epoch.ts +88 -0
  436. package/src/branded-types/index.ts +6 -0
  437. package/src/branded-types/slot.ts +88 -0
  438. package/src/branded-types/types.ts +2 -0
  439. package/src/buffer/buffer16.ts +133 -0
  440. package/src/buffer/buffer32.ts +10 -8
  441. package/src/buffer/index.ts +1 -0
  442. package/src/collection/array.ts +66 -4
  443. package/src/collection/object.ts +37 -0
  444. package/src/config/env_var.ts +164 -55
  445. package/src/config/index.ts +208 -7
  446. package/src/config/network_config.ts +18 -0
  447. package/src/config/network_name.ts +28 -0
  448. package/src/config/secret_value.ts +49 -0
  449. package/src/crypto/aes128/index.ts +19 -10
  450. package/src/crypto/bls/bn254_keystore.ts +287 -0
  451. package/src/crypto/bls/index.ts +77 -0
  452. package/src/crypto/bn254/index.ts +64 -0
  453. package/src/crypto/ecdsa/index.ts +41 -23
  454. package/src/crypto/ecdsa/signature.ts +2 -2
  455. package/src/crypto/grumpkin/index.ts +38 -46
  456. package/src/crypto/keys/index.ts +6 -6
  457. package/src/crypto/pedersen/pedersen.wasm.ts +23 -19
  458. package/src/crypto/poseidon/index.ts +33 -25
  459. package/src/crypto/random/index.ts +2 -40
  460. package/src/crypto/schnorr/index.ts +22 -18
  461. package/src/crypto/schnorr/signature.ts +2 -2
  462. package/src/crypto/secp256k1/index.ts +15 -11
  463. package/src/crypto/secp256k1-signer/utils.ts +120 -7
  464. package/src/crypto/sha256/index.ts +48 -1
  465. package/src/crypto/sha512/index.ts +1 -1
  466. package/src/crypto/signature/index.ts +1 -1
  467. package/src/crypto/sync/index.ts +1 -1
  468. package/src/crypto/sync/pedersen/index.ts +17 -16
  469. package/src/crypto/sync/poseidon/index.ts +28 -23
  470. package/src/curves/bls12/field.ts +463 -0
  471. package/src/curves/bls12/index.ts +2 -0
  472. package/src/curves/bls12/point.ts +450 -0
  473. package/src/{fields/fields.ts → curves/bn254/field.ts} +80 -63
  474. package/src/curves/bn254/index.ts +2 -0
  475. package/src/curves/bn254/point.ts +170 -0
  476. package/src/curves/grumpkin/index.ts +11 -0
  477. package/src/{fields → curves/grumpkin}/point.ts +27 -10
  478. package/src/eth-address/index.ts +35 -3
  479. package/src/eth-signature/eth_signature.ts +44 -22
  480. package/src/fs/index.ts +1 -0
  481. package/src/fs/try_rm_dir.ts +15 -0
  482. package/src/iterable/filter.ts +1 -1
  483. package/src/iterable/map.ts +1 -1
  484. package/src/iterator/filter.ts +11 -0
  485. package/src/iterator/index.ts +1 -0
  486. package/src/jest/env.mjs +52 -0
  487. package/src/jest/setupAfterEnv.mjs +3 -0
  488. package/src/json-rpc/client/fetch.ts +14 -33
  489. package/src/json-rpc/client/safe_json_rpc_client.ts +226 -13
  490. package/src/json-rpc/client/undici.ts +8 -15
  491. package/src/json-rpc/convert.ts +3 -12
  492. package/src/json-rpc/errors.ts +6 -0
  493. package/src/json-rpc/fixtures/class_a.ts +4 -1
  494. package/src/json-rpc/fixtures/class_b.ts +4 -1
  495. package/src/json-rpc/index.ts +2 -1
  496. package/src/json-rpc/server/safe_json_rpc_server.ts +141 -48
  497. package/src/json-rpc/test/integration.ts +1 -1
  498. package/src/log/console.ts +4 -1
  499. package/src/log/gcloud-logger-config.ts +3 -7
  500. package/src/log/index.ts +4 -4
  501. package/src/log/libp2p_logger.ts +21 -2
  502. package/src/log/log_fn.ts +1 -1
  503. package/src/log/noir_debug_log_util.ts +21 -0
  504. package/src/log/pino-logger.ts +33 -2
  505. package/src/message/index.ts +5 -1
  506. package/src/mutex/mutex_database.ts +2 -3
  507. package/src/number/index.ts +14 -0
  508. package/src/profiler/index.ts +1 -0
  509. package/src/profiler/profiler.ts +125 -0
  510. package/src/promise/running-promise.ts +2 -2
  511. package/src/queue/batch_queue.ts +1 -1
  512. package/src/queue/bounded_serial_queue.ts +4 -1
  513. package/src/queue/serial_queue.ts +5 -5
  514. package/src/retry/index.ts +10 -5
  515. package/src/schemas/api.ts +4 -4
  516. package/src/schemas/parse.ts +1 -1
  517. package/src/schemas/schemas.ts +42 -13
  518. package/src/schemas/types.ts +33 -0
  519. package/src/schemas/utils.ts +21 -8
  520. package/src/serialize/buffer_reader.ts +60 -3
  521. package/src/serialize/field_reader.ts +28 -4
  522. package/src/serialize/free_funcs.ts +26 -32
  523. package/src/serialize/serialize.ts +3 -1
  524. package/src/sleep/index.ts +6 -0
  525. package/src/string/index.ts +36 -1
  526. package/src/testing/files/index.ts +7 -3
  527. package/src/testing/formatting.ts +3 -0
  528. package/src/testing/index.ts +1 -0
  529. package/src/timer/date.ts +13 -3
  530. package/src/timer/index.ts +1 -1
  531. package/src/timer/timeout.ts +54 -19
  532. package/src/transport/index.ts +0 -1
  533. package/src/transport/interface/connector.ts +0 -1
  534. package/src/transport/interface/listener.ts +2 -3
  535. package/src/transport/interface/socket.ts +2 -3
  536. package/src/transport/transport_client.ts +3 -4
  537. package/src/transport/transport_server.ts +4 -1
  538. package/src/trees/balanced_merkle_tree.ts +84 -0
  539. package/src/trees/hasher.ts +4 -4
  540. package/src/trees/index.ts +2 -0
  541. package/src/trees/indexed_merkle_tree.ts +6 -2
  542. package/src/trees/indexed_merkle_tree_calculator.ts +2 -2
  543. package/src/trees/membership_witness.ts +14 -1
  544. package/src/trees/merkle_tree.ts +4 -1
  545. package/src/trees/merkle_tree_calculator.ts +10 -5
  546. package/src/trees/sibling_path.ts +2 -2
  547. package/src/trees/unbalanced_merkle_tree.ts +98 -42
  548. package/src/trees/unbalanced_merkle_tree_calculator.ts +187 -0
  549. package/src/trees/unbalanced_tree_store.ts +5 -1
  550. package/src/types/index.ts +30 -4
  551. package/src/url/index.ts +0 -1
  552. package/dest/crypto/index.d.ts +0 -15
  553. package/dest/crypto/index.d.ts.map +0 -1
  554. package/dest/crypto/index.js +0 -14
  555. package/dest/crypto/pedersen/pedersen.elliptic.d.ts +0 -13
  556. package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +0 -1
  557. package/dest/crypto/pedersen/pedersen.elliptic.js +0 -582
  558. package/dest/fields/coordinate.d.ts +0 -68
  559. package/dest/fields/coordinate.d.ts.map +0 -1
  560. package/dest/fields/coordinate.js +0 -96
  561. package/dest/fields/fields.d.ts +0 -176
  562. package/dest/fields/fields.d.ts.map +0 -1
  563. package/dest/fields/index.d.ts +0 -4
  564. package/dest/fields/index.d.ts.map +0 -1
  565. package/dest/fields/index.js +0 -3
  566. package/dest/fields/point.d.ts.map +0 -1
  567. package/dest/index.d.ts +0 -31
  568. package/dest/index.d.ts.map +0 -1
  569. package/dest/index.js +0 -31
  570. package/dest/log/debug.d.ts +0 -56
  571. package/dest/log/debug.d.ts.map +0 -1
  572. package/dest/log/debug.js +0 -75
  573. package/dest/log/log_history.d.ts +0 -31
  574. package/dest/log/log_history.d.ts.map +0 -1
  575. package/dest/log/log_history.js +0 -38
  576. package/dest/transport/browser/index.d.ts +0 -5
  577. package/dest/transport/browser/index.d.ts.map +0 -1
  578. package/dest/transport/browser/index.js +0 -4
  579. package/dest/transport/browser/message_port_socket.d.ts +0 -37
  580. package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
  581. package/dest/transport/browser/message_port_socket.js +0 -42
  582. package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
  583. package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
  584. package/dest/transport/browser/shared_worker_connector.js +0 -19
  585. package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
  586. package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
  587. package/dest/transport/browser/shared_worker_listener.js +0 -33
  588. package/dest/transport/browser/worker_connector.d.ts +0 -26
  589. package/dest/transport/browser/worker_connector.d.ts.map +0 -1
  590. package/dest/transport/browser/worker_connector.js +0 -30
  591. package/dest/transport/browser/worker_listener.d.ts +0 -39
  592. package/dest/transport/browser/worker_listener.d.ts.map +0 -1
  593. package/dest/transport/browser/worker_listener.js +0 -35
  594. package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
  595. package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
  596. package/dest/wasm/empty_wasi_sdk.js +0 -148
  597. package/dest/wasm/index.d.ts +0 -2
  598. package/dest/wasm/index.d.ts.map +0 -1
  599. package/dest/wasm/index.js +0 -1
  600. package/dest/wasm/wasm_module.d.ts +0 -136
  601. package/dest/wasm/wasm_module.d.ts.map +0 -1
  602. package/dest/wasm/wasm_module.js +0 -196
  603. package/dest/worker/browser/index.d.ts +0 -3
  604. package/dest/worker/browser/index.d.ts.map +0 -1
  605. package/dest/worker/browser/index.js +0 -2
  606. package/dest/worker/browser/start_web_module.d.ts +0 -7
  607. package/dest/worker/browser/start_web_module.d.ts.map +0 -1
  608. package/dest/worker/browser/start_web_module.js +0 -27
  609. package/dest/worker/browser/web_data_store.d.ts +0 -24
  610. package/dest/worker/browser/web_data_store.d.ts.map +0 -1
  611. package/dest/worker/browser/web_data_store.js +0 -29
  612. package/dest/worker/browser/web_worker.d.ts +0 -10
  613. package/dest/worker/browser/web_worker.d.ts.map +0 -1
  614. package/dest/worker/browser/web_worker.js +0 -25
  615. package/dest/worker/data_store.d.ts +0 -21
  616. package/dest/worker/data_store.d.ts.map +0 -1
  617. package/dest/worker/data_store.js +0 -3
  618. package/dest/worker/index.d.ts +0 -3
  619. package/dest/worker/index.d.ts.map +0 -1
  620. package/dest/worker/index.js +0 -1
  621. package/dest/worker/node/index.d.ts +0 -3
  622. package/dest/worker/node/index.d.ts.map +0 -1
  623. package/dest/worker/node/index.js +0 -2
  624. package/dest/worker/node/node_data_store.d.ts +0 -13
  625. package/dest/worker/node/node_data_store.d.ts.map +0 -1
  626. package/dest/worker/node/node_data_store.js +0 -20
  627. package/dest/worker/node/node_worker.d.ts +0 -6
  628. package/dest/worker/node/node_worker.d.ts.map +0 -1
  629. package/dest/worker/node/node_worker.js +0 -22
  630. package/dest/worker/node/start_node_module.d.ts +0 -7
  631. package/dest/worker/node/start_node_module.d.ts.map +0 -1
  632. package/dest/worker/node/start_node_module.js +0 -31
  633. package/dest/worker/wasm_worker.d.ts +0 -9
  634. package/dest/worker/wasm_worker.d.ts.map +0 -1
  635. package/dest/worker/wasm_worker.js +0 -3
  636. package/dest/worker/worker_pool.d.ts +0 -40
  637. package/dest/worker/worker_pool.d.ts.map +0 -1
  638. package/dest/worker/worker_pool.js +0 -51
  639. package/src/crypto/index.ts +0 -14
  640. package/src/crypto/pedersen/pedersen.elliptic.ts +0 -584
  641. package/src/fields/coordinate.ts +0 -104
  642. package/src/fields/index.ts +0 -3
  643. package/src/index.ts +0 -31
  644. package/src/log/debug.ts +0 -104
  645. package/src/log/log_history.ts +0 -44
  646. package/src/transport/browser/index.ts +0 -4
  647. package/src/transport/browser/message_port_socket.ts +0 -48
  648. package/src/transport/browser/shared_worker_connector.ts +0 -21
  649. package/src/transport/browser/shared_worker_listener.ts +0 -53
  650. package/src/transport/browser/worker_connector.ts +0 -30
  651. package/src/transport/browser/worker_listener.ts +0 -54
  652. package/src/wasm/README.md +0 -6
  653. package/src/wasm/empty_wasi_sdk.ts +0 -166
  654. package/src/wasm/fixtures/gcd.wasm +0 -0
  655. package/src/wasm/fixtures/gcd.wat +0 -27
  656. package/src/wasm/index.ts +0 -1
  657. package/src/wasm/wasm_module.ts +0 -260
  658. package/src/worker/browser/index.ts +0 -2
  659. package/src/worker/browser/start_web_module.ts +0 -24
  660. package/src/worker/browser/web_data_store.ts +0 -38
  661. package/src/worker/browser/web_worker.ts +0 -25
  662. package/src/worker/data_store.ts +0 -19
  663. package/src/worker/index.ts +0 -2
  664. package/src/worker/node/index.ts +0 -2
  665. package/src/worker/node/node_data_store.ts +0 -27
  666. package/src/worker/node/node_worker.ts +0 -23
  667. package/src/worker/node/start_node_module.ts +0 -30
  668. package/src/worker/wasm_worker.ts +0 -7
  669. package/src/worker/worker_pool.ts +0 -73
@@ -1,6 +1,13 @@
1
+ import { Fq, Fr } from '../curves/bn254/field.js';
2
+ import { createConsoleLogger } from '../log/console.js';
1
3
  import type { EnvVar } from './env_var.js';
4
+ import { type NetworkNames, getActiveNetworkName } from './network_name.js';
5
+ import { SecretValue } from './secret_value.js';
2
6
 
3
- export { type EnvVar } from './env_var.js';
7
+ export { SecretValue, getActiveNetworkName };
8
+ export type { EnvVar, NetworkNames };
9
+ export type { NetworkConfig, NetworkConfigMap } from './network_config.js';
10
+ export { NetworkConfigMapSchema, NetworkConfigSchema } from './network_config.js';
4
11
 
5
12
  export interface ConfigMapping {
6
13
  env?: EnvVar;
@@ -10,6 +17,12 @@ export interface ConfigMapping {
10
17
  description: string;
11
18
  isBoolean?: boolean;
12
19
  nested?: Record<string, ConfigMapping>;
20
+ fallback?: EnvVar[];
21
+ /**
22
+ * List of deprecated env vars that are still supported but will log a warning.
23
+ * These should also be included in the fallback array for parsing.
24
+ */
25
+ deprecatedFallback?: { env: EnvVar; message?: string }[];
13
26
  }
14
27
 
15
28
  export function isBooleanConfigValue<T>(obj: T, key: keyof T): boolean {
@@ -18,19 +31,70 @@ export function isBooleanConfigValue<T>(obj: T, key: keyof T): boolean {
18
31
 
19
32
  export type ConfigMappingsType<T> = Record<keyof T, ConfigMapping>;
20
33
 
34
+ /**
35
+ * Shared utility function to get a value from environment variables with fallback support.
36
+ * This can be used by both getConfigFromMappings and CLI utilities.
37
+ *
38
+ * @param env - The primary environment variable name
39
+ * @param fallback - Optional array of fallback environment variable names
40
+ * @param parseFunc - Optional function to parse the environment variable value
41
+ * @param defaultValue - Optional default value to use if no environment variable is set
42
+ * @returns The parsed value from environment variables or the default value
43
+ */
44
+ export function getValueFromEnvWithFallback<T>(
45
+ env: EnvVar | undefined,
46
+ parseFunc: ((val: string) => T) | undefined,
47
+ defaultValue: T | undefined,
48
+ fallback?: EnvVar[],
49
+ ): T | undefined {
50
+ let value: string | undefined;
51
+
52
+ // Try primary env var
53
+ if (env) {
54
+ value = process.env[env];
55
+ }
56
+
57
+ // If primary not found, try fallbacks
58
+ if (value === undefined && fallback && fallback.length > 0) {
59
+ for (const fallbackEnv of fallback) {
60
+ const fallbackVal = process.env[fallbackEnv];
61
+ if (fallbackVal !== undefined) {
62
+ value = fallbackVal;
63
+ break;
64
+ }
65
+ }
66
+ }
67
+
68
+ // Parse the value if needed
69
+ if (value !== undefined) {
70
+ return parseFunc ? parseFunc(value) : (value as unknown as T);
71
+ }
72
+
73
+ // Return default if no env var found
74
+ return defaultValue;
75
+ }
76
+
21
77
  export function getConfigFromMappings<T>(configMappings: ConfigMappingsType<T>): T {
22
78
  const config = {} as T;
23
79
 
24
80
  for (const key in configMappings) {
25
- const { env, parseEnv, defaultValue: def, nested } = configMappings[key];
81
+ const { env, parseEnv, defaultValue, nested, fallback, deprecatedFallback } = configMappings[key];
26
82
  if (nested) {
27
83
  (config as any)[key] = getConfigFromMappings(nested);
28
84
  } else {
29
- const val = env ? process.env[env] : undefined;
30
- if (val !== undefined) {
31
- (config as any)[key] = parseEnv ? parseEnv(val) : val;
32
- } else if (def !== undefined) {
33
- (config as any)[key] = def;
85
+ // Use the shared utility function
86
+ (config as any)[key] = getValueFromEnvWithFallback(env, parseEnv, defaultValue, fallback);
87
+
88
+ // Check for deprecated env vars and warn if logger is set
89
+ if (deprecatedFallback?.length) {
90
+ const userLog = createConsoleLogger('[DEPRECATED]');
91
+ for (const { env: deprecatedEnv, message } of deprecatedFallback) {
92
+ if (process.env[deprecatedEnv]) {
93
+ const warningMessage =
94
+ message ?? `Environment variable ${deprecatedEnv} is deprecated. Please use ${env} instead.`;
95
+ userLog(warningMessage, { deprecatedEnvVar: deprecatedEnv, newEnvVar: env });
96
+ }
97
+ }
34
98
  }
35
99
  }
36
100
  }
@@ -65,6 +129,25 @@ export function numberConfigHelper(defaultVal: number): Pick<ConfigMapping, 'par
65
129
  };
66
130
  }
67
131
 
132
+ /**
133
+ * Generates parseEnv and default values for a numerical config value.
134
+ * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
135
+ * @returns Object with parseEnv and default values for a numerical config value
136
+ */
137
+ export function floatConfigHelper(
138
+ defaultVal: number,
139
+ validationFn?: (val: number) => void,
140
+ ): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
141
+ return {
142
+ parseEnv: (val: string): number => {
143
+ const parsed = safeParseFloat(val, defaultVal);
144
+ validationFn?.(parsed);
145
+ return parsed;
146
+ },
147
+ defaultValue: defaultVal,
148
+ };
149
+ }
150
+
68
151
  /**
69
152
  * Generates parseEnv and default values for a numerical config value.
70
153
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
@@ -97,6 +180,26 @@ export function optionalNumberConfigHelper(): Pick<ConfigMapping, 'parseEnv'> {
97
180
  };
98
181
  }
99
182
 
183
+ /** Generates parseEnv for an enum-like config value. */
184
+ export function enumConfigHelper<T extends string>(
185
+ values: T[],
186
+ defaultValue?: NoInfer<T>,
187
+ ): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'> {
188
+ return {
189
+ parseEnv: (val: string) => {
190
+ const sanitizedVal = (val ?? '').trim().toLowerCase();
191
+ if (values.includes(sanitizedVal as T)) {
192
+ return sanitizedVal as T;
193
+ }
194
+ if (!val && defaultValue) {
195
+ return defaultValue;
196
+ }
197
+ throw new Error(`Invalid config value '${val}' (must be one of ${values.join(', ')})`);
198
+ },
199
+ defaultValue,
200
+ };
201
+ }
202
+
100
203
  /**
101
204
  * Generates parseEnv and default values for a boolean config value.
102
205
  * @param defaultVal - The default value to use if the environment variable is not set or is invalid
@@ -114,11 +217,97 @@ export function booleanConfigHelper(
114
217
  };
115
218
  }
116
219
 
220
+ export function secretValueConfigHelper<T>(parse: (val: string | undefined) => T): Required<
221
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
222
+ parseVal: (val: string) => SecretValue<T>;
223
+ }
224
+ > {
225
+ const wrap = (val: string) => new SecretValue(parse(val));
226
+ return {
227
+ parseEnv: wrap,
228
+ parseVal: wrap,
229
+ defaultValue: new SecretValue(parse(undefined)),
230
+ isBoolean: true,
231
+ };
232
+ }
233
+
117
234
  /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */
118
235
  export function parseBooleanEnv(val: string | undefined): boolean {
119
236
  return val !== undefined && ['1', 'true', 'TRUE'].includes(val);
120
237
  }
121
238
 
239
+ export function secretStringConfigHelper(): Required<
240
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
241
+ parseVal: (val: string) => SecretValue<string | undefined>;
242
+ }
243
+ >;
244
+ export function secretStringConfigHelper(defaultValue: string): Required<
245
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
246
+ parseVal: (val: string) => SecretValue<string>;
247
+ }
248
+ >;
249
+ export function secretStringConfigHelper(defaultValue?: string): Required<
250
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
251
+ parseVal: (val: string) => SecretValue<string | typeof defaultValue>;
252
+ }
253
+ > {
254
+ const parse = (val: string) => new SecretValue(val);
255
+ return {
256
+ parseEnv: parse,
257
+ parseVal: parse,
258
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined,
259
+ isBoolean: true,
260
+ };
261
+ }
262
+
263
+ export function secretFrConfigHelper(): Required<
264
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
265
+ parseVal: (val: string) => SecretValue<Fr | undefined>;
266
+ }
267
+ >;
268
+ export function secretFrConfigHelper(defaultValue: Fr): Required<
269
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
270
+ parseVal: (val: string) => SecretValue<Fr>;
271
+ }
272
+ >;
273
+ export function secretFrConfigHelper(defaultValue?: Fr): Required<
274
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
275
+ parseVal: (val: string) => SecretValue<Fr | typeof defaultValue>;
276
+ }
277
+ > {
278
+ const parse = (val: string) => new SecretValue(Fr.fromHexString(val));
279
+ return {
280
+ parseEnv: parse,
281
+ parseVal: parse,
282
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined,
283
+ isBoolean: true,
284
+ };
285
+ }
286
+
287
+ export function secretFqConfigHelper(defaultValue: Fq): Required<
288
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
289
+ parseVal: (val: string) => SecretValue<Fq>;
290
+ }
291
+ >;
292
+ export function secretFqConfigHelper(): Required<
293
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
294
+ parseVal: (val: string) => SecretValue<Fq | undefined>;
295
+ }
296
+ >;
297
+ export function secretFqConfigHelper(defaultValue?: Fq): Required<
298
+ Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
299
+ parseVal: (val: string) => SecretValue<Fq | typeof defaultValue>;
300
+ }
301
+ > {
302
+ const parse = (val: string) => new SecretValue(Fq.fromHexString(val));
303
+ return {
304
+ parseEnv: parse,
305
+ parseVal: parse,
306
+ defaultValue: typeof defaultValue !== 'undefined' ? new SecretValue(defaultValue) : undefined,
307
+ isBoolean: true,
308
+ };
309
+ }
310
+
122
311
  /**
123
312
  * Safely parses a number from a string.
124
313
  * If the value is not a number or is not a safe integer, the default value is returned.
@@ -131,6 +320,18 @@ function safeParseNumber(value: string, defaultValue: number): number {
131
320
  return Number.isSafeInteger(parsedValue) ? parsedValue : defaultValue;
132
321
  }
133
322
 
323
+ /**
324
+ * Safely parses a floating point number from a string.
325
+ * If the value is not a number, the default value is returned.
326
+ * @param value - The string value to parse
327
+ * @param defaultValue - The default value to return
328
+ * @returns Either parsed value or default value
329
+ */
330
+ function safeParseFloat(value: string, defaultValue: number): number {
331
+ const parsedValue = parseFloat(value);
332
+ return Number.isNaN(parsedValue) ? defaultValue : parsedValue;
333
+ }
334
+
134
335
  /**
135
336
  * Picks specific keys from the given configuration mappings.
136
337
  *
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+
3
+ export const NetworkConfigSchema = z
4
+ .object({
5
+ bootnodes: z.array(z.string()),
6
+ snapshots: z.array(z.string()),
7
+ blobFileStoreUrls: z.array(z.string()).optional(),
8
+ registryAddress: z.string(),
9
+ feeAssetHandlerAddress: z.string().optional(),
10
+ l1ChainId: z.number(),
11
+ blockDurationMs: z.number().positive().optional(),
12
+ })
13
+ .passthrough(); // Allow additional unknown fields to pass through
14
+
15
+ export const NetworkConfigMapSchema = z.record(z.string(), NetworkConfigSchema);
16
+
17
+ export type NetworkConfig = z.infer<typeof NetworkConfigSchema>;
18
+ export type NetworkConfigMap = z.infer<typeof NetworkConfigMapSchema>;
@@ -0,0 +1,28 @@
1
+ export type NetworkNames =
2
+ | 'local'
3
+ | 'staging-ignition'
4
+ | 'staging-public'
5
+ | 'testnet'
6
+ | 'mainnet'
7
+ | 'next-net'
8
+ | 'devnet';
9
+
10
+ export function getActiveNetworkName(name?: string): NetworkNames {
11
+ const network = name || process.env.NETWORK;
12
+ if (!network || network === '' || network === 'local') {
13
+ return 'local';
14
+ } else if (network === 'staging-ignition') {
15
+ return network;
16
+ } else if (network === 'staging-public') {
17
+ return network;
18
+ } else if (network === 'testnet' || network === 'alpha-testnet') {
19
+ return 'testnet';
20
+ } else if (network === 'mainnet') {
21
+ return 'mainnet';
22
+ } else if (network === 'next-net') {
23
+ return 'next-net';
24
+ } else if (network === 'devnet') {
25
+ return 'devnet';
26
+ }
27
+ throw new Error(`Unknown network: ${network}`);
28
+ }
@@ -0,0 +1,49 @@
1
+ import { inspect } from 'util';
2
+ import type { ZodType } from 'zod';
3
+
4
+ /**
5
+ * A class wrapping a secret value to protect it from accidently being leaked in logs
6
+ */
7
+ export class SecretValue<T> {
8
+ /** The secret value. Use a private member field so that it's not visible to the outside */
9
+ #value: T;
10
+
11
+ constructor(
12
+ value: T,
13
+ private readonly redactedValue = '[Redacted]',
14
+ ) {
15
+ this.#value = value;
16
+ }
17
+
18
+ /**
19
+ * Returns the wrapped value
20
+ */
21
+ public getValue(): T {
22
+ return this.#value;
23
+ }
24
+
25
+ /**
26
+ * Returns a redacted string representation of the value
27
+ */
28
+ public toString(): string {
29
+ return this.redactedValue;
30
+ }
31
+
32
+ /**
33
+ * Returns a redacted string representation of the value
34
+ */
35
+ public toJSON(): string {
36
+ return this.redactedValue;
37
+ }
38
+
39
+ public [inspect.custom]() {
40
+ return this.toString();
41
+ }
42
+
43
+ /**
44
+ * Returns a Zod schema
45
+ */
46
+ static schema<O>(valueSchema: ZodType<O, any, any>): ZodType<SecretValue<O>, any, any> {
47
+ return valueSchema.transform(value => new SecretValue<O>(value));
48
+ }
49
+ }
@@ -1,4 +1,4 @@
1
- import { BarretenbergSync, RawBuffer } from '@aztec/bb.js';
1
+ import { BarretenbergSync } from '@aztec/bb.js';
2
2
 
3
3
  import { Buffer } from 'buffer';
4
4
 
@@ -22,10 +22,15 @@ export class Aes128 {
22
22
  paddingBuffer.fill(numPaddingBytes);
23
23
  const input = Buffer.concat([data, paddingBuffer]);
24
24
 
25
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
26
- return Buffer.from(
27
- api.aesEncryptBufferCbc(new RawBuffer(input), new RawBuffer(iv), new RawBuffer(key), input.length),
28
- );
25
+ await BarretenbergSync.initSingleton();
26
+ const api = BarretenbergSync.getSingleton();
27
+ const response = api.aesEncrypt({
28
+ plaintext: input,
29
+ iv,
30
+ key,
31
+ length: input.length,
32
+ });
33
+ return Buffer.from(response.ciphertext);
29
34
  }
30
35
 
31
36
  /**
@@ -37,11 +42,15 @@ export class Aes128 {
37
42
  * @returns Decrypted data.
38
43
  */
39
44
  public async decryptBufferCBCKeepPadding(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer> {
40
- const api = await BarretenbergSync.initSingleton(process.env.BB_WASM_PATH);
41
- const paddedBuffer = Buffer.from(
42
- api.aesDecryptBufferCbc(new RawBuffer(data), new RawBuffer(iv), new RawBuffer(key), data.length),
43
- );
44
- return paddedBuffer;
45
+ await BarretenbergSync.initSingleton();
46
+ const api = BarretenbergSync.getSingleton();
47
+ const response = api.aesDecrypt({
48
+ ciphertext: data,
49
+ iv,
50
+ key,
51
+ length: data.length,
52
+ });
53
+ return Buffer.from(response.plaintext);
45
54
  }
46
55
 
47
56
  /**