/// Use Case: Exporter un rapport au format Excel/CSV
library export_report_excel;

import 'package:injectable/injectable.dart';
import '../repositories/reports_repository.dart';

/// Exporte un rapport au format Excel ou CSV
@injectable
class ExportReportExcel {
  final IReportsRepository _repository;

  ExportReportExcel(this._repository);

  /// Exécute le use case
  /// [type] : Type de rapport à exporter
  /// [format] : Format d'export ('excel' ou 'csv', défaut: 'excel')
  /// Retourne l'URL ou le chemin du fichier Excel/CSV généré
  /// Wrapper de generateReport avec format='excel' ou 'csv'
  Future<String> call(String type, {String format = 'excel'}) async {
    return _repository.exportReportExcel(type, format: format);
  }
}
