use serde::{Deserialize, Serialize}; /*
                                      * Compute Engine API
                                      *
                                      * Creates and runs virtual machines on Google Cloud Platform.
                                      *
                                      * The version of the OpenAPI document: v1
                                      *
                                      * Generated by: https://openapi-generator.tech
                                      */

/// NodeGroupMaintenanceWindow : Time window specified for daily maintenance operations. GCE's internal maintenance will be performed within this window.

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct NodeGroupMaintenanceWindow {
    #[serde(
        rename = "maintenanceDuration",
        skip_serializing_if = "Option::is_none"
    )]
    pub maintenance_duration: Option<Box<crate::google_rest_apis::compute_v1::models::Duration>>,
    /// Start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid.
    #[serde(rename = "startTime", skip_serializing_if = "Option::is_none")]
    pub start_time: Option<String>,
}

impl NodeGroupMaintenanceWindow {
    /// Time window specified for daily maintenance operations. GCE's internal maintenance will be performed within this window.
    pub fn new() -> NodeGroupMaintenanceWindow {
        NodeGroupMaintenanceWindow {
            maintenance_duration: None,
            start_time: None,
        }
    }
}
