@aztec/foundation 0.0.0-test.1 → 0.0.1-commit.017a351

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 (777) 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 +2 -1
  5. package/dest/array/index.d.ts.map +1 -1
  6. package/dest/array/index.js +1 -0
  7. package/dest/array/sorted_array.d.ts +15 -0
  8. package/dest/array/sorted_array.d.ts.map +1 -0
  9. package/dest/array/sorted_array.js +109 -0
  10. package/dest/async-map/index.d.ts +1 -1
  11. package/dest/async-pool/index.d.ts +1 -1
  12. package/dest/async-pool/index.d.ts.map +1 -1
  13. package/dest/async-pool/index.js +1 -0
  14. package/dest/bigint/index.d.ts +7 -0
  15. package/dest/bigint/index.d.ts.map +1 -0
  16. package/dest/bigint/index.js +15 -0
  17. package/dest/bigint-buffer/index.d.ts +1 -3
  18. package/dest/bigint-buffer/index.d.ts.map +1 -1
  19. package/dest/bigint-buffer/index.js +6 -1
  20. package/dest/branded-types/block_number.d.ts +56 -0
  21. package/dest/branded-types/block_number.d.ts.map +1 -0
  22. package/dest/branded-types/block_number.js +89 -0
  23. package/dest/branded-types/buffer32_hash.d.ts +27 -0
  24. package/dest/branded-types/buffer32_hash.d.ts.map +1 -0
  25. package/dest/branded-types/buffer32_hash.js +12 -0
  26. package/dest/branded-types/checkpoint_number.d.ts +60 -0
  27. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  28. package/dest/branded-types/checkpoint_number.js +88 -0
  29. package/dest/branded-types/epoch.d.ts +42 -0
  30. package/dest/branded-types/epoch.d.ts.map +1 -0
  31. package/dest/branded-types/epoch.js +59 -0
  32. package/dest/branded-types/index.d.ts +8 -0
  33. package/dest/branded-types/index.d.ts.map +1 -0
  34. package/dest/branded-types/index.js +6 -0
  35. package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
  36. package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
  37. package/dest/branded-types/index_within_checkpoint.js +59 -0
  38. package/dest/branded-types/slot.d.ts +45 -0
  39. package/dest/branded-types/slot.d.ts.map +1 -0
  40. package/dest/branded-types/slot.js +62 -0
  41. package/dest/branded-types/types.d.ts +5 -0
  42. package/dest/branded-types/types.d.ts.map +1 -0
  43. package/dest/branded-types/types.js +1 -0
  44. package/dest/buffer/buffer16.d.ts +82 -0
  45. package/dest/buffer/buffer16.d.ts.map +1 -0
  46. package/dest/buffer/buffer16.js +102 -0
  47. package/dest/buffer/buffer32.d.ts +32 -69
  48. package/dest/buffer/buffer32.d.ts.map +1 -1
  49. package/dest/buffer/buffer32.js +36 -68
  50. package/dest/buffer/index.d.ts +3 -1
  51. package/dest/buffer/index.d.ts.map +1 -1
  52. package/dest/buffer/index.js +2 -0
  53. package/dest/buffer/utils.d.ts +3 -0
  54. package/dest/buffer/utils.d.ts.map +1 -0
  55. package/dest/buffer/utils.js +7 -0
  56. package/dest/collection/array.d.ts +38 -4
  57. package/dest/collection/array.d.ts.map +1 -1
  58. package/dest/collection/array.js +141 -3
  59. package/dest/collection/index.d.ts +3 -1
  60. package/dest/collection/index.d.ts.map +1 -1
  61. package/dest/collection/index.js +2 -0
  62. package/dest/collection/lru_map.d.ts +41 -0
  63. package/dest/collection/lru_map.d.ts.map +1 -0
  64. package/dest/collection/lru_map.js +119 -0
  65. package/dest/collection/lru_set.d.ts +35 -0
  66. package/dest/collection/lru_set.d.ts.map +1 -0
  67. package/dest/collection/lru_set.js +95 -0
  68. package/dest/collection/object.d.ts +17 -1
  69. package/dest/collection/object.d.ts.map +1 -1
  70. package/dest/collection/object.js +25 -0
  71. package/dest/committable/committable.d.ts +1 -1
  72. package/dest/committable/committable.d.ts.map +1 -1
  73. package/dest/committable/committable.js +1 -1
  74. package/dest/committable/index.d.ts +1 -1
  75. package/dest/config/env_var.d.ts +2 -2
  76. package/dest/config/env_var.d.ts.map +1 -1
  77. package/dest/config/index.d.ts +88 -13
  78. package/dest/config/index.d.ts.map +1 -1
  79. package/dest/config/index.js +153 -22
  80. package/dest/config/network_config.d.ts +28 -0
  81. package/dest/config/network_config.d.ts.map +1 -0
  82. package/dest/config/network_config.js +14 -0
  83. package/dest/config/network_name.d.ts +3 -0
  84. package/dest/config/network_name.d.ts.map +1 -0
  85. package/dest/config/network_name.js +19 -0
  86. package/dest/config/parse-env.d.ts +3 -0
  87. package/dest/config/parse-env.d.ts.map +1 -0
  88. package/dest/config/parse-env.js +7 -0
  89. package/dest/config/secret_value.d.ts +28 -0
  90. package/dest/config/secret_value.d.ts.map +1 -0
  91. package/dest/config/secret_value.js +36 -0
  92. package/dest/crypto/aes128/index.d.ts +4 -5
  93. package/dest/crypto/aes128/index.d.ts.map +1 -1
  94. package/dest/crypto/aes128/index.js +30 -8
  95. package/dest/crypto/bls/bn254_keystore.d.ts +129 -0
  96. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -0
  97. package/dest/crypto/bls/bn254_keystore.js +201 -0
  98. package/dest/crypto/bls/index.d.ts +13 -0
  99. package/dest/crypto/bls/index.d.ts.map +1 -0
  100. package/dest/crypto/bls/index.js +87 -0
  101. package/dest/crypto/bn254/index.d.ts +39 -0
  102. package/dest/crypto/bn254/index.d.ts.map +1 -0
  103. package/dest/crypto/bn254/index.js +56 -0
  104. package/dest/crypto/ecdsa/index.d.ts +3 -3
  105. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  106. package/dest/crypto/ecdsa/index.js +62 -48
  107. package/dest/crypto/ecdsa/signature.d.ts +3 -5
  108. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  109. package/dest/crypto/ecdsa/signature.js +2 -2
  110. package/dest/crypto/grumpkin/index.d.ts +10 -15
  111. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  112. package/dest/crypto/grumpkin/index.js +61 -55
  113. package/dest/crypto/keccak/index.d.ts +3 -5
  114. package/dest/crypto/keccak/index.d.ts.map +1 -1
  115. package/dest/crypto/keys/index.d.ts +2 -4
  116. package/dest/crypto/keys/index.d.ts.map +1 -1
  117. package/dest/crypto/keys/index.js +8 -5
  118. package/dest/crypto/pedersen/index.d.ts +1 -1
  119. package/dest/crypto/pedersen/pedersen.noble.d.ts +3 -5
  120. package/dest/crypto/pedersen/pedersen.noble.d.ts.map +1 -1
  121. package/dest/crypto/pedersen/pedersen.wasm.d.ts +4 -6
  122. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  123. package/dest/crypto/pedersen/pedersen.wasm.js +24 -14
  124. package/dest/crypto/poseidon/index.d.ts +2 -5
  125. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  126. package/dest/crypto/poseidon/index.js +41 -28
  127. package/dest/crypto/random/index.d.ts +2 -4
  128. package/dest/crypto/random/index.d.ts.map +1 -1
  129. package/dest/crypto/random/index.js +2 -34
  130. package/dest/crypto/random/randomness_singleton.d.ts +4 -5
  131. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  132. package/dest/crypto/random/randomness_singleton.js +5 -5
  133. package/dest/crypto/schnorr/index.d.ts +10 -8
  134. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  135. package/dest/crypto/schnorr/index.js +34 -42
  136. package/dest/crypto/schnorr/signature.d.ts +13 -35
  137. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  138. package/dest/crypto/schnorr/signature.js +21 -37
  139. package/dest/crypto/secp256k1/index.d.ts +5 -7
  140. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  141. package/dest/crypto/secp256k1/index.js +23 -18
  142. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  143. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  144. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  145. package/dest/crypto/secp256k1-signer/utils.d.ts +67 -5
  146. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  147. package/dest/crypto/secp256k1-signer/utils.js +118 -6
  148. package/dest/crypto/sha256/index.d.ts +23 -6
  149. package/dest/crypto/sha256/index.d.ts.map +1 -1
  150. package/dest/crypto/sha256/index.js +43 -1
  151. package/dest/crypto/sha512/index.d.ts +3 -5
  152. package/dest/crypto/sha512/index.d.ts.map +1 -1
  153. package/dest/crypto/sha512/index.js +1 -1
  154. package/dest/crypto/signature/index.d.ts +2 -4
  155. package/dest/crypto/signature/index.d.ts.map +1 -1
  156. package/dest/crypto/sync/index.d.ts +1 -1
  157. package/dest/crypto/sync/index.js +1 -1
  158. package/dest/crypto/sync/pedersen/index.d.ts +4 -6
  159. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  160. package/dest/crypto/sync/pedersen/index.js +18 -11
  161. package/dest/crypto/sync/poseidon/index.d.ts +2 -5
  162. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  163. package/dest/crypto/sync/poseidon/index.js +23 -16
  164. package/dest/curves/bls12/field.d.ts +148 -0
  165. package/dest/curves/bls12/field.d.ts.map +1 -0
  166. package/dest/curves/bls12/field.js +357 -0
  167. package/dest/curves/bls12/index.d.ts +3 -0
  168. package/dest/curves/bls12/index.d.ts.map +1 -0
  169. package/dest/curves/bls12/index.js +2 -0
  170. package/dest/curves/bls12/point.d.ts +229 -0
  171. package/dest/curves/bls12/point.d.ts.map +1 -0
  172. package/dest/curves/bls12/point.js +400 -0
  173. package/dest/curves/bn254/field.d.ts +185 -0
  174. package/dest/curves/bn254/field.d.ts.map +1 -0
  175. package/dest/{fields/fields.js → curves/bn254/field.js} +111 -74
  176. package/dest/curves/bn254/index.d.ts +3 -0
  177. package/dest/curves/bn254/index.d.ts.map +1 -0
  178. package/dest/curves/bn254/index.js +2 -0
  179. package/dest/curves/bn254/point.d.ts +54 -0
  180. package/dest/curves/bn254/point.d.ts.map +1 -0
  181. package/dest/curves/bn254/point.js +143 -0
  182. package/dest/curves/grumpkin/index.d.ts +10 -0
  183. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  184. package/dest/curves/grumpkin/index.js +3 -0
  185. package/dest/{fields → curves/grumpkin}/point.d.ts +26 -33
  186. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  187. package/dest/{fields → curves/grumpkin}/point.js +53 -50
  188. package/dest/decorators/index.d.ts +1 -1
  189. package/dest/decorators/memoize.d.ts +1 -1
  190. package/dest/decorators/memoize.d.ts.map +1 -1
  191. package/dest/error/index.d.ts +1 -1
  192. package/dest/eth-address/index.d.ts +19 -10
  193. package/dest/eth-address/index.d.ts.map +1 -1
  194. package/dest/eth-address/index.js +31 -5
  195. package/dest/eth-signature/eth_signature.d.ts +19 -16
  196. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  197. package/dest/eth-signature/eth_signature.js +37 -18
  198. package/dest/eth-signature/index.d.ts +1 -1
  199. package/dest/fifo/fifo_frame_reader.d.ts +41 -0
  200. package/dest/fifo/fifo_frame_reader.d.ts.map +1 -0
  201. package/dest/fifo/fifo_frame_reader.js +91 -0
  202. package/dest/fifo/index.d.ts +2 -0
  203. package/dest/fifo/index.d.ts.map +1 -0
  204. package/dest/fifo/index.js +1 -0
  205. package/dest/fifo_set/fifo_set.d.ts +15 -0
  206. package/dest/fifo_set/fifo_set.d.ts.map +1 -0
  207. package/dest/fifo_set/fifo_set.js +39 -0
  208. package/dest/fifo_set/index.d.ts +2 -0
  209. package/dest/fifo_set/index.d.ts.map +1 -0
  210. package/dest/fifo_set/index.js +1 -0
  211. package/dest/fs/index.d.ts +2 -1
  212. package/dest/fs/index.d.ts.map +1 -1
  213. package/dest/fs/index.js +1 -0
  214. package/dest/fs/run_in_dir.d.ts +1 -1
  215. package/dest/fs/try_rm_dir.d.ts +3 -0
  216. package/dest/fs/try_rm_dir.d.ts.map +1 -0
  217. package/dest/fs/try_rm_dir.js +16 -0
  218. package/dest/iterable/all.d.ts +1 -1
  219. package/dest/iterable/filter.d.ts +1 -1
  220. package/dest/iterable/filter.js +1 -1
  221. package/dest/iterable/index.d.ts +1 -1
  222. package/dest/iterable/isAsyncIt.d.ts +1 -1
  223. package/dest/iterable/map.d.ts +1 -1
  224. package/dest/iterable/map.js +1 -1
  225. package/dest/iterable/peek.d.ts +1 -1
  226. package/dest/iterable/sort.d.ts +1 -1
  227. package/dest/iterable/take.d.ts +1 -1
  228. package/dest/iterable/toArray.d.ts +1 -1
  229. package/dest/iterator/filter.d.ts +3 -0
  230. package/dest/iterator/filter.d.ts.map +1 -0
  231. package/dest/iterator/filter.js +7 -0
  232. package/dest/iterator/index.d.ts +2 -0
  233. package/dest/iterator/index.d.ts.map +1 -0
  234. package/dest/iterator/index.js +1 -0
  235. package/dest/jest/env.js +48 -0
  236. package/dest/jest/setup.js +28 -1
  237. package/dest/jest/setupAfterEnv.js +3 -0
  238. package/dest/json-rpc/client/fetch.d.ts +3 -3
  239. package/dest/json-rpc/client/fetch.d.ts.map +1 -1
  240. package/dest/json-rpc/client/fetch.js +18 -31
  241. package/dest/json-rpc/client/index.d.ts +1 -1
  242. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +11 -4
  243. package/dest/json-rpc/client/safe_json_rpc_client.d.ts.map +1 -1
  244. package/dest/json-rpc/client/safe_json_rpc_client.js +175 -15
  245. package/dest/json-rpc/client/undici.d.ts +1 -1
  246. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  247. package/dest/json-rpc/client/undici.js +29 -11
  248. package/dest/json-rpc/convert.d.ts +3 -10
  249. package/dest/json-rpc/convert.d.ts.map +1 -1
  250. package/dest/json-rpc/convert.js +1 -9
  251. package/dest/json-rpc/errors.d.ts +4 -0
  252. package/dest/json-rpc/errors.d.ts.map +1 -0
  253. package/dest/json-rpc/errors.js +6 -0
  254. package/dest/json-rpc/fixtures/class_a.d.ts +6 -4
  255. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  256. package/dest/json-rpc/fixtures/class_b.d.ts +6 -4
  257. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  258. package/dest/json-rpc/fixtures/test_state.d.ts +4 -8
  259. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  260. package/dest/json-rpc/fixtures/test_state.js +57 -17
  261. package/dest/json-rpc/index.d.ts +3 -2
  262. package/dest/json-rpc/index.d.ts.map +1 -1
  263. package/dest/json-rpc/index.js +2 -1
  264. package/dest/json-rpc/js_utils.d.ts +1 -1
  265. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  266. package/dest/json-rpc/server/api_key_auth.d.ts +19 -0
  267. package/dest/json-rpc/server/api_key_auth.d.ts.map +1 -0
  268. package/dest/json-rpc/server/api_key_auth.js +57 -0
  269. package/dest/json-rpc/server/index.d.ts +2 -1
  270. package/dest/json-rpc/server/index.d.ts.map +1 -1
  271. package/dest/json-rpc/server/index.js +1 -0
  272. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +29 -25
  273. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  274. package/dest/json-rpc/server/safe_json_rpc_server.js +178 -59
  275. package/dest/json-rpc/test/index.d.ts +1 -1
  276. package/dest/json-rpc/test/integration.d.ts +2 -3
  277. package/dest/json-rpc/test/integration.d.ts.map +1 -1
  278. package/dest/log/bigint-utils.d.ts +5 -0
  279. package/dest/log/bigint-utils.d.ts.map +1 -0
  280. package/dest/log/bigint-utils.js +21 -0
  281. package/dest/log/console.d.ts +1 -1
  282. package/dest/log/console.d.ts.map +1 -1
  283. package/dest/log/gcloud-logger-config.d.ts +1 -2
  284. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  285. package/dest/log/gcloud-logger-config.js +4 -9
  286. package/dest/log/index.d.ts +5 -5
  287. package/dest/log/index.d.ts.map +1 -1
  288. package/dest/log/index.js +4 -4
  289. package/dest/log/libp2p_logger.d.ts +5 -2
  290. package/dest/log/libp2p_logger.d.ts.map +1 -1
  291. package/dest/log/libp2p_logger.js +27 -6
  292. package/dest/log/log-filters.d.ts +17 -4
  293. package/dest/log/log-filters.d.ts.map +1 -1
  294. package/dest/log/log-filters.js +26 -12
  295. package/dest/log/log-levels.d.ts +1 -1
  296. package/dest/log/log_fn.d.ts +2 -2
  297. package/dest/log/log_fn.d.ts.map +1 -1
  298. package/dest/log/noir_debug_log_util.d.ts +14 -0
  299. package/dest/log/noir_debug_log_util.d.ts.map +1 -0
  300. package/dest/log/noir_debug_log_util.js +14 -0
  301. package/dest/log/pino-logger-server.d.ts +9 -0
  302. package/dest/log/pino-logger-server.d.ts.map +1 -0
  303. package/dest/log/pino-logger-server.js +18 -0
  304. package/dest/log/pino-logger.d.ts +40 -11
  305. package/dest/log/pino-logger.d.ts.map +1 -1
  306. package/dest/log/pino-logger.js +165 -31
  307. package/dest/message/index.d.ts +1 -1
  308. package/dest/message/index.d.ts.map +1 -1
  309. package/dest/mutex/index.d.ts +1 -1
  310. package/dest/mutex/index.d.ts.map +1 -1
  311. package/dest/mutex/mutex_database.d.ts +1 -1
  312. package/dest/mutex/mutex_database.d.ts.map +1 -1
  313. package/dest/noir/index.d.ts +1 -1
  314. package/dest/noir/noir_package_config.d.ts +19 -104
  315. package/dest/noir/noir_package_config.d.ts.map +1 -1
  316. package/dest/noir/noir_package_config.js +1 -1
  317. package/dest/number/index.d.ts +3 -0
  318. package/dest/number/index.d.ts.map +1 -0
  319. package/dest/number/index.js +12 -0
  320. package/dest/profiler/index.d.ts +2 -0
  321. package/dest/profiler/index.d.ts.map +1 -0
  322. package/dest/profiler/index.js +1 -0
  323. package/dest/profiler/profiler.d.ts +8 -0
  324. package/dest/profiler/profiler.d.ts.map +1 -0
  325. package/dest/profiler/profiler.js +97 -0
  326. package/dest/promise/index.d.ts +1 -1
  327. package/dest/promise/running-promise.d.ts +2 -2
  328. package/dest/promise/running-promise.d.ts.map +1 -1
  329. package/dest/promise/running-promise.js +2 -2
  330. package/dest/promise/utils.d.ts +1 -1
  331. package/dest/queue/base_memory_queue.d.ts +2 -2
  332. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  333. package/dest/queue/batch_queue.d.ts +2 -2
  334. package/dest/queue/batch_queue.d.ts.map +1 -1
  335. package/dest/queue/batch_queue.js +2 -1
  336. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  337. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  338. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  339. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  340. package/dest/queue/index.d.ts +1 -1
  341. package/dest/queue/priority_memory_queue.d.ts +1 -1
  342. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  343. package/dest/queue/priority_queue.d.ts +1 -1
  344. package/dest/queue/priority_queue.d.ts.map +1 -1
  345. package/dest/queue/semaphore.d.ts +5 -1
  346. package/dest/queue/semaphore.d.ts.map +1 -1
  347. package/dest/queue/serial_queue.d.ts +3 -3
  348. package/dest/queue/serial_queue.d.ts.map +1 -1
  349. package/dest/queue/serial_queue.js +7 -5
  350. package/dest/retry/index.d.ts +25 -3
  351. package/dest/retry/index.d.ts.map +1 -1
  352. package/dest/retry/index.js +34 -2
  353. package/dest/running-promise/index.d.ts +1 -1
  354. package/dest/schemas/api.d.ts +12 -10
  355. package/dest/schemas/api.d.ts.map +1 -1
  356. package/dest/schemas/api.js +7 -1
  357. package/dest/schemas/index.d.ts +1 -1
  358. package/dest/schemas/parse.d.ts +4 -4
  359. package/dest/schemas/parse.d.ts.map +1 -1
  360. package/dest/schemas/parse.js +7 -6
  361. package/dest/schemas/schemas.d.ts +30 -29
  362. package/dest/schemas/schemas.d.ts.map +1 -1
  363. package/dest/schemas/schemas.js +29 -11
  364. package/dest/schemas/types.d.ts +32 -2
  365. package/dest/schemas/types.d.ts.map +1 -1
  366. package/dest/schemas/types.js +25 -1
  367. package/dest/schemas/utils.d.ts +10 -16
  368. package/dest/schemas/utils.d.ts.map +1 -1
  369. package/dest/schemas/utils.js +17 -23
  370. package/dest/serialize/buffer_reader.d.ts +41 -6
  371. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  372. package/dest/serialize/buffer_reader.js +70 -6
  373. package/dest/serialize/buffer_sink.d.ts +134 -0
  374. package/dest/serialize/buffer_sink.d.ts.map +1 -0
  375. package/dest/serialize/buffer_sink.js +297 -0
  376. package/dest/serialize/field_reader.d.ts +12 -3
  377. package/dest/serialize/field_reader.d.ts.map +1 -1
  378. package/dest/serialize/field_reader.js +19 -2
  379. package/dest/serialize/free_funcs.d.ts +25 -23
  380. package/dest/serialize/free_funcs.d.ts.map +1 -1
  381. package/dest/serialize/free_funcs.js +22 -28
  382. package/dest/serialize/index.d.ts +2 -1
  383. package/dest/serialize/index.d.ts.map +1 -1
  384. package/dest/serialize/index.js +1 -0
  385. package/dest/serialize/serialize.d.ts +24 -7
  386. package/dest/serialize/serialize.d.ts.map +1 -1
  387. package/dest/serialize/serialize.js +32 -1
  388. package/dest/serialize/type_registry.d.ts +1 -1
  389. package/dest/serialize/type_registry.d.ts.map +1 -1
  390. package/dest/serialize/types.d.ts +1 -1
  391. package/dest/sleep/index.d.ts +4 -1
  392. package/dest/sleep/index.d.ts.map +1 -1
  393. package/dest/sleep/index.js +14 -1
  394. package/dest/string/index.d.ts +8 -3
  395. package/dest/string/index.d.ts.map +1 -1
  396. package/dest/string/index.js +27 -1
  397. package/dest/testing/files/index.d.ts +2 -3
  398. package/dest/testing/files/index.d.ts.map +1 -1
  399. package/dest/testing/files/index.js +3 -3
  400. package/dest/testing/formatting.d.ts +4 -0
  401. package/dest/testing/formatting.d.ts.map +1 -0
  402. package/dest/testing/formatting.js +3 -0
  403. package/dest/testing/index.d.ts +2 -1
  404. package/dest/testing/index.d.ts.map +1 -1
  405. package/dest/testing/index.js +1 -0
  406. package/dest/testing/port_allocator.d.ts +1 -1
  407. package/dest/testing/snapshot_serializer.d.ts +1 -1
  408. package/dest/testing/test_data.d.ts +1 -1
  409. package/dest/timer/date.d.ts +28 -2
  410. package/dest/timer/date.d.ts.map +1 -1
  411. package/dest/timer/date.js +41 -3
  412. package/dest/timer/elapsed.d.ts +1 -1
  413. package/dest/timer/index.d.ts +2 -2
  414. package/dest/timer/index.d.ts.map +1 -1
  415. package/dest/timer/index.js +1 -1
  416. package/dest/timer/timeout.d.ts +21 -6
  417. package/dest/timer/timeout.d.ts.map +1 -1
  418. package/dest/timer/timeout.js +69 -22
  419. package/dest/timer/timer.d.ts +1 -1
  420. package/dest/timer/timer.d.ts.map +1 -1
  421. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +11 -2
  422. package/dest/transport/dispatch/create_dispatch_proxy.d.ts.map +1 -1
  423. package/dest/transport/dispatch/messages.d.ts +1 -1
  424. package/dest/transport/index.d.ts +1 -3
  425. package/dest/transport/index.d.ts.map +1 -1
  426. package/dest/transport/index.js +0 -2
  427. package/dest/transport/interface/connector.d.ts +1 -1
  428. package/dest/transport/interface/connector.d.ts.map +1 -1
  429. package/dest/transport/interface/listener.d.ts +1 -2
  430. package/dest/transport/interface/listener.d.ts.map +1 -1
  431. package/dest/transport/interface/socket.d.ts +1 -1
  432. package/dest/transport/interface/socket.d.ts.map +1 -1
  433. package/dest/transport/interface/transferable.d.ts +1 -1
  434. package/dest/transport/node/index.d.ts +1 -1
  435. package/dest/transport/node/node_connector.d.ts +1 -2
  436. package/dest/transport/node/node_connector.d.ts.map +1 -1
  437. package/dest/transport/node/node_connector_socket.d.ts +1 -2
  438. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  439. package/dest/transport/node/node_listener.d.ts +1 -2
  440. package/dest/transport/node/node_listener.d.ts.map +1 -1
  441. package/dest/transport/node/node_listener_socket.d.ts +1 -2
  442. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  443. package/dest/transport/transport_client.d.ts +1 -2
  444. package/dest/transport/transport_client.d.ts.map +1 -1
  445. package/dest/transport/transport_client.js +2 -2
  446. package/dest/transport/transport_server.d.ts +1 -10
  447. package/dest/transport/transport_server.d.ts.map +1 -1
  448. package/dest/trees/balanced_merkle_tree_root.d.ts +16 -0
  449. package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
  450. package/dest/trees/balanced_merkle_tree_root.js +50 -0
  451. package/dest/trees/hasher.d.ts +8 -7
  452. package/dest/trees/hasher.d.ts.map +1 -1
  453. package/dest/trees/hasher.js +10 -5
  454. package/dest/trees/index.d.ts +5 -3
  455. package/dest/trees/index.d.ts.map +1 -1
  456. package/dest/trees/index.js +4 -2
  457. package/dest/trees/indexed_merkle_tree.d.ts +1 -3
  458. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  459. package/dest/trees/indexed_merkle_tree.js +1 -1
  460. package/dest/trees/indexed_merkle_tree_calculator.d.ts +2 -4
  461. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  462. package/dest/trees/indexed_merkle_tree_calculator.js +5 -1
  463. package/dest/trees/indexed_tree_leaf.d.ts +1 -3
  464. package/dest/trees/indexed_tree_leaf.d.ts.map +1 -1
  465. package/dest/trees/membership_witness.d.ts +10 -5
  466. package/dest/trees/membership_witness.d.ts.map +1 -1
  467. package/dest/trees/membership_witness.js +23 -1
  468. package/dest/trees/merkle_tree.d.ts +1 -3
  469. package/dest/trees/merkle_tree.d.ts.map +1 -1
  470. package/dest/trees/merkle_tree_calculator.d.ts +4 -4
  471. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  472. package/dest/trees/merkle_tree_calculator.js +1 -5
  473. package/dest/trees/sibling_path.d.ts +7 -41
  474. package/dest/trees/sibling_path.d.ts.map +1 -1
  475. package/dest/trees/sibling_path.js +11 -9
  476. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +48 -0
  477. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -0
  478. package/dest/trees/unbalanced_merkle_tree_calculator.js +154 -0
  479. package/dest/trees/unbalanced_merkle_tree_root.d.ts +27 -0
  480. package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
  481. package/dest/trees/unbalanced_merkle_tree_root.js +83 -0
  482. package/dest/trees/unbalanced_tree_store.d.ts +6 -1
  483. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  484. package/dest/trees/unbalanced_tree_store.js +55 -1
  485. package/dest/types/index.d.ts +52 -3
  486. package/dest/types/index.d.ts.map +1 -1
  487. package/dest/types/index.js +21 -0
  488. package/dest/url/index.d.ts +1 -1
  489. package/dest/url/index.d.ts.map +1 -1
  490. package/dest/url/index.js +1 -1
  491. package/dest/validation/index.d.ts +1 -1
  492. package/package.json +84 -47
  493. package/src/array/array.ts +13 -16
  494. package/src/array/index.ts +1 -0
  495. package/src/array/sorted_array.ts +138 -0
  496. package/src/async-pool/index.ts +1 -0
  497. package/src/bigint/index.ts +20 -0
  498. package/src/bigint-buffer/index.ts +6 -1
  499. package/src/branded-types/block_number.ts +135 -0
  500. package/src/branded-types/buffer32_hash.ts +38 -0
  501. package/src/branded-types/checkpoint_number.ts +130 -0
  502. package/src/branded-types/epoch.ts +88 -0
  503. package/src/branded-types/index.ts +8 -0
  504. package/src/branded-types/index_within_checkpoint.ts +88 -0
  505. package/src/branded-types/slot.ts +93 -0
  506. package/src/branded-types/types.ts +2 -0
  507. package/src/buffer/buffer16.ts +136 -0
  508. package/src/buffer/buffer32.ts +47 -74
  509. package/src/buffer/index.ts +2 -0
  510. package/src/buffer/utils.ts +8 -0
  511. package/src/collection/array.ts +152 -4
  512. package/src/collection/index.ts +2 -0
  513. package/src/collection/lru_map.ts +143 -0
  514. package/src/collection/lru_set.ts +115 -0
  515. package/src/collection/object.ts +37 -0
  516. package/src/committable/committable.ts +1 -1
  517. package/src/config/env_var.ts +237 -63
  518. package/src/config/index.ts +265 -29
  519. package/src/config/network_config.ts +21 -0
  520. package/src/config/network_name.ts +28 -0
  521. package/src/config/parse-env.ts +4 -0
  522. package/src/config/secret_value.ts +49 -0
  523. package/src/crypto/aes128/index.ts +30 -12
  524. package/src/crypto/bls/bn254_keystore.ts +264 -0
  525. package/src/crypto/bls/index.ts +77 -0
  526. package/src/crypto/bn254/index.ts +64 -0
  527. package/src/crypto/ecdsa/index.ts +41 -23
  528. package/src/crypto/ecdsa/signature.ts +2 -2
  529. package/src/crypto/grumpkin/index.ts +38 -46
  530. package/src/crypto/keys/index.ts +6 -6
  531. package/src/crypto/pedersen/pedersen.wasm.ts +23 -19
  532. package/src/crypto/poseidon/index.ts +43 -37
  533. package/src/crypto/random/index.ts +2 -40
  534. package/src/crypto/random/randomness_singleton.ts +6 -4
  535. package/src/crypto/schnorr/index.ts +29 -24
  536. package/src/crypto/schnorr/signature.ts +18 -47
  537. package/src/crypto/secp256k1/index.ts +15 -11
  538. package/src/crypto/secp256k1-signer/utils.ts +152 -7
  539. package/src/crypto/sha256/index.ts +48 -1
  540. package/src/crypto/sha512/index.ts +1 -1
  541. package/src/crypto/signature/index.ts +1 -1
  542. package/src/crypto/sync/index.ts +1 -1
  543. package/src/crypto/sync/pedersen/index.ts +17 -16
  544. package/src/crypto/sync/poseidon/index.ts +23 -27
  545. package/src/curves/bls12/field.ts +456 -0
  546. package/src/curves/bls12/index.ts +2 -0
  547. package/src/curves/bls12/point.ts +450 -0
  548. package/src/{fields/fields.ts → curves/bn254/field.ts} +117 -91
  549. package/src/curves/bn254/index.ts +2 -0
  550. package/src/curves/bn254/point.ts +170 -0
  551. package/src/curves/grumpkin/index.ts +11 -0
  552. package/src/{fields → curves/grumpkin}/point.ts +47 -47
  553. package/src/eth-address/index.ts +35 -7
  554. package/src/eth-signature/eth_signature.ts +50 -22
  555. package/src/fifo/fifo_frame_reader.ts +113 -0
  556. package/src/fifo/index.ts +1 -0
  557. package/src/fifo_set/fifo_set.ts +52 -0
  558. package/src/fifo_set/index.ts +1 -0
  559. package/src/fs/index.ts +1 -0
  560. package/src/fs/try_rm_dir.ts +15 -0
  561. package/src/iterable/filter.ts +1 -1
  562. package/src/iterable/map.ts +1 -1
  563. package/src/iterator/filter.ts +11 -0
  564. package/src/iterator/index.ts +1 -0
  565. package/src/jest/env.mjs +52 -0
  566. package/src/jest/setup.mjs +31 -1
  567. package/src/jest/setupAfterEnv.mjs +3 -0
  568. package/src/json-rpc/client/fetch.ts +16 -34
  569. package/src/json-rpc/client/safe_json_rpc_client.ts +230 -15
  570. package/src/json-rpc/client/undici.ts +31 -18
  571. package/src/json-rpc/convert.ts +3 -12
  572. package/src/json-rpc/errors.ts +6 -0
  573. package/src/json-rpc/fixtures/class_a.ts +4 -1
  574. package/src/json-rpc/fixtures/class_b.ts +4 -1
  575. package/src/json-rpc/fixtures/test_state.ts +10 -10
  576. package/src/json-rpc/index.ts +2 -1
  577. package/src/json-rpc/server/api_key_auth.ts +63 -0
  578. package/src/json-rpc/server/index.ts +1 -0
  579. package/src/json-rpc/server/safe_json_rpc_server.ts +162 -51
  580. package/src/json-rpc/test/integration.ts +1 -1
  581. package/src/log/bigint-utils.ts +25 -0
  582. package/src/log/console.ts +4 -1
  583. package/src/log/gcloud-logger-config.ts +8 -7
  584. package/src/log/index.ts +4 -4
  585. package/src/log/libp2p_logger.ts +33 -7
  586. package/src/log/log-filters.ts +29 -11
  587. package/src/log/log_fn.ts +1 -1
  588. package/src/log/noir_debug_log_util.ts +21 -0
  589. package/src/log/pino-logger-server.ts +25 -0
  590. package/src/log/pino-logger.ts +193 -40
  591. package/src/message/index.ts +5 -1
  592. package/src/mutex/mutex_database.ts +2 -3
  593. package/src/noir/noir_package_config.ts +32 -20
  594. package/src/number/index.ts +14 -0
  595. package/src/profiler/index.ts +1 -0
  596. package/src/profiler/profiler.ts +125 -0
  597. package/src/promise/running-promise.ts +2 -2
  598. package/src/queue/base_memory_queue.ts +1 -1
  599. package/src/queue/batch_queue.ts +2 -1
  600. package/src/queue/bounded_serial_queue.ts +4 -1
  601. package/src/queue/semaphore.ts +5 -0
  602. package/src/queue/serial_queue.ts +5 -5
  603. package/src/retry/index.ts +58 -5
  604. package/src/schemas/api.ts +25 -25
  605. package/src/schemas/parse.ts +10 -7
  606. package/src/schemas/schemas.ts +45 -16
  607. package/src/schemas/types.ts +34 -1
  608. package/src/schemas/utils.ts +25 -46
  609. package/src/serialize/buffer_reader.ts +96 -12
  610. package/src/serialize/buffer_sink.ts +350 -0
  611. package/src/serialize/field_reader.ts +28 -4
  612. package/src/serialize/free_funcs.ts +26 -32
  613. package/src/serialize/index.ts +1 -0
  614. package/src/serialize/serialize.ts +35 -1
  615. package/src/sleep/index.ts +16 -1
  616. package/src/string/index.ts +36 -1
  617. package/src/testing/files/index.ts +7 -3
  618. package/src/testing/formatting.ts +3 -0
  619. package/src/testing/index.ts +1 -0
  620. package/src/timer/date.ts +61 -3
  621. package/src/timer/index.ts +1 -1
  622. package/src/timer/timeout.ts +85 -19
  623. package/src/transport/dispatch/create_dispatch_proxy.ts +11 -1
  624. package/src/transport/index.ts +0 -2
  625. package/src/transport/interface/connector.ts +0 -1
  626. package/src/transport/interface/listener.ts +2 -3
  627. package/src/transport/interface/socket.ts +2 -3
  628. package/src/transport/transport_client.ts +5 -6
  629. package/src/transport/transport_server.ts +4 -1
  630. package/src/trees/balanced_merkle_tree_root.ts +65 -0
  631. package/src/trees/hasher.ts +16 -4
  632. package/src/trees/index.ts +4 -2
  633. package/src/trees/indexed_merkle_tree.ts +6 -2
  634. package/src/trees/indexed_merkle_tree_calculator.ts +7 -3
  635. package/src/trees/membership_witness.ts +22 -1
  636. package/src/trees/merkle_tree.ts +4 -1
  637. package/src/trees/merkle_tree_calculator.ts +9 -10
  638. package/src/trees/sibling_path.ts +12 -7
  639. package/src/trees/unbalanced_merkle_tree_calculator.ts +176 -0
  640. package/src/trees/unbalanced_merkle_tree_root.ts +112 -0
  641. package/src/trees/unbalanced_tree_store.ts +62 -3
  642. package/src/types/index.ts +82 -4
  643. package/src/url/index.ts +0 -1
  644. package/dest/crypto/index.d.ts +0 -15
  645. package/dest/crypto/index.d.ts.map +0 -1
  646. package/dest/crypto/index.js +0 -14
  647. package/dest/crypto/pedersen/pedersen.elliptic.d.ts +0 -13
  648. package/dest/crypto/pedersen/pedersen.elliptic.d.ts.map +0 -1
  649. package/dest/crypto/pedersen/pedersen.elliptic.js +0 -582
  650. package/dest/crypto/serialize.d.ts +0 -53
  651. package/dest/crypto/serialize.d.ts.map +0 -1
  652. package/dest/crypto/serialize.js +0 -68
  653. package/dest/fields/coordinate.d.ts +0 -68
  654. package/dest/fields/coordinate.d.ts.map +0 -1
  655. package/dest/fields/coordinate.js +0 -96
  656. package/dest/fields/fields.d.ts +0 -176
  657. package/dest/fields/fields.d.ts.map +0 -1
  658. package/dest/fields/index.d.ts +0 -4
  659. package/dest/fields/index.d.ts.map +0 -1
  660. package/dest/fields/index.js +0 -3
  661. package/dest/fields/point.d.ts.map +0 -1
  662. package/dest/index.d.ts +0 -31
  663. package/dest/index.d.ts.map +0 -1
  664. package/dest/index.js +0 -31
  665. package/dest/json-rpc/server/telemetry.d.ts +0 -2
  666. package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
  667. package/dest/json-rpc/server/telemetry.js +0 -0
  668. package/dest/log/debug.d.ts +0 -56
  669. package/dest/log/debug.d.ts.map +0 -1
  670. package/dest/log/debug.js +0 -75
  671. package/dest/log/log_history.d.ts +0 -31
  672. package/dest/log/log_history.d.ts.map +0 -1
  673. package/dest/log/log_history.js +0 -38
  674. package/dest/transport/browser/index.d.ts +0 -5
  675. package/dest/transport/browser/index.d.ts.map +0 -1
  676. package/dest/transport/browser/index.js +0 -4
  677. package/dest/transport/browser/message_port_socket.d.ts +0 -37
  678. package/dest/transport/browser/message_port_socket.d.ts.map +0 -1
  679. package/dest/transport/browser/message_port_socket.js +0 -42
  680. package/dest/transport/browser/shared_worker_connector.d.ts +0 -19
  681. package/dest/transport/browser/shared_worker_connector.d.ts.map +0 -1
  682. package/dest/transport/browser/shared_worker_connector.js +0 -19
  683. package/dest/transport/browser/shared_worker_listener.d.ts +0 -38
  684. package/dest/transport/browser/shared_worker_listener.d.ts.map +0 -1
  685. package/dest/transport/browser/shared_worker_listener.js +0 -33
  686. package/dest/transport/browser/worker_connector.d.ts +0 -26
  687. package/dest/transport/browser/worker_connector.d.ts.map +0 -1
  688. package/dest/transport/browser/worker_connector.js +0 -30
  689. package/dest/transport/browser/worker_listener.d.ts +0 -39
  690. package/dest/transport/browser/worker_listener.d.ts.map +0 -1
  691. package/dest/transport/browser/worker_listener.js +0 -35
  692. package/dest/transport/dispatch/create_dispatch_fn.d.ts +0 -25
  693. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +0 -1
  694. package/dest/transport/dispatch/create_dispatch_fn.js +0 -17
  695. package/dest/trees/unbalanced_merkle_tree.d.ts +0 -17
  696. package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
  697. package/dest/trees/unbalanced_merkle_tree.js +0 -100
  698. package/dest/wasm/empty_wasi_sdk.d.ts +0 -130
  699. package/dest/wasm/empty_wasi_sdk.d.ts.map +0 -1
  700. package/dest/wasm/empty_wasi_sdk.js +0 -148
  701. package/dest/wasm/index.d.ts +0 -2
  702. package/dest/wasm/index.d.ts.map +0 -1
  703. package/dest/wasm/index.js +0 -1
  704. package/dest/wasm/wasm_module.d.ts +0 -136
  705. package/dest/wasm/wasm_module.d.ts.map +0 -1
  706. package/dest/wasm/wasm_module.js +0 -196
  707. package/dest/worker/browser/index.d.ts +0 -3
  708. package/dest/worker/browser/index.d.ts.map +0 -1
  709. package/dest/worker/browser/index.js +0 -2
  710. package/dest/worker/browser/start_web_module.d.ts +0 -7
  711. package/dest/worker/browser/start_web_module.d.ts.map +0 -1
  712. package/dest/worker/browser/start_web_module.js +0 -27
  713. package/dest/worker/browser/web_data_store.d.ts +0 -24
  714. package/dest/worker/browser/web_data_store.d.ts.map +0 -1
  715. package/dest/worker/browser/web_data_store.js +0 -29
  716. package/dest/worker/browser/web_worker.d.ts +0 -10
  717. package/dest/worker/browser/web_worker.d.ts.map +0 -1
  718. package/dest/worker/browser/web_worker.js +0 -25
  719. package/dest/worker/data_store.d.ts +0 -21
  720. package/dest/worker/data_store.d.ts.map +0 -1
  721. package/dest/worker/data_store.js +0 -3
  722. package/dest/worker/index.d.ts +0 -3
  723. package/dest/worker/index.d.ts.map +0 -1
  724. package/dest/worker/index.js +0 -1
  725. package/dest/worker/node/index.d.ts +0 -3
  726. package/dest/worker/node/index.d.ts.map +0 -1
  727. package/dest/worker/node/index.js +0 -2
  728. package/dest/worker/node/node_data_store.d.ts +0 -13
  729. package/dest/worker/node/node_data_store.d.ts.map +0 -1
  730. package/dest/worker/node/node_data_store.js +0 -20
  731. package/dest/worker/node/node_worker.d.ts +0 -6
  732. package/dest/worker/node/node_worker.d.ts.map +0 -1
  733. package/dest/worker/node/node_worker.js +0 -22
  734. package/dest/worker/node/start_node_module.d.ts +0 -7
  735. package/dest/worker/node/start_node_module.d.ts.map +0 -1
  736. package/dest/worker/node/start_node_module.js +0 -31
  737. package/dest/worker/wasm_worker.d.ts +0 -9
  738. package/dest/worker/wasm_worker.d.ts.map +0 -1
  739. package/dest/worker/wasm_worker.js +0 -3
  740. package/dest/worker/worker_pool.d.ts +0 -40
  741. package/dest/worker/worker_pool.d.ts.map +0 -1
  742. package/dest/worker/worker_pool.js +0 -51
  743. package/src/crypto/index.ts +0 -14
  744. package/src/crypto/pedersen/pedersen.elliptic.ts +0 -584
  745. package/src/crypto/serialize.ts +0 -85
  746. package/src/fields/coordinate.ts +0 -104
  747. package/src/fields/index.ts +0 -3
  748. package/src/index.ts +0 -31
  749. package/src/json-rpc/server/telemetry.ts +0 -0
  750. package/src/log/debug.ts +0 -104
  751. package/src/log/log_history.ts +0 -44
  752. package/src/transport/browser/index.ts +0 -4
  753. package/src/transport/browser/message_port_socket.ts +0 -48
  754. package/src/transport/browser/shared_worker_connector.ts +0 -21
  755. package/src/transport/browser/shared_worker_listener.ts +0 -53
  756. package/src/transport/browser/worker_connector.ts +0 -30
  757. package/src/transport/browser/worker_listener.ts +0 -54
  758. package/src/transport/dispatch/create_dispatch_fn.ts +0 -35
  759. package/src/trees/unbalanced_merkle_tree.ts +0 -103
  760. package/src/wasm/README.md +0 -6
  761. package/src/wasm/empty_wasi_sdk.ts +0 -166
  762. package/src/wasm/fixtures/gcd.wasm +0 -0
  763. package/src/wasm/fixtures/gcd.wat +0 -27
  764. package/src/wasm/index.ts +0 -1
  765. package/src/wasm/wasm_module.ts +0 -260
  766. package/src/worker/browser/index.ts +0 -2
  767. package/src/worker/browser/start_web_module.ts +0 -24
  768. package/src/worker/browser/web_data_store.ts +0 -38
  769. package/src/worker/browser/web_worker.ts +0 -25
  770. package/src/worker/data_store.ts +0 -19
  771. package/src/worker/index.ts +0 -2
  772. package/src/worker/node/index.ts +0 -2
  773. package/src/worker/node/node_data_store.ts +0 -27
  774. package/src/worker/node/node_worker.ts +0 -23
  775. package/src/worker/node/start_node_module.ts +0 -30
  776. package/src/worker/wasm_worker.ts +0 -7
  777. package/src/worker/worker_pool.ts +0 -73
@@ -1,16 +1,44 @@
1
+ import { Fq, Fr } from '../curves/bn254/field.js';
1
2
  import type { EnvVar } from './env_var.js';
2
- export { type EnvVar } from './env_var.js';
3
- export interface ConfigMapping {
3
+ import { type NetworkNames, getActiveNetworkName } from './network_name.js';
4
+ import { SecretValue } from './secret_value.js';
5
+ export { SecretValue, getActiveNetworkName };
6
+ export type { EnvVar, NetworkNames };
7
+ export type { NetworkConfig, NetworkConfigMap } from './network_config.js';
8
+ export { NetworkConfigMapSchema, NetworkConfigSchema } from './network_config.js';
9
+ export interface ConfigMapping<T> {
4
10
  env?: EnvVar;
5
- parseEnv?: (val: string) => any;
6
- defaultValue?: any;
11
+ /** Parse an env-var string into `T`. Throws on invalid input. */
12
+ parseEnv?: (val: string) => T;
13
+ defaultValue?: T;
7
14
  printDefault?: (val: any) => string;
8
15
  description: string;
9
16
  isBoolean?: boolean;
10
- nested?: Record<string, ConfigMapping>;
17
+ fallback?: EnvVar[];
18
+ /**
19
+ * List of deprecated env vars that are still supported but will log a warning.
20
+ * These should also be included in the fallback array for parsing.
21
+ */
22
+ deprecatedFallback?: {
23
+ env: EnvVar;
24
+ message?: string;
25
+ }[];
11
26
  }
12
27
  export declare function isBooleanConfigValue<T>(obj: T, key: keyof T): boolean;
13
- export type ConfigMappingsType<T> = Record<keyof T, ConfigMapping>;
28
+ export type ConfigMappingsType<T> = {
29
+ [K in keyof T]-?: ConfigMapping<Required<T>[K]>;
30
+ };
31
+ /**
32
+ * Shared utility function to get a value from environment variables with fallback support.
33
+ * This can be used by both getConfigFromMappings and CLI utilities.
34
+ *
35
+ * @param env - The primary environment variable name
36
+ * @param fallback - Optional array of fallback environment variable names
37
+ * @param parseFunc - Optional function to parse the environment variable value
38
+ * @param defaultValue - Optional default value to use if no environment variable is set
39
+ * @returns The parsed value from environment variables or the default value
40
+ */
41
+ export declare function getValueFromEnvWithFallback<T>(env: EnvVar | undefined, parseFunc: ((val: string) => T) | undefined, defaultValue: T | undefined, fallback?: EnvVar[]): T | undefined;
14
42
  export declare function getConfigFromMappings<T>(configMappings: ConfigMappingsType<T>): T;
15
43
  /**
16
44
  * Filters out a service's config mappings to exclude certain keys.
@@ -24,27 +52,74 @@ export declare function omitConfigMappings<T, K extends keyof T>(configMappings:
24
52
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
25
53
  * @returns Object with parseEnv and default values for a numerical config value
26
54
  */
27
- export declare function numberConfigHelper(defaultVal: number): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'>;
55
+ export declare function numberConfigHelper(defaultVal: number): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'>;
56
+ /**
57
+ * Generates parseEnv and default values for a numerical config value.
58
+ * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
59
+ * @returns Object with parseEnv and default values for a numerical config value
60
+ */
61
+ export declare function floatConfigHelper(defaultVal: number, validationFn?: (val: number) => void): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'>;
62
+ /**
63
+ * Parses an environment variable to a 0-1 percentage value
64
+ */
65
+ export declare function percentageConfigHelper(defaultVal: number): Pick<ConfigMapping<number>, 'parseEnv' | 'defaultValue'>;
28
66
  /**
29
67
  * Generates parseEnv and default values for a numerical config value.
30
68
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
31
69
  * @returns Object with parseEnv and default values for a numerical config value
32
70
  */
33
- export declare function bigintConfigHelper(defaultVal?: bigint): Pick<ConfigMapping, 'parseEnv' | 'defaultValue'>;
71
+ export declare function bigintConfigHelper(defaultVal: bigint): Pick<ConfigMapping<bigint>, 'parseEnv' | 'defaultValue'>;
72
+ export declare function bigintConfigHelper(): Pick<ConfigMapping<bigint | undefined>, 'parseEnv' | 'defaultValue'>;
34
73
  /**
35
74
  * Generates parseEnv for an optional numerical config value.
75
+ * Empty strings are already handled by getValueFromEnvWithFallback.
36
76
  */
37
- export declare function optionalNumberConfigHelper(): Pick<ConfigMapping, 'parseEnv'>;
77
+ export declare function optionalNumberConfigHelper(): Pick<ConfigMapping<number>, 'parseEnv'>;
78
+ /** Generates parseEnv for an enum-like config value. */
79
+ export declare function enumConfigHelper<T extends string>(values: T[], defaultValue: NoInfer<T>): Pick<ConfigMapping<T>, 'parseEnv' | 'defaultValue'>;
80
+ export declare function enumConfigHelper<T extends string>(values: T[]): Pick<ConfigMapping<T | undefined>, 'parseEnv' | 'defaultValue'>;
38
81
  /**
39
82
  * Generates parseEnv and default values for a boolean config value.
40
83
  * @param defaultVal - The default value to use if the environment variable is not set or is invalid
41
84
  * @returns Object with parseEnv and default values for a boolean config value
42
85
  */
43
- export declare function booleanConfigHelper(defaultVal?: boolean): Required<Pick<ConfigMapping, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
86
+ export declare function booleanConfigHelper(defaultVal?: boolean): Required<Pick<ConfigMapping<boolean>, 'parseEnv' | 'defaultValue' | 'isBoolean'> & {
44
87
  parseVal: (val: string) => boolean;
45
88
  }>;
46
- /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */
47
- export declare function parseBooleanEnv(val: string | undefined): boolean;
89
+ export declare function secretValueConfigHelper<T>(parse: (val: string | undefined) => T): Pick<ConfigMapping<SecretValue<T>>, 'parseEnv' | 'defaultValue'> & {
90
+ parseVal: (val: string) => SecretValue<T>;
91
+ };
92
+ export { parseBooleanEnv } from './parse-env.js';
93
+ export declare function secretStringConfigHelper(): {
94
+ parseEnv: (val: string) => SecretValue<string>;
95
+ parseVal: (val: string) => SecretValue<string>;
96
+ defaultValue: undefined;
97
+ };
98
+ export declare function secretStringConfigHelper(defaultValue: string): {
99
+ parseEnv: (val: string) => SecretValue<string>;
100
+ parseVal: (val: string) => SecretValue<string>;
101
+ defaultValue: SecretValue<string>;
102
+ };
103
+ export declare function secretFrConfigHelper(): {
104
+ parseEnv: (val: string) => SecretValue<Fr>;
105
+ parseVal: (val: string) => SecretValue<Fr>;
106
+ defaultValue: undefined;
107
+ };
108
+ export declare function secretFrConfigHelper(defaultValue: Fr): {
109
+ parseEnv: (val: string) => SecretValue<Fr>;
110
+ parseVal: (val: string) => SecretValue<Fr>;
111
+ defaultValue: SecretValue<Fr>;
112
+ };
113
+ export declare function secretFqConfigHelper(): {
114
+ parseEnv: (val: string) => SecretValue<Fq>;
115
+ parseVal: (val: string) => SecretValue<Fq>;
116
+ defaultValue: undefined;
117
+ };
118
+ export declare function secretFqConfigHelper(defaultValue: Fq): {
119
+ parseEnv: (val: string) => SecretValue<Fq>;
120
+ parseVal: (val: string) => SecretValue<Fq>;
121
+ defaultValue: SecretValue<Fq>;
122
+ };
48
123
  /**
49
124
  * Picks specific keys from the given configuration mappings.
50
125
  *
@@ -63,4 +138,4 @@ export declare function pickConfigMappings<T, K extends keyof T>(configMappings:
63
138
  * @returns {T} - The configuration object with default values.
64
139
  */
65
140
  export declare function getDefaultConfig<T>(configMappings: ConfigMappingsType<T>): T;
66
- //# sourceMappingURL=index.d.ts.map
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVsRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFNUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhELE9BQU8sRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQztBQUM3QyxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQ3JDLFlBQVksRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRixNQUFNLFdBQVcsYUFBYSxDQUFDLENBQUM7SUFDOUIsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2IsaUVBQWlFO0lBQ2pFLFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDOUIsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pCLFlBQVksQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsS0FBSyxNQUFNLENBQUM7SUFDcEMsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUNwQixTQUFTLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDcEIsUUFBUSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDcEI7OztPQUdHO0lBQ0gsa0JBQWtCLENBQUMsRUFBRTtRQUFFLEdBQUcsRUFBRSxNQUFNLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxN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
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;IAChC,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACxC;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,OAAO,CAErE;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,CAAC;AAEnE,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAkBjF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACrD,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACrC,YAAY,EAAE,CAAC,EAAE,GAChB,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAIhC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,cAAc,CAAC,CAKvG;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,cAAc,CAAC,CAUxG;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAU5E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,UAAQ,GACjB,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,cAAc,GAAG,WAAW,CAAC,GAAG;IAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;CAAE,CAAC,CAQnH;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEhE;AAcD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACrD,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,EACrC,IAAI,EAAE,CAAC,EAAE,GACR,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAEhC;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAU5E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,64 @@
1
+ import { Fq, Fr } from '../curves/bn254/field.js';
2
+ import { createConsoleLogger } from '../log/console.js';
3
+ import { getActiveNetworkName } from './network_name.js';
4
+ import { parseBooleanEnv } from './parse-env.js';
5
+ import { SecretValue } from './secret_value.js';
6
+ export { SecretValue, getActiveNetworkName };
7
+ export { NetworkConfigMapSchema, NetworkConfigSchema } from './network_config.js';
1
8
  export function isBooleanConfigValue(obj, key) {
2
9
  return typeof obj[key] === 'boolean';
3
10
  }
11
+ /**
12
+ * Shared utility function to get a value from environment variables with fallback support.
13
+ * This can be used by both getConfigFromMappings and CLI utilities.
14
+ *
15
+ * @param env - The primary environment variable name
16
+ * @param fallback - Optional array of fallback environment variable names
17
+ * @param parseFunc - Optional function to parse the environment variable value
18
+ * @param defaultValue - Optional default value to use if no environment variable is set
19
+ * @returns The parsed value from environment variables or the default value
20
+ */ export function getValueFromEnvWithFallback(env, parseFunc, defaultValue, fallback) {
21
+ let value;
22
+ // Try primary env var
23
+ if (env) {
24
+ value = process.env[env];
25
+ }
26
+ // If primary not found, try fallbacks
27
+ if (value === undefined && fallback && fallback.length > 0) {
28
+ for (const fallbackEnv of fallback){
29
+ const fallbackVal = process.env[fallbackEnv];
30
+ if (fallbackVal !== undefined) {
31
+ value = fallbackVal;
32
+ break;
33
+ }
34
+ }
35
+ }
36
+ // Parse the value if needed. Empty strings are treated as "not set".
37
+ if (value !== undefined && value !== '') {
38
+ return parseFunc ? parseFunc(value) : value;
39
+ }
40
+ // Return default if no env var found
41
+ return defaultValue;
42
+ }
4
43
  export function getConfigFromMappings(configMappings) {
5
44
  const config = {};
6
45
  for(const key in configMappings){
7
- const { env, parseEnv, defaultValue: def, nested } = configMappings[key];
8
- if (nested) {
9
- config[key] = getConfigFromMappings(nested);
10
- } else {
11
- const val = env ? process.env[env] : undefined;
12
- if (val !== undefined) {
13
- config[key] = parseEnv ? parseEnv(val) : val;
14
- } else if (def !== undefined) {
15
- config[key] = def;
46
+ const { env, parseEnv, defaultValue, fallback, deprecatedFallback } = configMappings[key];
47
+ try {
48
+ config[key] = getValueFromEnvWithFallback(env, parseEnv, defaultValue, fallback);
49
+ } catch (e) {
50
+ throw new Error(`Failed to parse config '${key}' (env: ${env ?? 'none'}): ${e.message}`);
51
+ }
52
+ if (deprecatedFallback?.length) {
53
+ const userLog = createConsoleLogger('[DEPRECATED]');
54
+ for (const { env: deprecatedEnv, message } of deprecatedFallback){
55
+ if (process.env[deprecatedEnv]) {
56
+ const warningMessage = message ?? `Environment variable ${deprecatedEnv} is deprecated. Please use ${env} instead.`;
57
+ userLog(warningMessage, {
58
+ deprecatedEnvVar: deprecatedEnv,
59
+ newEnvVar: env
60
+ });
61
+ }
16
62
  }
17
63
  }
18
64
  }
@@ -40,11 +86,47 @@ export function getConfigFromMappings(configMappings) {
40
86
  * Generates parseEnv and default values for a numerical config value.
41
87
  * @param defaultVal - The default numerical value to use if the environment variable is not set or is invalid
42
88
  * @returns Object with parseEnv and default values for a numerical config value
43
- */ export function bigintConfigHelper(defaultVal) {
89
+ */ export function floatConfigHelper(defaultVal, validationFn) {
90
+ return {
91
+ parseEnv: (val)=>{
92
+ const parsed = safeParseFloat(val, defaultVal);
93
+ validationFn?.(parsed);
94
+ return parsed;
95
+ },
96
+ defaultValue: defaultVal
97
+ };
98
+ }
99
+ /**
100
+ * Parses an environment variable to a 0-1 percentage value
101
+ */ export function percentageConfigHelper(defaultVal) {
44
102
  return {
45
103
  parseEnv: (val)=>{
46
- if (val === '') {
47
- return defaultVal;
104
+ const parsed = safeParseFloat(val, defaultVal);
105
+ if (parsed < 0 || parsed > 1) {
106
+ throw new TypeError(`Invalid percentage value: ${parsed} should be between 0 and 1`);
107
+ }
108
+ return parsed;
109
+ },
110
+ defaultValue: defaultVal
111
+ };
112
+ }
113
+ export function bigintConfigHelper(defaultVal) {
114
+ return {
115
+ parseEnv: (val)=>{
116
+ // Handle scientific notation (e.g. "1e+23", "2E23") which BigInt() doesn't accept directly.
117
+ // We parse it losslessly using bigint arithmetic instead of going through float64.
118
+ if (/[eE]/.test(val)) {
119
+ const match = val.match(/^(-?\d+(?:\.(\d+))?)[eE]([+-]?\d+)$/);
120
+ if (!match) {
121
+ throw new Error(`Cannot convert '${val}' to a BigInt`);
122
+ }
123
+ const digits = match[1].replace('.', '');
124
+ const decimalPlaces = match[2]?.length ?? 0;
125
+ const exponent = parseInt(match[3], 10) - decimalPlaces;
126
+ if (exponent < 0) {
127
+ throw new Error(`Cannot convert '${val}' to a BigInt: result is not an integer`);
128
+ }
129
+ return BigInt(digits) * 10n ** BigInt(exponent);
48
130
  }
49
131
  return BigInt(val);
50
132
  },
@@ -53,17 +135,30 @@ export function getConfigFromMappings(configMappings) {
53
135
  }
54
136
  /**
55
137
  * Generates parseEnv for an optional numerical config value.
138
+ * Empty strings are already handled by getValueFromEnvWithFallback.
56
139
  */ export function optionalNumberConfigHelper() {
57
140
  return {
58
141
  parseEnv: (val)=>{
59
- if (val !== undefined && val.length > 0) {
60
- const parsedValue = parseInt(val);
61
- return Number.isSafeInteger(parsedValue) ? parsedValue : undefined;
142
+ const parsedValue = parseInt(val);
143
+ if (!Number.isSafeInteger(parsedValue)) {
144
+ throw new Error(`Invalid number: ${val}`);
62
145
  }
63
- return undefined;
146
+ return parsedValue;
64
147
  }
65
148
  };
66
149
  }
150
+ export function enumConfigHelper(values, defaultValue) {
151
+ return {
152
+ parseEnv: (val)=>{
153
+ const sanitizedVal = val.trim().toLowerCase();
154
+ if (values.some((v)=>v.toLowerCase() === sanitizedVal)) {
155
+ return values.find((v)=>v.toLowerCase() === sanitizedVal);
156
+ }
157
+ throw new Error(`Invalid config value '${val}' (must be one of ${values.join(', ')})`);
158
+ },
159
+ defaultValue
160
+ };
161
+ }
67
162
  /**
68
163
  * Generates parseEnv and default values for a boolean config value.
69
164
  * @param defaultVal - The default value to use if the environment variable is not set or is invalid
@@ -77,12 +172,38 @@ export function getConfigFromMappings(configMappings) {
77
172
  isBoolean: true
78
173
  };
79
174
  }
80
- /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */ export function parseBooleanEnv(val) {
81
- return val !== undefined && [
82
- '1',
83
- 'true',
84
- 'TRUE'
85
- ].includes(val);
175
+ export function secretValueConfigHelper(parse) {
176
+ const wrap = (val)=>new SecretValue(parse(val));
177
+ return {
178
+ parseEnv: wrap,
179
+ parseVal: wrap,
180
+ defaultValue: new SecretValue(parse(undefined))
181
+ };
182
+ }
183
+ export { parseBooleanEnv } from './parse-env.js';
184
+ export function secretStringConfigHelper(defaultValue) {
185
+ const parse = (val)=>new SecretValue(val);
186
+ return {
187
+ parseEnv: parse,
188
+ parseVal: parse,
189
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
190
+ };
191
+ }
192
+ export function secretFrConfigHelper(defaultValue) {
193
+ const parse = (val)=>new SecretValue(Fr.fromHexString(val));
194
+ return {
195
+ parseEnv: parse,
196
+ parseVal: parse,
197
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
198
+ };
199
+ }
200
+ export function secretFqConfigHelper(defaultValue) {
201
+ const parse = (val)=>new SecretValue(Fq.fromHexString(val));
202
+ return {
203
+ parseEnv: parse,
204
+ parseVal: parse,
205
+ defaultValue: defaultValue !== undefined ? new SecretValue(defaultValue) : undefined
206
+ };
86
207
  }
87
208
  /**
88
209
  * Safely parses a number from a string.
@@ -94,6 +215,16 @@ export function getConfigFromMappings(configMappings) {
94
215
  const parsedValue = parseInt(value, 10);
95
216
  return Number.isSafeInteger(parsedValue) ? parsedValue : defaultValue;
96
217
  }
218
+ /**
219
+ * Safely parses a floating point number from a string.
220
+ * If the value is not a number, the default value is returned.
221
+ * @param value - The string value to parse
222
+ * @param defaultValue - The default value to return
223
+ * @returns Either parsed value or default value
224
+ */ function safeParseFloat(value, defaultValue) {
225
+ const parsedValue = parseFloat(value);
226
+ return Number.isNaN(parsedValue) ? defaultValue : parsedValue;
227
+ }
97
228
  /**
98
229
  * Picks specific keys from the given configuration mappings.
99
230
  *
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ export declare const NetworkConfigSchema: z.ZodObject<{
3
+ bootnodes: z.ZodArray<z.ZodString>;
4
+ snapshots: z.ZodArray<z.ZodString>;
5
+ blobFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
6
+ txCollectionFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
7
+ registryAddress: z.ZodString;
8
+ feeAssetHandlerAddress: z.ZodOptional<z.ZodString>;
9
+ l1ChainId: z.ZodNumber;
10
+ blockDurationMs: z.ZodOptional<z.ZodNumber>;
11
+ txPublicSetupAllowListExtend: z.ZodOptional<z.ZodString>;
12
+ nodeVersion: z.ZodOptional<z.ZodString>;
13
+ }, z.core.$loose>;
14
+ export declare const NetworkConfigMapSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
15
+ bootnodes: z.ZodArray<z.ZodString>;
16
+ snapshots: z.ZodArray<z.ZodString>;
17
+ blobFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
18
+ txCollectionFileStoreUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
19
+ registryAddress: z.ZodString;
20
+ feeAssetHandlerAddress: z.ZodOptional<z.ZodString>;
21
+ l1ChainId: z.ZodNumber;
22
+ blockDurationMs: z.ZodOptional<z.ZodNumber>;
23
+ txPublicSetupAllowListExtend: z.ZodOptional<z.ZodString>;
24
+ nodeVersion: z.ZodOptional<z.ZodString>;
25
+ }, z.core.$loose>>;
26
+ export type NetworkConfig = z.infer<typeof NetworkConfigSchema>;
27
+ export type NetworkConfigMap = z.infer<typeof NetworkConfigMapSchema>;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya19jb25maWcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvbmV0d29ya19jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixlQUFPLE1BQU0sbUJBQW1COzs7Ozs7Ozs7OztpQkFhaEIsQ0FBQztBQUVqQixlQUFPLE1BQU0sc0JBQXNCOzs7Ozs7Ozs7OztrQkFBNEMsQ0FBQztBQUVoRixNQUFNLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDO0FBQ2hFLE1BQU0sTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sc0JBQXNCLENBQUMsQ0FBQyJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network_config.d.ts","sourceRoot":"","sources":["../../src/config/network_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAahB,CAAC;AAEjB,eAAO,MAAM,sBAAsB;;;;;;;;;;;kBAA4C,CAAC;AAEhF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export const NetworkConfigSchema = z.object({
3
+ bootnodes: z.array(z.string()),
4
+ snapshots: z.array(z.string()),
5
+ blobFileStoreUrls: z.array(z.string()).optional(),
6
+ txCollectionFileStoreUrls: z.array(z.string()).optional(),
7
+ registryAddress: z.string(),
8
+ feeAssetHandlerAddress: z.string().optional(),
9
+ l1ChainId: z.number(),
10
+ blockDurationMs: z.number().positive().optional(),
11
+ txPublicSetupAllowListExtend: z.string().optional(),
12
+ nodeVersion: z.string().optional()
13
+ }).passthrough(); // Allow additional unknown fields to pass through
14
+ export const NetworkConfigMapSchema = z.record(z.string(), NetworkConfigSchema);
@@ -0,0 +1,3 @@
1
+ export type NetworkNames = 'local' | 'staging' | 'testnet' | 'mainnet' | 'next-net' | 'devnet' | `v${number}-devnet-${number}`;
2
+ export declare function getActiveNetworkName(name?: string): NetworkNames;
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29ya19uYW1lLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL25ldHdvcmtfbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE1BQU0sWUFBWSxHQUNwQixPQUFPLEdBQ1AsU0FBUyxHQUNULFNBQVMsR0FDVCxTQUFTLEdBQ1QsVUFBVSxHQUNWLFFBQVEsR0FDUixJQUFJLE1BQU0sV0FBVyxNQUFNLEVBQUUsQ0FBQztBQUVsQyx3QkFBZ0Isb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxHQUFHLFlBQVksQ0FrQmhFIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network_name.d.ts","sourceRoot":"","sources":["../../src/config/network_name.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,SAAS,GACT,SAAS,GACT,SAAS,GACT,UAAU,GACV,QAAQ,GACR,IAAI,MAAM,WAAW,MAAM,EAAE,CAAC;AAElC,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAkBhE"}
@@ -0,0 +1,19 @@
1
+ export function getActiveNetworkName(name) {
2
+ const network = name || process.env.NETWORK;
3
+ if (!network || network === '' || network === 'local') {
4
+ return 'local';
5
+ } else if (network === 'staging') {
6
+ return network;
7
+ } else if (network === 'testnet' || network === 'alpha-testnet') {
8
+ return 'testnet';
9
+ } else if (network === 'mainnet') {
10
+ return 'mainnet';
11
+ } else if (network === 'next-net') {
12
+ return 'next-net';
13
+ } else if (network === 'devnet') {
14
+ return 'devnet';
15
+ } else if (/^v\d+-devnet-\d+$/.test(network)) {
16
+ return network;
17
+ }
18
+ throw new Error(`Unknown network: ${network}`);
19
+ }
@@ -0,0 +1,3 @@
1
+ /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */
2
+ export declare function parseBooleanEnv(val: string | undefined): boolean;
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZW52LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3BhcnNlLWVudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvRkFBb0Y7QUFDcEYsd0JBQWdCLGVBQWUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLFNBQVMsR0FBRyxPQUFPLENBRWhFIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-env.d.ts","sourceRoot":"","sources":["../../src/config/parse-env.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAEhE"}
@@ -0,0 +1,7 @@
1
+ /** Parses an env var as boolean. Returns true only if value is 1, true, or TRUE. */ export function parseBooleanEnv(val) {
2
+ return val !== undefined && [
3
+ '1',
4
+ 'true',
5
+ 'TRUE'
6
+ ].includes(val);
7
+ }
@@ -0,0 +1,28 @@
1
+ import { inspect } from 'util';
2
+ import type { ZodType } from 'zod';
3
+ /**
4
+ * A class wrapping a secret value to protect it from accidently being leaked in logs
5
+ */
6
+ export declare class SecretValue<T> {
7
+ #private;
8
+ private readonly redactedValue;
9
+ constructor(value: T, redactedValue?: string);
10
+ /**
11
+ * Returns the wrapped value
12
+ */
13
+ getValue(): T;
14
+ /**
15
+ * Returns a redacted string representation of the value
16
+ */
17
+ toString(): string;
18
+ /**
19
+ * Returns a redacted string representation of the value
20
+ */
21
+ toJSON(): string;
22
+ [inspect.custom](): string;
23
+ /**
24
+ * Returns a Zod schema
25
+ */
26
+ static schema<O>(valueSchema: ZodType<O, any>): ZodType<SecretValue<O>, any>;
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0X3ZhbHVlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3NlY3JldF92YWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEtBQUssQ0FBQztBQUVuQzs7R0FFRztBQUNILHFCQUFhLFdBQVcsQ0FBQyxDQUFDOztJQU10QixPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWE7SUFGaEMsWUFDRSxLQUFLLEVBQUUsQ0FBQyxFQUNTLGFBQWEsU0FBZSxFQUc5QztJQUVEOztPQUVHO0lBQ0ksUUFBUSxJQUFJLENBQUMsQ0FFbkI7SUFFRDs7T0FFRztJQUNJLFFBQVEsSUFBSSxNQUFNLENBRXhCO0lBRUQ7O09BRUc7SUFDSSxNQUFNLElBQUksTUFBTSxDQUV0QjtJQUVNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUV0QjtJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FFM0U7Q0FDRiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret_value.d.ts","sourceRoot":"","sources":["../../src/config/secret_value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAEnC;;GAEG;AACH,qBAAa,WAAW,CAAC,CAAC;;IAMtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAFhC,YACE,KAAK,EAAE,CAAC,EACS,aAAa,SAAe,EAG9C;IAED;;OAEG;IACI,QAAQ,IAAI,CAAC,CAEnB;IAED;;OAEG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;OAEG;IACI,MAAM,IAAI,MAAM,CAEtB;IAEM,CAAC,OAAO,CAAC,MAAM,CAAC,WAEtB;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAE3E;CACF"}
@@ -0,0 +1,36 @@
1
+ var _computedKey;
2
+ import { inspect } from 'util';
3
+ _computedKey = inspect.custom;
4
+ /**
5
+ * A class wrapping a secret value to protect it from accidently being leaked in logs
6
+ */ export class SecretValue {
7
+ redactedValue;
8
+ /** The secret value. Use a private member field so that it's not visible to the outside */ #value;
9
+ constructor(value, redactedValue = '[Redacted]'){
10
+ this.redactedValue = redactedValue;
11
+ this.#value = value;
12
+ }
13
+ /**
14
+ * Returns the wrapped value
15
+ */ getValue() {
16
+ return this.#value;
17
+ }
18
+ /**
19
+ * Returns a redacted string representation of the value
20
+ */ toString() {
21
+ return this.redactedValue;
22
+ }
23
+ /**
24
+ * Returns a redacted string representation of the value
25
+ */ toJSON() {
26
+ return this.redactedValue;
27
+ }
28
+ [_computedKey]() {
29
+ return this.toString();
30
+ }
31
+ /**
32
+ * Returns a Zod schema
33
+ */ static schema(valueSchema) {
34
+ return valueSchema.transform((value)=>new SecretValue(value));
35
+ }
36
+ }
@@ -1,5 +1,3 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- /// <reference types="node" resolution-mode="require"/>
3
1
  import { Buffer } from 'buffer';
4
2
  /**
5
3
  * AES-128-CBC encryption/decryption.
@@ -12,7 +10,7 @@ export declare class Aes128 {
12
10
  * @param key - Key to encrypt with.
13
11
  * @returns Encrypted data.
14
12
  */
15
- encryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer>;
13
+ encryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer<ArrayBuffer>>;
16
14
  /**
17
15
  * Decrypt a buffer using AES-128-CBC.
18
16
  * We keep the padding in the returned buffer.
@@ -28,7 +26,8 @@ export declare class Aes128 {
28
26
  * @param iv - AES initialization vector.
29
27
  * @param key - Key to decrypt with.
30
28
  * @returns Decrypted data.
29
+ * @throws If the decrypted buffer has invalid PKCS#7 padding.
31
30
  */
32
- decryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer>;
31
+ decryptBufferCBC(data: Uint8Array, iv: Uint8Array, key: Uint8Array): Promise<Buffer<ArrayBufferLike>>;
33
32
  }
34
- //# sourceMappingURL=index.d.ts.map
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jcnlwdG8vYWVzMTI4L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFaEM7O0dBRUc7QUFDSCxxQkFBYSxNQUFNO0lBQ2pCOzs7Ozs7T0FNRztJQUNVLGdCQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxnQ0FrQjlFO0lBRUQ7Ozs7Ozs7T0FPRztJQUNVLDJCQUEyQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FVM0c7SUFFRDs7Ozs7OztPQU9HO0lBQ1UsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxVQUFVLG9DQVk5RTtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/aes128/index.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;GAEG;AACH,qBAAa,MAAM;IACjB;;;;;;OAMG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;IAe/E;;;;;;;OAOG;IACU,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAQ5G;;;;;;OAMG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU;CAKhF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto/aes128/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC;;GAEG;AACH,qBAAa,MAAM;IACjB;;;;;;OAMG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,gCAkB9E;IAED;;;;;;;OAOG;IACU,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAU3G;IAED;;;;;;;OAOG;IACU,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,oCAY9E;CACF"}