import { Writable } from 'stream'; /** * Handles the running of containers. * * @public */ export interface ContainerRunner { /** * Runs a container image to completion. */ runContainer(opts: { imageName: string; command?: string | string[]; args: string[]; logStream?: Writable; mountDirs?: Record; workingDir?: string; envVars?: Record; pullImage?: boolean; defaultUser?: boolean; pullOptions?: { authconfig?: { username?: string; password?: string; auth?: string; email?: string; serveraddress?: string; [key: string]: unknown; }; [key: string]: unknown; }; }): Promise; }