#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Descriptor {
#[prost(string, tag = "1")]
pub media_type: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub digest: ::prost::alloc::string::String,
#[prost(int64, tag = "3")]
pub size: i64,
#[prost(map = "string, string", tag = "5")]
pub annotations:
::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Mount {
#[prost(string, tag = "1")]
pub r#type: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub source: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub target: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "4")]
pub options: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Platform {
#[prost(string, tag = "1")]
pub os: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub architecture: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub variant: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Metric {
#[prost(message, optional, tag = "1")]
pub timestamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(string, tag = "2")]
pub id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub data: ::core::option::Option<::prost_types::Any>,
}