import { Module } from '@nestjs/common';
import { ConfigModule, ConfigService } from '@nestjs/config';
import { JwtModule } from '@nestjs/jwt';
import { winstonConfig } from 'src/common/logger/winston.config';
import { PosGatewayModule } from 'src/pos-gateway/pos-gateway.module';
import { PrismaModule } from 'src/prisma/prisma.module';
import { AutorizacionesCajaController } from './autorizaciones-caja.controller';
import { AutorizacionesCajaService } from './autorizaciones-caja.service';

@Module({
  imports: [
    PrismaModule,
    ConfigModule,
    PosGatewayModule,
    JwtModule.registerAsync({
      inject: [ConfigService],
      useFactory: (config: ConfigService) => ({
        secret: config.get('JWT_SECRET'),
        signOptions: { expiresIn: '30s' },
      }),
    }),
  ],
  controllers: [AutorizacionesCajaController],
  providers: [AutorizacionesCajaService],
  exports: [AutorizacionesCajaService],
})
export class AutorizacionesCajaModule {}
