use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct UnmetNeed {
pub description: String,
pub severity: NeedSeverity,
pub current_gap: String,
pub potential_approaches: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Serialize, Deserialize)]
pub enum NeedSeverity {
Low,
Moderate,
High,
Critical,
}
impl std::fmt::Display for NeedSeverity {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::Low => write!(f, "Low"),
Self::Moderate => write!(f, "Moderate"),
Self::High => write!(f, "High"),
Self::Critical => write!(f, "Critical"),
}
}
}