using System.Collections.Generic;
using CounterDrone.Core.Models;
using CounterDrone.Core.Simulation;

namespace CounterDrone.Core.Services
{
    /// <summary>报告服务</summary>
    public interface IReportService
    {
        SimulationReport Generate(string taskId, TaskFullConfig config,
            List<SimEvent> events, string finalDroneStatus, float duration);
        SimulationReport GetReport(string id);
        void DeleteReport(string id);
        PagedResult<SimulationReport> SearchReports(string keyword, string? dateFrom, string? dateTo, int page, int pageSize);
        /// <summary>导出报告为 Markdown 文件，返回文件路径</summary>
        string ExportToFile(string reportId, string outputDir);
    }
}
