revolt_api 0.6.5

Open source user-first chat platform.
Documentation
/*
 * Revolt API
 *
 * Open source user-first chat platform.
 *
 * The version of the OpenAPI document: 0.6.5
 * Contact: contact@revolt.chat
 * Generated by: https://openapi-generator.tech
 */

/// ResponseLoginOneOf : Session information



#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct ResponseLoginOneOf {
    #[serde(rename = "result")]
    pub result: Result,
    /// Unique Id
    #[serde(rename = "_id")]
    pub _id: String,
    /// User Id
    #[serde(rename = "user_id")]
    pub user_id: String,
    /// Session token
    #[serde(rename = "token")]
    pub token: String,
    /// Display name
    #[serde(rename = "name")]
    pub name: String,
    #[serde(rename = "subscription", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub subscription: Option<Option<Box<crate::models::ResponseLoginOneOfSubscription>>>,
}

impl ResponseLoginOneOf {
    /// Session information
    pub fn new(result: Result, _id: String, user_id: String, token: String, name: String) -> ResponseLoginOneOf {
        ResponseLoginOneOf {
            result,
            _id,
            user_id,
            token,
            name,
            subscription: None,
        }
    }
}

/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Result {
    #[serde(rename = "Success")]
    Success,
}

impl Default for Result {
    fn default() -> Result {
        Self::Success
    }
}