using CryptoExchange.Net.Objects.Options;
using CryptoExchange.Net.SharedApis;
using System;
namespace CryptoExchange.Net.Interfaces
{
///
/// Factory for ISymbolOrderBook instances
///
public interface IOrderBookFactory where TOptions : OrderBookOptions
{
///
/// Create a new order book by symbol name
///
/// Symbol name
/// Options for the order book
///
public ISymbolOrderBook Create(string symbol, Action? options = null);
///
/// Create a new order book by base and quote asset names
///
/// Base asset name
/// Quote asset name
/// Options for the order book
///
public ISymbolOrderBook Create(string baseAsset, string quoteAsset, Action? options = null);
///
/// Create a new order book by base and quote asset names
///
/// Symbol
/// Options for the order book
///
public ISymbolOrderBook Create(SharedSymbol symbol, Action? options = null);
}
}