#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct AssignmentViewData {
pub did: crate::types::string::Did,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub end_at: core::option::Option<crate::types::string::Datetime>,
pub id: i64,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub moderator: core::option::Option<crate::tools::ozone::team::defs::Member>,
pub queue: QueueView,
pub start_at: crate::types::string::Datetime,
}
pub type AssignmentView = crate::types::Object<AssignmentViewData>;
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct QueueStatsData {
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub action_rate: core::option::Option<i64>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub actioned_count: core::option::Option<i64>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub avg_handling_time_sec: core::option::Option<i64>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub escalated_count: core::option::Option<i64>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub inbound_count: core::option::Option<i64>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub last_updated: core::option::Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub pending_count: core::option::Option<i64>,
}
pub type QueueStats = crate::types::Object<QueueStatsData>;
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct QueueViewData {
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub collection: core::option::Option<crate::types::string::Nsid>,
pub created_at: crate::types::string::Datetime,
pub created_by: crate::types::string::Did,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub deleted_at: core::option::Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub description: core::option::Option<String>,
pub enabled: bool,
pub id: i64,
pub name: String,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub recommended_policies: core::option::Option<Vec<String>>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub report_types: core::option::Option<Vec<String>>,
pub stats: QueueStats,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub subject_types: core::option::Option<Vec<String>>,
pub updated_at: crate::types::string::Datetime,
}
pub type QueueView = crate::types::Object<QueueViewData>;