hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CaptableShare {
    /// CapitalContribution is the cash paid for the certificate, if recorded.
    #[serde(rename = "capitalContribution", skip_serializing_if = "Option::is_none")]
    pub capital_contribution: Option<f64>,
    /// CertificateID is the certificate number, unique within the company.
    #[serde(rename = "certificateId", skip_serializing_if = "Option::is_none")]
    pub certificate_id: Option<String>,
    /// CompanyLegends are the restrictive legends printed on the certificate.
    #[serde(rename = "companyLegends", skip_serializing_if = "Option::is_none")]
    pub company_legends: Option<Vec<String>>,
    /// ID is the share id.
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    /// IssueDate is the ISO date the certificate was issued.
    #[serde(rename = "issueDate", skip_serializing_if = "Option::is_none")]
    pub issue_date: Option<String>,
    /// PricePerShare is the price paid per share, if recorded.
    #[serde(rename = "pricePerShare", skip_serializing_if = "Option::is_none")]
    pub price_per_share: Option<f64>,
    /// Quantity is how many shares the certificate covers.
    #[serde(rename = "quantity", skip_serializing_if = "Option::is_none")]
    pub quantity: Option<i32>,
    /// ShareClassID is the class the shares belong to.
    #[serde(rename = "shareClassId", skip_serializing_if = "Option::is_none")]
    pub share_class_id: Option<String>,
    /// ShareClassName is that class's name.
    #[serde(rename = "shareClassName", skip_serializing_if = "Option::is_none")]
    pub share_class_name: Option<String>,
    /// ShareClassType is that class's type, COMMON or PREFERRED.
    #[serde(rename = "shareClassType", skip_serializing_if = "Option::is_none")]
    pub share_class_type: Option<String>,
    /// StakeholderID is the holder of the certificate.
    #[serde(rename = "stakeholderId", skip_serializing_if = "Option::is_none")]
    pub stakeholder_id: Option<String>,
    /// StakeholderName is that holder's name.
    #[serde(rename = "stakeholderName", skip_serializing_if = "Option::is_none")]
    pub stakeholder_name: Option<String>,
    /// Status is ACTIVE or DRAFT.
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
}

impl CaptableShare {
    pub fn new() -> CaptableShare {
        CaptableShare {
            capital_contribution: None,
            certificate_id: None,
            company_legends: None,
            id: None,
            issue_date: None,
            price_per_share: None,
            quantity: None,
            share_class_id: None,
            share_class_name: None,
            share_class_type: None,
            stakeholder_id: None,
            stakeholder_name: None,
            status: None,
        }
    }
}