export type ContainerState = 'running' | 'exited' | 'paused' | 'restarting' | 'dead' | 'created'; export interface ContainerSummary { Id: string; Names: string[]; Labels: Record; State: ContainerState; NetworkSettings?: { Networks?: Record; }; } export interface NetworkEndpoint { NetworkID: string; Aliases?: string[]; IPAddress?: string; IPPrefixLen?: number; IPAMConfig?: { IPv4Address?: string; }; } export interface HealthConfig { Test?: string[]; Interval?: number; Timeout?: number; Retries?: number; StartPeriod?: number; } export interface Mount { Type: 'bind' | 'volume' | 'tmpfs'; Source?: string; Target: string; ReadOnly?: boolean; BindOptions?: { Propagation?: string; }; VolumeOptions?: { NoCopy?: boolean; Labels?: Record; }; } export interface ContainerInspect { Id: string; Name: string; Image: string; Config: { Hostname?: string; Domainname?: string; User?: string; Env?: string[]; Cmd?: string[]; Entrypoint?: string[] | string; Labels?: Record; WorkingDir?: string; Healthcheck?: HealthConfig; StopSignal?: string; StopTimeout?: number; ExposedPorts?: Record>; }; HostConfig: { Binds?: string[]; Mounts?: Mount[]; NetworkMode?: string; RestartPolicy?: { Name: string; MaximumRetryCount?: number; }; LogConfig?: { Type: string; Config: Record; }; Resources?: { Memory?: number; MemorySwap?: number; CpuShares?: number; CpusetCpus?: string; }; SecurityOpt?: string[]; CapAdd?: string[]; CapDrop?: string[]; Devices?: { PathOnHost: string; PathInContainer: string; CgroupPermissions: string; }[]; Init?: boolean; IpcMode?: string; PidMode?: string; ReadonlyRootfs?: boolean; Tmpfs?: Record; }; NetworkSettings: { Networks: Record; }; } export interface NetworkEndpointCreate { Aliases?: string[]; IPAMConfig?: { IPv4Address?: string; }; } export interface ContainerCreateBody { Hostname?: string; User?: string; Env?: string[]; Cmd?: string[]; Entrypoint?: string[] | string; Image: string; Labels?: Record; WorkingDir?: string; Healthcheck?: HealthConfig; StopSignal?: string; StopTimeout?: number; ExposedPorts?: Record>; HostConfig: ContainerInspect['HostConfig']; NetworkingConfig: { EndpointsConfig: Record; }; } export interface NetworkConnectBody { Container: string; EndpointConfig?: NetworkEndpointCreate; } /** * Narrowed shape of a Docker Engine `/events` line. Only the fields we read. * Stable across Engine API v1.41+. */ export interface EngineEvent { Type: 'container'; Action: string; id?: string; Actor?: { ID?: string; Attributes?: Record; }; time?: number; timeNano?: number; } export declare class DockerEngineError extends Error { readonly name = "DockerEngineError"; readonly statusCode: number; readonly endpoint: string; readonly engineMessage: string; constructor(statusCode: number, endpoint: string, engineMessage: string); } export declare class DockerDaemonUnavailableError extends Error { readonly name = "DockerDaemonUnavailableError"; readonly socketPath: string; readonly cause?: Error; constructor(socketPath: string, cause?: Error); } //# sourceMappingURL=docker-engine-types.d.ts.map