UNPKG

@bbachain/web3.js

Version:

BBAChain Javascript API

15 lines (13 loc) 416 B
export function promiseTimeout<T>( promise: Promise<T>, timeoutMs: number, ): Promise<T | null> { let timeoutId: ReturnType<typeof setTimeout>; const timeoutPromise: Promise<null> = new Promise(resolve => { timeoutId = setTimeout(() => resolve(null), timeoutMs); }); return Promise.race([promise, timeoutPromise]).then((result: T | null) => { clearTimeout(timeoutId); return result; }); }