use super::types::BookOrderState;
use crate::types::{CorrelationId, FillPrice, FillQuantity, OrderId};
#[derive(Debug, Clone)]
pub struct PlaceOrderResult {
pub accepted: bool,
pub order_id: OrderId,
pub matched: FillQuantity,
pub avg_matched_price: Option<FillPrice>,
pub remaining: FillQuantity,
pub final_order_state: Option<BookOrderState>,
}
#[derive(Debug, Clone)]
pub enum CommandResponseKind {
PlaceOrder(PlaceOrderResult),
}
#[derive(Debug, Clone)]
pub struct CommandResponse {
pub correlation_id: Option<CorrelationId>,
pub kind: Option<CommandResponseKind>,
}