use crate::ws::Arg;
pub fn tickers(inst_id: impl Into<String>) -> Arg {
Arg::new("tickers").inst_id(inst_id)
}
pub fn candlesticks(channel: impl Into<String>, inst_id: impl Into<String>) -> Arg {
Arg::new(channel).inst_id(inst_id)
}
pub fn trades(inst_id: impl Into<String>) -> Arg {
Arg::new("trades").inst_id(inst_id)
}
pub fn all_trades(inst_id: impl Into<String>) -> Arg {
Arg::new("trades-all").inst_id(inst_id)
}
pub fn order_book(channel: impl Into<String>, inst_id: impl Into<String>) -> Arg {
Arg::new(channel).inst_id(inst_id)
}
pub fn option_trades(
inst_type: impl Into<String>,
inst_id: Option<impl Into<String>>,
inst_family: Option<impl Into<String>>,
) -> Arg {
let mut arg = Arg::new("option-trades").inst_type(inst_type);
if let Some(inst_id) = inst_id {
arg = arg.inst_id(inst_id);
}
if let Some(inst_family) = inst_family {
arg = arg.inst_family(inst_family)
}
arg
}
pub fn call_auction_details(inst_id: impl Into<String>) -> Arg {
Arg::new("call-auction-details").inst_id(inst_id)
}