export type CmdOptions = {
    input?: string;
    output?: boolean;
};
export type DockerJob = {
    depth: number;
    dockerfile: string;
    name: string;
    postfix: number;
    resource: string;
};
export type GroupedDockerJobs = {
    [processType: string]: DockerJob[];
};
type BuildImageParams = {
    arch?: string;
    buildArgs: string[];
    dockerfile: string;
    path?: string;
    resource: string;
};
export declare class DockerHelper {
    buildImage({ arch, buildArgs, dockerfile, path, resource }: BuildImageParams): Promise<string>;
    chooseJobs(jobs: GroupedDockerJobs): Promise<DockerJob[]>;
    cmd(cmd: string, args: string[], options?: CmdOptions): Promise<string>;
    filterByProcessType(jobs: GroupedDockerJobs, processTypes: string[]): GroupedDockerJobs;
    getDockerfiles(rootdir: string, recursive: boolean): string[];
    getJobs(resourceRoot: string, dockerfiles: string[]): GroupedDockerJobs;
    pullImage(resource: string): Promise<string>;
    pushImage(resource: string, arch: string): Promise<string>;
    runImage(resource: string, command: string, port: number): Promise<string>;
    version(): Promise<[number, number]>;
}
export {};
