using CryptoExchange.Net.Objects;
using CryptoExchange.Net.Objects.Sockets;
using System;
using System.Threading;
using System.Threading.Tasks;
namespace CryptoExchange.Net.SharedApis
{
///
/// Client for subscribing to order book snapshot updates for a symbol
///
public interface ISubscribeOrderBookSocket : ISharedSubscription
{
///
/// Order book subscription options
///
SubscribeOrderBookOptions SubscribeOrderBookOptions { get; }
///
/// Subscribe to order book snapshot updates for a symbol
///
/// Request info
/// Update handler
/// Cancellation token, can be used to stop the updates
///
Task> SubscribeToOrderBookUpdatesAsync(SubscribeOrderBookRequest request, Action> handler, CancellationToken ct = default);
}
}