using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using AIImages.Models;
namespace AIImages.Services
{
///
/// Интерфейс сервиса для работы с Stable Diffusion API
///
public interface IStableDiffusionApiService
{
///
/// Генерирует изображение на основе запроса
///
Task GenerateImageAsync(
GenerationRequest request,
CancellationToken cancellationToken = default
);
///
/// Получает прогресс текущей генерации
///
Task GetProgressAsync(CancellationToken cancellationToken = default);
///
/// Проверяет доступность API
///
Task CheckApiAvailability(
string apiEndpoint,
CancellationToken cancellationToken = default
);
///
/// Получает список доступных моделей с API
///
Task> GetAvailableModels(
string apiEndpoint,
CancellationToken cancellationToken = default
);
///
/// Получает список доступных сэмплеров
///
Task> GetAvailableSamplers(
string apiEndpoint,
CancellationToken cancellationToken = default
);
///
/// Получает список доступных schedulers
///
Task> GetAvailableSchedulers(
string apiEndpoint,
CancellationToken cancellationToken = default
);
}
}