#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ProjectionId {
#[prost(string, tag="1")]
pub name: ::prost::alloc::string::String,
#[prost(int32, tag="2")]
pub version: i32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NdsProjection {
#[prost(message, optional, tag="1")]
pub id: ::core::option::Option<ProjectionId>,
#[prost(enumeration="ProjectionStatus", tag="2")]
pub status: i32,
#[prost(string, tag="3")]
pub last_event_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="4")]
pub last_updated: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="5")]
pub data: ::core::option::Option<::prost_types::Any>,
#[prost(map="string, string", tag="6")]
pub metadata: ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct BalanceProjection {
#[prost(string, tag="1")]
pub balance: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub owner_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="4")]
pub last_updated: ::core::option::Option<::prost_types::Timestamp>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LeaderboardEntry {
#[prost(int32, tag="1")]
pub rank: i32,
#[prost(string, tag="2")]
pub identity_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub value: ::prost::alloc::string::String,
#[prost(map="string, string", tag="4")]
pub metadata: ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LeaderboardProjection {
#[prost(string, tag="1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub asset_id: ::prost::alloc::string::String,
#[prost(message, repeated, tag="3")]
pub entries: ::prost::alloc::vec::Vec<LeaderboardEntry>,
#[prost(message, optional, tag="4")]
pub last_updated: ::core::option::Option<::prost_types::Timestamp>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ProjectionStatus {
Unspecified = 0,
Active = 1,
Rebuilding = 2,
Disabled = 3,
Error = 4,
}
impl ProjectionStatus {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "PROJECTION_STATUS_UNSPECIFIED",
Self::Active => "PROJECTION_STATUS_ACTIVE",
Self::Rebuilding => "PROJECTION_STATUS_REBUILDING",
Self::Disabled => "PROJECTION_STATUS_DISABLED",
Self::Error => "PROJECTION_STATUS_ERROR",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PROJECTION_STATUS_UNSPECIFIED" => Some(Self::Unspecified),
"PROJECTION_STATUS_ACTIVE" => Some(Self::Active),
"PROJECTION_STATUS_REBUILDING" => Some(Self::Rebuilding),
"PROJECTION_STATUS_DISABLED" => Some(Self::Disabled),
"PROJECTION_STATUS_ERROR" => Some(Self::Error),
_ => None,
}
}
}