$DisputeProof: $.Shape<{
    kind: "ForInvalid" | "AgainstValid";
    timeSlot: {
        candidateHash: `0x${string}`;
        sessionIndex: number;
    };
    validatorId: AccountId32Like;
    validatorIndex: number;
}, {
    kind: "ForInvalid" | "AgainstValid";
    timeSlot: {
        candidateHash: `0x${string}`;
        sessionIndex: number;
    };
    validatorId: AccountId32;
    validatorIndex: number;
}> = ...

We store most of the information about a lost dispute on chain. This struct is required to identify and verify it.