use crate::umfutures::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetAccountV2Resp {
#[serde(rename = "assets", skip_serializing_if = "Option::is_none")]
pub assets: Option<Vec<models::GetAccountV2RespAssetsInner>>,
#[serde(rename = "availableBalance", skip_serializing_if = "Option::is_none")]
pub available_balance: Option<String>,
#[serde(rename = "canDeposit", skip_serializing_if = "Option::is_none")]
pub can_deposit: Option<bool>,
#[serde(rename = "canWithdraw", skip_serializing_if = "Option::is_none")]
pub can_withdraw: Option<bool>,
#[serde(rename = "feeBurn", skip_serializing_if = "Option::is_none")]
pub fee_burn: Option<bool>,
#[serde(rename = "feeTier", skip_serializing_if = "Option::is_none")]
pub fee_tier: Option<i32>,
#[serde(rename = "maxWithdrawAmount", skip_serializing_if = "Option::is_none")]
pub max_withdraw_amount: Option<String>,
#[serde(rename = "multiAssetsMargin", skip_serializing_if = "Option::is_none")]
pub multi_assets_margin: Option<bool>,
#[serde(rename = "positions", skip_serializing_if = "Option::is_none")]
pub positions: Option<Vec<models::GetAccountV2RespPositionsInner>>,
#[serde(rename = "totalCrossUnPnl", skip_serializing_if = "Option::is_none")]
pub total_cross_un_pnl: Option<String>,
#[serde(rename = "totalCrossWalletBalance", skip_serializing_if = "Option::is_none")]
pub total_cross_wallet_balance: Option<String>,
#[serde(rename = "totalInitialMargin", skip_serializing_if = "Option::is_none")]
pub total_initial_margin: Option<String>,
#[serde(rename = "totalMaintMargin", skip_serializing_if = "Option::is_none")]
pub total_maint_margin: Option<String>,
#[serde(rename = "totalMarginBalance", skip_serializing_if = "Option::is_none")]
pub total_margin_balance: Option<String>,
#[serde(rename = "totalOpenOrderInitialMargin", skip_serializing_if = "Option::is_none")]
pub total_open_order_initial_margin: Option<String>,
#[serde(rename = "totalPositionInitialMargin", skip_serializing_if = "Option::is_none")]
pub total_position_initial_margin: Option<String>,
#[serde(rename = "totalUnrealizedProfit", skip_serializing_if = "Option::is_none")]
pub total_unrealized_profit: Option<String>,
#[serde(rename = "totalWalletBalance", skip_serializing_if = "Option::is_none")]
pub total_wallet_balance: Option<String>,
#[serde(rename = "tradeGroupId", skip_serializing_if = "Option::is_none")]
pub trade_group_id: Option<i64>,
#[serde(rename = "updateTime", skip_serializing_if = "Option::is_none")]
pub update_time: Option<i64>,
}
impl GetAccountV2Resp {
pub fn new() -> GetAccountV2Resp {
GetAccountV2Resp {
assets: None,
available_balance: None,
can_deposit: None,
can_withdraw: None,
fee_burn: None,
fee_tier: None,
max_withdraw_amount: None,
multi_assets_margin: None,
positions: None,
total_cross_un_pnl: None,
total_cross_wallet_balance: None,
total_initial_margin: None,
total_maint_margin: None,
total_margin_balance: None,
total_open_order_initial_margin: None,
total_position_initial_margin: None,
total_unrealized_profit: None,
total_wallet_balance: None,
trade_group_id: None,
update_time: None,
}
}
}