import { Module } from "@nestjs/common"; import { APP_GUARD } from "@nestjs/core"; import { TextbooksModule } from "./textbooks/textbooks.module.js"; import { ChaptersModule } from "./chapters/chapters.module.js"; import { KnowledgePointsModule } from "./knowledge-points/knowledge-points.module.js"; import { QuestionsModule } from "./questions/questions.module.js"; import { ElectivesModule } from "./electives/electives.module.js"; import { LessonPlansModule } from "./lesson-plans/lesson-plans.module.js"; import { CoursePlansModule } from "./course-plans/course-plans.module.js"; import { GrpcModule } from "./grpc/grpc.module.js"; import { HealthModule } from "./shared/health/health.module.js"; import { OutboxModule } from "./shared/outbox/outbox.module.js"; import { PermissionGuard } from "./middleware/permission.guard.js"; import { LifecycleService } from "./shared/lifecycle/lifecycle.service.js"; import { GraphqlModule } from "./graphql/graphql.module.js"; import { RouterAuthGuard } from "./graphql/router-auth.guard.js"; @Module({ imports: [ TextbooksModule, ChaptersModule, KnowledgePointsModule, QuestionsModule, ElectivesModule, LessonPlansModule, CoursePlansModule, GrpcModule, HealthModule, OutboxModule, GraphqlModule, ], providers: [ { provide: APP_GUARD, useClass: PermissionGuard }, { provide: APP_GUARD, useClass: RouterAuthGuard }, LifecycleService, ], }) export class AppModule {}