/** * Federation Module * * Provides instance identity and federation management. */ import { Module } from "@nestjs/common"; import { ConfigModule } from "@nestjs/config"; import { HttpModule } from "@nestjs/axios"; import { FederationController } from "./federation.controller"; import { FederationAuthController } from "./federation-auth.controller"; import { IdentityLinkingController } from "./identity-linking.controller"; import { QueryController } from "./query.controller"; import { CommandController } from "./command.controller"; import { EventController } from "./event.controller"; import { FederationService } from "./federation.service"; import { CryptoService } from "./crypto.service"; import { FederationAuditService } from "./audit.service"; import { SignatureService } from "./signature.service"; import { ConnectionService } from "./connection.service"; import { OIDCService } from "./oidc.service"; import { IdentityLinkingService } from "./identity-linking.service"; import { IdentityResolutionService } from "./identity-resolution.service"; import { QueryService } from "./query.service"; import { CommandService } from "./command.service"; import { EventService } from "./event.service"; import { FederationAgentService } from "./federation-agent.service"; import { PrismaModule } from "../prisma/prisma.module"; @Module({ imports: [ ConfigModule, PrismaModule, HttpModule.register({ timeout: 10000, maxRedirects: 5, }), ], controllers: [ FederationController, FederationAuthController, IdentityLinkingController, QueryController, CommandController, EventController, ], providers: [ FederationService, CryptoService, FederationAuditService, SignatureService, ConnectionService, OIDCService, IdentityLinkingService, IdentityResolutionService, QueryService, CommandService, EventService, FederationAgentService, ], exports: [ FederationService, CryptoService, SignatureService, ConnectionService, OIDCService, IdentityLinkingService, IdentityResolutionService, QueryService, CommandService, EventService, FederationAgentService, ], }) export class FederationModule {}