lighter-sdk 0.1.1

Rust SDK for interacting with the Lighter exchange over REST, WebSocket, and signer-backed transaction flows.
Documentation
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Trade {
    pub trade_id: i64,
    #[serde(default)]
    pub tx_hash: String,
    #[serde(rename = "type", default)]
    pub trade_type: String,
    pub market_id: i64,
    pub size: String,
    pub price: String,
    #[serde(default)]
    pub usd_amount: String,
    #[serde(default)]
    pub ask_id: i64,
    #[serde(default)]
    pub bid_id: i64,
    #[serde(default)]
    pub ask_client_id: Option<i64>,
    #[serde(default)]
    pub bid_client_id: Option<i64>,
    #[serde(default)]
    pub ask_account_id: i64,
    #[serde(default)]
    pub bid_account_id: i64,
    pub is_maker_ask: bool,
    #[serde(default)]
    pub block_height: i64,
    pub timestamp: i64,
    #[serde(default)]
    pub taker_fee: Option<i64>,
    #[serde(default)]
    pub taker_position_size_before: Option<String>,
    #[serde(default)]
    pub taker_entry_quote_before: Option<String>,
    #[serde(default)]
    pub taker_initial_margin_fraction_before: Option<i64>,
    #[serde(default)]
    pub taker_position_sign_changed: Option<bool>,
    #[serde(default)]
    pub maker_fee: Option<i64>,
    #[serde(default)]
    pub maker_position_size_before: Option<String>,
    #[serde(default)]
    pub maker_entry_quote_before: Option<String>,
    #[serde(default)]
    pub maker_initial_margin_fraction_before: Option<i64>,
    #[serde(default)]
    pub maker_position_sign_changed: Option<bool>,
    #[serde(default)]
    pub transaction_time: i64,
    #[serde(default)]
    pub ask_account_pnl: Option<String>,
    #[serde(default)]
    pub bid_account_pnl: Option<String>,
}

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Trades {
    pub code: i64,
    #[serde(default)]
    pub message: Option<String>,
    #[serde(default)]
    pub trades: Vec<Trade>,
    #[serde(default, alias = "next_cursor")]
    pub cursor: Option<String>,
}