UNPKG

@tdb/util

Version:
26 lines (23 loc) 630 B
export type TimeDelay = (msecs: number, callback?: () => void) => Promise<{}>; export type TimeWait = (msecs: number) => Promise<{}>; /** * Better parameter order for setTimeout returning a promise. */ export const delay: TimeDelay = (msecs, callback) => { return new Promise((resolve, reject) => { setTimeout(() => { try { if (callback) { callback(); } resolve(); } catch (error) { reject(error); } }, msecs); }); }; /** * Pause for the given number of milliseconds with a promise. */ export const wait: TimeWait = msecs => delay(msecs, () => false);