@aztec/foundation 0.0.1-commit.b655e406 → 0.0.1-commit.c2595eba

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 (482) hide show
  1. package/dest/array/array.d.ts +1 -9
  2. package/dest/array/array.d.ts.map +1 -1
  3. package/dest/array/array.js +0 -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 +10 -0
  8. package/dest/array/sorted_array.d.ts.map +1 -0
  9. package/dest/array/sorted_array.js +106 -0
  10. package/dest/async-map/index.d.ts +1 -1
  11. package/dest/async-pool/index.d.ts +1 -1
  12. package/dest/bigint/index.d.ts +1 -1
  13. package/dest/bigint-buffer/index.d.ts +1 -1
  14. package/dest/branded-types/block_number.d.ts +56 -0
  15. package/dest/branded-types/block_number.d.ts.map +1 -0
  16. package/dest/branded-types/block_number.js +78 -0
  17. package/dest/branded-types/checkpoint_number.d.ts +54 -0
  18. package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
  19. package/dest/branded-types/checkpoint_number.js +77 -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 +7 -0
  24. package/dest/branded-types/index.d.ts.map +1 -0
  25. package/dest/branded-types/index.js +5 -0
  26. package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
  27. package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
  28. package/dest/branded-types/index_within_checkpoint.js +59 -0
  29. package/dest/branded-types/slot.d.ts +42 -0
  30. package/dest/branded-types/slot.d.ts.map +1 -0
  31. package/dest/branded-types/slot.js +59 -0
  32. package/dest/branded-types/types.d.ts +5 -0
  33. package/dest/branded-types/types.d.ts.map +1 -0
  34. package/dest/branded-types/types.js +1 -0
  35. package/dest/buffer/buffer16.d.ts +2 -2
  36. package/dest/buffer/buffer16.d.ts.map +1 -1
  37. package/dest/buffer/buffer16.js +4 -2
  38. package/dest/buffer/buffer32.d.ts +2 -2
  39. package/dest/buffer/buffer32.d.ts.map +1 -1
  40. package/dest/buffer/buffer32.js +4 -2
  41. package/dest/buffer/index.d.ts +1 -1
  42. package/dest/collection/array.d.ts +12 -1
  43. package/dest/collection/array.d.ts.map +1 -1
  44. package/dest/collection/array.js +51 -0
  45. package/dest/collection/index.d.ts +1 -1
  46. package/dest/collection/object.d.ts +1 -1
  47. package/dest/committable/committable.d.ts +1 -1
  48. package/dest/committable/committable.d.ts.map +1 -1
  49. package/dest/committable/index.d.ts +1 -1
  50. package/dest/config/env_var.d.ts +2 -2
  51. package/dest/config/env_var.d.ts.map +1 -1
  52. package/dest/config/index.d.ts +15 -4
  53. package/dest/config/index.d.ts.map +1 -1
  54. package/dest/config/index.js +32 -9
  55. package/dest/config/network_config.d.ts +13 -1
  56. package/dest/config/network_config.d.ts.map +1 -1
  57. package/dest/config/network_config.js +3 -1
  58. package/dest/config/network_name.d.ts +1 -1
  59. package/dest/config/parse-env.d.ts +3 -0
  60. package/dest/config/parse-env.d.ts.map +1 -0
  61. package/dest/config/parse-env.js +7 -0
  62. package/dest/config/secret_value.d.ts +1 -1
  63. package/dest/config/secret_value.d.ts.map +1 -1
  64. package/dest/config/secret_value.js +3 -1
  65. package/dest/crypto/aes128/index.d.ts +1 -1
  66. package/dest/crypto/aes128/index.d.ts.map +1 -1
  67. package/dest/crypto/aes128/index.js +2 -6
  68. package/dest/crypto/bls/bn254_keystore.d.ts +15 -15
  69. package/dest/crypto/bls/bn254_keystore.d.ts.map +1 -1
  70. package/dest/crypto/bls/bn254_keystore.js +1 -1
  71. package/dest/crypto/bls/index.d.ts +1 -1
  72. package/dest/crypto/bls/index.js +1 -1
  73. package/dest/crypto/bn254/index.d.ts +35 -51
  74. package/dest/crypto/bn254/index.d.ts.map +1 -1
  75. package/dest/crypto/bn254/index.js +51 -137
  76. package/dest/crypto/ecdsa/index.d.ts +1 -1
  77. package/dest/crypto/ecdsa/index.d.ts.map +1 -1
  78. package/dest/crypto/ecdsa/index.js +4 -12
  79. package/dest/crypto/ecdsa/signature.d.ts +2 -2
  80. package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
  81. package/dest/crypto/ecdsa/signature.js +2 -2
  82. package/dest/crypto/grumpkin/index.d.ts +4 -2
  83. package/dest/crypto/grumpkin/index.d.ts.map +1 -1
  84. package/dest/crypto/grumpkin/index.js +7 -16
  85. package/dest/crypto/keccak/index.d.ts +1 -1
  86. package/dest/crypto/keys/index.d.ts +2 -2
  87. package/dest/crypto/keys/index.d.ts.map +1 -1
  88. package/dest/crypto/keys/index.js +2 -4
  89. package/dest/crypto/pedersen/index.d.ts +1 -1
  90. package/dest/crypto/pedersen/pedersen.noble.d.ts +1 -1
  91. package/dest/crypto/pedersen/pedersen.wasm.d.ts +2 -2
  92. package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
  93. package/dest/crypto/pedersen/pedersen.wasm.js +4 -10
  94. package/dest/crypto/poseidon/index.d.ts +2 -3
  95. package/dest/crypto/poseidon/index.d.ts.map +1 -1
  96. package/dest/crypto/poseidon/index.js +5 -24
  97. package/dest/crypto/random/index.d.ts +1 -1
  98. package/dest/crypto/random/index.d.ts.map +1 -1
  99. package/dest/crypto/random/randomness_singleton.d.ts +4 -3
  100. package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
  101. package/dest/crypto/random/randomness_singleton.js +5 -5
  102. package/dest/crypto/schnorr/index.d.ts +3 -2
  103. package/dest/crypto/schnorr/index.d.ts.map +1 -1
  104. package/dest/crypto/schnorr/index.js +4 -10
  105. package/dest/crypto/schnorr/signature.d.ts +2 -2
  106. package/dest/crypto/schnorr/signature.d.ts.map +1 -1
  107. package/dest/crypto/schnorr/signature.js +2 -2
  108. package/dest/crypto/secp256k1/index.d.ts +1 -1
  109. package/dest/crypto/secp256k1/index.d.ts.map +1 -1
  110. package/dest/crypto/secp256k1/index.js +3 -9
  111. package/dest/crypto/secp256k1-signer/index.d.ts +1 -1
  112. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts +1 -1
  113. package/dest/crypto/secp256k1-signer/secp256k1_signer.d.ts.map +1 -1
  114. package/dest/crypto/secp256k1-signer/utils.d.ts +1 -1
  115. package/dest/crypto/secp256k1-signer/utils.d.ts.map +1 -1
  116. package/dest/crypto/serialize.d.ts +1 -1
  117. package/dest/crypto/sha256/index.d.ts +2 -2
  118. package/dest/crypto/sha256/index.d.ts.map +1 -1
  119. package/dest/crypto/sha256/index.js +1 -1
  120. package/dest/crypto/sha512/index.d.ts +3 -3
  121. package/dest/crypto/sha512/index.d.ts.map +1 -1
  122. package/dest/crypto/sha512/index.js +1 -1
  123. package/dest/crypto/signature/index.d.ts +2 -2
  124. package/dest/crypto/signature/index.d.ts.map +1 -1
  125. package/dest/crypto/sync/index.d.ts +1 -1
  126. package/dest/crypto/sync/index.js +1 -3
  127. package/dest/crypto/sync/pedersen/index.d.ts +2 -2
  128. package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
  129. package/dest/crypto/sync/pedersen/index.js +1 -1
  130. package/dest/crypto/sync/poseidon/index.d.ts +2 -3
  131. package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
  132. package/dest/crypto/sync/poseidon/index.js +1 -9
  133. package/dest/{fields/bls12_fields.d.ts → curves/bls12/field.d.ts} +3 -3
  134. package/dest/curves/bls12/field.d.ts.map +1 -0
  135. package/dest/{fields/bls12_fields.js → curves/bls12/field.js} +12 -9
  136. package/dest/curves/bls12/index.d.ts +3 -0
  137. package/dest/curves/bls12/index.d.ts.map +1 -0
  138. package/dest/curves/bls12/index.js +2 -0
  139. package/dest/{fields/bls12_point.d.ts → curves/bls12/point.d.ts} +4 -4
  140. package/dest/curves/bls12/point.d.ts.map +1 -0
  141. package/dest/{fields/bls12_point.js → curves/bls12/point.js} +10 -8
  142. package/dest/{fields/fields.d.ts → curves/bn254/field.d.ts} +16 -15
  143. package/dest/curves/bn254/field.d.ts.map +1 -0
  144. package/dest/{fields/fields.js → curves/bn254/field.js} +49 -49
  145. package/dest/curves/bn254/index.d.ts +3 -0
  146. package/dest/curves/bn254/index.d.ts.map +1 -0
  147. package/dest/curves/bn254/index.js +2 -0
  148. package/dest/curves/bn254/point.d.ts +54 -0
  149. package/dest/curves/bn254/point.d.ts.map +1 -0
  150. package/dest/curves/bn254/point.js +143 -0
  151. package/dest/curves/grumpkin/index.d.ts +10 -0
  152. package/dest/curves/grumpkin/index.d.ts.map +1 -0
  153. package/dest/curves/grumpkin/index.js +3 -0
  154. package/dest/{fields → curves/grumpkin}/point.d.ts +12 -3
  155. package/dest/curves/grumpkin/point.d.ts.map +1 -0
  156. package/dest/{fields → curves/grumpkin}/point.js +24 -7
  157. package/dest/decorators/index.d.ts +1 -1
  158. package/dest/decorators/memoize.d.ts +1 -1
  159. package/dest/decorators/memoize.d.ts.map +1 -1
  160. package/dest/error/index.d.ts +1 -1
  161. package/dest/eth-address/index.d.ts +12 -2
  162. package/dest/eth-address/index.d.ts.map +1 -1
  163. package/dest/eth-address/index.js +27 -3
  164. package/dest/eth-signature/eth_signature.d.ts +1 -1
  165. package/dest/eth-signature/eth_signature.d.ts.map +1 -1
  166. package/dest/eth-signature/index.d.ts +1 -1
  167. package/dest/fs/index.d.ts +1 -1
  168. package/dest/fs/run_in_dir.d.ts +1 -1
  169. package/dest/fs/try_rm_dir.d.ts +1 -1
  170. package/dest/iterable/all.d.ts +1 -1
  171. package/dest/iterable/filter.d.ts +1 -1
  172. package/dest/iterable/index.d.ts +1 -1
  173. package/dest/iterable/isAsyncIt.d.ts +1 -1
  174. package/dest/iterable/map.d.ts +1 -1
  175. package/dest/iterable/peek.d.ts +1 -1
  176. package/dest/iterable/sort.d.ts +1 -1
  177. package/dest/iterable/take.d.ts +1 -1
  178. package/dest/iterable/toArray.d.ts +1 -1
  179. package/dest/iterator/filter.d.ts +3 -0
  180. package/dest/iterator/filter.d.ts.map +1 -0
  181. package/dest/iterator/filter.js +7 -0
  182. package/dest/iterator/index.d.ts +2 -0
  183. package/dest/iterator/index.d.ts.map +1 -0
  184. package/dest/iterator/index.js +1 -0
  185. package/dest/jest/setup.js +4 -1
  186. package/dest/json-rpc/client/fetch.d.ts +1 -1
  187. package/dest/json-rpc/client/index.d.ts +1 -1
  188. package/dest/json-rpc/client/safe_json_rpc_client.d.ts +1 -1
  189. package/dest/json-rpc/client/undici.d.ts +1 -1
  190. package/dest/json-rpc/client/undici.d.ts.map +1 -1
  191. package/dest/json-rpc/client/undici.js +21 -4
  192. package/dest/json-rpc/convert.d.ts +1 -1
  193. package/dest/json-rpc/errors.d.ts +1 -1
  194. package/dest/json-rpc/errors.d.ts.map +1 -1
  195. package/dest/json-rpc/fixtures/class_a.d.ts +1 -1
  196. package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
  197. package/dest/json-rpc/fixtures/class_b.d.ts +1 -1
  198. package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
  199. package/dest/json-rpc/fixtures/test_state.d.ts +1 -1
  200. package/dest/json-rpc/fixtures/test_state.d.ts.map +1 -1
  201. package/dest/json-rpc/index.d.ts +1 -1
  202. package/dest/json-rpc/js_utils.d.ts +1 -1
  203. package/dest/json-rpc/js_utils.d.ts.map +1 -1
  204. package/dest/json-rpc/server/index.d.ts +1 -1
  205. package/dest/json-rpc/server/safe_json_rpc_server.d.ts +1 -1
  206. package/dest/json-rpc/server/safe_json_rpc_server.d.ts.map +1 -1
  207. package/dest/json-rpc/server/safe_json_rpc_server.js +1 -1
  208. package/dest/json-rpc/test/index.d.ts +1 -1
  209. package/dest/json-rpc/test/integration.d.ts +1 -1
  210. package/dest/log/console.d.ts +1 -1
  211. package/dest/log/gcloud-logger-config.d.ts +1 -1
  212. package/dest/log/gcloud-logger-config.d.ts.map +1 -1
  213. package/dest/log/index.d.ts +1 -1
  214. package/dest/log/libp2p_logger.d.ts +5 -2
  215. package/dest/log/libp2p_logger.d.ts.map +1 -1
  216. package/dest/log/libp2p_logger.js +14 -4
  217. package/dest/log/log-filters.d.ts +1 -1
  218. package/dest/log/log-levels.d.ts +1 -1
  219. package/dest/log/log_fn.d.ts +1 -1
  220. package/dest/log/noir_debug_log_util.d.ts +1 -1
  221. package/dest/log/pino-logger-server.d.ts +9 -0
  222. package/dest/log/pino-logger-server.d.ts.map +1 -0
  223. package/dest/log/pino-logger-server.js +18 -0
  224. package/dest/log/pino-logger.d.ts +38 -9
  225. package/dest/log/pino-logger.d.ts.map +1 -1
  226. package/dest/log/pino-logger.js +116 -27
  227. package/dest/message/index.d.ts +1 -1
  228. package/dest/message/index.d.ts.map +1 -1
  229. package/dest/mutex/index.d.ts +1 -1
  230. package/dest/mutex/index.d.ts.map +1 -1
  231. package/dest/mutex/mutex_database.d.ts +1 -1
  232. package/dest/noir/index.d.ts +1 -1
  233. package/dest/noir/noir_package_config.d.ts +9 -9
  234. package/dest/number/index.d.ts +1 -1
  235. package/dest/profiler/index.d.ts +1 -1
  236. package/dest/profiler/profiler.d.ts +1 -1
  237. package/dest/promise/index.d.ts +1 -1
  238. package/dest/promise/running-promise.d.ts +1 -1
  239. package/dest/promise/running-promise.d.ts.map +1 -1
  240. package/dest/promise/utils.d.ts +1 -1
  241. package/dest/queue/base_memory_queue.d.ts +1 -1
  242. package/dest/queue/base_memory_queue.d.ts.map +1 -1
  243. package/dest/queue/batch_queue.d.ts +1 -1
  244. package/dest/queue/batch_queue.d.ts.map +1 -1
  245. package/dest/queue/bounded_serial_queue.d.ts +1 -1
  246. package/dest/queue/bounded_serial_queue.d.ts.map +1 -1
  247. package/dest/queue/fifo_memory_queue.d.ts +1 -1
  248. package/dest/queue/fifo_memory_queue.d.ts.map +1 -1
  249. package/dest/queue/index.d.ts +1 -1
  250. package/dest/queue/priority_memory_queue.d.ts +1 -1
  251. package/dest/queue/priority_memory_queue.d.ts.map +1 -1
  252. package/dest/queue/priority_queue.d.ts +1 -1
  253. package/dest/queue/priority_queue.d.ts.map +1 -1
  254. package/dest/queue/semaphore.d.ts +5 -1
  255. package/dest/queue/semaphore.d.ts.map +1 -1
  256. package/dest/queue/serial_queue.d.ts +1 -1
  257. package/dest/queue/serial_queue.d.ts.map +1 -1
  258. package/dest/retry/index.d.ts +11 -1
  259. package/dest/retry/index.d.ts.map +1 -1
  260. package/dest/retry/index.js +11 -0
  261. package/dest/running-promise/index.d.ts +1 -1
  262. package/dest/schemas/api.d.ts +1 -1
  263. package/dest/schemas/index.d.ts +1 -1
  264. package/dest/schemas/parse.d.ts +1 -1
  265. package/dest/schemas/schemas.d.ts +15 -17
  266. package/dest/schemas/schemas.d.ts.map +1 -1
  267. package/dest/schemas/schemas.js +14 -10
  268. package/dest/schemas/types.d.ts +31 -1
  269. package/dest/schemas/types.d.ts.map +1 -1
  270. package/dest/schemas/types.js +25 -1
  271. package/dest/schemas/utils.d.ts +4 -4
  272. package/dest/schemas/utils.d.ts.map +1 -1
  273. package/dest/schemas/utils.js +15 -5
  274. package/dest/serialize/buffer_reader.d.ts +7 -4
  275. package/dest/serialize/buffer_reader.d.ts.map +1 -1
  276. package/dest/serialize/buffer_reader.js +13 -4
  277. package/dest/serialize/field_reader.d.ts +2 -2
  278. package/dest/serialize/field_reader.d.ts.map +1 -1
  279. package/dest/serialize/field_reader.js +1 -1
  280. package/dest/serialize/free_funcs.d.ts +2 -2
  281. package/dest/serialize/free_funcs.d.ts.map +1 -1
  282. package/dest/serialize/free_funcs.js +1 -1
  283. package/dest/serialize/index.d.ts +1 -1
  284. package/dest/serialize/serialize.d.ts +2 -2
  285. package/dest/serialize/serialize.d.ts.map +1 -1
  286. package/dest/serialize/serialize.js +1 -1
  287. package/dest/serialize/type_registry.d.ts +1 -1
  288. package/dest/serialize/type_registry.d.ts.map +1 -1
  289. package/dest/serialize/types.d.ts +1 -1
  290. package/dest/sleep/index.d.ts +3 -1
  291. package/dest/sleep/index.d.ts.map +1 -1
  292. package/dest/sleep/index.js +4 -0
  293. package/dest/string/index.d.ts +1 -1
  294. package/dest/testing/files/index.d.ts +2 -1
  295. package/dest/testing/files/index.d.ts.map +1 -1
  296. package/dest/testing/files/index.js +1 -1
  297. package/dest/testing/formatting.d.ts +1 -1
  298. package/dest/testing/index.d.ts +1 -1
  299. package/dest/testing/port_allocator.d.ts +1 -1
  300. package/dest/testing/snapshot_serializer.d.ts +1 -1
  301. package/dest/testing/test_data.d.ts +1 -1
  302. package/dest/timer/date.d.ts +2 -1
  303. package/dest/timer/date.d.ts.map +1 -1
  304. package/dest/timer/date.js +3 -0
  305. package/dest/timer/elapsed.d.ts +1 -1
  306. package/dest/timer/index.d.ts +1 -1
  307. package/dest/timer/timeout.d.ts +1 -1
  308. package/dest/timer/timeout.d.ts.map +1 -1
  309. package/dest/timer/timer.d.ts +1 -1
  310. package/dest/timer/timer.d.ts.map +1 -1
  311. package/dest/transport/dispatch/create_dispatch_fn.d.ts +1 -1
  312. package/dest/transport/dispatch/create_dispatch_fn.d.ts.map +1 -1
  313. package/dest/transport/dispatch/create_dispatch_proxy.d.ts +1 -1
  314. package/dest/transport/dispatch/messages.d.ts +1 -1
  315. package/dest/transport/index.d.ts +1 -1
  316. package/dest/transport/interface/connector.d.ts +1 -1
  317. package/dest/transport/interface/listener.d.ts +1 -1
  318. package/dest/transport/interface/socket.d.ts +1 -1
  319. package/dest/transport/interface/transferable.d.ts +1 -1
  320. package/dest/transport/node/index.d.ts +1 -1
  321. package/dest/transport/node/node_connector.d.ts +1 -1
  322. package/dest/transport/node/node_connector.d.ts.map +1 -1
  323. package/dest/transport/node/node_connector_socket.d.ts +1 -1
  324. package/dest/transport/node/node_connector_socket.d.ts.map +1 -1
  325. package/dest/transport/node/node_listener.d.ts +1 -1
  326. package/dest/transport/node/node_listener.d.ts.map +1 -1
  327. package/dest/transport/node/node_listener_socket.d.ts +1 -1
  328. package/dest/transport/node/node_listener_socket.d.ts.map +1 -1
  329. package/dest/transport/transport_client.d.ts +1 -1
  330. package/dest/transport/transport_client.d.ts.map +1 -1
  331. package/dest/transport/transport_server.d.ts +1 -10
  332. package/dest/transport/transport_server.d.ts.map +1 -1
  333. package/dest/trees/balanced_merkle_tree_root.d.ts +17 -0
  334. package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
  335. package/dest/trees/balanced_merkle_tree_root.js +51 -0
  336. package/dest/trees/hasher.d.ts +3 -1
  337. package/dest/trees/hasher.d.ts.map +1 -1
  338. package/dest/trees/hasher.js +10 -5
  339. package/dest/trees/index.d.ts +4 -3
  340. package/dest/trees/index.d.ts.map +1 -1
  341. package/dest/trees/index.js +3 -2
  342. package/dest/trees/indexed_merkle_tree.d.ts +1 -1
  343. package/dest/trees/indexed_merkle_tree.d.ts.map +1 -1
  344. package/dest/trees/indexed_merkle_tree.js +1 -1
  345. package/dest/trees/indexed_merkle_tree_calculator.d.ts +1 -1
  346. package/dest/trees/indexed_merkle_tree_calculator.d.ts.map +1 -1
  347. package/dest/trees/indexed_tree_leaf.d.ts +1 -1
  348. package/dest/trees/membership_witness.d.ts +7 -18
  349. package/dest/trees/membership_witness.d.ts.map +1 -1
  350. package/dest/trees/membership_witness.js +10 -1
  351. package/dest/trees/merkle_tree.d.ts +1 -1
  352. package/dest/trees/merkle_tree.d.ts.map +1 -1
  353. package/dest/trees/merkle_tree_calculator.d.ts +2 -12
  354. package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
  355. package/dest/trees/merkle_tree_calculator.js +2 -32
  356. package/dest/trees/sibling_path.d.ts +5 -38
  357. package/dest/trees/sibling_path.d.ts.map +1 -1
  358. package/dest/trees/sibling_path.js +3 -3
  359. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +6 -6
  360. package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -1
  361. package/dest/trees/unbalanced_merkle_tree_calculator.js +34 -42
  362. package/dest/trees/unbalanced_merkle_tree_root.d.ts +28 -0
  363. package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
  364. package/dest/trees/unbalanced_merkle_tree_root.js +84 -0
  365. package/dest/trees/unbalanced_tree_store.d.ts +5 -1
  366. package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
  367. package/dest/trees/unbalanced_tree_store.js +49 -1
  368. package/dest/types/index.d.ts +4 -2
  369. package/dest/types/index.d.ts.map +1 -1
  370. package/dest/types/index.js +3 -0
  371. package/dest/url/index.d.ts +1 -1
  372. package/dest/validation/index.d.ts +1 -1
  373. package/package.json +30 -9
  374. package/src/array/array.ts +0 -16
  375. package/src/array/index.ts +1 -0
  376. package/src/array/sorted_array.ts +133 -0
  377. package/src/branded-types/block_number.ts +117 -0
  378. package/src/branded-types/checkpoint_number.ts +115 -0
  379. package/src/branded-types/epoch.ts +88 -0
  380. package/src/branded-types/index.ts +7 -0
  381. package/src/branded-types/index_within_checkpoint.ts +88 -0
  382. package/src/branded-types/slot.ts +88 -0
  383. package/src/branded-types/types.ts +2 -0
  384. package/src/buffer/buffer16.ts +2 -2
  385. package/src/buffer/buffer32.ts +2 -2
  386. package/src/collection/array.ts +52 -0
  387. package/src/config/env_var.ts +50 -13
  388. package/src/config/index.ts +39 -6
  389. package/src/config/network_config.ts +2 -0
  390. package/src/config/parse-env.ts +4 -0
  391. package/src/crypto/aes128/index.ts +2 -2
  392. package/src/crypto/bls/bn254_keystore.ts +1 -1
  393. package/src/crypto/bls/index.ts +1 -1
  394. package/src/crypto/bn254/index.ts +50 -156
  395. package/src/crypto/ecdsa/index.ts +4 -4
  396. package/src/crypto/ecdsa/signature.ts +2 -2
  397. package/src/crypto/grumpkin/index.ts +8 -6
  398. package/src/crypto/keys/index.ts +2 -2
  399. package/src/crypto/pedersen/pedersen.wasm.ts +4 -4
  400. package/src/crypto/poseidon/index.ts +5 -15
  401. package/src/crypto/random/randomness_singleton.ts +6 -4
  402. package/src/crypto/schnorr/index.ts +5 -4
  403. package/src/crypto/schnorr/signature.ts +2 -2
  404. package/src/crypto/secp256k1/index.ts +3 -3
  405. package/src/crypto/sha256/index.ts +1 -1
  406. package/src/crypto/sha512/index.ts +1 -1
  407. package/src/crypto/signature/index.ts +1 -1
  408. package/src/crypto/sync/index.ts +1 -1
  409. package/src/crypto/sync/pedersen/index.ts +1 -1
  410. package/src/crypto/sync/poseidon/index.ts +1 -10
  411. package/src/{fields/bls12_fields.ts → curves/bls12/field.ts} +6 -6
  412. package/src/curves/bls12/index.ts +2 -0
  413. package/src/{fields/bls12_point.ts → curves/bls12/point.ts} +7 -7
  414. package/src/{fields/fields.ts → curves/bn254/field.ts} +49 -56
  415. package/src/curves/bn254/index.ts +2 -0
  416. package/src/curves/bn254/point.ts +170 -0
  417. package/src/curves/grumpkin/index.ts +11 -0
  418. package/src/{fields → curves/grumpkin}/point.ts +26 -7
  419. package/src/eth-address/index.ts +27 -2
  420. package/src/iterator/filter.ts +11 -0
  421. package/src/iterator/index.ts +1 -0
  422. package/src/jest/setup.mjs +4 -1
  423. package/src/json-rpc/client/undici.ts +21 -3
  424. package/src/json-rpc/server/safe_json_rpc_server.ts +1 -1
  425. package/src/log/libp2p_logger.ts +12 -5
  426. package/src/log/pino-logger-server.ts +25 -0
  427. package/src/log/pino-logger.ts +138 -37
  428. package/src/queue/semaphore.ts +5 -0
  429. package/src/retry/index.ts +18 -0
  430. package/src/schemas/schemas.ts +24 -13
  431. package/src/schemas/types.ts +33 -0
  432. package/src/schemas/utils.ts +21 -8
  433. package/src/serialize/buffer_reader.ts +21 -9
  434. package/src/serialize/field_reader.ts +1 -1
  435. package/src/serialize/free_funcs.ts +1 -1
  436. package/src/serialize/serialize.ts +1 -1
  437. package/src/sleep/index.ts +6 -0
  438. package/src/testing/files/index.ts +1 -1
  439. package/src/timer/date.ts +4 -0
  440. package/src/trees/balanced_merkle_tree_root.ts +68 -0
  441. package/src/trees/hasher.ts +9 -0
  442. package/src/trees/index.ts +3 -2
  443. package/src/trees/indexed_merkle_tree.ts +1 -1
  444. package/src/trees/membership_witness.ts +9 -1
  445. package/src/trees/merkle_tree_calculator.ts +2 -35
  446. package/src/trees/sibling_path.ts +3 -3
  447. package/src/trees/unbalanced_merkle_tree_calculator.ts +32 -50
  448. package/src/trees/unbalanced_merkle_tree_root.ts +115 -0
  449. package/src/trees/unbalanced_tree_store.ts +57 -2
  450. package/src/types/index.ts +6 -1
  451. package/dest/crypto/bn254/bn254_utils.d.ts +0 -39
  452. package/dest/crypto/bn254/bn254_utils.d.ts.map +0 -1
  453. package/dest/crypto/bn254/bn254_utils.js +0 -56
  454. package/dest/crypto/index.d.ts +0 -17
  455. package/dest/crypto/index.d.ts.map +0 -1
  456. package/dest/crypto/index.js +0 -16
  457. package/dest/fields/bls12_fields.d.ts.map +0 -1
  458. package/dest/fields/bls12_point.d.ts.map +0 -1
  459. package/dest/fields/coordinate.d.ts +0 -66
  460. package/dest/fields/coordinate.d.ts.map +0 -1
  461. package/dest/fields/coordinate.js +0 -96
  462. package/dest/fields/fields.d.ts.map +0 -1
  463. package/dest/fields/index.d.ts +0 -6
  464. package/dest/fields/index.d.ts.map +0 -1
  465. package/dest/fields/index.js +0 -5
  466. package/dest/fields/point.d.ts.map +0 -1
  467. package/dest/index.d.ts +0 -30
  468. package/dest/index.d.ts.map +0 -1
  469. package/dest/index.js +0 -30
  470. package/dest/json-rpc/server/telemetry.d.ts +0 -2
  471. package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
  472. package/dest/json-rpc/server/telemetry.js +0 -0
  473. package/dest/trees/unbalanced_merkle_tree.d.ts +0 -28
  474. package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
  475. package/dest/trees/unbalanced_merkle_tree.js +0 -99
  476. package/src/crypto/bn254/bn254_utils.ts +0 -64
  477. package/src/crypto/index.ts +0 -16
  478. package/src/fields/coordinate.ts +0 -104
  479. package/src/fields/index.ts +0 -5
  480. package/src/index.ts +0 -30
  481. package/src/json-rpc/server/telemetry.ts +0 -0
  482. package/src/trees/unbalanced_merkle_tree.ts +0 -111
@@ -1,111 +0,0 @@
1
- import { sha256Trunc } from '../crypto/sha256/index.js';
2
- import { MerkleTreeCalculator } from './merkle_tree_calculator.js';
3
-
4
- /**
5
- * Computes the Merkle root of an unbalanced tree.
6
- *
7
- * Unlike a balanced Merkle tree, which requires the number of leaves to be a power of two, an unbalanced tree can have
8
- * any number of leaves.
9
- *
10
- * The tree is constructed by iteratively extracting the smallest power-of-two-sized subtrees from **right to left**.
11
- * For each such subtree, it computes the subtree root and then combines all subtree roots (again from right to left)
12
- * into a single root using the provided hash function.
13
- *
14
- * Note: We need the final tree to be as shallow as possible, to minimize the size of the sibling path required to prove
15
- * membership of a leaf. Therefor, the computation proceeds from right to left - smaller subtrees must always be
16
- * combined before being merged with a larger sibling on their left.
17
- *
18
- * For example, consider an unbalanced tree made of three subtrees of sizes 2, 4, and 8. If we combine the size-2 and
19
- * size-4 subtrees first (producing a subtree of depth 3), and then merge it with the size-8 subtree (also depth 3), the
20
- * resulting tree has a maximum depth of 4.
21
- *
22
- * But if we instead combine the size-4 and size-8 subtrees first (depth 4), and then merge with the size-2 subtree
23
- * (depth 1), the final tree has a depth of 5.
24
- */
25
- export function computeUnbalancedMerkleTreeRoot(leaves: Buffer[], hasher = sha256Trunc): Buffer {
26
- if (!leaves.length) {
27
- throw new Error('Cannot compute a Merkle root with no leaves');
28
- }
29
-
30
- if (leaves.length === 1) {
31
- return leaves[0];
32
- }
33
-
34
- let numRemainingLeaves = leaves.length;
35
- let subtreeSize = 1;
36
- let root: Buffer | undefined;
37
- while (numRemainingLeaves > 1) {
38
- if ((numRemainingLeaves & subtreeSize) !== 0) {
39
- const subtreeLeaves = leaves.slice(numRemainingLeaves - subtreeSize, numRemainingLeaves);
40
- const subtreeRoot = MerkleTreeCalculator.computeTreeRootSync(subtreeLeaves, hasher);
41
- if (!root) {
42
- root = subtreeRoot;
43
- } else {
44
- root = hasher(Buffer.concat([subtreeRoot, root]));
45
- }
46
-
47
- numRemainingLeaves -= subtreeSize;
48
- }
49
-
50
- subtreeSize *= 2;
51
- }
52
-
53
- return root!;
54
- }
55
-
56
- /// Get the depth of the maximum balanced tree that can be created with the given number of leaves. The subtree will be
57
- /// the left most subtree of the wonky tree with a total of `numLeaves` leaves.
58
- ///
59
- /// Note: All the leaves may not be used to form the tree. For example, if there are 5 leaves, the maximum depth is 2,
60
- /// only 4 leaves are used to form a balanced tree.
61
- function getMaxBalancedSubtreeDepth(numLeaves: number) {
62
- return Math.floor(Math.log2(numLeaves));
63
- }
64
-
65
- /// Get the maximum depth of an unbalanced tree that can be created with the given number of leaves.
66
- function getMaxUnbalancedTreeDepth(numLeaves: number) {
67
- return Math.ceil(Math.log2(numLeaves));
68
- }
69
-
70
- function findPosition(
71
- rootLevel: number,
72
- leafLevel: number,
73
- numLeaves: number,
74
- indexOffset: number,
75
- targetIndex: number,
76
- ): { level: number; indexAtLevel: number } {
77
- if (numLeaves <= 1) {
78
- // Single leaf.
79
- return { level: rootLevel, indexAtLevel: indexOffset };
80
- }
81
-
82
- // The largest balanced tree that can be created with the given number of leaves.
83
- const maxBalancedTreeDepth = getMaxBalancedSubtreeDepth(numLeaves);
84
- const numBalancedLeaves = 2 ** maxBalancedTreeDepth;
85
- const numRemainingLeaves = numLeaves - numBalancedLeaves;
86
-
87
- if (targetIndex < numBalancedLeaves) {
88
- // Target is in the balanced tree.
89
-
90
- // - If numRemainingLeaves is 0: this balanced tree is grown from the current root.
91
- // - If numRemainingLeaves is not 0: the remaining leaves will form another tree, which will become the right child of the root.
92
- // And the balanced tree will be the left child of the root.
93
- // There will be an extra level between the root of the balanced tree and the current root.
94
- const extraLevel = numRemainingLeaves ? 1 : 0;
95
-
96
- return { level: rootLevel + maxBalancedTreeDepth + extraLevel, indexAtLevel: indexOffset + targetIndex };
97
- } else {
98
- // Target is in the right branch.
99
- const rightBranchMaxLevel = getMaxUnbalancedTreeDepth(numRemainingLeaves);
100
- const shiftedUp = leafLevel - rootLevel - rightBranchMaxLevel - 1;
101
- const nextLeafLevel = leafLevel - shiftedUp;
102
- const newIndexOffset = (indexOffset + numBalancedLeaves) >> shiftedUp;
103
- const shiftedTargetIndex = targetIndex - numBalancedLeaves;
104
- return findPosition(rootLevel + 1, nextLeafLevel, numRemainingLeaves, newIndexOffset, shiftedTargetIndex);
105
- }
106
- }
107
-
108
- export function findLeafLevelAndIndex(numLeaves: number, leafIndex: number) {
109
- const maxLevel = getMaxUnbalancedTreeDepth(numLeaves);
110
- return findPosition(0, maxLevel, numLeaves, 0, leafIndex);
111
- }