using CryptoExchange.Net.Objects;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace CryptoExchange.Net.SharedApis
{
///
/// Operation for canceling an open futures order on an exchange.
///
public interface ICancelFuturesOrder : ISharedApiCapability
{
///
/// Futures cancel order request options.
/// Use and to check for required and optional parameters for the request.
/// Exchange specific parameters can be added to the request via the `ExchangeParameters` property of the request object.
///
CancelFuturesOrderOptions CancelFuturesOrderOptions { get; }
///
/// Cancel a futures order, see for request options and exchange specific required/optional parameters.
///
/// Request info
/// Cancellation token
Task> CancelFuturesOrderAsync(CancelOrderRequest request, CancellationToken ct = default);
}
///
/// Operation for canceling an open futures order on an exchange via the REST API.
///
public interface ICancelFuturesOrderRest : ICancelFuturesOrder, ISharedRest
{
///
new Task> CancelFuturesOrderAsync(CancelOrderRequest request, CancellationToken ct = default);
}
///
/// Operation for canceling an open futures order on an exchange via the WebSocket API.
///
public interface ICancelFuturesOrderSocket : ICancelFuturesOrder, ISharedSocket
{
///
new Task> CancelFuturesOrderAsync(CancelOrderRequest request, CancellationToken ct = default);
}
}