///
import { BlockHeader, StateStore } from '@liskhq/lisk-chain';
import { BFTParameters } from './schemas';
import { BFTHeights } from './types';
import { Validator } from '../../abi';
export interface BlockHeaderAsset {
maxHeightPrevoted: number;
maxHeightPreviouslyForged: number;
}
export declare class BFTMethod {
private _batchSize;
private _blockTime;
blockTime(): number;
init(batchSize: number, blockTime: number): void;
areHeadersContradicting(bftHeader1: BlockHeader, bftHeader2: BlockHeader): boolean;
isHeaderContradictingChain(stateStore: StateStore, header: BlockHeader): Promise;
existBFTParameters(stateStore: StateStore, height: number): Promise;
getBFTParameters(stateStore: StateStore, height: number): Promise;
getBFTParametersActiveValidators(stateStore: StateStore, height: number): Promise;
getBFTHeights(stateStore: StateStore): Promise;
impliesMaximalPrevotes(stateStore: StateStore, header: {
height: number;
generatorAddress: Buffer;
maxHeightGenerated: number;
}): Promise;
getNextHeightBFTParameters(stateStore: StateStore, height: number): Promise;
setBFTParameters(stateStore: StateStore, precommitThreshold: bigint, certificateThreshold: bigint, validators: Validator[]): Promise;
getGeneratorAtTimestamp(stateStore: StateStore, height: number, timestamp: number): Promise;
getSlotNumber(timestamp: number): number;
getSlotTime(slot: number): number;
isWithinTimeslot(slot: number, timestamp: number): boolean;
}