anki/ts/lib/promise.ts
2021-11-04 11:42:51 +10:00

10 lines
342 B
TypeScript

// Copyright: Ankitects Pty Ltd and contributors
// License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
export function promiseWithResolver<T>(): [Promise<T>, (value: T) => void] {
let resolve: (object: T) => void;
const promise = new Promise<T>((res) => (resolve = res));
return [promise, resolve!];
}