import { IServerRequest } from '@vue-skuilder/common'; export interface Result { status: 'ok' | 'awaiting' | 'warning' | 'error'; ok: boolean; error?: unknown; } interface ProcessingFunction { (data: T): Promise; } /** * This queue executes async prcesses sequentially, waiting * for each to complete before launching the next. */ export default class AsyncProcessQueue { private processRequest; private queue; private errors; private completed; private processing; private nextID; /** * Returns 'complete' if the job is complete, 'error' if the * job failed, and the job's position in queue if not yet * completed. * * @param jobID The jobID returned by addRequest */ jobStatus(jobID: number): 'complete' | 'error' | number; private recurseGetResult; getResult(jobID: number, _depth?: number): Promise; addRequest(req: T): number; /** * */ constructor(processingFcn: ProcessingFunction); private process; } export {}; //# sourceMappingURL=processQueue.d.ts.map