• Create a promise with a timeout.

    By default rejects with PromiseTimeoutError on timeout but you can override by supplying cancel.

    Type Parameters

    • T

    Parameters

    • timeoutMs: number

      the timeout in milliseconds

    • promise: Promise<T>

      a promise that resolves or rejects when the timed task completes

    • Optionalcancel: AbortController | (() => void)

      invoked on timeout (default implementation throws PromiseTimeoutError)

    Returns Promise<T>