use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum GroupJoinState {
#[serde(rename = "closed")]
Closed,
#[serde(rename = "invite")]
Invite,
#[serde(rename = "open")]
Open,
#[serde(rename = "request")]
Request,
}
impl std::fmt::Display for GroupJoinState {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Closed => write!(f, "closed"),
Self::Invite => write!(f, "invite"),
Self::Open => write!(f, "open"),
Self::Request => write!(f, "request"),
}
}
}
impl Default for GroupJoinState {
fn default() -> GroupJoinState {
Self::Closed
}
}