#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AsyncOpUpdate {
#[prost(message, repeated, tag = "1")]
pub new_async_ops: ::prost::alloc::vec::Vec<AsyncOp>,
#[prost(map = "uint64, message", tag = "2")]
pub stats_update: ::std::collections::HashMap<u64, Stats>,
#[prost(uint64, tag = "3")]
pub dropped_events: u64,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct AsyncOp {
#[prost(message, optional, tag = "1")]
pub id: ::core::option::Option<super::common::Id>,
#[prost(message, optional, tag = "2")]
pub metadata: ::core::option::Option<super::common::MetaId>,
#[prost(string, tag = "3")]
pub source: ::prost::alloc::string::String,
#[prost(message, optional, tag = "4")]
pub parent_async_op_id: ::core::option::Option<super::common::Id>,
#[prost(message, optional, tag = "5")]
pub resource_id: ::core::option::Option<super::common::Id>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Stats {
#[prost(message, optional, tag = "1")]
pub created_at: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub dropped_at: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "4")]
pub task_id: ::core::option::Option<super::common::Id>,
#[prost(message, optional, tag = "5")]
pub poll_stats: ::core::option::Option<super::common::PollStats>,
#[prost(message, repeated, tag = "6")]
pub attributes: ::prost::alloc::vec::Vec<super::common::Attribute>,
}