25 lines
546 B
JavaScript
25 lines
546 B
JavaScript
|
"use strict";
|
||
|
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;
|