use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[cfg_attr(feature = "specta", derive(specta::Type))]
pub struct PendingItemSchema {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "account")]
pub account: String,
#[serde(rename = "source")]
pub source: models::PendingItemSource,
#[serde(rename = "source_id", skip_serializing_if = "Option::is_none")]
pub source_id: Option<String>,
#[serde(rename = "description")]
pub description: String,
#[serde(rename = "gold", skip_serializing_if = "Option::is_none")]
pub gold: Option<i32>,
#[serde(rename = "items", skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<models::SimpleItemSchema>>,
#[serde(rename = "created_at")]
pub created_at: String,
#[serde(rename = "claimed_at", skip_serializing_if = "Option::is_none")]
pub claimed_at: Option<String>,
}
impl PendingItemSchema {
pub fn new(
id: String,
account: String,
source: models::PendingItemSource,
description: String,
created_at: String,
) -> PendingItemSchema {
PendingItemSchema {
id,
account,
source,
source_id: None,
description,
gold: None,
items: None,
created_at,
claimed_at: None,
}
}
}