/*
 * API Documentation
 *
 * Source of truth and network automation platform
 *
 * The version of the OpenAPI document: 3.1.0 (3.1)
 *
 * Generated by: https://openapi-generator.tech
 */

///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DataTypeEnum {
    #[serde(rename = "text")]
    Text,
    #[serde(rename = "integer")]
    Integer,
    #[serde(rename = "boolean")]
    Boolean,
    #[serde(rename = "date")]
    Date,
    #[serde(rename = "datetime")]
    Datetime,
    #[serde(rename = "url")]
    Url,
    #[serde(rename = "select")]
    Select,
    #[serde(rename = "multi-select")]
    MultiSelect,
    #[serde(rename = "json")]
    Json,
    #[serde(rename = "markdown")]
    Markdown,
    #[serde(rename = "contact-or-team")]
    ContactOrTeam,
    #[serde(rename = "float")]
    Float,
}

impl ToString for DataTypeEnum {
    fn to_string(&self) -> String {
        match self {
            Self::Text => String::from("text"),
            Self::Integer => String::from("integer"),
            Self::Boolean => String::from("boolean"),
            Self::Date => String::from("date"),
            Self::Datetime => String::from("datetime"),
            Self::Url => String::from("url"),
            Self::Select => String::from("select"),
            Self::MultiSelect => String::from("multi-select"),
            Self::Json => String::from("json"),
            Self::Markdown => String::from("markdown"),
            Self::ContactOrTeam => String::from("contact-or-team"),
            Self::Float => String::from("float"),
        }
    }
}

impl Default for DataTypeEnum {
    fn default() -> DataTypeEnum {
        Self::Text
    }
}
