use crate::clients::rest::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct TenantCreateRequest {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "slug")]
pub slug: String,
#[serde(rename = "uiVersion", skip_serializing_if = "Option::is_none")]
pub ui_version: Option<UiVersion>,
#[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,
}
}
}
#[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
}
}
#[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
}
}