///
///
import Map = pxt.Map;
export interface BuildEngine {
id: string;
updateEngineAsync: () => Promise;
setPlatformAsync: () => Promise;
buildAsync: () => Promise;
patchHexInfo: (extInfo: pxtc.ExtensionInfo) => pxtc.HexInfo;
prepBuildDirAsync: () => Promise;
buildPath: string;
appPath: string;
moduleConfig: string;
outputPath?: string;
deployAsync?: (r: pxtc.CompileResult) => Promise;
}
export interface TargetRuntime {
includePath: string;
}
export declare const buildEngines: Map;
export declare let thisBuild: BuildEngine;
export declare function setThisBuild(b: BuildEngine): void;
export declare function buildHexAsync(buildEngine: BuildEngine, mainPkg: pxt.MainPackage, extInfo: pxtc.ExtensionInfo, forceBuild: boolean): Promise;
export declare function codalGitAsync(...args: string[]): Promise;
export declare function buildDalConst(buildEngine: BuildEngine, mainPkg: pxt.MainPackage, rebuild?: boolean, create?: boolean): void;
export declare function compileWithLocalCompileService(extinfo: pxtc.ExtensionInfo): Promise;