export interface RateLimitRule {
    readonly limit: number;
    readonly windowMs: number;
}
export declare class RateLimitExceededError extends Error {
    readonly retryAfterMs: number;
    constructor(retryAfterMs: number);
}
export declare class MemoryRateLimiter {
    private readonly buckets;
    consume(key: string, rule: RateLimitRule, now?: number): void;
}
export declare const STUDIO_RATE_LIMITS: {
    login: {
        limit: number;
        windowMs: number;
    };
    changePassword: {
        limit: number;
        windowMs: number;
    };
    createJob: {
        limit: number;
        windowMs: number;
    };
    api: {
        limit: number;
        windowMs: number;
    };
};
//# sourceMappingURL=rate-limit.d.ts.map