use {
crate::models,
serde::{Deserialize, Serialize},
};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct VaultAsset {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "total")]
pub total: String,
#[serde(rename = "balance", skip_serializing_if = "Option::is_none")]
pub balance: Option<String>,
#[serde(rename = "available")]
pub available: String,
#[serde(rename = "pending")]
pub pending: String,
#[serde(rename = "frozen")]
pub frozen: String,
#[serde(rename = "lockedAmount")]
pub locked_amount: String,
#[serde(rename = "staked", skip_serializing_if = "Option::is_none")]
pub staked: Option<String>,
#[serde(rename = "totalStakedCPU", skip_serializing_if = "Option::is_none")]
pub total_staked_cpu: Option<f64>,
#[serde(rename = "totalStakedNetwork", skip_serializing_if = "Option::is_none")]
pub total_staked_network: Option<String>,
#[serde(rename = "selfStakedCPU", skip_serializing_if = "Option::is_none")]
pub self_staked_cpu: Option<String>,
#[serde(rename = "selfStakedNetwork", skip_serializing_if = "Option::is_none")]
pub self_staked_network: Option<String>,
#[serde(rename = "pendingRefundCPU", skip_serializing_if = "Option::is_none")]
pub pending_refund_cpu: Option<String>,
#[serde(
rename = "pendingRefundNetwork",
skip_serializing_if = "Option::is_none"
)]
pub pending_refund_network: Option<String>,
#[serde(rename = "blockHeight", skip_serializing_if = "Option::is_none")]
pub block_height: Option<String>,
#[serde(rename = "blockHash", skip_serializing_if = "Option::is_none")]
pub block_hash: Option<String>,
#[serde(rename = "rewardsInfo", skip_serializing_if = "Option::is_none")]
pub rewards_info: Option<models::RewardsInfo>,
}
impl VaultAsset {
pub fn new(
id: String,
total: String,
available: String,
pending: String,
frozen: String,
locked_amount: String,
) -> VaultAsset {
VaultAsset {
id,
total,
balance: None,
available,
pending,
frozen,
locked_amount,
staked: None,
total_staked_cpu: None,
total_staked_network: None,
self_staked_cpu: None,
self_staked_network: None,
pending_refund_cpu: None,
pending_refund_network: None,
block_height: None,
block_hash: None,
rewards_info: None,
}
}
}