use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IssueBulkEditField {
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "fieldOptions", skip_serializing_if = "Option::is_none")]
pub field_options: Option<Vec<serde_json::Value>>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "isRequired", skip_serializing_if = "Option::is_none")]
pub is_required: Option<bool>,
#[serde(rename = "multiSelectFieldOptions", skip_serializing_if = "Option::is_none")]
pub multi_select_field_options: Option<Vec<MultiSelectFieldOptions>>,
#[serde(rename = "name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "searchUrl", skip_serializing_if = "Option::is_none")]
pub search_url: Option<String>,
#[serde(rename = "type", skip_serializing_if = "Option::is_none")]
pub r#type: Option<String>,
#[serde(rename = "unavailableMessage", skip_serializing_if = "Option::is_none")]
pub unavailable_message: Option<String>,
}
impl IssueBulkEditField {
pub fn new() -> IssueBulkEditField {
IssueBulkEditField {
description: None,
field_options: None,
id: None,
is_required: None,
multi_select_field_options: None,
name: None,
search_url: None,
r#type: None,
unavailable_message: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MultiSelectFieldOptions {
#[serde(rename = "ADD")]
Add,
#[serde(rename = "REMOVE")]
Remove,
#[serde(rename = "REPLACE")]
Replace,
#[serde(rename = "REMOVE_ALL")]
RemoveAll,
}
impl Default for MultiSelectFieldOptions {
fn default() -> MultiSelectFieldOptions {
Self::Add
}
}