using Managing.Common;
using Managing.Domain.Candles;

namespace Managing.Application.Abstractions.Repositories;

public interface ICandleRepository
{
    Task<IList<Candle>> GetCandles(
        Enums.TradingExchanges exchange,
        Enums.Ticker ticker,
        Enums.Timeframe timeframe,
        DateTime start);
        
    Task<IList<Candle>> GetCandles(
        Enums.TradingExchanges exchange,
        Enums.Ticker ticker,
        Enums.Timeframe timeframe,
        DateTime start,
        DateTime end);
        
    Task<IList<Enums.Ticker>> GetTickersAsync(
        Enums.TradingExchanges exchange,
        Enums.Timeframe timeframe,
        DateTime start);
    void InsertCandle(Candle candle);
}
