using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using AsbCloudApp.Data.Manuals; using AsbCloudApp.Services; namespace AsbCloudApp.Repositories; /// <summary> /// Репозиторий для работы с директориямиы хранящими инструкциями /// </summary> public interface IManualDirectoryRepository : ICrudRepository<ManualDirectoryDto> { /// <summary> /// Получение дерева директорий /// </summary> /// <param name="cancellationToken"></param> /// <returns></returns> Task<IEnumerable<ManualDirectoryDto>> GetTreeAsync(CancellationToken cancellationToken); /// <summary> /// Получение одной директории по параметрам /// </summary> /// <param name="name"></param> /// <param name="idParent"></param> /// <param name="cancellationToken"></param> /// <returns></returns> Task<ManualDirectoryDto?> GetOrDefaultAsync(string name, int? idParent, CancellationToken cancellationToken); /// <summary> /// Проверка директории на существование /// </summary> /// <param name="id"></param> /// <param name="cancellationToken"></param> /// <returns></returns> Task<bool> IsExistsAsync(int id, CancellationToken cancellationToken); }