use phoenix::state::{SelfTradeBehavior, Side};
pub struct LimitOrderTemplate {
pub side: Side,
pub price_as_float: f64,
pub size_in_base_units: f64,
pub self_trade_behavior: SelfTradeBehavior,
pub match_limit: Option<u64>,
pub client_order_id: u128,
pub use_only_deposited_funds: bool,
pub last_valid_slot: Option<u64>,
pub last_valid_unix_timestamp_in_seconds: Option<u64>,
pub fail_silently_on_insufficient_funds: bool,
}
pub struct PostOnlyOrderTemplate {
pub side: Side,
pub price_as_float: f64,
pub size_in_base_units: f64,
pub client_order_id: u128,
pub reject_post_only: bool,
pub use_only_deposited_funds: bool,
pub last_valid_slot: Option<u64>,
pub last_valid_unix_timestamp_in_seconds: Option<u64>,
pub fail_silently_on_insufficient_funds: bool,
}
pub struct ImmediateOrCancelOrderTemplate {
pub side: Side,
pub price_as_float: Option<f64>,
pub size_in_base_units: f64,
pub size_in_quote_units: f64,
pub min_base_units_to_fill: f64,
pub min_quote_units_to_fill: f64,
pub self_trade_behavior: SelfTradeBehavior,
pub match_limit: Option<u64>,
pub client_order_id: u128,
pub use_only_deposited_funds: bool,
pub last_valid_slot: Option<u64>,
pub last_valid_unix_timestamp_in_seconds: Option<u64>,
}