import { MikroOrmModule } from "@mikro-orm/nestjs"; import { Module } from "@nestjs/common"; import { ChatbotController } from "./chatbot.controller"; import { ChatbotGateway } from "./chatbot.gateway"; import { ChatMessage } from "./entities/chat-message.entity"; import { ChatSession } from "./entities/chat-session.entity"; import { WebSocketAuthGuard } from "./guards/websocket-auth.guard"; import { ChatbotService } from "./providers/chatbot.service"; import { DataContextService } from "./providers/data-context.service"; import { LangChainService } from "./providers/langchain.service"; import { LLMService } from "./providers/llm.service"; import { WebSocketAuthService } from "./providers/websocket-auth.service"; import { AuthModule } from "../auth/auth.module"; import { UsersModule } from "../users/users.module"; @Module({ imports: [MikroOrmModule.forFeature([ChatSession, ChatMessage]), AuthModule, UsersModule], controllers: [ChatbotController], providers: [ChatbotService, ChatbotGateway, LLMService, LangChainService, DataContextService, WebSocketAuthGuard, WebSocketAuthService], exports: [ChatbotService, ChatbotGateway], }) export class ChatbotModule {}