use std::fmt;
use crate::api::ApiBuilder;
#[derive(Debug, Copy, Clone)]
pub(crate) enum PrivateMethod {
AddExport,
Balance,
ClosedOrders,
ExportStatus,
Ledgers,
OpenOrders,
OpenPositions,
QueryLedgers,
QueryOrders,
QueryTrades,
RemoveExport,
RetrieveExport,
TradeBalance,
TradeVolume,
TradesHistory,
AddOrder,
CancelAll,
CancelOrder,
CancelAllOrdersAfter,
DepositAddresses,
DepositMethods,
DepositStatus,
WalletTransfer,
Withdraw,
WithdrawCancel,
WithdrawInfo,
WithdrawStatus,
GetWebSocketsToken,
}
impl fmt::Display for PrivateMethod {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "{:?}", self)
}
}
pub fn retrieve_export() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::RetrieveExport)
}
pub fn wallet_transfer() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::WalletTransfer)
}
pub fn withdraw_cancel() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::WithdrawCancel)
}
pub fn withdraw_status() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::WithdrawStatus)
}
pub fn withdraw() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::Withdraw)
}
pub fn withdraw_info() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::WithdrawInfo)
}
pub fn deposit_status() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::DepositStatus)
}
pub fn deposit_addresses() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::DepositAddresses)
}
pub fn deposit_methods() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::DepositMethods)
}
pub fn balance() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::Balance)
}
pub fn trade_balance() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::TradeBalance)
}
pub fn open_orders() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::OpenOrders)
}
pub fn closed_orders() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::ClosedOrders)
}
pub fn query_ledgers() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::QueryLedgers)
}
pub fn query_orders() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::QueryOrders)
}
pub fn trades_history() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::TradesHistory)
}
pub fn query_trades() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::QueryTrades)
}
pub fn open_positions() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::OpenPositions)
}
pub fn ledgers() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::Ledgers)
}
pub fn trade_volume() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::TradeVolume)
}
pub fn add_export() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::AddExport)
}
pub fn export_status() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::ExportStatus)
}
pub fn remove_export() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::RemoveExport)
}
pub fn add_order() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::AddOrder)
}
pub fn cancel_order() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::CancelOrder)
}
pub fn cancel_all() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::CancelAll)
}
pub fn cancel_all_after() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::CancelAllOrdersAfter)
}
pub fn get_websockets_token() -> ApiBuilder {
ApiBuilder::private(PrivateMethod::GetWebSocketsToken)
}