UNPKG

@nxg-org/mineflayer-util-plugin

Version:

mineflayer utils for NextGEN mineflayer plugins.

38 lines (37 loc) 979 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Task = void 0; // stolen task from mineflayer, just strongly typed now. class Task { constructor() { this.done = false; this.promise = new Promise((resolve, reject) => { this.cancel = (err) => { if (!this.done) { this.done = true; reject(err); } throw err; }; this.finish = (result) => { if (!this.done) { this.done = true; resolve(result); } return result; }; }); } static createTask() { return new Task(); } static createDoneTask() { return { done: true, promise: Promise.resolve(), cancel: () => { }, finish: () => { } }; } } exports.Task = Task;