import { Module, forwardRef } from '@nestjs/common'; import { SequelizeModule } from '@nestjs/sequelize'; import { ConfigModule } from '@nestjs/config'; import { AiCoachController } from './ai-coach.controller'; import { AiCoachService } from './ai-coach.service'; import { DietAnalysisService } from './services/diet-analysis.service'; import { AiReportService } from './services/ai-report.service'; import { AiMessage } from './models/ai-message.model'; import { AiConversation } from './models/ai-conversation.model'; import { PostureAssessment } from './models/posture-assessment.model'; import { AiReportHistory } from './models/ai-report-history.model'; import { UsersModule } from '../users/users.module'; import { DietRecordsModule } from '../diet-records/diet-records.module'; import { MedicationsModule } from '../medications/medications.module'; import { MoodCheckinsModule } from '../mood-checkins/mood-checkins.module'; import { WaterRecordsModule } from '../water-records/water-records.module'; import { ChallengesModule } from '../challenges/challenges.module'; import { CosService } from '../users/cos.service'; @Module({ imports: [ ConfigModule, forwardRef(() => UsersModule), forwardRef(() => DietRecordsModule), forwardRef(() => MedicationsModule), forwardRef(() => MoodCheckinsModule), forwardRef(() => WaterRecordsModule), forwardRef(() => ChallengesModule), SequelizeModule.forFeature([AiConversation, AiMessage, PostureAssessment, AiReportHistory]), ], controllers: [AiCoachController], providers: [AiCoachService, DietAnalysisService, AiReportService, CosService], exports: [DietAnalysisService, AiReportService], }) export class AiCoachModule { }