use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ProjectsUpdateRequest {
#[serde(rename = "name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "body", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub body: Option<Option<String>>,
#[serde(rename = "state", skip_serializing_if = "Option::is_none")]
pub state: Option<String>,
#[serde(rename = "organization_permission", skip_serializing_if = "Option::is_none")]
pub organization_permission: Option<OrganizationPermission>,
#[serde(rename = "private", skip_serializing_if = "Option::is_none")]
pub private: Option<bool>,
}
impl ProjectsUpdateRequest {
pub fn new() -> ProjectsUpdateRequest {
ProjectsUpdateRequest {
name: None,
body: None,
state: None,
organization_permission: None,
private: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum OrganizationPermission {
#[serde(rename = "read")]
Read,
#[serde(rename = "write")]
Write,
#[serde(rename = "admin")]
Admin,
#[serde(rename = "none")]
None,
}
impl Default for OrganizationPermission {
fn default() -> OrganizationPermission {
Self::Read
}
}