// timeline/timeline.module.ts
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';

import { Timeline } from '@/entities/timeline.entity';
import { Trip } from '@/entities/trip.entity';

import { TimelineService } from './timeline.service';
import { TimelineController } from './timeline.controller';
import { NotificationGateway } from '@/notification/notification.gateway';
import { Notification } from '@/entities/notification.entity';
import { Group } from '@/entities/group.entity';
import { GroupMember } from '@/entities/group-member.entity';
import { AuthModule } from '@/auth/auth.module';
import { NotificationService } from '@/notification/notification.service';
import { PushModule } from '@/push/push.module';
import { Map } from '@/entities/map.entity';

@Module({
  imports: [TypeOrmModule.forFeature([Timeline, Trip, Group, GroupMember, Notification, Map]), AuthModule, PushModule],
  controllers: [TimelineController],
  providers: [TimelineService, NotificationService,  NotificationGateway],
  exports: [TimelineService],
})
export class TimelineModule {}