import { Module } from '@nestjs/common';
import { BullModule } from '@nestjs/bullmq';
import { AdminEventsController } from './admin-events.controller';
import { PrismaService } from '../../infrastructure/database/prisma.service';
import { WorkerHeartbeat } from '../../infrastructure/queue/worker-heartbeat';
import { RedisService } from '../../infrastructure/redis/redis.service';
import { AdminAuthGuard } from '../../common/guards/admin-auth.guard';
import { AdminRolesGuard } from '../../common/guards/admin-roles.guard';

@Module({
  imports: [
    BullModule.registerQueue(
      { name: 'ai-analysis' }, { name: 'document-import' },
      { name: 'notification' }, { name: 'domain-events' },
    ),
  ],
  controllers: [AdminEventsController],
  providers: [PrismaService, WorkerHeartbeat, RedisService, AdminAuthGuard, AdminRolesGuard],
})
export class AdminEventsModule {}
