import { copyfiles, exec, remove, tsc } from "./cmd/index.ts";
export interface TaskQueueOptions {
    removeConfig?: Parameters<typeof remove>[0];
    tscConfig: Parameters<typeof tsc>[0];
    copyfilesConfig?: Parameters<typeof copyfiles>[0];
    execConfig?: Parameters<typeof exec>[0];
}
export declare class TaskQueue {
    private currentSubprocess;
    private readonly tasks;
    private readonly listeners;
    private isStartCalled;
    private isStopCalled;
    constructor({ removeConfig, tscConfig, copyfilesConfig, execConfig, }: TaskQueueOptions);
    start(): this;
    on(event: "close", listener: (code: number | null, signal: NodeJS.Signals | null) => void): this;
    stop(): this;
    isRunning(): boolean;
}
//# sourceMappingURL=task-queue.d.ts.map