lisk-framework
Version:
Lisk blockchain application platform
33 lines (32 loc) • 1.47 kB
TypeScript
/// <reference types="node" />
import { BlockHeader, StateStore } from '@liskhq/lisk-chain';
import { AggregateCommit } from '../types';
import { CommitPoolConfig, SingleCommit, ValidatorInfo } from './types';
export declare class CommitPool {
private readonly _nonGossipedCommits;
private readonly _nonGossipedCommitsLocal;
private readonly _gossipedCommits;
private readonly _blockTime;
private readonly _bftMethod;
private readonly _minCertifyHeight;
private readonly _chain;
private readonly _network;
private readonly _db;
private _jobIntervalID;
private readonly _metrics;
constructor(config: CommitPoolConfig);
start(): void;
stop(): void;
addCommit(commit: SingleCommit, local?: boolean): void;
validateCommit(methodContext: StateStore, commit: SingleCommit): Promise<boolean>;
getCommitsByHeight(height: number): SingleCommit[];
createSingleCommit(blockHeader: BlockHeader, validatorInfo: ValidatorInfo, chainID: Buffer): SingleCommit;
verifyAggregateCommit(stateStore: StateStore, aggregateCommit: AggregateCommit): Promise<boolean>;
getAggregateCommit(methodContext: StateStore): Promise<AggregateCommit>;
aggregateSingleCommits(methodContext: StateStore, singleCommits: SingleCommit[]): Promise<AggregateCommit>;
getMaxRemovalHeight(): Promise<number>;
private _selectAggregateCommit;
private _job;
private _getDeleteHeights;
private _getAllCommits;
}