import { Agent } from "../agent/Agent";
import { Endpoint } from "../agent/Config";
import { Context } from "../agent/Context";
type Result = {
    block: false;
} | {
    block: true;
    trigger: "ip";
    endpoint: Endpoint;
    retryAfterSeconds: number;
} | {
    block: true;
    trigger: "user";
    endpoint: Endpoint;
    retryAfterSeconds: number;
} | {
    block: true;
    trigger: "group";
    endpoint: Endpoint;
    retryAfterSeconds: number;
};
export declare function shouldRateLimitRequest(context: Readonly<Context>, agent: Agent): Result;
export {};
