github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/evidence/exported/evidence.go (about)

     1  package exported
     2  
     3  import (
     4  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
     5  
     6  	tmbytes "github.com/fibonacci-chain/fbc/libs/tendermint/libs/bytes"
     7  )
     8  
     9  // Evidence defines the contract which concrete evidence types of misbehavior
    10  // must implement.
    11  type Evidence interface {
    12  	Route() string
    13  	Type() string
    14  	String() string
    15  	Hash() tmbytes.HexBytes
    16  	ValidateBasic() error
    17  
    18  	// The consensus address of the malicious validator at time of infraction
    19  	GetConsensusAddress() sdk.ConsAddress
    20  
    21  	// Height at which the infraction occurred
    22  	GetHeight() int64
    23  
    24  	// The total power of the malicious validator at time of infraction
    25  	GetValidatorPower() int64
    26  
    27  	// The total validator set power at time of infraction
    28  	GetTotalPower() int64
    29  }