use serde::{Serialize, Deserialize};
use super::{CraNetworkInsightsItem, NetworkInsightsSchema};
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
pub struct CraNetworkInsightsReport {
pub generated_time: chrono::DateTime<chrono::Utc>,
#[serde(default, skip_serializing_if = "Vec::is_empty")]
pub items: Vec<CraNetworkInsightsItem>,
pub network_attributes: NetworkInsightsSchema,
pub report_id: String,
}
impl std::fmt::Display for CraNetworkInsightsReport {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> Result<(), std::fmt::Error> {
write!(f, "{}", serde_json::to_string(self).unwrap())
}
}