use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Box {
#[serde(rename = "boxId", skip_serializing_if = "Option::is_none")]
pub box_id: Option<String>,
#[serde(rename = "contentInformationSource", skip_serializing_if = "Option::is_none")]
pub content_information_source: Option<models::fulfillment_inbound_2024_03_20::BoxContentInformationSource>,
#[serde(rename = "destinationRegion", skip_serializing_if = "Option::is_none")]
pub destination_region: Option<std::boxed::Box<models::fulfillment_inbound_2024_03_20::Region>>,
#[serde(rename = "dimensions", skip_serializing_if = "Option::is_none")]
pub dimensions: Option<std::boxed::Box<models::fulfillment_inbound_2024_03_20::Dimensions>>,
#[serde(rename = "externalContainerIdentifier", skip_serializing_if = "Option::is_none")]
pub external_container_identifier: Option<String>,
#[serde(rename = "externalContainerIdentifierType", skip_serializing_if = "Option::is_none")]
pub external_container_identifier_type: Option<String>,
#[serde(rename = "items", skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<models::fulfillment_inbound_2024_03_20::Item>>,
#[serde(rename = "packageId")]
pub package_id: String,
#[serde(rename = "quantity", skip_serializing_if = "Option::is_none")]
pub quantity: Option<i32>,
#[serde(rename = "templateName", skip_serializing_if = "Option::is_none")]
pub template_name: Option<String>,
#[serde(rename = "weight", skip_serializing_if = "Option::is_none")]
pub weight: Option<std::boxed::Box<models::fulfillment_inbound_2024_03_20::Weight>>,
}
impl Box {
pub fn new(package_id: String) -> Box {
Box {
box_id: None,
content_information_source: None,
destination_region: None,
dimensions: None,
external_container_identifier: None,
external_container_identifier_type: None,
items: None,
package_id,
quantity: None,
template_name: None,
weight: None,
}
}
}