use crate::manager::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum BenefitsInformationCoverageLevelName {
#[serde(rename = "Children Only")]
ChildrenOnly,
#[serde(rename = "Dependents Only")]
DependentsOnly,
#[serde(rename = "Employee and Children")]
EmployeeAndChildren,
#[serde(rename = "Employee Only")]
EmployeeOnly,
#[serde(rename = "Employee and Spouse")]
EmployeeAndSpouse,
#[serde(rename = "Family")]
Family,
#[serde(rename = "Individual")]
Individual,
#[serde(rename = "Spouse and Children")]
SpouseAndChildren,
#[serde(rename = "Spouse Only")]
SpouseOnly,
#[serde(untagged)]
UnknownValue(String),
}
impl std::fmt::Display for BenefitsInformationCoverageLevelName {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::ChildrenOnly => write!(f, "Children Only"),
Self::DependentsOnly => write!(f, "Dependents Only"),
Self::EmployeeAndChildren => write!(f, "Employee and Children"),
Self::EmployeeOnly => write!(f, "Employee Only"),
Self::EmployeeAndSpouse => write!(f, "Employee and Spouse"),
Self::Family => write!(f, "Family"),
Self::Individual => write!(f, "Individual"),
Self::SpouseAndChildren => write!(f, "Spouse and Children"),
Self::SpouseOnly => write!(f, "Spouse Only"),
Self::UnknownValue(s) => write!(f, "{s}"),
}
}
}
impl Default for BenefitsInformationCoverageLevelName {
fn default() -> BenefitsInformationCoverageLevelName {
Self::ChildrenOnly
}
}