use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SaveProjectTemplateRequest {
#[serde(rename = "projectId", skip_serializing_if = "Option::is_none")]
pub project_id: Option<i64>,
#[serde(rename = "templateGenerationOptions", skip_serializing_if = "Option::is_none")]
pub template_generation_options: Option<Box<models::CustomTemplateOptions>>,
#[serde(rename = "templateType", skip_serializing_if = "Option::is_none")]
pub template_type: Option<TemplateType>,
}
impl SaveProjectTemplateRequest {
pub fn new() -> SaveProjectTemplateRequest {
SaveProjectTemplateRequest {
project_id: None,
template_generation_options: None,
template_type: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TemplateType {
#[serde(rename = "LIVE")]
Live,
#[serde(rename = "SNAPSHOT")]
Snapshot,
}
impl Default for TemplateType {
fn default() -> TemplateType {
Self::Live
}
}