Skip to content
docs

TokenBucket

Defined in: history-evm/src/rate-limit.ts:6

Tiny token bucket: rate tokens per second, burst = ceil(rate). Callers queue in arrival order, so N concurrent acquire()s drain at the rate instead of racing. Uses only Date.now + setTimeout (fake-timer friendly).

new TokenBucket(ratePerSecond, burst?): TokenBucket

Defined in: history-evm/src/rate-limit.ts:13

number

number = ...

TokenBucket

readonly burst: number

Defined in: history-evm/src/rate-limit.ts:11


readonly rate: number

Defined in: history-evm/src/rate-limit.ts:10

acquire(cost?): Promise<void>

Defined in: history-evm/src/rate-limit.ts:22

Wait for cost tokens (default 1; clamped to the burst so one oversized call cannot wait forever).

number = 1

Promise<void>