using ScrapperAPI.Dtos; namespace ScrapperAPI.Interfaces; public interface IExtractionCoordinator { /// /// Cria um run e inicia o processamento em background. /// Task StartRunAsync(StartExtractionRequest request, CancellationToken ct); /// /// Cria runs para varias sessions e enfileira para processamento. /// Se SessionIds estiver vazio/nulo, roda para todas as sessions existentes. /// Task> StartBulkRunsAsync(BulkStartExtractionRequest request, CancellationToken ct); /// /// Retorna status em tempo real (se estiver rodando). /// ExtractionRuntimeStatus GetRuntimeStatus(long runId); }