Add Executor and RelaySet

This commit is contained in:
Jonathan Staab
2023-03-27 13:39:48 -05:00
parent 4b362e3061
commit 853b42c1c9
9 changed files with 121 additions and 72 deletions
+14
View File
@@ -0,0 +1,14 @@
export type Deferred<T> = Promise<T> & {
resolve: (arg: T) => void
reject: (arg: T) => void
}
export const defer = (): Deferred<any> => {
let resolve, reject
const p = new Promise((resolve_, reject_) => {
resolve = resolve_
reject = reject_
})
return Object.assign(p, {resolve, reject}) as any
}