import { Duration, DurationSDKType } from "../../google/protobuf/duration"; import { BinaryReader, BinaryWriter } from "../../binary"; export declare const protobufPackage = "tendermint.types"; /** * ConsensusParams contains consensus critical parameters that determine the * validity of blocks. */ export interface ConsensusParams { block: BlockParams | undefined; evidence: EvidenceParams | undefined; validator: ValidatorParams | undefined; version: VersionParams | undefined; } /** * ConsensusParams contains consensus critical parameters that determine the * validity of blocks. */ export interface ConsensusParamsSDKType { block: BlockParamsSDKType | undefined; evidence: EvidenceParamsSDKType | undefined; validator: ValidatorParamsSDKType | undefined; version: VersionParamsSDKType | undefined; } /** BlockParams contains limits on the block size. */ export interface BlockParams { /** * Max block size, in bytes. * Note: must be greater than 0 */ maxBytes: bigint; /** * Max gas per block. * Note: must be greater or equal to -1 */ maxGas: bigint; /** * Minimum time increment between consecutive blocks (in milliseconds) If the * block header timestamp is ahead of the system clock, decrease this value. * * Not exposed to the application. */ timeIotaMs: bigint; } /** BlockParams contains limits on the block size. */ export interface BlockParamsSDKType { max_bytes: bigint; max_gas: bigint; time_iota_ms: bigint; } /** EvidenceParams determine how we handle evidence of malfeasance. */ export interface EvidenceParams { /** * Max age of evidence, in blocks. * * The basic formula for calculating this is: MaxAgeDuration / {average block * time}. */ maxAgeNumBlocks: bigint; /** * Max age of evidence, in time. * * It should correspond with an app's "unbonding period" or other similar * mechanism for handling [Nothing-At-Stake * attacks](https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed). */ maxAgeDuration: Duration | undefined; /** * This sets the maximum size of total evidence in bytes that can be committed in a single block. * and should fall comfortably under the max block bytes. * Default is 1048576 or 1MB */ maxBytes: bigint; } /** EvidenceParams determine how we handle evidence of malfeasance. */ export interface EvidenceParamsSDKType { max_age_num_blocks: bigint; max_age_duration: DurationSDKType | undefined; max_bytes: bigint; } /** * ValidatorParams restrict the public key types validators can use. * NOTE: uses ABCI pubkey naming, not Amino names. */ export interface ValidatorParams { pubKeyTypes: string[]; } /** * ValidatorParams restrict the public key types validators can use. * NOTE: uses ABCI pubkey naming, not Amino names. */ export interface ValidatorParamsSDKType { pub_key_types: string[]; } /** VersionParams contains the ABCI application version. */ export interface VersionParams { appVersion: bigint; } /** VersionParams contains the ABCI application version. */ export interface VersionParamsSDKType { app_version: bigint; } /** * HashedParams is a subset of ConsensusParams. * * It is hashed into the Header.ConsensusHash. */ export interface HashedParams { blockMaxBytes: bigint; blockMaxGas: bigint; } /** * HashedParams is a subset of ConsensusParams. * * It is hashed into the Header.ConsensusHash. */ export interface HashedParamsSDKType { block_max_bytes: bigint; block_max_gas: bigint; } export declare const ConsensusParams: { typeUrl: string; encode(message: ConsensusParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ConsensusParams; fromJSON(object: any): ConsensusParams; toJSON(message: ConsensusParams): unknown; fromPartial & { block?: BlockParams & { maxBytes: bigint; maxGas: bigint; timeIotaMs: bigint; } & Record, never>; evidence?: EvidenceParams & { maxAgeNumBlocks: bigint; maxAgeDuration: Duration & { seconds: bigint; nanos: number; } & Record, never>; maxBytes: bigint; } & Record, never>; validator?: ValidatorParams & { pubKeyTypes: string[] & Record, never>; } & Record, never>; version?: VersionParams & { appVersion: bigint; } & Record, never>; } & Record, never>>(object: I): ConsensusParams; }; export declare const BlockParams: { typeUrl: string; encode(message: BlockParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): BlockParams; fromJSON(object: any): BlockParams; toJSON(message: BlockParams): unknown; fromPartial & { maxBytes?: bigint; maxGas?: bigint; timeIotaMs?: bigint; } & Record, never>>(object: I): BlockParams; }; export declare const EvidenceParams: { typeUrl: string; encode(message: EvidenceParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): EvidenceParams; fromJSON(object: any): EvidenceParams; toJSON(message: EvidenceParams): unknown; fromPartial & { maxAgeNumBlocks?: bigint; maxAgeDuration?: Duration & { seconds: bigint; nanos: number; } & Record, never>; maxBytes?: bigint; } & Record, never>>(object: I): EvidenceParams; }; export declare const ValidatorParams: { typeUrl: string; encode(message: ValidatorParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorParams; fromJSON(object: any): ValidatorParams; toJSON(message: ValidatorParams): unknown; fromPartial & { pubKeyTypes?: string[] & Record, never>; } & Record, never>>(object: I): ValidatorParams; }; export declare const VersionParams: { typeUrl: string; encode(message: VersionParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): VersionParams; fromJSON(object: any): VersionParams; toJSON(message: VersionParams): unknown; fromPartial & { appVersion?: bigint; } & Record, never>>(object: I): VersionParams; }; export declare const HashedParams: { typeUrl: string; encode(message: HashedParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): HashedParams; fromJSON(object: any): HashedParams; toJSON(message: HashedParams): unknown; fromPartial & { blockMaxBytes?: bigint; blockMaxGas?: bigint; } & Record, never>>(object: I): HashedParams; };