// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppendEntriesRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint64, tag = "2")]
    pub term: u64,
    #[prost(uint32, tag = "3")]
    pub leader_id: u32,
    #[prost(uint64, tag = "4")]
    pub prev_log_index: u64,
    #[prost(uint64, tag = "5")]
    pub prev_log_term: u64,
    #[prost(uint32, repeated, tag = "6")]
    pub entries: ::prost::alloc::vec::Vec<u32>,
    #[prost(uint64, tag = "7")]
    pub leader_commit: u64,
}
impl ::prost::Name for AppendEntriesRequest {
    const NAME: &'static str = "AppendEntriesRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.foros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.foros_msgs.srv.AppendEntriesRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.foros_msgs.srv.AppendEntriesRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppendEntriesResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint64, tag = "2")]
    pub term: u64,
    #[prost(bool, tag = "3")]
    pub success: bool,
}
impl ::prost::Name for AppendEntriesResponse {
    const NAME: &'static str = "AppendEntriesResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.foros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.foros_msgs.srv.AppendEntriesResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.foros_msgs.srv.AppendEntriesResponse".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RequestVoteRequest {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint64, tag = "2")]
    pub term: u64,
    #[prost(uint32, tag = "3")]
    pub candidate_id: u32,
    #[prost(uint64, tag = "4")]
    pub last_data_index: u64,
    #[prost(uint64, tag = "5")]
    pub loat_data_term: u64,
}
impl ::prost::Name for RequestVoteRequest {
    const NAME: &'static str = "RequestVoteRequest";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.foros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.foros_msgs.srv.RequestVoteRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.foros_msgs.srv.RequestVoteRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct RequestVoteResponse {
    #[prost(message, optional, tag = "1")]
    pub header: ::core::option::Option<
        super::super::super::super::make87_messages::core::Header,
    >,
    #[prost(uint64, tag = "2")]
    pub term: u64,
    #[prost(bool, tag = "3")]
    pub vote_granted: bool,
}
impl ::prost::Name for RequestVoteResponse {
    const NAME: &'static str = "RequestVoteResponse";
    const PACKAGE: &'static str = "make87_messages_ros2.humble.foros_msgs.srv";
    fn full_name() -> ::prost::alloc::string::String {
        "make87_messages_ros2.humble.foros_msgs.srv.RequestVoteResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "/make87_messages_ros2.humble.foros_msgs.srv.RequestVoteResponse".into()
    }
}
