use super::client::KucoinClient;

crate::exchanges::impl_exchange_method_wrappers! {
    KucoinClient;
    public [
        get_futures_contract,
        get_futures_contracts,
        get_futures_kline,
        get_futures_open_interest,
        get_futures_orderbook,
        get_futures_public_trades,
        get_futures_ticker,
        get_spot_all_tickers,
        get_spot_instrument_info,
        get_spot_kline,
        get_spot_orderbook,
        get_spot_public_trades,
        get_spot_ticker,
    ];
    private [
        cancel_futures_all_orders,
        cancel_futures_order,
        cancel_futures_order_by_client_oid,
        cancel_spot_all_orders,
        cancel_spot_all_orders_by_symbol,
        cancel_spot_order,
        flex_transfer,
        get_account_balance,
        get_futures_account,
        get_futures_cross_margin_leverage,
        get_futures_open_order_value,
        get_futures_order,
        get_futures_order_by_client_oid,
        get_futures_order_list,
        get_futures_position,
        get_futures_position_mode,
        get_futures_positions,
        get_futures_recent_trade_history,
        get_futures_trade_history,
        get_spot_open_orders,
        get_spot_trade_history,
        get_transfer_quotas,
        modify_futures_cross_margin_leverage,
        place_futures_limit_buy_order,
        place_futures_limit_order,
        place_futures_limit_sell_order,
        place_futures_market_buy_order,
        place_futures_market_order,
        place_futures_market_sell_order,
        place_futures_order,
        place_futures_post_only_limit_buy_order,
        place_futures_post_only_limit_order,
        place_futures_post_only_limit_sell_order,
        place_spot_batch_limit_orders,
        place_spot_batch_market_orders,
        place_spot_batch_orders,
        place_spot_limit_buy_order,
        place_spot_limit_order,
        place_spot_limit_sell_order,
        place_spot_market_buy_order,
        place_spot_market_order,
        place_spot_market_sell_order,
        place_spot_order,
        place_spot_post_only_limit_buy_order,
        place_spot_post_only_limit_order,
        place_spot_post_only_limit_sell_order,
    ];
}
