use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CaptableShareIn {
#[serde(rename = "boardApprovalDate", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub board_approval_date: Option<Option<serde_json::Value>>,
#[serde(rename = "capitalContribution", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub capital_contribution: Option<Option<serde_json::Value>>,
#[serde(rename = "certificateId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub certificate_id: Option<Option<serde_json::Value>>,
#[serde(rename = "cliffYears", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub cliff_years: Option<Option<serde_json::Value>>,
#[serde(rename = "companyLegends", skip_serializing_if = "Option::is_none")]
pub company_legends: Option<Vec<serde_json::Value>>,
#[serde(rename = "debtCancelled", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub debt_cancelled: Option<Option<serde_json::Value>>,
#[serde(rename = "ipContribution", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub ip_contribution: Option<Option<serde_json::Value>>,
#[serde(rename = "issueDate", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub issue_date: Option<Option<serde_json::Value>>,
#[serde(rename = "otherContributions", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub other_contributions: Option<Option<serde_json::Value>>,
#[serde(rename = "pricePerShare", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub price_per_share: Option<Option<serde_json::Value>>,
#[serde(rename = "quantity", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub quantity: Option<Option<serde_json::Value>>,
#[serde(rename = "rule144Date", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub rule144_date: Option<Option<serde_json::Value>>,
#[serde(rename = "shareClassId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub share_class_id: Option<Option<serde_json::Value>>,
#[serde(rename = "stakeholderId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub stakeholder_id: Option<Option<serde_json::Value>>,
#[serde(rename = "status", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub status: Option<Option<serde_json::Value>>,
#[serde(rename = "vestingStartDate", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub vesting_start_date: Option<Option<serde_json::Value>>,
#[serde(rename = "vestingYears", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub vesting_years: Option<Option<serde_json::Value>>,
}
impl CaptableShareIn {
pub fn new() -> CaptableShareIn {
CaptableShareIn {
board_approval_date: None,
capital_contribution: None,
certificate_id: None,
cliff_years: None,
company_legends: None,
debt_cancelled: None,
ip_contribution: None,
issue_date: None,
other_contributions: None,
price_per_share: None,
quantity: None,
rule144_date: None,
share_class_id: None,
stakeholder_id: None,
status: None,
vesting_start_date: None,
vesting_years: None,
}
}
}