I made a Promise-aware debounce and throttle library for TypeScript Alsoftworks released temporize, a Promise-aware debounce and throttle library for TypeScript with zero runtime dependencies and ESM/CommonJS support. The library provides debounce, throttle, rafThrottle, debounceAsync, batch, retry, idle, and concurrencyLimit utilities, each returning real promises with inferred types. It offers features like cancellation, AbortSignal support, maxWait, and async overlap policies, distinguishing it from lodash's per-method packages. Small, strongly typed timing and concurrency utilities for modern TypeScript. Every scheduled call returns a real promise for the wrapped function's actual result. There are no runtime dependencies, and the package ships as ESM and CommonJS. npm install @alsoftworks/temporize | Capability | temporize | lodash.debounce / lodash.throttle | |---|---|---| | Inferred arguments and resolved return value | Full generic inference | Types available separately | | Per-call return | Promise