import _ from 'lodash'; import * as Stream from 'stream'; import * as tar from 'tar-stream'; import Container, { CommandExecutionContext } from './container'; export interface LocalCopyTask { localSource: string; containerPath: string; } export declare function streamToBuffer(stream: Stream.Readable): Promise; export declare function resolveFileLocations(files: string[], destination: string, container: Container): Promise; export declare const hostPathIsDirectory: ((path: string) => Promise) & _.MemoizedFunction; export declare function addFileToTarPack(pack: tar.Pack, path: string, destination: string): Promise; export declare enum CommandExecutionArtifactType { EXIT_CODE = 0, STDOUT_DATA = 1, STDERR_DATA = 2 } export type CommandExecutionArtifact = { type: CommandExecutionArtifactType.EXIT_CODE; code: number; } | { type: CommandExecutionArtifactType.STDERR_DATA | CommandExecutionArtifactType.STDOUT_DATA; data: Buffer; }; export declare function waitForCommandCompletion(executionContext: CommandExecutionContext, cb: (artifact: CommandExecutionArtifact) => void): Promise;