json-joy
Version:
Collection of libraries for building collaborative editing apps.
25 lines (24 loc) • 546 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.Defer = void 0;
/**
* An externally resolvable/rejectable "promise". Use it to resolve/reject
* promise at any time.
*
* ```ts
* const future = new Defer();
*
* future.promise.then(value => console.log(value));
*
* future.resolve(123);
* ```
*/
class Defer {
constructor() {
this.promise = new Promise((resolve, reject) => {
this.resolve = resolve;
this.reject = reject;
});
}
}
exports.Defer = Defer;
;