import { Module } from '@nestjs/common';
import { ScheduleModule } from '@nestjs/schedule';
import { LeaderboardApplicationService } from '../application/services/leaderboard-application.service';
import { LeaderboardRefreshScheduler } from '../application/schedulers/leaderboard-refresh.scheduler';
import { DomainModule } from './domain.module';
import { InfrastructureModule } from './infrastructure.module';

@Module({
  imports: [
    ScheduleModule.forRoot(),
    DomainModule,
    InfrastructureModule,
  ],
  providers: [
    LeaderboardApplicationService,
    LeaderboardRefreshScheduler,
  ],
  exports: [
    LeaderboardApplicationService,
  ],
})
export class ApplicationModule {}
