import { Component, ComponentID } from '../component';
import { Network } from '../isolator/isolator.extension';
import { ExecutionContext } from '../environments';
export interface BuildContext extends ExecutionContext {
    components: Component[];
    capsuleGraph: Network;
}
export interface BuildResults {
    components: Array<{
        id: ComponentID;
        data?: any;
        errors: Array<Error | string>;
        warning?: string[];
    }>;
    artifacts: Array<{
        dirName: string;
    }>;
}
export interface BuildTask {
    extensionId: string;
    execute(context: BuildContext): Promise<BuildResults>;
}
