/** Maximum accepted operations in a sliding duration. */ export interface RateWindowPolicy { windowMs: number; max: number; } /** Admission result, next stored timestamps, and wait before retrying. */ export interface RateWindowDecision { allowed: boolean; timestamps: number[]; retryAfterMs: number; } /** * A sliding rate window; persist timestamps only alongside the accepted operation. * @capability rate-window-policy Evaluate deterministic request windows with retry timing. */ export declare function decideRateWindow(timestamps: readonly number[], nowMs: number, policy: RateWindowPolicy): RateWindowDecision;