#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ValidatorSet {
#[prost(message, repeated, tag = "1")]
pub validators: ::prost::alloc::vec::Vec<Validator>,
#[prost(message, optional, tag = "2")]
pub proposer: ::core::option::Option<Validator>,
#[prost(int64, tag = "3")]
pub total_voting_power: i64,
}
impl ::prost::Name for ValidatorSet {
const NAME: &'static str = "ValidatorSet";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Validator {
#[prost(bytes = "vec", tag = "1")]
pub address: ::prost::alloc::vec::Vec<u8>,
#[prost(message, optional, tag = "2")]
pub pub_key: ::core::option::Option<super::crypto::PublicKey>,
#[prost(int64, tag = "3")]
pub voting_power: i64,
#[prost(int64, tag = "4")]
pub proposer_priority: i64,
}
impl ::prost::Name for Validator {
const NAME: &'static str = "Validator";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SimpleValidator {
#[prost(message, optional, tag = "1")]
pub pub_key: ::core::option::Option<super::crypto::PublicKey>,
#[prost(int64, tag = "2")]
pub voting_power: i64,
}
impl ::prost::Name for SimpleValidator {
const NAME: &'static str = "SimpleValidator";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PartSetHeader {
#[prost(uint32, tag = "1")]
pub total: u32,
#[prost(bytes = "vec", tag = "2")]
pub hash: ::prost::alloc::vec::Vec<u8>,
}
impl ::prost::Name for PartSetHeader {
const NAME: &'static str = "PartSetHeader";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Part {
#[prost(uint32, tag = "1")]
pub index: u32,
#[prost(bytes = "vec", tag = "2")]
pub bytes: ::prost::alloc::vec::Vec<u8>,
#[prost(message, optional, tag = "3")]
pub proof: ::core::option::Option<super::crypto::Proof>,
}
impl ::prost::Name for Part {
const NAME: &'static str = "Part";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BlockId {
#[prost(bytes = "vec", tag = "1")]
pub hash: ::prost::alloc::vec::Vec<u8>,
#[prost(message, optional, tag = "2")]
pub part_set_header: ::core::option::Option<PartSetHeader>,
}
impl ::prost::Name for BlockId {
const NAME: &'static str = "BlockID";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Header {
#[prost(message, optional, tag = "1")]
pub version: ::core::option::Option<super::version::Consensus>,
#[prost(string, tag = "2")]
pub chain_id: ::prost::alloc::string::String,
#[prost(int64, tag = "3")]
pub height: i64,
#[prost(message, optional, tag = "4")]
pub time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "5")]
pub last_block_id: ::core::option::Option<BlockId>,
#[prost(bytes = "vec", tag = "6")]
pub last_commit_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "7")]
pub data_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "8")]
pub validators_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "9")]
pub next_validators_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "10")]
pub consensus_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "11")]
pub app_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "12")]
pub last_results_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "13")]
pub evidence_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "14")]
pub proposer_address: ::prost::alloc::vec::Vec<u8>,
}
impl ::prost::Name for Header {
const NAME: &'static str = "Header";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Data {
#[prost(bytes = "vec", repeated, tag = "1")]
pub txs: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
}
impl ::prost::Name for Data {
const NAME: &'static str = "Data";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Vote {
#[prost(enumeration = "SignedMsgType", tag = "1")]
pub r#type: i32,
#[prost(int64, tag = "2")]
pub height: i64,
#[prost(int32, tag = "3")]
pub round: i32,
#[prost(message, optional, tag = "4")]
pub block_id: ::core::option::Option<BlockId>,
#[prost(message, optional, tag = "5")]
pub timestamp: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(bytes = "vec", tag = "6")]
pub validator_address: ::prost::alloc::vec::Vec<u8>,
#[prost(int32, tag = "7")]
pub validator_index: i32,
#[prost(bytes = "vec", tag = "8")]
pub signature: ::prost::alloc::vec::Vec<u8>,
}
impl ::prost::Name for Vote {
const NAME: &'static str = "Vote";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Commit {
#[prost(int64, tag = "1")]
pub height: i64,
#[prost(int32, tag = "2")]
pub round: i32,
#[prost(message, optional, tag = "3")]
pub block_id: ::core::option::Option<BlockId>,
#[prost(message, repeated, tag = "4")]
pub signatures: ::prost::alloc::vec::Vec<CommitSig>,
}
impl ::prost::Name for Commit {
const NAME: &'static str = "Commit";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CommitSig {
#[prost(enumeration = "BlockIdFlag", tag = "1")]
pub block_id_flag: i32,
#[prost(bytes = "vec", tag = "2")]
pub validator_address: ::prost::alloc::vec::Vec<u8>,
#[prost(message, optional, tag = "3")]
pub timestamp: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(bytes = "vec", tag = "4")]
pub signature: ::prost::alloc::vec::Vec<u8>,
}
impl ::prost::Name for CommitSig {
const NAME: &'static str = "CommitSig";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Proposal {
#[prost(enumeration = "SignedMsgType", tag = "1")]
pub r#type: i32,
#[prost(int64, tag = "2")]
pub height: i64,
#[prost(int32, tag = "3")]
pub round: i32,
#[prost(int32, tag = "4")]
pub pol_round: i32,
#[prost(message, optional, tag = "5")]
pub block_id: ::core::option::Option<BlockId>,
#[prost(message, optional, tag = "6")]
pub timestamp: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(bytes = "vec", tag = "7")]
pub signature: ::prost::alloc::vec::Vec<u8>,
}
impl ::prost::Name for Proposal {
const NAME: &'static str = "Proposal";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SignedHeader {
#[prost(message, optional, tag = "1")]
pub header: ::core::option::Option<Header>,
#[prost(message, optional, tag = "2")]
pub commit: ::core::option::Option<Commit>,
}
impl ::prost::Name for SignedHeader {
const NAME: &'static str = "SignedHeader";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LightBlock {
#[prost(message, optional, tag = "1")]
pub signed_header: ::core::option::Option<SignedHeader>,
#[prost(message, optional, tag = "2")]
pub validator_set: ::core::option::Option<ValidatorSet>,
}
impl ::prost::Name for LightBlock {
const NAME: &'static str = "LightBlock";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BlockMeta {
#[prost(message, optional, tag = "1")]
pub block_id: ::core::option::Option<BlockId>,
#[prost(int64, tag = "2")]
pub block_size: i64,
#[prost(message, optional, tag = "3")]
pub header: ::core::option::Option<Header>,
#[prost(int64, tag = "4")]
pub num_txs: i64,
}
impl ::prost::Name for BlockMeta {
const NAME: &'static str = "BlockMeta";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TxProof {
#[prost(bytes = "vec", tag = "1")]
pub root_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes = "vec", tag = "2")]
pub data: ::prost::alloc::vec::Vec<u8>,
#[prost(message, optional, tag = "3")]
pub proof: ::core::option::Option<super::crypto::Proof>,
}
impl ::prost::Name for TxProof {
const NAME: &'static str = "TxProof";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BlockIdFlag {
Unknown = 0,
Absent = 1,
Commit = 2,
Nil = 3,
}
impl BlockIdFlag {
pub fn as_str_name(&self) -> &'static str {
match self {
BlockIdFlag::Unknown => "BLOCK_ID_FLAG_UNKNOWN",
BlockIdFlag::Absent => "BLOCK_ID_FLAG_ABSENT",
BlockIdFlag::Commit => "BLOCK_ID_FLAG_COMMIT",
BlockIdFlag::Nil => "BLOCK_ID_FLAG_NIL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"BLOCK_ID_FLAG_UNKNOWN" => Some(Self::Unknown),
"BLOCK_ID_FLAG_ABSENT" => Some(Self::Absent),
"BLOCK_ID_FLAG_COMMIT" => Some(Self::Commit),
"BLOCK_ID_FLAG_NIL" => Some(Self::Nil),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SignedMsgType {
Unknown = 0,
Prevote = 1,
Precommit = 2,
Proposal = 32,
}
impl SignedMsgType {
pub fn as_str_name(&self) -> &'static str {
match self {
SignedMsgType::Unknown => "SIGNED_MSG_TYPE_UNKNOWN",
SignedMsgType::Prevote => "SIGNED_MSG_TYPE_PREVOTE",
SignedMsgType::Precommit => "SIGNED_MSG_TYPE_PRECOMMIT",
SignedMsgType::Proposal => "SIGNED_MSG_TYPE_PROPOSAL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"SIGNED_MSG_TYPE_UNKNOWN" => Some(Self::Unknown),
"SIGNED_MSG_TYPE_PREVOTE" => Some(Self::Prevote),
"SIGNED_MSG_TYPE_PRECOMMIT" => Some(Self::Precommit),
"SIGNED_MSG_TYPE_PROPOSAL" => Some(Self::Proposal),
_ => None,
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Evidence {
#[prost(oneof = "evidence::Sum", tags = "1, 2")]
pub sum: ::core::option::Option<evidence::Sum>,
}
pub mod evidence {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Sum {
#[prost(message, tag = "1")]
DuplicateVoteEvidence(super::DuplicateVoteEvidence),
#[prost(message, tag = "2")]
LightClientAttackEvidence(super::LightClientAttackEvidence),
}
}
impl ::prost::Name for Evidence {
const NAME: &'static str = "Evidence";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DuplicateVoteEvidence {
#[prost(message, optional, tag = "1")]
pub vote_a: ::core::option::Option<Vote>,
#[prost(message, optional, tag = "2")]
pub vote_b: ::core::option::Option<Vote>,
#[prost(int64, tag = "3")]
pub total_voting_power: i64,
#[prost(int64, tag = "4")]
pub validator_power: i64,
#[prost(message, optional, tag = "5")]
pub timestamp: ::core::option::Option<::pbjson_types::Timestamp>,
}
impl ::prost::Name for DuplicateVoteEvidence {
const NAME: &'static str = "DuplicateVoteEvidence";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LightClientAttackEvidence {
#[prost(message, optional, tag = "1")]
pub conflicting_block: ::core::option::Option<LightBlock>,
#[prost(int64, tag = "2")]
pub common_height: i64,
#[prost(message, repeated, tag = "3")]
pub byzantine_validators: ::prost::alloc::vec::Vec<Validator>,
#[prost(int64, tag = "4")]
pub total_voting_power: i64,
#[prost(message, optional, tag = "5")]
pub timestamp: ::core::option::Option<::pbjson_types::Timestamp>,
}
impl ::prost::Name for LightClientAttackEvidence {
const NAME: &'static str = "LightClientAttackEvidence";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvidenceList {
#[prost(message, repeated, tag = "1")]
pub evidence: ::prost::alloc::vec::Vec<Evidence>,
}
impl ::prost::Name for EvidenceList {
const NAME: &'static str = "EvidenceList";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Block {
#[prost(message, optional, tag = "1")]
pub header: ::core::option::Option<Header>,
#[prost(message, optional, tag = "2")]
pub data: ::core::option::Option<Data>,
#[prost(message, optional, tag = "3")]
pub evidence: ::core::option::Option<EvidenceList>,
#[prost(message, optional, tag = "4")]
pub last_commit: ::core::option::Option<Commit>,
}
impl ::prost::Name for Block {
const NAME: &'static str = "Block";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ConsensusParams {
#[prost(message, optional, tag = "1")]
pub block: ::core::option::Option<BlockParams>,
#[prost(message, optional, tag = "2")]
pub evidence: ::core::option::Option<EvidenceParams>,
#[prost(message, optional, tag = "3")]
pub validator: ::core::option::Option<ValidatorParams>,
#[prost(message, optional, tag = "4")]
pub version: ::core::option::Option<VersionParams>,
}
impl ::prost::Name for ConsensusParams {
const NAME: &'static str = "ConsensusParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BlockParams {
#[prost(int64, tag = "1")]
pub max_bytes: i64,
#[prost(int64, tag = "2")]
pub max_gas: i64,
}
impl ::prost::Name for BlockParams {
const NAME: &'static str = "BlockParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EvidenceParams {
#[prost(int64, tag = "1")]
pub max_age_num_blocks: i64,
#[prost(message, optional, tag = "2")]
pub max_age_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(int64, tag = "3")]
pub max_bytes: i64,
}
impl ::prost::Name for EvidenceParams {
const NAME: &'static str = "EvidenceParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ValidatorParams {
#[prost(string, repeated, tag = "1")]
pub pub_key_types: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl ::prost::Name for ValidatorParams {
const NAME: &'static str = "ValidatorParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VersionParams {
#[prost(uint64, tag = "1")]
pub app: u64,
}
impl ::prost::Name for VersionParams {
const NAME: &'static str = "VersionParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HashedParams {
#[prost(int64, tag = "1")]
pub block_max_bytes: i64,
#[prost(int64, tag = "2")]
pub block_max_gas: i64,
}
impl ::prost::Name for HashedParams {
const NAME: &'static str = "HashedParams";
const PACKAGE: &'static str = "tendermint.types";
fn full_name() -> ::prost::alloc::string::String {
::prost::alloc::format!("tendermint.types.{}", Self::NAME)
}
}