"use strict";var __importDefault=this&&this.__importDefault||function(s){return s&&s.__esModule?s:{default:s}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ArrayTaskQueue=void 0;const node_assert_1=__importDefault(require("node:assert"));class ArrayTaskQueue{constructor(){this.tasks=[]}get size(){return this.tasks.length}shift(){var s;return null!==(s=this.tasks.shift())&&void 0!==s?s:null}push(s){this.tasks.push(s)}remove(s){const t=this.tasks.indexOf(s);node_assert_1.default.notStrictEqual(t,-1),this.tasks.splice(t,1)}}exports.ArrayTaskQueue=ArrayTaskQueue;