import type { RateLimitContext, RateLimiterConfig } from '../types/index.js'; import type { Store } from '../store/types.js'; export declare class Limiter { store: Store; config: RateLimiterConfig; private engine; constructor(config: RateLimiterConfig); check(ctx: RateLimitContext): Promise<{ allowed: boolean; headers: {}; blocked?: undefined; response?: undefined; } | { allowed: boolean; blocked: boolean; headers: Record; response: { status: number; body: any; } | null; }>; private deriveHeaders; private resolveErrorMessage; }