/*
 * Onshape REST API
 *
 * The Onshape REST API consumed by all clients.
 *
 * The version of the OpenAPI document: 1.104
 * Contact: api-support@onshape.zendesk.com
 * Generated by: https://openapi-generator.tech
 */




#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct BtDocumentParams {
    #[serde(rename = "ownerId", skip_serializing_if = "Option::is_none")]
    pub owner_id: Option<String>,
    #[serde(rename = "projectId", skip_serializing_if = "Option::is_none")]
    pub project_id: Option<String>,
    #[serde(rename = "parentId", skip_serializing_if = "Option::is_none")]
    pub parent_id: Option<String>,
    #[serde(rename = "isPublic", skip_serializing_if = "Option::is_none")]
    pub is_public: Option<bool>,
    #[serde(rename = "isEmptyContent", skip_serializing_if = "Option::is_none")]
    pub is_empty_content: Option<bool>,
    #[serde(rename = "generateUnknownMessages", skip_serializing_if = "Option::is_none")]
    pub generate_unknown_messages: Option<bool>,
    #[serde(rename = "notRevisionManaged", skip_serializing_if = "Option::is_none")]
    pub not_revision_managed: Option<bool>,
    #[serde(rename = "betaCapabilityIds", skip_serializing_if = "Option::is_none")]
    pub beta_capability_ids: Option<Vec<String>>,
    #[serde(rename = "ownerEmail", skip_serializing_if = "Option::is_none")]
    pub owner_email: Option<String>,
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
    pub description: Option<String>,
    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
    pub tags: Option<Vec<String>>,
    #[serde(rename = "ownerType", skip_serializing_if = "Option::is_none")]
    pub owner_type: Option<i32>,
}

impl BtDocumentParams {
    pub fn new() -> BtDocumentParams {
        BtDocumentParams {
            owner_id: None,
            project_id: None,
            parent_id: None,
            is_public: None,
            is_empty_content: None,
            generate_unknown_messages: None,
            not_revision_managed: None,
            beta_capability_ids: None,
            owner_email: None,
            name: None,
            description: None,
            tags: None,
            owner_type: None,
        }
    }
}


