import { Module } from '@nestjs/common'; import { JwtModule } from '@nestjs/jwt'; import { PassportModule } from '@nestjs/passport'; import { SuperAdminAuthController } from './auth.controller'; import { SuperAdminAuthService } from './auth.service'; import { SuperAdminJwtStrategy } from './strategies/super-admin-jwt.strategy'; import { SuperAdminCoreModule } from 'src/core/super-admin-core/super-admin-core.module'; import { SuperAdminCredentialCoreModule } from 'src/core/super-admin-credential-core/super-admin-credential-core.module'; import { SuperAdminSessionCoreModule } from 'src/core/super-admin-session-core/super-admin-session-core.module'; import { SuperAdminTwoFactorMethodCoreModule } from 'src/core/super-admin-two-factor-method-core/super-admin-two-factor-method-core.module'; import { SuperAdminTrustedDeviceCoreModule } from 'src/core/super-admin-trusted-device-core/super-admin-trusted-device-core.module'; import { CommonModule } from 'src/shared/modules/common/common.module'; import { jwtAuthConstants } from 'src/shared/keys/auth.keys'; @Module({ imports: [ PassportModule, JwtModule.register({ secret: jwtAuthConstants.accessTokenSecret, signOptions: { expiresIn: jwtAuthConstants.accessTokenExpiresIn }, }), SuperAdminCoreModule, SuperAdminCredentialCoreModule, SuperAdminSessionCoreModule, SuperAdminTwoFactorMethodCoreModule, SuperAdminTrustedDeviceCoreModule, CommonModule, ], controllers: [SuperAdminAuthController], providers: [SuperAdminAuthService, SuperAdminJwtStrategy], exports: [SuperAdminAuthService], }) export class SuperAdminAuthModule {}