export default class Deferred { promise: Promise | undefined; resolve: Function | undefined; reject: Function | undefined; constructor() { this.reset(); } reset() { this.promise = new Promise((resolve, reject) => { this.resolve = resolve; this.reject = reject; }); } }