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 TemplateOverride {
    /// Body is the text/template source. Required. Every {{.key}} it references must be declared in Fields, or the save is refused rather than rendering a blank into a contract later.
    #[serde(rename = "body", skip_serializing_if = "Option::is_none")]
    pub body: Option<String>,
    /// Category groups the template: formation, equity, ops or sales. Optional when overriding a built-in, which supplies its own.
    #[serde(rename = "category", skip_serializing_if = "Option::is_none")]
    pub category: Option<String>,
    /// CounselReview marks a template whose documents must carry the counsel notice. It can be raised but never lowered: a formation or equity template is always counsel-review, and an override of a counsel-review built-in stays one.
    #[serde(rename = "counselReview", skip_serializing_if = "Option::is_none")]
    pub counsel_review: Option<bool>,
    /// Fields declares the merge fields the body consumes. Every declared field is REQUIRED at generation — the engine fails closed on a missing one.
    #[serde(rename = "fields", skip_serializing_if = "Option::is_none")]
    pub fields: Option<Vec<models::Field>>,
    /// ID is the template to override, from the path. Overriding a built-in id inherits that built-in's category, title and counsel-review posture.
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    /// Title is the template's display name. Required unless a built-in supplies it.
    #[serde(rename = "title", skip_serializing_if = "Option::is_none")]
    pub title: Option<String>,
}

impl TemplateOverride {
    pub fn new() -> TemplateOverride {
        TemplateOverride {
            body: None,
            category: None,
            counsel_review: None,
            fields: None,
            id: None,
            title: None,
        }
    }
}