Variable $GrandpaEquivocationProofConst
$GrandpaEquivocationProof: $.Shape<{ equivocation: { type: "Prevote"; value: { first: readonly [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; identity: AccountId32Like; roundNumber: bigint; second: readonly [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; }; } | { type: "Precommit"; value: { first: readonly [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; identity: AccountId32Like; roundNumber: bigint; second: readonly [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; }; }; setId: bigint; }, { equivocation: { type: "Prevote"; value: { first: [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; identity: AccountId32; roundNumber: bigint; second: [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; }; } | { type: "Precommit"; value: { first: [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; identity: AccountId32; roundNumber: bigint; second: [{ targetHash: `0x${string}`; targetNumber: number; }, `0x${string}`]; }; }; setId: bigint; }> = ...
Proof of voter misbehavior on a given set id. Misbehavior/equivocation in GRANDPA happens when a voter votes on the same round (either at prevote or precommit stage) for different blocks. Proving is achieved by collecting the signed messages of conflicting votes.