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