import IFolder from "../storage/IFolder";
import Project from "./Project";
import * as esbuild from "esbuild-wasm";
import { IErrorMessage, IErrorable } from "../core/IErrorable";
export default class ProjectBuild implements IErrorable {
    private project;
    private mainScriptsFolder;
    private libs;
    private distScriptsFolder;
    private entry;
    private static isInitialized;
    constructor(projectIn: Project);
    isInErrorState?: boolean;
    errorMessages?: IErrorMessage[];
    resolveFile(resolve: esbuild.OnResolveArgs): esbuild.OnResolveResult;
    _pushError(message: string): void;
    _getErrorResponse(id: string, message: string): {
        errors: {
            id: string;
            text: string;
        }[];
    };
    getTypeDefContentFor(name: string, isTs: boolean): esbuild.OnLoadResult;
    get isBuildable(): boolean;
    getHasBuildableElements(): boolean;
    loadFile(build: esbuild.OnLoadArgs): Promise<esbuild.OnLoadResult>;
    build(): Promise<void>;
    aggregateScripts(scriptFolder: IFolder): Promise<string>;
    syncToBehaviorPack(bpTargetFolder: IFolder): Promise<void>;
}
