/
eb
/
Surf
Обзор
Документация
Войти
/
eb
/
Surf
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
node_modules/limiter/index.d.ts
21 строка
810 B
EvgeniyBudaev
Initial commit
17 фев 2020, 09:02
17 фев 2020, 09:02
bb6f06f
Код
Авторство
О чём код?
export type TokenBucketError = string export type Fail<T> = (error: T) => void export type Success<T> = (error: null, data: T) => void export type RemoveTokensCallback = Fail<TokenBucketError> | Success<number> type Interval = number | 'second' | 'sec' | 'minute' | 'min' | 'hour' | 'hr' | 'day' export declare class TokenBucket { constructor(bucketSize: number, tokensPerInterval: number, interval: Interval, parentBucket?: TokenBucket) removeTokens(count: number, callback: RemoveTokensCallback): void tryRemoveTokens(count: number): boolean drip(): boolean } export declare class RateLimiter { constructor(tokensPerInterval: number, interval: Interval, fireImmediately?: boolean) removeTokens(count: number, callback: RemoveTokensCallback): void tryRemoveTokens(count: number): boolean }