import { Vote, VoteSDKType, LightBlock, LightBlockSDKType } from "./types"; import { Timestamp, TimestampSDKType } from "../../google/protobuf/timestamp"; import { Validator, ValidatorSDKType } from "./validator"; import { BinaryReader, BinaryWriter } from "../../binary"; export declare const protobufPackage = "tendermint.types"; export interface Evidence { duplicateVoteEvidence?: DuplicateVoteEvidence | undefined; lightClientAttackEvidence?: LightClientAttackEvidence | undefined; } export interface EvidenceSDKType { duplicate_vote_evidence?: DuplicateVoteEvidenceSDKType | undefined; light_client_attack_evidence?: LightClientAttackEvidenceSDKType | undefined; } /** DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. */ export interface DuplicateVoteEvidence { voteA?: Vote | undefined; voteB?: Vote | undefined; totalVotingPower: bigint; validatorPower: bigint; timestamp: Timestamp | undefined; } /** DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. */ export interface DuplicateVoteEvidenceSDKType { vote_a?: VoteSDKType | undefined; vote_b?: VoteSDKType | undefined; total_voting_power: bigint; validator_power: bigint; timestamp: TimestampSDKType | undefined; } /** LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. */ export interface LightClientAttackEvidence { conflictingBlock?: LightBlock | undefined; commonHeight: bigint; byzantineValidators: Validator[]; totalVotingPower: bigint; timestamp: Timestamp | undefined; } /** LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. */ export interface LightClientAttackEvidenceSDKType { conflicting_block?: LightBlockSDKType | undefined; common_height: bigint; byzantine_validators: ValidatorSDKType[]; total_voting_power: bigint; timestamp: TimestampSDKType | undefined; } export interface EvidenceList { evidence: Evidence[]; } export interface EvidenceListSDKType { evidence: EvidenceSDKType[]; } export declare const Evidence: { typeUrl: string; encode(message: Evidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Evidence; fromJSON(object: any): Evidence; toJSON(message: Evidence): unknown; fromPartial & { duplicateVoteEvidence?: DuplicateVoteEvidence & { voteA?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; voteB?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; totalVotingPower: bigint; validatorPower: bigint; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>; lightClientAttackEvidence?: LightClientAttackEvidence & { conflictingBlock?: LightBlock & { signedHeader?: import("./types").SignedHeader & { header?: import("./types").Header & { version: import("../version/types").Consensus & { block: bigint; app: bigint; } & Record, never>; chainId: string; height: bigint; time: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; lastBlockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; lastCommitHash: Uint8Array; dataHash: Uint8Array; validatorsHash: Uint8Array; nextValidatorsHash: Uint8Array; consensusHash: Uint8Array; appHash: Uint8Array; lastResultsHash: Uint8Array; evidenceHash: Uint8Array; proposerAddress: Uint8Array; } & Record, never>; commit?: import("./types").Commit & { height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; signatures: import("./types").CommitSig[] & (import("./types").CommitSig & { blockIdFlag: import("./types").BlockIDFlag; validatorAddress: Uint8Array; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; signature: Uint8Array; } & Record, never>)[] & Record, never>; } & Record, never>; } & Record, never>; validatorSet?: import("./validator").ValidatorSet & { validators: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; proposer?: Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>; totalVotingPower: bigint; } & Record, never>; } & Record, never>; commonHeight: bigint; byzantineValidators: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; totalVotingPower: bigint; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>; } & Record, never>>(object: I): Evidence; }; export declare const DuplicateVoteEvidence: { typeUrl: string; encode(message: DuplicateVoteEvidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): DuplicateVoteEvidence; fromJSON(object: any): DuplicateVoteEvidence; toJSON(message: DuplicateVoteEvidence): unknown; fromPartial & { voteA?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; voteB?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; totalVotingPower?: bigint; validatorPower?: bigint; timestamp?: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>>(object: I): DuplicateVoteEvidence; }; export declare const LightClientAttackEvidence: { typeUrl: string; encode(message: LightClientAttackEvidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): LightClientAttackEvidence; fromJSON(object: any): LightClientAttackEvidence; toJSON(message: LightClientAttackEvidence): unknown; fromPartial & { conflictingBlock?: LightBlock & { signedHeader?: import("./types").SignedHeader & { header?: import("./types").Header & { version: import("../version/types").Consensus & { block: bigint; app: bigint; } & Record, never>; chainId: string; height: bigint; time: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; lastBlockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; lastCommitHash: Uint8Array; dataHash: Uint8Array; validatorsHash: Uint8Array; nextValidatorsHash: Uint8Array; consensusHash: Uint8Array; appHash: Uint8Array; lastResultsHash: Uint8Array; evidenceHash: Uint8Array; proposerAddress: Uint8Array; } & Record, never>; commit?: import("./types").Commit & { height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; signatures: import("./types").CommitSig[] & (import("./types").CommitSig & { blockIdFlag: import("./types").BlockIDFlag; validatorAddress: Uint8Array; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; signature: Uint8Array; } & Record, never>)[] & Record, never>; } & Record, never>; } & Record, never>; validatorSet?: import("./validator").ValidatorSet & { validators: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; proposer?: Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>; totalVotingPower: bigint; } & Record, never>; } & Record, never>; commonHeight?: bigint; byzantineValidators?: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; totalVotingPower?: bigint; timestamp?: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>>(object: I): LightClientAttackEvidence; }; export declare const EvidenceList: { typeUrl: string; encode(message: EvidenceList, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): EvidenceList; fromJSON(object: any): EvidenceList; toJSON(message: EvidenceList): unknown; fromPartial & { evidence?: Evidence[] & (Evidence & { duplicateVoteEvidence?: DuplicateVoteEvidence & { voteA?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; voteB?: Vote & { type: import("./types").SignedMsgType; height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; validatorAddress: Uint8Array; validatorIndex: number; signature: Uint8Array; } & Record, never>; totalVotingPower: bigint; validatorPower: bigint; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>; lightClientAttackEvidence?: LightClientAttackEvidence & { conflictingBlock?: LightBlock & { signedHeader?: import("./types").SignedHeader & { header?: import("./types").Header & { version: import("../version/types").Consensus & { block: bigint; app: bigint; } & Record, never>; chainId: string; height: bigint; time: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; lastBlockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; lastCommitHash: Uint8Array; dataHash: Uint8Array; validatorsHash: Uint8Array; nextValidatorsHash: Uint8Array; consensusHash: Uint8Array; appHash: Uint8Array; lastResultsHash: Uint8Array; evidenceHash: Uint8Array; proposerAddress: Uint8Array; } & Record, never>; commit?: import("./types").Commit & { height: bigint; round: number; blockId: import("./types").BlockID & { hash: Uint8Array; partSetHeader: import("./types").PartSetHeader & { total: number; hash: Uint8Array; } & Record, never>; } & Record, never>; signatures: import("./types").CommitSig[] & (import("./types").CommitSig & { blockIdFlag: import("./types").BlockIDFlag; validatorAddress: Uint8Array; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; signature: Uint8Array; } & Record, never>)[] & Record, never>; } & Record, never>; } & Record, never>; validatorSet?: import("./validator").ValidatorSet & { validators: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; proposer?: Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>; totalVotingPower: bigint; } & Record, never>; } & Record, never>; commonHeight: bigint; byzantineValidators: Validator[] & (Validator & { address: Uint8Array; pubKey: import("../crypto/keys").PublicKey & { ed25519?: Uint8Array; secp256k1?: Uint8Array; } & Record, never>; votingPower: bigint; proposerPriority: bigint; } & Record, never>)[] & Record, never>; totalVotingPower: bigint; timestamp: Timestamp & { seconds: bigint; nanos: number; } & Record, never>; } & Record, never>; } & Record, never>)[] & Record, never>; } & Record, never>>(object: I): EvidenceList; };