use crate::client::{ApiError, Transport, info};
use crate::markets::perps::dex::{Dex, request, text};
use crate::utils::Address;
#[must_use]
pub fn clearinghouse_state_request(user: Address, dex: Dex<'_>) -> String {
request("clearinghouseState", vec![("user", text(&user.to_hex()))], dex)
}
pub async fn clearinghouse_state(
transport: &impl Transport,
user: Address,
dex: Dex<'_>,
) -> Result<ClearinghouseState, ApiError> {
info(transport, clearinghouse_state_request(user, dex)).await
}
pub type ClearinghouseState = crate::account::clearinghouse::Clearinghouse;
pub use crate::account::clearinghouse::{AssetPosition, CumFunding, Leverage, MarginSummary, Position};