import { TaonBaseKvRepository } from 'taon/lib';
import { EnvOptions } from '../../../../options';
import { Project } from '../../project';
import { DevMode } from '../dev-mode/dev-mode.models';
import { DevBuildModels } from './dev-build.models';
export declare class DevBuildRepository extends TaonBaseKvRepository<{
    currentCommand?: string;
    commandStatus?: DevBuildModels.CommandStatus;
}> {
    static projectsInBuild: {
        project: Project;
        port: DevMode.ProjectBuildNotificaiton['port'];
        buildType: DevMode.ProjectBuildNotificaiton['buildType'];
    }[];
    private project;
    private envOptions;
    setProject({ project, port, buildType, }: {
        project: Project;
        port: DevMode.ProjectBuildNotificaiton['port'];
        buildType: DevMode.ProjectBuildNotificaiton['buildType'];
    }): void;
    setEnvOptions(envOptions: EnvOptions): void;
    getProject(): Project;
    getProjectInfo(): Promise<DevMode.ProjectBuildNotificaiton>;
    private getMainWorkerController;
    updatePool(opt: {
        buildStatusInfo: DevMode.BuildStatusInfo;
    }): Promise<DevMode.ProjectBuildNotificaiton[]>;
    deleteFromPool(data: DevMode.ProjectBuildNotificaiton): Promise<DevMode.ProjectBuildNotificaiton[]>;
    allProjectsInProcess(): DevMode.ProjectBuildNotificaiton[];
    dataToRequest(opt?: {
        buildStatusInfo?: DevMode.BuildStatusInfo;
    }): DevMode.ProjectBuildNotificaiton;
}
