import { Module } from "@nestjs/common";
import { TrainingCalloutService } from "./training-callout.service";
import { MongooseModule } from "@nestjs/mongoose";
import {
  TrainingCallout,
  TrainingCalloutSchema,
} from "./schema/training-callout.schema";
import { ResponseService } from "src/common/service/response.service";
import { TranslationService } from "src/common/service/translation.service";
import { UserSchema, User } from "src/user/schemas/user.schema";
import { TrainingCalloutController } from "./training-callout.controller";
import { JwtUtilsService } from "src/common/service/jwt.util.service";
import {
  BuddyRequest,
  BuddyRequestSchema,
} from "src/buddies/schema/buddy-requests.schema";
import {
  TrainingHomeGym,
  TrainingHomeGymSchema,
} from "src/training/schemas/training-homegym.schema";

@Module({
  imports: [
    MongooseModule.forFeature([
      { name: TrainingCallout.name, schema: TrainingCalloutSchema },
      { name: User.name, schema: UserSchema },
      { name: TrainingHomeGym.name, schema: TrainingHomeGymSchema },
      { name: BuddyRequest.name, schema: BuddyRequestSchema },
    ]),
  ],
  providers: [
    TrainingCalloutService,
    ResponseService,
    TranslationService,
    JwtUtilsService,
  ],
  controllers: [TrainingCalloutController],
})
export class TrainingCalloutModule {}
