#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CsiStorageCapacity {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub node_topology: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::LabelSelector>,
#[prost(string, optional, tag="3")]
pub storage_class_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="4")]
pub capacity: ::core::option::Option<super::super::super::apimachinery::pkg::api::resource::Quantity>,
#[prost(message, optional, tag="5")]
pub maximum_volume_size: ::core::option::Option<super::super::super::apimachinery::pkg::api::resource::Quantity>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CsiStorageCapacityList {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ListMeta>,
#[prost(message, repeated, tag="2")]
pub items: ::prost::alloc::vec::Vec<CsiStorageCapacity>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeAttachment {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<VolumeAttachmentSpec>,
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<VolumeAttachmentStatus>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeAttachmentList {
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ListMeta>,
#[prost(message, repeated, tag="2")]
pub items: ::prost::alloc::vec::Vec<VolumeAttachment>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeAttachmentSource {
#[prost(string, optional, tag="1")]
pub persistent_volume_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="2")]
pub inline_volume_spec: ::core::option::Option<super::super::core::v1::PersistentVolumeSpec>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeAttachmentSpec {
#[prost(string, optional, tag="1")]
pub attacher: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag="2")]
pub source: ::core::option::Option<VolumeAttachmentSource>,
#[prost(string, optional, tag="3")]
pub node_name: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeAttachmentStatus {
#[prost(bool, optional, tag="1")]
pub attached: ::core::option::Option<bool>,
#[prost(map="string, string", tag="2")]
pub attachment_metadata: ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
#[prost(message, optional, tag="3")]
pub attach_error: ::core::option::Option<VolumeError>,
#[prost(message, optional, tag="4")]
pub detach_error: ::core::option::Option<VolumeError>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VolumeError {
#[prost(message, optional, tag="1")]
pub time: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::Time>,
#[prost(string, optional, tag="2")]
pub message: ::core::option::Option<::prost::alloc::string::String>,
}