Catalog/imagecatalog/Services/IAiExtractionService.cs

22 lines
559 B
C#
Raw Normal View History

using System;
using System.Threading;
using System.Threading.Tasks;
using ImageCatalog_2.Models;
namespace ImageCatalog_2.Services;
public sealed class AiExtractionRequest
{
public required string SearchRoot { get; init; }
public required bool Recursive { get; init; }
public string CsvOutputPath { get; init; } = string.Empty;
}
public interface IAiExtractionService
{
Task RunAsync(
AiExtractionRequest request,
CancellationToken token,
Func<AiResultItem, Task> onResult,
Func<double, Task> onProgress);
}