@aztec/foundation 0.0.1-commit.fff30aa → 0.0.1-dev

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.
@@ -76,6 +76,14 @@ export declare function arraySerializedSizeOfNonEmpty(arr: (({
76
76
  * @returns A new array.
77
77
  */
78
78
  export declare function unique<T>(arr: T[]): T[];
79
+ /**
80
+ * Removes duplicates from the given array using a key function. The first occurrence of each key is kept.
81
+ * @param arr - The array.
82
+ * @param keyFn - A function that returns a primitive key for each element. Elements with the same key are
83
+ * considered duplicates.
84
+ * @returns A new array.
85
+ */
86
+ export declare function uniqueBy<T, K extends string | number | bigint>(arr: T[], keyFn: (item: T) => K): T[];
79
87
  /**
80
88
  * Removes all undefined elements from the array.
81
89
  * @param arr - The array.
@@ -124,4 +132,4 @@ export declare function chunkBy<T, U>(items: T[], fn: (item: T) => U): T[][];
124
132
  export declare function partition<T>(items: T[], predicate: (item: T) => boolean): [T[], T[]];
125
133
  /** Partitions the given iterable into two arrays based on the predicate. */
126
134
  export declare function partitionAsync<T>(items: T[], predicate: (item: T) => Promise<boolean>): Promise<[T[], T[]]>;
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb2xsZWN0aW9uL2FycmF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRW5EOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsTUFBTSxFQUM3QyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQ1IsSUFBSSxFQUFFLENBQUMsRUFDUCxNQUFNLEVBQUUsQ0FBQyxFQUNULFFBQVEsU0FBcUMsR0FDNUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FNYjtBQUVELDhFQUE4RTtBQUM5RSx3QkFBZ0IscUJBQXFCLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FHckY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FNNUY7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssT0FBTyxHQUFHLE9BQU8sQ0FPaEY7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLG1CQUFtQixDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxPQUFPLEdBQUcsTUFBTSxDQUV0RjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FFN0Q7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFzQixVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBTTFGO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBc0IsV0FBVyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBRzlGO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBc0IsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQU83RjtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsNkJBQTZCLENBQzNDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFBRSxNQUFNLEVBQUUsTUFBTSxPQUFPLENBQUE7Q0FBRSxHQUFHO0lBQUUsT0FBTyxFQUFFLE1BQU0sT0FBTyxDQUFBO0NBQUUsQ0FBQyxHQUFHO0lBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFBO0NBQUUsQ0FBQyxFQUFFLFVBTS9GO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFnQixNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FFdkM7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBRTNEO0FBRUQ7O0dBRUc7QUFDSCx3QkFBZ0IsY0FBYyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxPQUFpQyxHQUFHLE9BQU8sQ0FVaEg7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQixLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FFL0U7QUFFRCwyQ0FBMkM7QUFDM0Msd0JBQWdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUV6QztBQUVELG1GQUFtRjtBQUNuRix3QkFBZ0IsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLEdBQUcsU0FBUyxDQUFDO0FBQzFELGtGQUFrRjtBQUNsRix3QkFBZ0IsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLEdBQUcsU0FBUyxDQUFDO0FBbUIxRCxxRkFBcUY7QUFDckYsd0JBQWdCLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLHNCQUtwQztBQUVELG1HQUFtRztBQUNuRyx3QkFBZ0IsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsc0JBT3hDO0FBRUQsNkdBQTZHO0FBQzdHLHdCQUFnQixNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxzQkFLdEM7QUFFRCx1RkFBdUY7QUFDdkYsd0JBQWdCLFVBQVUsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssT0FBTyxHQUFHLE1BQU0sQ0FVbkY7QUFFRCxxSEFBcUg7QUFDckgsd0JBQWdCLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FTN0Q7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLGVBQWUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FjdkU7QUFJRDs7O0dBR0c7QUFDSCx3QkFBZ0IsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBdUJuRTtBQUVELDRFQUE0RTtBQUM1RSx3QkFBZ0IsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxPQUFPLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQVdwRjtBQUVELDRFQUE0RTtBQUM1RSx3QkFBc0IsY0FBYyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQVdqSCJ9
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb2xsZWN0aW9uL2FycmF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRW5EOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsTUFBTSxFQUM3QyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQ1IsSUFBSSxFQUFFLENBQUMsRUFDUCxNQUFNLEVBQUUsQ0FBQyxFQUNULFFBQVEsU0FBcUMsR0FDNUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FNYjtBQUVELDhFQUE4RTtBQUM5RSx3QkFBZ0IscUJBQXFCLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FHckY7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FNNUY7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLFlBQVksQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssT0FBTyxHQUFHLE9BQU8sQ0FPaEY7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLG1CQUFtQixDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxPQUFPLEdBQUcsTUFBTSxD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
@@ -1 +1 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../src/collection/array.ts"],"names":[],"mappings":"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"}
@@ -110,6 +110,24 @@
110
110
  ...new Set(arr)
111
111
  ];
112
112
  }
113
+ /**
114
+ * Removes duplicates from the given array using a key function. The first occurrence of each key is kept.
115
+ * @param arr - The array.
116
+ * @param keyFn - A function that returns a primitive key for each element. Elements with the same key are
117
+ * considered duplicates.
118
+ * @returns A new array.
119
+ */ export function uniqueBy(arr, keyFn) {
120
+ const seen = new Set();
121
+ const result = [];
122
+ for (const item of arr){
123
+ const key = keyFn(item);
124
+ if (!seen.has(key)) {
125
+ seen.add(key);
126
+ result.push(item);
127
+ }
128
+ }
129
+ return result;
130
+ }
113
131
  /**
114
132
  * Removes all undefined elements from the array.
115
133
  * @param arr - The array.
@@ -1,2 +1,2 @@
1
- export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_DEBUG' | 'AZTEC_ADMIN_API_KEY_HASH' | 'AZTEC_DISABLE_ADMIN_API_KEY' | 'AZTEC_RESET_ADMIN_API_KEY' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_ARCHIVE_API_URL' | 'BLOB_FILE_STORE_URLS' | 'BLOB_FILE_STORE_UPLOAD_URL' | 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_MIN_FEE_PADDING' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_MODE' | 'BOT_L2_TO_L1_MESSAGES_PER_TX' | 'BOT_L1_TO_L2_SEED_COUNT' | 'BOT_L1_TO_L2_SEED_INTERVAL' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'ENABLE_PROVER_NODE' | 'ETHEREUM_HOSTS' | 'ETHEREUM_DEBUG_HOSTS' | 'ETHEREUM_ALLOW_NO_DEBUG_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'ETHEREUM_HTTP_TIMEOUT_MS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_NO_COLOR_PER_ACTOR' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'USE_GCLOUD_LOGGING' | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT' | 'OTEL_EXPORTER_OTLP_LOGS_ENDPOINT' | 'OTEL_COLLECT_INTERVAL_MS' | 'OTEL_EXCLUDE_METRICS' | 'OTEL_INCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BATCH_TX_REQUESTER_SMART_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_DUMB_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_TX_BATCH_SIZE' | 'P2P_BATCH_TX_REQUESTER_BAD_PEER_THRESHOLD' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_SLOT_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | 'P2P_GOSSIPSUB_D' | 'P2P_GOSSIPSUB_DHI' | 'P2P_GOSSIPSUB_DLO' | 'P2P_GOSSIPSUB_DLAZY' | 'P2P_GOSSIPSUB_FLOOD_PUBLISH' | 'P2P_GOSSIPSUB_INTERVAL_MS' | 'P2P_GOSSIPSUB_MCACHE_GOSSIP' | 'P2P_GOSSIPSUB_MCACHE_LENGTH' | 'P2P_GOSSIPSUB_SEEN_TTL' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT' | 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT' | 'P2P_L2_QUEUE_SIZE' | 'P2P_MAX_PEERS' | 'P2P_PEER_CHECK_INTERVAL_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_PENDING_TX_COUNT' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'P2P_MIN_TX_POOL_AGE_MS' | 'P2P_RPC_PRICE_BUMP_PERCENTAGE' | 'DEBUG_P2P_INSTRUMENT_MESSAGES' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | 'PROVER_AGENT_COUNT' | 'PROVER_AGENT_PROOF_TYPES' | 'PROVER_AGENT_POLL_INTERVAL_MS' | 'PROVER_BROKER_HOST' | 'PROVER_BROKER_JOB_TIMEOUT_MS' | 'PROVER_BROKER_POLL_INTERVAL_MS' | 'PROVER_BROKER_JOB_MAX_RETRIES' | 'PROVER_BROKER_BATCH_INTERVAL_MS' | 'PROVER_BROKER_BATCH_SIZE' | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR' | 'PROVER_BROKER_DEBUG_REPLAY_ENABLED' | 'PROVER_CANCEL_JOBS_ON_STOP' | 'PROVER_ENQUEUE_CONCURRENCY' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_PROOF_STORE' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_PUBLISHER_FORWARDER_ADDRESS' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PROVER_TEST_VERIFICATION_DELAY_MS' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'PXE_SYNC_CHAIN_TIP' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'RPC_SIMULATE_PUBLIC_MAX_DEBUG_LOG_MEMORY_READS' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MAX_TX_PER_CHECKPOINT' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER' | 'SEQ_REDISTRIBUTE_CHECKPOINT_BUDGET' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_PUBLISHER_FORWARDER_ADDRESS' | 'SEQ_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_BLOCK_DURATION_MS' | 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT' | 'SEQ_BUILD_CHECKPOINT_IF_EMPTY' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SEQ_SKIP_CHECKPOINT_PUBLISH_PERCENT' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_DUPLICATE_PROPOSAL_PENALTY' | 'SLASH_DUPLICATE_ATTESTATION_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'PREFUND_ADDRESSES' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_COLLECTION_MISSING_TXS_COLLECTOR_TYPE' | 'TX_COLLECTION_FILE_STORE_URLS' | 'TX_COLLECTION_FILE_STORE_SLOW_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_SLOW_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_MAX_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_MAX_MS' | 'TX_FILE_STORE_URL' | 'TX_FILE_STORE_UPLOAD_CONCURRENCY' | 'TX_FILE_STORE_MAX_QUEUE_SIZE' | 'TX_FILE_STORE_ENABLED' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_MAX_DA_BLOCK_GAS' | 'VALIDATOR_MAX_L2_BLOCK_GAS' | 'VALIDATOR_MAX_TX_PER_BLOCK' | 'VALIDATOR_MAX_TX_PER_CHECKPOINT' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_CHECKPOINTS' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET' | 'AZTEC_LAG_IN_EPOCHS_FOR_RANDAO' | 'AZTEC_INBOX_LAG' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_INITIAL_ETH_PER_FEE_ASSET' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_GOVERNANCE_VOTING_DURATION' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_FEE_PER_GAS_GWEI_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_BLOB_FEE_PER_GAS_GWEI_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_MINIMUM_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_FIXED_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_TX_MONITOR_MAX_ATTEMPTS' | 'L1_TX_MONITOR_CHECK_INTERVAL_MS' | 'L1_TX_MONITOR_STALL_TIME_MS' | 'L1_TX_MONITOR_TX_TIMEOUT_MS' | 'L1_TX_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'ENABLE_VERSION_CHECK' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'WEB3_SIGNER_URL' | 'SKIP_ARCHIVER_INITIAL_SYNC' | 'BLOB_ALLOW_EMPTY_SOURCES' | 'FISHERMAN_MODE' | 'MAX_ALLOWED_ETH_CLIENT_DRIFT_SECONDS' | 'LEGACY_BLS_CLI' | 'DEBUG_FORCE_TX_PROOF_VERIFICATION' | 'VALIDATOR_HA_SIGNING_ENABLED' | 'VALIDATOR_HA_NODE_ID' | 'VALIDATOR_HA_POLLING_INTERVAL_MS' | 'VALIDATOR_HA_SIGNING_TIMEOUT_MS' | 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS' | 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H' | 'VALIDATOR_HA_DATABASE_URL' | 'VALIDATOR_HA_RUN_MIGRATIONS' | 'VALIDATOR_HA_POOL_MAX' | 'VALIDATOR_HA_POOL_MIN' | 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS' | 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS';
1
+ export type EnvVar = 'REGISTRY_CONTRACT_ADDRESS' | 'FEE_ASSET_HANDLER_CONTRACT_ADDRESS' | 'SLASH_FACTORY_CONTRACT_ADDRESS' | 'ACVM_BINARY_PATH' | 'ACVM_WORKING_DIRECTORY' | 'API_KEY' | 'API_PREFIX' | 'ARCHIVER_MAX_LOGS' | 'ARCHIVER_POLLING_INTERVAL_MS' | 'ARCHIVER_URL' | 'ARCHIVER_VIEM_POLLING_INTERVAL_MS' | 'ARCHIVER_BATCH_SIZE' | 'AZTEC_ADMIN_PORT' | 'AZTEC_NODE_DEBUG' | 'AZTEC_ADMIN_API_KEY_HASH' | 'AZTEC_DISABLE_ADMIN_API_KEY' | 'AZTEC_RESET_ADMIN_API_KEY' | 'AZTEC_NODE_ADMIN_URL' | 'AZTEC_NODE_URL' | 'AZTEC_PORT' | 'BB_BINARY_PATH' | 'BB_SKIP_CLEANUP' | 'BB_WORKING_DIRECTORY' | 'BB_NUM_IVC_VERIFIERS' | 'BB_IVC_CONCURRENCY' | 'BOOTSTRAP_NODES' | 'BLOB_ARCHIVE_API_URL' | 'BLOB_FILE_STORE_URLS' | 'BLOB_FILE_STORE_UPLOAD_URL' | 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES' | 'BOT_DA_GAS_LIMIT' | 'BOT_FEE_PAYMENT_METHOD' | 'BOT_MIN_FEE_PADDING' | 'BOT_FLUSH_SETUP_TRANSACTIONS' | 'BOT_FOLLOW_CHAIN' | 'BOT_L2_GAS_LIMIT' | 'BOT_MAX_PENDING_TXS' | 'BOT_NO_START' | 'BOT_L1_MNEMONIC' | 'BOT_L1_PRIVATE_KEY' | 'BOT_L1_TO_L2_TIMEOUT_SECONDS' | 'BOT_PRIVATE_KEY' | 'BOT_ACCOUNT_SALT' | 'BOT_PRIVATE_TRANSFERS_PER_TX' | 'BOT_PUBLIC_TRANSFERS_PER_TX' | 'BOT_RECIPIENT_ENCRYPTION_SECRET' | 'BOT_TOKEN_CONTRACT' | 'BOT_TOKEN_SALT' | 'BOT_TX_INTERVAL_SECONDS' | 'BOT_TX_MINED_WAIT_SECONDS' | 'BOT_MAX_CONSECUTIVE_ERRORS' | 'BOT_STOP_WHEN_UNHEALTHY' | 'BOT_MODE' | 'BOT_L2_TO_L1_MESSAGES_PER_TX' | 'BOT_L1_TO_L2_SEED_COUNT' | 'BOT_L1_TO_L2_SEED_INTERVAL' | 'COINBASE' | 'CRS_PATH' | 'DATA_DIRECTORY' | 'DATA_STORE_MAP_SIZE_KB' | 'ARCHIVER_STORE_MAP_SIZE_KB' | 'BLOB_SINK_MAP_SIZE_KB' | 'P2P_STORE_MAP_SIZE_KB' | 'PROVER_BROKER_STORE_MAP_SIZE_KB' | 'WS_DB_MAP_SIZE_KB' | 'ARCHIVE_TREE_MAP_SIZE_KB' | 'NULLIFIER_TREE_MAP_SIZE_KB' | 'NOTE_HASH_TREE_MAP_SIZE_KB' | 'MESSAGE_TREE_MAP_SIZE_KB' | 'PUBLIC_DATA_TREE_MAP_SIZE_KB' | 'DEBUG' | 'DEBUG_P2P_DISABLE_COLOCATION_PENALTY' | 'ENABLE_PROVER_NODE' | 'ETHEREUM_HOSTS' | 'ETHEREUM_DEBUG_HOSTS' | 'ETHEREUM_ALLOW_NO_DEBUG_HOSTS' | 'FEE_RECIPIENT' | 'FORCE_COLOR' | 'GOVERNANCE_PROPOSER_PAYLOAD_ADDRESS' | 'KEY_STORE_DIRECTORY' | 'L1_CHAIN_ID' | 'L1_CONSENSUS_HOST_URLS' | 'ETHEREUM_HTTP_TIMEOUT_MS' | 'L1_CONSENSUS_HOST_API_KEYS' | 'L1_CONSENSUS_HOST_API_KEY_HEADERS' | 'LOG_JSON' | 'LOG_MULTILINE' | 'LOG_NO_COLOR_PER_ACTOR' | 'LOG_LEVEL' | 'MNEMONIC' | 'NETWORK' | 'NETWORK_CONFIG_LOCATION' | 'USE_GCLOUD_LOGGING' | 'OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'OTEL_EXPORTER_OTLP_TRACES_ENDPOINT' | 'OTEL_EXPORTER_OTLP_LOGS_ENDPOINT' | 'OTEL_COLLECT_INTERVAL_MS' | 'OTEL_EXCLUDE_METRICS' | 'OTEL_INCLUDE_METRICS' | 'OTEL_EXPORT_TIMEOUT_MS' | 'PUBLIC_OTEL_EXPORTER_OTLP_METRICS_ENDPOINT' | 'PUBLIC_OTEL_INCLUDE_METRICS' | 'PUBLIC_OTEL_COLLECT_FROM' | 'PUBLIC_OTEL_OPT_OUT' | 'P2P_BATCH_TX_REQUESTER_SMART_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_DUMB_PARALLEL_WORKER_COUNT' | 'P2P_BATCH_TX_REQUESTER_TX_BATCH_SIZE' | 'P2P_BATCH_TX_REQUESTER_BAD_PEER_THRESHOLD' | 'P2P_BLOCK_CHECK_INTERVAL_MS' | 'P2P_SLOT_CHECK_INTERVAL_MS' | 'P2P_BLOCK_REQUEST_BATCH_SIZE' | 'P2P_BOOTSTRAP_NODE_ENR_VERSION_CHECK' | 'P2P_BOOTSTRAP_NODES_AS_FULL_PEERS' | 'P2P_ENABLED' | 'P2P_DISCOVERY_DISABLED' | 'P2P_GOSSIPSUB_D' | 'P2P_GOSSIPSUB_DHI' | 'P2P_GOSSIPSUB_DLO' | 'P2P_GOSSIPSUB_DLAZY' | 'P2P_GOSSIPSUB_FLOOD_PUBLISH' | 'P2P_GOSSIPSUB_INTERVAL_MS' | 'P2P_GOSSIPSUB_MCACHE_GOSSIP' | 'P2P_GOSSIPSUB_MCACHE_LENGTH' | 'P2P_GOSSIPSUB_SEEN_TTL' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_DECAY' | 'P2P_GOSSIPSUB_TX_INVALID_MESSAGE_DELIVERIES_WEIGHT' | 'P2P_GOSSIPSUB_TX_TOPIC_WEIGHT' | 'P2P_L2_QUEUE_SIZE' | 'P2P_MAX_PEERS' | 'P2P_PEER_CHECK_INTERVAL_MS' | 'P2P_PEER_PENALTY_VALUES' | 'P2P_QUERY_FOR_IP' | 'P2P_REQRESP_INDIVIDUAL_REQUEST_TIMEOUT_MS' | 'P2P_REQRESP_DIAL_TIMEOUT_MS' | 'P2P_REQRESP_OVERALL_REQUEST_TIMEOUT_MS' | 'P2P_DISABLE_STATUS_HANDSHAKE' | 'P2P_ALLOW_ONLY_VALIDATORS' | 'P2P_MAX_AUTH_FAILED_ATTEMPTS_ALLOWED' | 'P2P_REQRESP_OPTIMISTIC_NEGOTIATION' | 'P2P_DOUBLE_SPEND_SEVERE_PEER_PENALTY_WINDOW' | 'P2P_LISTEN_ADDR' | 'P2P_PORT' | 'P2P_BROADCAST_PORT' | 'P2P_IP' | 'P2P_ARCHIVED_TX_LIMIT' | 'P2P_TRUSTED_PEERS' | 'P2P_PRIVATE_PEERS' | 'P2P_PREFERRED_PEERS' | 'P2P_MAX_PENDING_TX_COUNT' | 'P2P_SEEN_MSG_CACHE_SIZE' | 'P2P_DROP_TX' | 'P2P_DROP_TX_CHANCE' | 'P2P_TX_POOL_DELETE_TXS_AFTER_REORG' | 'P2P_MIN_TX_POOL_AGE_MS' | 'P2P_RPC_PRICE_BUMP_PERCENTAGE' | 'DEBUG_P2P_INSTRUMENT_MESSAGES' | 'PEER_ID_PRIVATE_KEY' | 'PEER_ID_PRIVATE_KEY_PATH' | 'PROVER_AGENT_COUNT' | 'PROVER_AGENT_PROOF_TYPES' | 'PROVER_AGENT_POLL_INTERVAL_MS' | 'PROVER_BROKER_HOST' | 'PROVER_BROKER_JOB_TIMEOUT_MS' | 'PROVER_BROKER_POLL_INTERVAL_MS' | 'PROVER_BROKER_JOB_MAX_RETRIES' | 'PROVER_BROKER_BATCH_INTERVAL_MS' | 'PROVER_BROKER_BATCH_SIZE' | 'PROVER_BROKER_MAX_EPOCHS_TO_KEEP_RESULTS_FOR' | 'PROVER_BROKER_DEBUG_REPLAY_ENABLED' | 'PROVER_CANCEL_JOBS_ON_STOP' | 'PROVER_ENQUEUE_CONCURRENCY' | 'PROVER_COORDINATION_NODE_URLS' | 'PROVER_PROOF_STORE' | 'PROVER_FAILED_PROOF_STORE' | 'PROVER_NODE_FAILED_EPOCH_STORE' | 'PROVER_NODE_DISABLE_PROOF_PUBLISH' | 'PROVER_ID' | 'PROVER_NODE_POLLING_INTERVAL_MS' | 'PROVER_NODE_MAX_PENDING_JOBS' | 'PROVER_NODE_MAX_PARALLEL_BLOCKS_PER_EPOCH' | 'PROVER_NODE_TX_GATHERING_INTERVAL_MS' | 'PROVER_NODE_TX_GATHERING_BATCH_SIZE' | 'PROVER_NODE_TX_GATHERING_MAX_PARALLEL_REQUESTS_PER_NODE' | 'PROVER_NODE_TX_GATHERING_TIMEOUT_MS' | 'PROVER_PUBLISHER_PRIVATE_KEY' | 'PROVER_PUBLISHER_PRIVATE_KEYS' | 'PROVER_PUBLISHER_ADDRESSES' | 'PROVER_PUBLISHER_ALLOW_INVALID_STATES' | 'PROVER_PUBLISHER_FORWARDER_ADDRESS' | 'PROVER_REAL_PROOFS' | 'PROVER_TEST_DELAY_FACTOR' | 'PROVER_TEST_DELAY_MS' | 'PROVER_TEST_DELAY_TYPE' | 'PROVER_TEST_VERIFICATION_DELAY_MS' | 'PXE_L2_BLOCK_BATCH_SIZE' | 'PXE_PROVER_ENABLED' | 'PXE_SYNC_CHAIN_TIP' | 'RPC_MAX_BATCH_SIZE' | 'RPC_MAX_BODY_SIZE' | 'RPC_SIMULATE_PUBLIC_MAX_GAS_LIMIT' | 'RPC_SIMULATE_PUBLIC_MAX_DEBUG_LOG_MEMORY_READS' | 'SENTINEL_ENABLED' | 'SENTINEL_HISTORY_LENGTH_IN_EPOCHS' | 'SENTINEL_HISTORIC_PROVEN_PERFORMANCE_LENGTH_IN_EPOCHS' | 'SEQ_MAX_TX_PER_BLOCK' | 'SEQ_MAX_TX_PER_CHECKPOINT' | 'SEQ_MIN_TX_PER_BLOCK' | 'SEQ_PUBLISH_TXS_WITH_PROPOSALS' | 'SEQ_MAX_DA_BLOCK_GAS' | 'SEQ_MAX_L2_BLOCK_GAS' | 'SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER' | 'SEQ_REDISTRIBUTE_CHECKPOINT_BUDGET' | 'SEQ_PUBLISHER_PRIVATE_KEY' | 'SEQ_PUBLISHER_PRIVATE_KEYS' | 'SEQ_PUBLISHER_ADDRESSES' | 'SEQ_PUBLISHER_ALLOW_INVALID_STATES' | 'SEQ_PUBLISHER_FORWARDER_ADDRESS' | 'SEQ_POLLING_INTERVAL_MS' | 'SEQ_ENFORCE_TIME_TABLE' | 'SEQ_L1_PUBLISHING_TIME_ALLOWANCE_IN_SLOT' | 'SEQ_ATTESTATION_PROPAGATION_TIME' | 'SEQ_BLOCK_DURATION_MS' | 'SEQ_EXPECTED_BLOCK_PROPOSALS_PER_SLOT' | 'SEQ_BUILD_CHECKPOINT_IF_EMPTY' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_COMMITTEE_MEMBER' | 'SEQ_SECONDS_BEFORE_INVALIDATING_BLOCK_AS_NON_COMMITTEE_MEMBER' | 'SEQ_SKIP_CHECKPOINT_PUBLISH_PERCENT' | 'SLASH_MIN_PENALTY_PERCENTAGE' | 'SLASH_MAX_PENALTY_PERCENTAGE' | 'SLASH_VALIDATORS_ALWAYS' | 'SLASH_VALIDATORS_NEVER' | 'SLASH_PRUNE_PENALTY' | 'SLASH_DATA_WITHHOLDING_PENALTY' | 'SLASH_INACTIVITY_PENALTY' | 'SLASH_INACTIVITY_TARGET_PERCENTAGE' | 'SLASH_INACTIVITY_CONSECUTIVE_EPOCH_THRESHOLD' | 'SLASH_INVALID_BLOCK_PENALTY' | 'SLASH_DUPLICATE_PROPOSAL_PENALTY' | 'SLASH_DUPLICATE_ATTESTATION_PENALTY' | 'SLASH_OVERRIDE_PAYLOAD' | 'SLASH_PROPOSE_INVALID_ATTESTATIONS_PENALTY' | 'SLASH_ATTEST_DESCENDANT_OF_INVALID_PENALTY' | 'SLASH_UNKNOWN_PENALTY' | 'SLASH_GRACE_PERIOD_L2_SLOTS' | 'SLASH_OFFENSE_EXPIRATION_ROUNDS' | 'SLASH_MAX_PAYLOAD_SIZE' | 'SLASH_EXECUTE_ROUNDS_LOOK_BACK' | 'SYNC_MODE' | 'SYNC_SNAPSHOTS_URLS' | 'SYNC_SNAPSHOTS_URL' | 'TELEMETRY' | 'TEST_ACCOUNTS' | 'SPONSORED_FPC' | 'PREFUND_ADDRESSES' | 'TX_COLLECTION_FAST_NODES_TIMEOUT_BEFORE_REQ_RESP_MS' | 'TX_COLLECTION_SLOW_NODES_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_INTERVAL_MS' | 'TX_COLLECTION_SLOW_REQ_RESP_TIMEOUT_MS' | 'TX_COLLECTION_RECONCILE_INTERVAL_MS' | 'TX_COLLECTION_DISABLE_SLOW_DURING_FAST_REQUESTS' | 'TX_COLLECTION_FAST_NODE_INTERVAL_MS' | 'TX_COLLECTION_FAST_MAX_PARALLEL_REQUESTS_PER_NODE' | 'TX_COLLECTION_NODE_RPC_MAX_BATCH_SIZE' | 'TX_COLLECTION_NODE_RPC_URLS' | 'TX_COLLECTION_MISSING_TXS_COLLECTOR_TYPE' | 'TX_COLLECTION_FILE_STORE_URLS' | 'TX_COLLECTION_FILE_STORE_SLOW_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_DELAY_MS' | 'TX_COLLECTION_FILE_STORE_FAST_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_SLOW_WORKER_COUNT' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_BASE_MS' | 'TX_COLLECTION_FILE_STORE_FAST_BACKOFF_MAX_MS' | 'TX_COLLECTION_FILE_STORE_SLOW_BACKOFF_MAX_MS' | 'TX_FILE_STORE_URL' | 'TX_FILE_STORE_UPLOAD_CONCURRENCY' | 'TX_FILE_STORE_MAX_QUEUE_SIZE' | 'TX_FILE_STORE_ENABLED' | 'TX_PUBLIC_SETUP_ALLOWLIST' | 'TXE_PORT' | 'TRANSACTIONS_DISABLED' | 'VALIDATOR_ATTESTATIONS_POLLING_INTERVAL_MS' | 'VALIDATOR_DISABLED' | 'VALIDATOR_MAX_DA_BLOCK_GAS' | 'VALIDATOR_MAX_L2_BLOCK_GAS' | 'VALIDATOR_MAX_TX_PER_BLOCK' | 'VALIDATOR_MAX_TX_PER_CHECKPOINT' | 'VALIDATOR_PRIVATE_KEYS' | 'VALIDATOR_PRIVATE_KEY' | 'VALIDATOR_REEXECUTE' | 'VALIDATOR_ADDRESSES' | 'ROLLUP_VERSION' | 'WS_BLOCK_CHECK_INTERVAL_MS' | 'WS_BLOCK_REQUEST_BATCH_SIZE' | 'L1_READER_VIEM_POLLING_INTERVAL_MS' | 'WS_DATA_DIRECTORY' | 'WS_NUM_HISTORIC_CHECKPOINTS' | 'WS_NUM_HISTORIC_BLOCKS' | 'ETHEREUM_SLOT_DURATION' | 'AZTEC_SLOT_DURATION' | 'AZTEC_EPOCH_DURATION' | 'AZTEC_TARGET_COMMITTEE_SIZE' | 'AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET' | 'AZTEC_LAG_IN_EPOCHS_FOR_RANDAO' | 'AZTEC_INBOX_LAG' | 'AZTEC_PROOF_SUBMISSION_EPOCHS' | 'AZTEC_ACTIVATION_THRESHOLD' | 'AZTEC_EJECTION_THRESHOLD' | 'AZTEC_LOCAL_EJECTION_THRESHOLD' | 'AZTEC_MANA_TARGET' | 'AZTEC_PROVING_COST_PER_MANA' | 'AZTEC_INITIAL_ETH_PER_FEE_ASSET' | 'AZTEC_SLASHING_QUORUM' | 'AZTEC_SLASHING_ROUND_SIZE_IN_EPOCHS' | 'AZTEC_SLASHING_LIFETIME_IN_ROUNDS' | 'AZTEC_SLASHING_EXECUTION_DELAY_IN_ROUNDS' | 'AZTEC_SLASHING_VETOER' | 'AZTEC_SLASHING_OFFSET_IN_ROUNDS' | 'AZTEC_SLASHING_DISABLE_DURATION' | 'AZTEC_SLASH_AMOUNT_SMALL' | 'AZTEC_SLASH_AMOUNT_MEDIUM' | 'AZTEC_SLASH_AMOUNT_LARGE' | 'AZTEC_SLASHER_FLAVOR' | 'AZTEC_GOVERNANCE_PROPOSER_QUORUM' | 'AZTEC_GOVERNANCE_PROPOSER_ROUND_SIZE' | 'AZTEC_GOVERNANCE_VOTING_DURATION' | 'AZTEC_EXIT_DELAY_SECONDS' | 'L1_GAS_LIMIT_BUFFER_PERCENTAGE' | 'L1_GAS_PRICE_MAX' | 'L1_FEE_PER_GAS_GWEI_MAX' | 'L1_BLOB_FEE_PER_GAS_MAX' | 'L1_BLOB_FEE_PER_GAS_GWEI_MAX' | 'L1_PRIORITY_FEE_BUMP_PERCENTAGE' | 'L1_PRIORITY_FEE_RETRY_BUMP_PERCENTAGE' | 'L1_MINIMUM_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_FIXED_PRIORITY_FEE_PER_GAS' | 'L1_FIXED_PRIORITY_FEE_PER_GAS_GWEI' | 'L1_TX_MONITOR_MAX_ATTEMPTS' | 'L1_TX_MONITOR_CHECK_INTERVAL_MS' | 'L1_TX_MONITOR_STALL_TIME_MS' | 'L1_TX_MONITOR_TX_TIMEOUT_MS' | 'L1_TX_MONITOR_CANCEL_TX_ON_TIMEOUT' | 'L1_TX_MONITOR_TX_CANCELLATION_TIMEOUT_MS' | 'L1_TX_MONITOR_TX_UNSEEN_CONSIDERED_DROPPED_MS' | 'FAUCET_MNEMONIC_ADDRESS_INDEX' | 'FAUCET_ETH_AMOUNT' | 'FAUCET_INTERVAL_MS' | 'FAUCET_L1_ASSETS' | 'K8S_POD_NAME' | 'K8S_POD_UID' | 'K8S_NAMESPACE_NAME' | 'ENABLE_AUTO_SHUTDOWN' | 'VALIDATOR_REEXECUTE_DEADLINE_MS' | 'WEB3_SIGNER_URL' | 'SKIP_ARCHIVER_INITIAL_SYNC' | 'BLOB_ALLOW_EMPTY_SOURCES' | 'FISHERMAN_MODE' | 'MAX_ALLOWED_ETH_CLIENT_DRIFT_SECONDS' | 'LEGACY_BLS_CLI' | 'DEBUG_FORCE_TX_PROOF_VERIFICATION' | 'VALIDATOR_HA_SIGNING_ENABLED' | 'VALIDATOR_HA_NODE_ID' | 'VALIDATOR_HA_POLLING_INTERVAL_MS' | 'VALIDATOR_HA_SIGNING_TIMEOUT_MS' | 'VALIDATOR_HA_MAX_STUCK_DUTIES_AGE_MS' | 'VALIDATOR_HA_OLD_DUTIES_MAX_AGE_H' | 'VALIDATOR_HA_DATABASE_URL' | 'VALIDATOR_HA_RUN_MIGRATIONS' | 'VALIDATOR_HA_POOL_MAX' | 'VALIDATOR_HA_POOL_MIN' | 'VALIDATOR_HA_POOL_IDLE_TIMEOUT_MS' | 'VALIDATOR_HA_POOL_CONNECTION_TIMEOUT_MS';
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52X3Zhci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9lbnZfdmFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sTUFBTSxNQUFNLEdBQ2QsMkJBQTJCLEdBQzNCLG9DQUFvQyxHQUNwQyxnQ0FBZ0MsR0FDaEMsa0JBQWtCLEdBQ2xCLHdCQUF3QixHQUN4QixTQUFTLEdBQ1QsWUFBWSxHQUNaLG1CQUFtQixHQUNuQiw4QkFBOEIsR0FDOUIsY0FBYyxHQUNkLG1DQUFtQyxHQUNuQyxxQkFBcUIsR0FDckIsa0JBQWtCLEdBQ2xCLGtCQUFrQixHQUNsQiwwQkFBMEIsR0FDMUIsNkJBQTZCLEdBQzdCLDJCQUEyQixHQUMzQixzQkFBc0IsR0FDdEIsZ0JBQWdCLEdBQ2hCLFlBQVksR0FDWixnQkFBZ0IsR0FDaEIsaUJBQWlCLEdBQ2pCLHNCQUFzQixHQUN0QixzQkFBc0IsR0FDdEIsb0JBQW9CLEdBQ3BCLGlCQUFpQixHQUNqQixzQkFBc0IsR0FDdEIsc0JBQXNCLEdBQ3RCLDRCQUE0QixHQUM1QiwwQ0FBMEMsR0FDMUMsa0JBQWtCLEdBQ2xCLHdCQUF3QixHQUN4QixxQkFBcUIsR0FDckIsOEJBQThCLEdBQzlCLGtCQUFrQixHQUNsQixrQkFBa0IsR0FDbEIscUJBQXFCLEdBQ3JCLGNBQWMsR0FDZCxpQkFBaUIsR0FDakIsb0JBQW9CLEdBQ3BCLDhCQUE4QixHQUM5QixpQkFBaUIsR0FDakIsa0JBQWtCLEdBQ2xCLDhCQUE4QixHQUM5Qiw2QkFBNkIsR0FDN0IsaUNBQWlDLEdBQ2pDLG9CQUFvQixHQUNwQixnQkFBZ0IsR0FDaEIseUJBQXlCLEdBQ3pCLDJCQUEyQixHQUMzQiw0QkFBNEIsR0FDNUIseUJBQXlCLEdBQ3pCLFVBQVUsR0FDViw4QkFBOEIsR0FDOUIseUJBQXlCLEdBQ3pCLDRCQUE0QixHQUM1QixVQUFVLEdBQ1YsVUFBVSxHQUNWLGdCQUFnQixHQUNoQix3QkFBd0IsR0FDeEIsNEJB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/foundation",
3
- "version": "0.0.1-commit.fff30aa",
3
+ "version": "0.0.1-dev",
4
4
  "type": "module",
5
5
  "main": "./dest/index.js",
6
6
  "types": "./dest/index.d.ts",
@@ -144,7 +144,7 @@
144
144
  "testEnvironment": "../../foundation/src/jest/env.mjs"
145
145
  },
146
146
  "dependencies": {
147
- "@aztec/bb.js": "0.0.1-commit.fff30aa",
147
+ "@aztec/bb.js": "0.0.1-dev",
148
148
  "@koa/cors": "^5.0.0",
149
149
  "@noble/curves": "=1.7.0",
150
150
  "@noble/hashes": "^1.6.1",
@@ -138,6 +138,26 @@ export function unique<T>(arr: T[]): T[] {
138
138
  return [...new Set(arr)];
139
139
  }
140
140
 
141
+ /**
142
+ * Removes duplicates from the given array using a key function. The first occurrence of each key is kept.
143
+ * @param arr - The array.
144
+ * @param keyFn - A function that returns a primitive key for each element. Elements with the same key are
145
+ * considered duplicates.
146
+ * @returns A new array.
147
+ */
148
+ export function uniqueBy<T, K extends string | number | bigint>(arr: T[], keyFn: (item: T) => K): T[] {
149
+ const seen = new Set<K>();
150
+ const result: T[] = [];
151
+ for (const item of arr) {
152
+ const key = keyFn(item);
153
+ if (!seen.has(key)) {
154
+ seen.add(key);
155
+ result.push(item);
156
+ }
157
+ }
158
+ return result;
159
+ }
160
+
141
161
  /**
142
162
  * Removes all undefined elements from the array.
143
163
  * @param arr - The array.
@@ -350,7 +350,7 @@ export type EnvVar =
350
350
  | 'K8S_POD_NAME'
351
351
  | 'K8S_POD_UID'
352
352
  | 'K8S_NAMESPACE_NAME'
353
- | 'ENABLE_VERSION_CHECK'
353
+ | 'ENABLE_AUTO_SHUTDOWN'
354
354
  | 'VALIDATOR_REEXECUTE_DEADLINE_MS'
355
355
  | 'WEB3_SIGNER_URL'
356
356
  | 'SKIP_ARCHIVER_INITIAL_SYNC'