using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudApp.Data.Manuals;
namespace AsbCloudApp.Services;
///
/// Сервис для работы c каталогом инструкций
///
public interface IManualCatalogService
{
///
/// Сохранение файла
///
///
///
///
///
///
///
Task SaveFileAsync(int? idCategory, int? idFolder, string name, Stream stream,
CancellationToken cancellationToken);
///
/// Добавление новой папки
///
///
///
///
///
///
Task AddFolderAsync(string name, int? idParent, int idCategory,
CancellationToken cancellationToken);
///
/// Обновление папки
///
///
///
///
///
Task UpdateFolderAsync(int id, string name, CancellationToken cancellationToken);
///
/// Удаление папки
///
///
///
///
Task DeleteFolderAsync(int id, CancellationToken cancellationToken);
///
/// Удаление файла
///
///
///
///
Task DeleteFileAsync(int id, CancellationToken cancellationToken);
///
/// Получение файла
///
///
///
///
Task<(Stream stream, string fileName)?> GetFileAsync(int id, CancellationToken cancellationToken);
///
/// Получение каталога
///
///
///
Task> GetCatalogAsync(CancellationToken cancellationToken);
}