import { Module } from '@nestjs/common'; import { JwtModule } from '@nestjs/jwt'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { MessagesController } from './messages.controller'; import { MessagesService } from './messages.service'; import { MessagesGateway } from './messages.gateway'; import { PrismaModule } from '../prisma/prisma.module'; @Module({ imports: [ PrismaModule, ConfigModule, JwtModule.registerAsync({ imports: [ConfigModule], inject: [ConfigService], useFactory: (configService: ConfigService) => ({ secret: configService.get('JWT_SECRET') || 'fallback-secret', signOptions: { expiresIn: '15m', }, }), }), ], controllers: [MessagesController], providers: [MessagesService, MessagesGateway], exports: [MessagesService, MessagesGateway], }) export class MessagesModule {}