import { Module } from '@nestjs/common';
import { NotificationsService } from './notifications.service';
import { NotificationsController } from './notifications.controller';
import { TypeOrmModule } from '@nestjs/typeorm';
import { ApiLog } from 'src/api-logs/entities/api-log.entity';
import { Notification } from './entities/notification.entity';
import { NotificationRepository } from './notifications.repository';
import { AppUserRepository } from 'src/app_users/app_users.repository';
import { AppUser } from 'src/app_users/entities/app_user.entity';
import { GroupsRepository } from 'src/groups/groups.repository';
import { Group } from 'src/groups/entities/group.entity';
import { AppUsersStep } from 'src/app_users_steps/entities/app_users_step.entity';
import { SendNotificationService } from 'src/common/push-notification';
import { UserNotification } from './entities/user-notification.entity';
import { UserRepository } from 'src/user/user.repository';
import { UserEntity } from 'src/user/entities/user.entity';

@Module({
  imports: [
    TypeOrmModule.forFeature([
      Notification,
      ApiLog,
      AppUser,
      Group,
      AppUsersStep,
      UserNotification,
      UserEntity,
    ]),
  ],
  controllers: [NotificationsController],
  providers: [
    NotificationsService,
    NotificationRepository,
    AppUserRepository,
    GroupsRepository,
    SendNotificationService,
    UserRepository,
  ],
})
export class NotificationsModule {}
