import { Queue } from './Queue'; import type { Callback } from './Queue'; import type { Unawaitable } from '../functions/unawaitable'; export declare class SerialQueue implements Queue { error_handler?: Callback; constructor(error_handler: Callback); /** Internal queue object */ _queue: Queue; /** Internal queue array */ get queue(): Callback[]; /** Is something being processed? */ get working(): boolean; /** Function that forces queue to process next callback */ next_async(): void; /** Function that forces queue to process next callback */ get next(): () => void; /** Add callback(s) to queue */ get add(): (...callbacks: Array) => void; /** Get a Promise that will resolve once CURRENT callbacks are done */ get promise(): Promise; /** executes callback after queue empty, does not lock queue */ then(callback: (self: Unawaitable) => any): Promise; protected _done: Promise | undefined; protected _donecb: () => void; get done(): Promise; } export default SerialQueue;