hatchet-sdk 0.2.8

This is an unofficial Rust SDK for Hatchet, a distributed, fault-tolerant task queue.
Documentation
/*
 * Hatchet API
 *
 * The Hatchet API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::clients::rest::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct TenantCreateRequest {
    /// The name of the tenant.
    #[serde(rename = "name")]
    pub name: String,
    /// The slug of the tenant.
    #[serde(rename = "slug")]
    pub slug: String,
    /// The UI version of the tenant. Defaults to V0.
    #[serde(rename = "uiVersion", skip_serializing_if = "Option::is_none")]
    pub ui_version: Option<UiVersion>,
    /// The engine version of the tenant. Defaults to V0.
    #[serde(rename = "engineVersion", skip_serializing_if = "Option::is_none")]
    pub engine_version: Option<EngineVersion>,
}

impl TenantCreateRequest {
    pub fn new(name: String, slug: String) -> TenantCreateRequest {
        TenantCreateRequest {
            name,
            slug,
            ui_version: None,
            engine_version: None,
        }
    }
}
/// The UI version of the tenant. Defaults to V0.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum UiVersion {
    #[serde(rename = "V0")]
    V0,
    #[serde(rename = "V1")]
    V1,
}

impl Default for UiVersion {
    fn default() -> UiVersion {
        Self::V0
    }
}
/// The engine version of the tenant. Defaults to V0.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum EngineVersion {
    #[serde(rename = "V0")]
    V0,
    #[serde(rename = "V1")]
    V1,
}

impl Default for EngineVersion {
    fn default() -> EngineVersion {
        Self::V0
    }
}