import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; import { AdminUsersController } from './admin-users.controller'; import { AdminUsersService } from './admin-users.service'; import { AuditLog } from './entities/audit-log.entity'; import { UsersModule } from '../users/users.module'; import { BillingModule } from '../billing/billing.module'; import { ApplicationsModule } from '../applications/applications.module'; import { DeploymentsModule } from '../deployments/deployments.module'; import { TicketsModule } from '../tickets/tickets.module'; import { AuthModule } from '../auth/auth.module'; /** * Super-admin aggregation module. Imports the domain modules (which export * their services) so the admin controller can read everything about a user * without re-implementing per-module logic. Also owns the audit log and the * impersonation ("login as user") entrypoint, which delegates token minting to * AuthService. */ @Module({ imports: [ TypeOrmModule.forFeature([AuditLog]), UsersModule, BillingModule, ApplicationsModule, DeploymentsModule, TicketsModule, AuthModule, ], controllers: [AdminUsersController], providers: [AdminUsersService], }) export class AdminModule {}