import { RateLimitSDK } from '../rateLimitMiddleware';
import { RateLimitResult } from '../types/common';
export interface RateLimitModuleConfig {
    apiUrl: string;
    organizationId: string;
    apiKey: string;
    timeout?: number;
    onError?: (error: any) => void;
}
/**
 * Rate Limiting Module for SecKav SDK
 * Wraps the existing rate limiting functionality in the new modular architecture
 */
export declare class RateLimitModule {
    private rateLimitSDK;
    private config;
    constructor(config: RateLimitModuleConfig);
    /**
     * Check rate limit for Express.js request
     */
    checkRequest(req: any): Promise<RateLimitResult>;
    /**
     * Check rate limit for Next.js request
     */
    checkNextRequest(req: any): Promise<RateLimitResult>;
    /**
     * Handle rate limit response for Express.js
     */
    handleRateLimitResponse(res: any, result: RateLimitResult): any;
    /**
     * Get the underlying rate limit SDK for advanced usage
     */
    getSDK(): RateLimitSDK;
    /**
     * Get module information
     */
    getInfo(): {
        name: string;
        version: string;
        organization: string;
        apiUrl: string;
    };
}
//# sourceMappingURL=RateLimit.d.ts.map