using Persistence.Models;
namespace Persistence.Repositories;
///
/// Интерфейс по работе с временными данными
///
///
public interface ITimeSeriesDataRepository : ISyncRepository
where TDto : class, ITimeSeriesAbstractDto, new()
{
///
/// Получить страницу списка объектов
///
/// дата начала
/// дата окончания
///
///
Task> GetAsync(DateTimeOffset dateBegin, DateTimeOffset dateEnd, CancellationToken token);
///
/// Получить диапазон дат, для которых есть данные в репозитории
///
///
///
Task GetDatesRangeAsync(CancellationToken token);
///
/// Добавление записей
///
///
///
///
Task InsertRange(IEnumerable dtos, CancellationToken token);
///
/// Получение списка последних записей
///
/// количество записей
///
///
Task> GetLastAsync(int takeCount, CancellationToken token);
///
/// Получение первой записи
///
///
///
Task GetFirstAsync(CancellationToken token);
}