use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IssueLayoutPayload {
#[serde(rename = "containerId", skip_serializing_if = "Option::is_none")]
pub container_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "issueLayoutType", skip_serializing_if = "Option::is_none")]
pub issue_layout_type: Option<IssueLayoutType>,
#[serde(rename = "items", skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<models::IssueLayoutItemPayload>>,
#[serde(rename = "pcri", skip_serializing_if = "Option::is_none")]
pub pcri: Option<Box<models::ProjectCreateResourceIdentifier>>,
}
impl IssueLayoutPayload {
pub fn new() -> IssueLayoutPayload {
IssueLayoutPayload {
container_id: None,
issue_layout_type: None,
items: None,
pcri: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum IssueLayoutType {
#[serde(rename = "ISSUE_VIEW")]
IssueView,
#[serde(rename = "ISSUE_CREATE")]
IssueCreate,
#[serde(rename = "REQUEST_FORM")]
RequestForm,
}
impl Default for IssueLayoutType {
fn default() -> IssueLayoutType {
Self::IssueView
}
}