use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct FoodMenuItemAttributes {
#[serde(rename = "price", skip_serializing_if = "Option::is_none")]
pub price: Option<Box<models::Money>>,
#[serde(rename = "spiciness", skip_serializing_if = "Option::is_none")]
pub spiciness: Option<Spiciness>,
#[serde(rename = "allergen", skip_serializing_if = "Option::is_none")]
pub allergen: Option<Vec<String>>,
#[serde(rename = "dietaryRestriction", skip_serializing_if = "Option::is_none")]
pub dietary_restriction: Option<Vec<String>>,
#[serde(rename = "servesNumPeople", skip_serializing_if = "Option::is_none")]
pub serves_num_people: Option<i32>,
#[serde(rename = "preparationMethods", skip_serializing_if = "Option::is_none")]
pub preparation_methods: Option<Vec<String>>,
#[serde(rename = "mediaKeys", skip_serializing_if = "Option::is_none")]
pub media_keys: Option<Vec<String>>,
}
impl FoodMenuItemAttributes {
pub fn new() -> FoodMenuItemAttributes {
FoodMenuItemAttributes {
price: None,
spiciness: None,
allergen: None,
dietary_restriction: None,
serves_num_people: None,
preparation_methods: None,
media_keys: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Spiciness {
#[serde(rename = "SPICINESS_UNSPECIFIED")]
SpicinessUnspecified,
#[serde(rename = "MILD")]
Mild,
#[serde(rename = "MEDIUM")]
Medium,
#[serde(rename = "HOT")]
Hot,
}
impl Default for Spiciness {
fn default() -> Spiciness {
Self::SpicinessUnspecified
}
}