@lodestar/beacon-node
Version:
A Typescript implementation of the beacon chain
82 lines • 3.53 kB
TypeScript
import { DEFAULT_ARCHIVE_MODE } from "./archiveStore/constants.js";
import { ArchiveMode, ArchiveStoreOpts } from "./archiveStore/interface.js";
import { ForkChoiceOpts } from "./forkChoice/index.js";
import { LightClientServerOpts } from "./lightClient/index.js";
import { ShufflingCacheOpts } from "./shufflingCache.js";
import { FIFOBlockStateCacheOpts } from "./stateCache/fifoBlockStateCache.js";
import { PersistentCheckpointStateCacheOpts } from "./stateCache/persistentCheckpointsCache.js";
import { ValidatorMonitorOpts } from "./validatorMonitor.js";
export { ArchiveMode, DEFAULT_ARCHIVE_MODE };
export type IChainOptions = BlockProcessOpts & PoolOpts & SeenCacheOpts & ForkChoiceOpts & ArchiveStoreOpts & FIFOBlockStateCacheOpts & PersistentCheckpointStateCacheOpts & ShufflingCacheOpts & ValidatorMonitorOpts & LightClientServerOpts & {
blsVerifyAllMainThread?: boolean;
blsVerifyAllMultiThread?: boolean;
blacklistedBlocks?: string[];
persistProducedBlocks?: boolean;
persistInvalidSszObjects?: boolean;
persistInvalidSszObjectsDir?: string;
persistOrphanedBlocks?: boolean;
persistOrphanedBlocksDir?: string;
skipCreateStateCacheIfAvailable?: boolean;
suggestedFeeRecipient: string;
maxSkipSlots?: number;
/** Ensure blobs returned by the execution engine are valid */
sanityCheckExecutionEngineBlobs?: boolean;
/** Max number of produced blobs by local validators to cache */
maxCachedBlobSidecars?: number;
/** Max number of produced block roots (blinded or full) cached for broadcast validations */
maxCachedProducedRoots?: number;
broadcastValidationStrictness?: string;
minSameMessageSignatureSetsToBatch: number;
archiveBlobEpochs?: number;
nHistoricalStates?: boolean;
nHistoricalStatesFileDataStore?: boolean;
};
export type BlockProcessOpts = {
/**
* Do not use BLS batch verify to validate all block signatures at once.
* Will double processing times. Use only for debugging purposes.
*/
disableBlsBatchVerify?: boolean;
/**
* Override SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY
*/
safeSlotsToImportOptimistically?: number;
/**
* Assert progressive balances the same to EpochTransitionCache
*/
assertCorrectProgressiveBalances?: boolean;
/** Used for fork_choice spec tests */
disableOnBlockError?: boolean;
/** Used for fork_choice spec tests */
disablePrepareNextSlot?: boolean;
/**
* Used to connect beacon in follow mode to an EL,
* will still issue fcU for block proposal
*/
disableImportExecutionFcU?: boolean;
emitPayloadAttributes?: boolean;
/**
* Used to specify to specify to run verifications only and not
* to save the block or log transitions for e.g. doing
* broadcastValidation while publishing the block
*/
verifyOnly?: boolean;
/** Used to specify to skip execution payload validation */
skipVerifyExecutionPayload?: boolean;
/** Used to specify to skip block signatures validation */
skipVerifyBlockSignatures?: boolean;
};
export type PoolOpts = {
/**
* Only preaggregate attestation/sync committee message since clockSlot - preaggregateSlotDistance
*/
preaggregateSlotDistance?: number;
};
export type SeenCacheOpts = {
/**
* Slot distance from current slot to cache AttestationData
*/
attDataCacheSlotDistance?: number;
};
export declare const defaultChainOptions: IChainOptions;
//# sourceMappingURL=options.d.ts.map