import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { NotifierService } from './notifier.service';
import { ConfigModule } from '@nestjs/config';
import { SendEmailEntity } from 'src/entities/send-email.entity';
import { TemplateEntity } from 'src/entities/template.entity';
import { CommonService } from 'src/common/common.service';
import { ProjectActionEntity } from '../entities/project-action.entity';
import { UserEntity } from '../entities/user.entity';
import { ScheduleModule } from '@nestjs/schedule';
import { ColumnEntity } from '../entities/column.entity';
import { NotificationEntity } from '../entities/notification.entity';
import { NotifierController } from './notifier.controller';
import { ProjectUserEntity } from '../entities/project-user.entity';

@Module({
  imports: [
    ScheduleModule.forRoot(),
    ConfigModule,
    TypeOrmModule.forFeature([
      UserEntity,
      ProjectActionEntity,
      SendEmailEntity,
      TemplateEntity,
      ColumnEntity,
      NotificationEntity,
      ProjectUserEntity,
    ]),
  ],
  providers: [NotifierService, CommonService],
  controllers: [NotifierController],
  exports: [NotifierService],
})
export class NotifierModule {}
