import { Module } from '@nestjs/common'; import { ScheduleModule } from '@nestjs/schedule'; import { DomainModule } from '../domain/domain.module'; import { InfrastructureModule } from '../infrastructure/infrastructure.module'; import { GenerateReportHandler } from './commands/generate-report/generate-report.handler'; import { ExportReportHandler } from './commands/export-report/export-report.handler'; import { GetReportSnapshotHandler } from './queries/get-report-snapshot/get-report-snapshot.handler'; import { ReportingApplicationService } from './services/reporting-application.service'; import { ReportGenerationScheduler } from './schedulers/report-generation.scheduler'; @Module({ imports: [ScheduleModule.forRoot(), DomainModule, InfrastructureModule], providers: [ GenerateReportHandler, ExportReportHandler, GetReportSnapshotHandler, ReportingApplicationService, ReportGenerationScheduler, ], exports: [ GenerateReportHandler, ExportReportHandler, GetReportSnapshotHandler, ReportingApplicationService, ], }) export class ApplicationModule {}