import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { ThrottlerModule, ThrottlerGuard } from '@nestjs/throttler'; import { APP_GUARD } from '@nestjs/core'; import { GitHubModule } from './github/github.module'; import { RicesModule } from './rices/rices.module'; import { ThrottlerExceptionFilter } from './common/filters/throttler-exception.filter'; @Module({ imports: [ ConfigModule.forRoot({ isGlobal: true, }), ThrottlerModule.forRoot([ { name: 'short', ttl: 1000, limit: 3, }, { name: 'medium', ttl: 10000, limit: 20, }, { name: 'long', ttl: 60000, limit: 100, }, ]), GitHubModule, RicesModule, ], controllers: [], providers: [ { provide: APP_GUARD, useClass: ThrottlerGuard, }, ], }) export class AppModule {}