import { BinaryReader, BinaryWriter } from "../../binary.js"; import { DeepPartial } from "../../helpers.js"; import { Validator, ValidatorAmino } from "./validator.js"; import { LightBlock, LightBlockAmino, Vote, VoteAmino } from "./types.js"; //#region src/tendermint/types/evidence.d.ts /** * @name Evidence * @package tendermint.types * @see proto type: tendermint.types.Evidence */ interface Evidence { duplicateVoteEvidence?: DuplicateVoteEvidence; lightClientAttackEvidence?: LightClientAttackEvidence; } interface EvidenceProtoMsg { typeUrl: "/tendermint.types.Evidence"; value: Uint8Array; } /** * @name EvidenceAmino * @package tendermint.types * @see proto type: tendermint.types.Evidence */ interface EvidenceAmino { duplicate_vote_evidence?: DuplicateVoteEvidenceAmino; light_client_attack_evidence?: LightClientAttackEvidenceAmino; } interface EvidenceAminoMsg { type: "/tendermint.types.Evidence"; value: EvidenceAmino; } /** * DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. * @name DuplicateVoteEvidence * @package tendermint.types * @see proto type: tendermint.types.DuplicateVoteEvidence */ interface DuplicateVoteEvidence { voteA?: Vote; voteB?: Vote; totalVotingPower: bigint; validatorPower: bigint; timestamp: Date; } interface DuplicateVoteEvidenceProtoMsg { typeUrl: "/tendermint.types.DuplicateVoteEvidence"; value: Uint8Array; } /** * DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. * @name DuplicateVoteEvidenceAmino * @package tendermint.types * @see proto type: tendermint.types.DuplicateVoteEvidence */ interface DuplicateVoteEvidenceAmino { vote_a?: VoteAmino; vote_b?: VoteAmino; total_voting_power: string; validator_power: string; timestamp: string; } interface DuplicateVoteEvidenceAminoMsg { type: "/tendermint.types.DuplicateVoteEvidence"; value: DuplicateVoteEvidenceAmino; } /** * LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. * @name LightClientAttackEvidence * @package tendermint.types * @see proto type: tendermint.types.LightClientAttackEvidence */ interface LightClientAttackEvidence { conflictingBlock?: LightBlock; commonHeight: bigint; byzantineValidators: Validator[]; totalVotingPower: bigint; timestamp: Date; } interface LightClientAttackEvidenceProtoMsg { typeUrl: "/tendermint.types.LightClientAttackEvidence"; value: Uint8Array; } /** * LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. * @name LightClientAttackEvidenceAmino * @package tendermint.types * @see proto type: tendermint.types.LightClientAttackEvidence */ interface LightClientAttackEvidenceAmino { conflicting_block?: LightBlockAmino; common_height: string; byzantine_validators: ValidatorAmino[]; total_voting_power: string; timestamp: string; } interface LightClientAttackEvidenceAminoMsg { type: "/tendermint.types.LightClientAttackEvidence"; value: LightClientAttackEvidenceAmino; } /** * @name EvidenceList * @package tendermint.types * @see proto type: tendermint.types.EvidenceList */ interface EvidenceList { evidence: Evidence[]; } interface EvidenceListProtoMsg { typeUrl: "/tendermint.types.EvidenceList"; value: Uint8Array; } /** * @name EvidenceListAmino * @package tendermint.types * @see proto type: tendermint.types.EvidenceList */ interface EvidenceListAmino { evidence: EvidenceAmino[]; } interface EvidenceListAminoMsg { type: "/tendermint.types.EvidenceList"; value: EvidenceListAmino; } /** * @name Evidence * @package tendermint.types * @see proto type: tendermint.types.Evidence */ declare const Evidence: { typeUrl: string; is(o: any): o is Evidence; isAmino(o: any): o is EvidenceAmino; encode(message: Evidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Evidence; fromPartial(object: DeepPartial): Evidence; fromAmino(object: EvidenceAmino): Evidence; toAmino(message: Evidence): EvidenceAmino; fromAminoMsg(object: EvidenceAminoMsg): Evidence; fromProtoMsg(message: EvidenceProtoMsg): Evidence; toProto(message: Evidence): Uint8Array; toProtoMsg(message: Evidence): EvidenceProtoMsg; registerTypeUrl(): void; }; /** * DuplicateVoteEvidence contains evidence of a validator signed two conflicting votes. * @name DuplicateVoteEvidence * @package tendermint.types * @see proto type: tendermint.types.DuplicateVoteEvidence */ declare const DuplicateVoteEvidence: { typeUrl: string; is(o: any): o is DuplicateVoteEvidence; isAmino(o: any): o is DuplicateVoteEvidenceAmino; encode(message: DuplicateVoteEvidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): DuplicateVoteEvidence; fromPartial(object: DeepPartial): DuplicateVoteEvidence; fromAmino(object: DuplicateVoteEvidenceAmino): DuplicateVoteEvidence; toAmino(message: DuplicateVoteEvidence): DuplicateVoteEvidenceAmino; fromAminoMsg(object: DuplicateVoteEvidenceAminoMsg): DuplicateVoteEvidence; fromProtoMsg(message: DuplicateVoteEvidenceProtoMsg): DuplicateVoteEvidence; toProto(message: DuplicateVoteEvidence): Uint8Array; toProtoMsg(message: DuplicateVoteEvidence): DuplicateVoteEvidenceProtoMsg; registerTypeUrl(): void; }; /** * LightClientAttackEvidence contains evidence of a set of validators attempting to mislead a light client. * @name LightClientAttackEvidence * @package tendermint.types * @see proto type: tendermint.types.LightClientAttackEvidence */ declare const LightClientAttackEvidence: { typeUrl: string; is(o: any): o is LightClientAttackEvidence; isAmino(o: any): o is LightClientAttackEvidenceAmino; encode(message: LightClientAttackEvidence, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): LightClientAttackEvidence; fromPartial(object: DeepPartial): LightClientAttackEvidence; fromAmino(object: LightClientAttackEvidenceAmino): LightClientAttackEvidence; toAmino(message: LightClientAttackEvidence): LightClientAttackEvidenceAmino; fromAminoMsg(object: LightClientAttackEvidenceAminoMsg): LightClientAttackEvidence; fromProtoMsg(message: LightClientAttackEvidenceProtoMsg): LightClientAttackEvidence; toProto(message: LightClientAttackEvidence): Uint8Array; toProtoMsg(message: LightClientAttackEvidence): LightClientAttackEvidenceProtoMsg; registerTypeUrl(): void; }; /** * @name EvidenceList * @package tendermint.types * @see proto type: tendermint.types.EvidenceList */ declare const EvidenceList: { typeUrl: string; is(o: any): o is EvidenceList; isAmino(o: any): o is EvidenceListAmino; encode(message: EvidenceList, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): EvidenceList; fromPartial(object: DeepPartial): EvidenceList; fromAmino(object: EvidenceListAmino): EvidenceList; toAmino(message: EvidenceList): EvidenceListAmino; fromAminoMsg(object: EvidenceListAminoMsg): EvidenceList; fromProtoMsg(message: EvidenceListProtoMsg): EvidenceList; toProto(message: EvidenceList): Uint8Array; toProtoMsg(message: EvidenceList): EvidenceListProtoMsg; registerTypeUrl(): void; }; //#endregion export { DuplicateVoteEvidence, DuplicateVoteEvidenceAmino, DuplicateVoteEvidenceAminoMsg, DuplicateVoteEvidenceProtoMsg, Evidence, EvidenceAmino, EvidenceAminoMsg, EvidenceList, EvidenceListAmino, EvidenceListAminoMsg, EvidenceListProtoMsg, EvidenceProtoMsg, LightClientAttackEvidence, LightClientAttackEvidenceAmino, LightClientAttackEvidenceAminoMsg, LightClientAttackEvidenceProtoMsg };