UNPKG

lisk-framework

Version:

Lisk blockchain application platform

27 lines (26 loc) 1.05 kB
import { Block, Chain } from '@liskhq/lisk-chain'; import { BaseSynchronizer } from './base_synchronizer'; import { BlockExecutor } from './type'; import { Logger } from '../../../logger'; import { Network } from '../../network'; interface BlockSynchronizationMechanismInput { readonly logger: Logger; readonly chain: Chain; readonly blockExecutor: BlockExecutor; readonly network: Network; } export declare class BlockSynchronizationMechanism extends BaseSynchronizer { private readonly blockExecutor; constructor({ logger, chain, blockExecutor, network: networkModule, }: BlockSynchronizationMechanismInput); run(receivedBlock: Block): Promise<void>; isValidFor(): Promise<boolean>; private _requestAndApplyBlocksWithinIDs; private _handleBlockProcessingError; private _requestAndApplyBlocksToCurrentChain; private _revertToLastCommonBlock; private _requestLastCommonBlock; private _requestAndValidateLastBlock; private _blockDetachedStatus; private _computeBestPeer; } export {};