use serde::{Deserialize, Serialize};
use std::collections::HashMap;
use utoipa::ToSchema;
#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
pub struct VisualizationClientRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub client_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub metadata: Option<HashMap<String, serde_json::Value>>,
}
#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
pub struct VisualizationClientResponse {
pub client_id: String,
pub success: bool,
pub message: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
pub struct VisualizationHeartbeatRequest {
pub client_id: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
pub struct VisualizationStatusResponse {
pub enabled: bool,
pub active_clients: usize,
pub fq_sampler_enabled: bool,
pub message: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
pub struct VisualizationSuccessResponse {
pub message: String,
pub success: bool,
}