artifacts/models/
bank_item_transaction_schema.rs1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5#[cfg_attr(feature = "specta", derive(specta::Type))]
6pub struct BankItemTransactionSchema {
7 #[serde(rename = "cooldown")]
9 pub cooldown: Box<models::CooldownSchema>,
10 #[serde(rename = "items")]
12 pub items: Vec<models::SimpleItemSchema>,
13 #[serde(rename = "bank")]
15 pub bank: Vec<models::SimpleItemSchema>,
16 #[serde(rename = "character")]
18 pub character: Box<models::CharacterSchema>,
19}
20
21impl BankItemTransactionSchema {
22 pub fn new(
23 cooldown: models::CooldownSchema,
24 items: Vec<models::SimpleItemSchema>,
25 bank: Vec<models::SimpleItemSchema>,
26 character: models::CharacterSchema,
27 ) -> BankItemTransactionSchema {
28 BankItemTransactionSchema {
29 cooldown: Box::new(cooldown),
30 items,
31 bank,
32 character: Box::new(character),
33 }
34 }
35}
36
37impl crate::traits::GetCooldown for BankItemTransactionSchema {
38 fn get_cooldown(&self) -> &crate::models::CooldownSchema {
39 &self.cooldown
40 }
41}
42
43impl crate::traits::GetCharacter for BankItemTransactionSchema {
44 fn get_character(&self) -> &crate::models::CharacterSchema {
45 &self.character
46 }
47}