UNPKG

lisk-framework

Version:

Lisk blockchain application platform

215 lines (214 loc) 6.07 kB
/// <reference types="node" /> import { Validator } from '../../abi'; export interface BFTParameters { prevoteThreshold: bigint; precommitThreshold: bigint; certificateThreshold: bigint; validators: Validator[]; validatorsHash: Buffer; } export declare const bftParametersSchema: { $id: string; type: string; required: string[]; properties: { prevoteThreshold: { dataType: string; fieldNumber: number; }; precommitThreshold: { dataType: string; fieldNumber: number; }; certificateThreshold: { dataType: string; fieldNumber: number; }; validators: { type: string; fieldNumber: number; items: { type: string; required: string[]; properties: { address: { dataType: string; format: string; fieldNumber: number; }; bftWeight: { dataType: string; fieldNumber: number; }; generatorKey: { dataType: string; fieldNumber: number; minLength: number; maxLength: number; }; blsKey: { dataType: string; fieldNumber: number; minLength: number; maxLength: number; }; }; }; }; validatorsHash: { dataType: string; fieldNumber: number; }; }; }; export interface BFTVotesBlockInfo { height: number; generatorAddress: Buffer; maxHeightGenerated: number; maxHeightPrevoted: number; prevoteWeight: bigint; precommitWeight: bigint; } export interface BFTVotesActiveValidatorsVoteInfo { address: Buffer; minActiveHeight: number; largestHeightPrecommit: number; } export interface BFTVotes { maxHeightPrevoted: number; maxHeightPrecommitted: number; maxHeightCertified: number; blockBFTInfos: BFTVotesBlockInfo[]; activeValidatorsVoteInfo: BFTVotesActiveValidatorsVoteInfo[]; } export declare const bftVotesSchema: { $id: string; type: string; required: string[]; properties: { maxHeightPrevoted: { dataType: string; fieldNumber: number; }; maxHeightPrecommitted: { dataType: string; fieldNumber: number; }; maxHeightCertified: { dataType: string; fieldNumber: number; }; blockBFTInfos: { type: string; fieldNumber: number; items: { type: string; required: string[]; properties: { height: { dataType: string; fieldNumber: number; }; generatorAddress: { dataType: string; fieldNumber: number; }; maxHeightGenerated: { dataType: string; fieldNumber: number; }; maxHeightPrevoted: { dataType: string; fieldNumber: number; }; prevoteWeight: { dataType: string; fieldNumber: number; }; precommitWeight: { dataType: string; fieldNumber: number; }; }; }; }; activeValidatorsVoteInfo: { type: string; fieldNumber: number; items: { type: string; required: string[]; properties: { address: { dataType: string; fieldNumber: number; }; minActiveHeight: { dataType: string; fieldNumber: number; }; largestHeightPrecommit: { dataType: string; fieldNumber: number; }; }; }; }; }; }; export interface ValidatorsHashInfo { blsKey: Buffer; bftWeight: bigint; } export interface ValidatorsHashInput { activeValidators: ValidatorsHashInfo[]; certificateThreshold: bigint; } export declare const validatorsHashInputSchema: { $id: string; type: string; required: string[]; properties: { activeValidators: { type: string; fieldNumber: number; items: { type: string; required: string[]; properties: { blsKey: { dataType: string; fieldNumber: number; }; bftWeight: { dataType: string; fieldNumber: number; }; }; }; }; certificateThreshold: { dataType: string; fieldNumber: number; }; }; }; export interface AreHeadersContradictingRequest { header1: string; header2: string; } export declare const areHeadersContradictingRequestSchema: { $id: string; type: string; required: string[]; properties: { header1: { type: string; format: string; }; header2: { type: string; format: string; }; }; };