import { Clock } from "../util/TimeUtil"; export declare class Throttler { private readonly limiter; constructor(limiter: ThrottleLimiter); static create(intervalMillis: number, limit: number, clock?: Clock): Throttler; execute(accept: () => T, reject: () => T): T; } export declare class ThrottleLimiter { private readonly clock; private readonly intervalMillis; private readonly limit; private currentScope; constructor(clock: Clock, intervalMillis: number, limit: number); tryAcquire(): boolean; private refreshScopeIfNeeded; }