// @flow declare function throat) => Promise>(size: number, fn: TFn): TFn; declare function throat) => Promise>(fn: TFn, size: number): TFn; declare function throat(size: number): (fn: () => Promise) => Promise; module.exports = throat;