import { Reflector } from '@nestjs/core';
import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
import { RateLimiterAbstract } from 'rate-limiter-flexible';
import { RateLimiterOptions } from './rate-limiter.interface';
export declare class RateLimiterInterceptor implements NestInterceptor {
    private options;
    private readonly reflector;
    private rateLimiters;
    private specificOptions;
    private queueLimiter;
    constructor(options: RateLimiterOptions, reflector: Reflector);
    getRateLimiter(options?: RateLimiterOptions): Promise<RateLimiterAbstract>;
    intercept(context: ExecutionContext, next: CallHandler): Promise<any>;
    private httpHandler;
    private setResponseHeaders;
    private responseHandler;
}
