use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AnalyticsStats {
#[serde(rename = "total_users", skip_serializing_if = "Option::is_none")]
pub total_users: Option<i32>,
#[serde(rename = "active_users_30d", skip_serializing_if = "Option::is_none")]
pub active_users_30d: Option<i32>,
#[serde(rename = "new_users_30d", skip_serializing_if = "Option::is_none")]
pub new_users_30d: Option<i32>,
#[serde(
rename = "total_organizations",
skip_serializing_if = "Option::is_none"
)]
pub total_organizations: Option<i32>,
#[serde(rename = "total_workspaces", skip_serializing_if = "Option::is_none")]
pub total_workspaces: Option<i32>,
#[serde(rename = "ai_agents_count", skip_serializing_if = "Option::is_none")]
pub ai_agents_count: Option<i32>,
#[serde(rename = "ai_executions_30d", skip_serializing_if = "Option::is_none")]
pub ai_executions_30d: Option<i32>,
#[serde(
rename = "knowledge_base_documents",
skip_serializing_if = "Option::is_none"
)]
pub knowledge_base_documents: Option<i32>,
#[serde(rename = "storage_used_gb", skip_serializing_if = "Option::is_none")]
pub storage_used_gb: Option<f64>,
}
impl AnalyticsStats {
pub fn new() -> AnalyticsStats {
AnalyticsStats {
total_users: None,
active_users_30d: None,
new_users_30d: None,
total_organizations: None,
total_workspaces: None,
ai_agents_count: None,
ai_executions_30d: None,
knowledge_base_documents: None,
storage_used_gb: None,
}
}
}