use serde::{Deserialize, Serialize};
use crate::asset_kind::AssetKind;
use crate::{Resource, SpecificAssetId};
#[derive(Clone, PartialEq, Debug, Deserialize, Serialize)]
pub struct AssetInformation {
#[serde(rename = "assetKind")]
pub asset_kind: AssetKind,
#[serde(skip_serializing_if = "Option::is_none")]
#[serde(rename = "globalAssetId")]
pub global_asset_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
#[serde(rename = "specificAssetIds")]
pub specific_asset_ids: Option<Vec<SpecificAssetId>>,
#[serde(skip_serializing_if = "Option::is_none")]
#[serde(rename = "assetType")]
pub asset_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
#[serde(rename = "defaultThumbnail")]
pub default_thumbnail: Option<Resource>,
}
impl AssetInformation {
pub fn new(asset_kind: AssetKind) -> Self {
Self {
asset_kind,
global_asset_id: None,
specific_asset_ids: None,
asset_type: None,
default_thumbnail: None,
}
}
}