lisk-framework
Version:
Lisk blockchain application platform
26 lines (25 loc) • 892 B
TypeScript
import { Chain, Block } from '@liskhq/lisk-chain';
import { BaseSynchronizer } from './base_synchronizer';
import { Logger } from '../../../logger';
import { BlockExecutor } from './type';
interface SynchronizerInput {
readonly logger: Logger;
readonly chainModule: Chain;
readonly blockExecutor: BlockExecutor;
readonly mechanisms: BaseSynchronizer[];
}
export declare class Synchronizer {
protected logger: Logger;
private readonly chainModule;
private readonly _mutex;
private readonly blockExecutor;
private readonly mechanisms;
constructor({ logger, chainModule, blockExecutor, mechanisms }: SynchronizerInput);
init(): Promise<void>;
run(receivedBlock: Block, peerId: string): Promise<void>;
get isActive(): boolean;
stop(): Promise<void>;
private _determineSyncMechanism;
private _checkMechanismsInterfaces;
}
export {};