import { ExecutionContext, ModuleMetadata, Type } from '@nestjs/common/interfaces'; export interface ThrottlerModuleOptions { limit?: number; ttl?: number; ignoreUserAgents?: RegExp[]; storage?: any; skipIf?: (context: ExecutionContext) => boolean; } export interface ThrottlerOptionsFactory { createThrottlerOptions(): Promise | ThrottlerModuleOptions; } export interface ThrottlerAsyncOptions extends Pick { useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | ThrottlerModuleOptions; inject?: any[]; }