/** * XYLink WebRTC SDK Queue Task Lib * * Created at : 2023-04-19 09:46:28 * Last modified : 2023-09-21 16:16:18 */ declare type AsyncFn = (...args: any[]) => Promise; declare class Queue { private isRunning; private taskCompletedCB; private waitingQueue; constructor(); /** * 监听任务执行完成状态 * * @param { (() => void) | null } callback - 任务结束回调 */ onTaskCompleted(callback: () => void): void; /** * 添加同步任务 * * @param { AsyncFn } task - 同步任务函数 * @returns { Promise } */ addTask(task: AsyncFn): Promise; /** * 执行同步任务队列 * * @param { AsyncFn } task - 同步任务函数 * @param { Fn } resolve - Resolve函数 * @param { Fn } reject - Reject函数 */ private execute; /** * 获取执行中的任务数量 * * @returns { number } */ taskLength(): number; /** * 清空任务队列 */ clear(): void; } export default Queue;