UNPKG

722 BTypeScriptView Raw
1export declare class Sema {
2 private nrTokens;
3 private free;
4 private waiting;
5 private releaseEmitter;
6 private noTokens;
7 private pauseFn?;
8 private resumeFn?;
9 private paused;
10 constructor(nr: number, { initFn, pauseFn, resumeFn, capacity, }?: {
11 initFn?: () => any;
12 pauseFn?: () => void;
13 resumeFn?: () => void;
14 capacity?: number;
15 });
16 tryAcquire(): any | undefined;
17 acquire(): Promise<any>;
18 release(token?: any): void;
19 drain(): Promise<any[]>;
20 nrWaiting(): number;
21}
22export declare function RateLimit(rps: number, { timeUnit, uniformDistribution, }?: {
23 timeUnit?: number;
24 uniformDistribution?: boolean;
25}): () => Promise<void>;