use super::{SignedValue, Value};
#[cfg_attr(js, derive(tsify_next::Tsify))]
#[cfg_attr(js, tsify(from_wasm_abi, into_wasm_abi))]
#[cfg_attr(serde, derive(serde::Serialize, serde::Deserialize))]
#[derive(Debug, Clone)]
pub struct MarketStatus {
pub funding_rate_per_second_for_long: i128,
pub funding_rate_per_second_for_short: i128,
pub borrowing_rate_per_second_for_long: u128,
pub borrowing_rate_per_second_for_short: u128,
pub pending_pnl_for_long: SignedValue,
pub pending_pnl_for_short: SignedValue,
pub reserved_value_for_long: u128,
pub reserved_value_for_short: u128,
pub max_reserve_value_for_long: u128,
pub max_reserve_value_for_short: u128,
pub pool_value_without_pnl_for_long: Value,
pub pool_value_without_pnl_for_short: Value,
pub liquidity_for_long: u128,
pub liquidity_for_short: u128,
pub max_liquidity_for_long: u128,
pub max_liquidity_for_short: u128,
pub open_interest_for_long: u128,
pub open_interest_for_short: u128,
pub open_interest_in_tokens_for_long: u128,
pub open_interest_in_tokens_for_short: u128,
pub min_collateral_factor_for_long: u128,
pub min_collateral_factor_for_short: u128,
}