use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Image {
#[serde(rename = "aliases", skip_serializing_if = "Option::is_none")]
pub aliases: Option<Vec<models::ImageAlias>>,
#[serde(rename = "architecture", skip_serializing_if = "Option::is_none")]
pub architecture: Option<String>,
#[serde(rename = "auto_update", skip_serializing_if = "Option::is_none")]
pub auto_update: Option<bool>,
#[serde(rename = "cached", skip_serializing_if = "Option::is_none")]
pub cached: Option<bool>,
#[serde(rename = "created_at", skip_serializing_if = "Option::is_none")]
pub created_at: Option<chrono::DateTime<chrono::FixedOffset>>,
#[serde(rename = "expires_at", skip_serializing_if = "Option::is_none")]
pub expires_at: Option<chrono::DateTime<chrono::FixedOffset>>,
#[serde(rename = "filename", skip_serializing_if = "Option::is_none")]
pub filename: Option<String>,
#[serde(rename = "fingerprint", skip_serializing_if = "Option::is_none")]
pub fingerprint: Option<String>,
#[serde(rename = "last_used_at", skip_serializing_if = "Option::is_none")]
pub last_used_at: Option<chrono::DateTime<chrono::FixedOffset>>,
#[serde(rename = "profiles", skip_serializing_if = "Option::is_none")]
pub profiles: Option<Vec<String>>,
#[serde(rename = "project", skip_serializing_if = "Option::is_none")]
pub project: Option<String>,
#[serde(rename = "properties", skip_serializing_if = "Option::is_none")]
pub properties: Option<std::collections::HashMap<String, String>>,
#[serde(rename = "public", skip_serializing_if = "Option::is_none")]
pub public: Option<bool>,
#[serde(rename = "size", skip_serializing_if = "Option::is_none")]
pub size: Option<i64>,
#[serde(rename = "type", skip_serializing_if = "Option::is_none")]
pub r#type: Option<String>,
#[serde(rename = "update_source", skip_serializing_if = "Option::is_none")]
pub update_source: Option<Box<models::ImageSource>>,
#[serde(rename = "uploaded_at", skip_serializing_if = "Option::is_none")]
pub uploaded_at: Option<chrono::DateTime<chrono::FixedOffset>>,
}
impl Image {
pub fn new() -> Image {
Image {
aliases: None,
architecture: None,
auto_update: None,
cached: None,
created_at: None,
expires_at: None,
filename: None,
fingerprint: None,
last_used_at: None,
profiles: None,
project: None,
properties: None,
public: None,
size: None,
r#type: None,
update_source: None,
uploaded_at: None,
}
}
}