import { CommandConfig, ConfigFile, InvalidatorConfig } from './config';
import { ShadowdogEventEmitter } from './events';
export type Task = ParallelTask | SerialTask | CommandTask | EmptyTask;
export interface CommandTask {
    type: 'command';
    config: CommandConfig;
    files: string[];
    invalidators: InvalidatorConfig;
}
export interface ParallelTask {
    type: 'parallel';
    tasks: Task[];
}
interface SerialTask {
    type: 'serial';
    tasks: Task[];
}
export interface EmptyTask {
    type: 'empty';
}
interface GenerateOptions {
    continueOnError: boolean;
}
export declare const generate: (config: ConfigFile, eventEmitter: ShadowdogEventEmitter, options: GenerateOptions) => Promise<unknown>;
export {};
