// * Jolly Cobra's schedulers import { AnyToVoidFunction } from "../../types"; export default function throttleWith(schedulerFn: AnyToVoidFunction, fn: F) { let waiting = false; let args: Parameters; return (..._args: Parameters) => { args = _args; if (!waiting) { waiting = true; schedulerFn(() => { waiting = false; // @ts-ignore fn(...args); }); } }; }