Defer.js 546 B

123456789101112131415161718192021222324
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.Defer = void 0;
  4. /**
  5. * An externally resolvable/rejectable "promise". Use it to resolve/reject
  6. * promise at any time.
  7. *
  8. * ```ts
  9. * const future = new Defer();
  10. *
  11. * future.promise.then(value => console.log(value));
  12. *
  13. * future.resolve(123);
  14. * ```
  15. */
  16. class Defer {
  17. constructor() {
  18. this.promise = new Promise((resolve, reject) => {
  19. this.resolve = resolve;
  20. this.reject = reject;
  21. });
  22. }
  23. }
  24. exports.Defer = Defer;