use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Deserialize, Serialize, Hash, PartialEq, Eq)]
#[serde(rename_all = "SCREAMING_SNAKE_CASE")]
pub enum AdvancedCommerceOfferReason {
Acquisition,
WinBack,
Retention,
#[serde(untagged)]
NotSupported(String),
}
impl AdvancedCommerceOfferReason {
pub fn as_str(&self) -> &str {
match self {
AdvancedCommerceOfferReason::Acquisition => "ACQUISITION",
AdvancedCommerceOfferReason::WinBack => "WIN_BACK",
AdvancedCommerceOfferReason::Retention => "RETENTION",
AdvancedCommerceOfferReason::NotSupported(value) => value.as_str(),
}
}
}