7088 enabled support for asynchronous implementations of individual worker operations, to prevent long-running operations from blocking subsequent requests. But, the types did not accurately capture these semantics, so you couldn't return { result: T, transfer: Transferable[] } from async implementations without the compiler complaining. It would expect you to return { result: Promise<T>, transfer: Transferable[] } instead.
Adjusted the types to fix this.
This is an automatic backport of pull request #7249 done by Mergify.
Fixes #7248.
7088 enabled support for asynchronous implementations of individual worker operations, to prevent long-running operations from blocking subsequent requests. But, the types did not accurately capture these semantics, so you couldn't return
{ result: T, transfer: Transferable[] }
from async implementations without the compiler complaining. It would expect you to return{ result: Promise<T>, transfer: Transferable[] }
instead.Adjusted the types to fix this.
This is an automatic backport of pull request #7249 done by Mergify.