use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum SubscriptionStatus {
#[serde(rename = "pending")]
Pending,
#[serde(rename = "active")]
Active,
#[serde(rename = "on_hold")]
OnHold,
#[serde(rename = "cancelled")]
Cancelled,
#[serde(rename = "failed")]
Failed,
#[serde(rename = "expired")]
Expired,
}
impl std::fmt::Display for SubscriptionStatus {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Pending => write!(f, "pending"),
Self::Active => write!(f, "active"),
Self::OnHold => write!(f, "on_hold"),
Self::Cancelled => write!(f, "cancelled"),
Self::Failed => write!(f, "failed"),
Self::Expired => write!(f, "expired"),
}
}
}
impl Default for SubscriptionStatus {
fn default() -> SubscriptionStatus {
Self::Pending
}
}