/*
 * Hetzner Cloud API
 *
 * Copied from the official API documentation for the Public Hetzner Cloud.
 *
 * The version of the OpenAPI document: 4b3f595
 *
 * Generated by: https://openapi-generator.tech
 */

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

/// CreateLoadBalancerResponse : Response to POST https://api.hetzner.cloud/v1/load_balancers
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CreateLoadBalancerResponse {
    #[serde(rename = "action")]
    pub action: Box<models::Action>,
    #[serde(rename = "load_balancer")]
    pub load_balancer: Box<models::LoadBalancer>,
}

impl CreateLoadBalancerResponse {
    /// Response to POST https://api.hetzner.cloud/v1/load_balancers
    pub fn new(
        action: models::Action,
        load_balancer: models::LoadBalancer,
    ) -> CreateLoadBalancerResponse {
        CreateLoadBalancerResponse {
            action: Box::new(action),
            load_balancer: Box::new(load_balancer),
        }
    }
}
