From adb0eb59ddd345a05495bf1cc30d5b733ab53b24 Mon Sep 17 00:00:00 2001 From: Kapil Sachdeva Date: Mon, 5 Nov 2018 13:31:42 -0600 Subject: [PATCH 1/3] dockerod - misc fixes and additional typings --- types/dockerode/index.d.ts | 1944 +++++++++++++++++++----------------- 1 file changed, 1036 insertions(+), 908 deletions(-) diff --git a/types/dockerode/index.d.ts b/types/dockerode/index.d.ts index aa5d93858b..c0114bbfec 100644 --- a/types/dockerode/index.d.ts +++ b/types/dockerode/index.d.ts @@ -11,1008 +11,1136 @@ /// -import * as stream from 'stream'; -import * as events from 'events'; +import * as events from "events"; +import * as stream from "stream"; declare namespace Dockerode { - interface Container { - inspect(options: {}, callback: Callback): void; - inspect(callback: Callback): void; - inspect(options?: {}): Promise; + interface Container { + inspect(options: {}, callback: Callback): void; + inspect(callback: Callback): void; + inspect(options?: {}): Promise; + + rename(options: {}, callback: Callback): void; + rename(options: {}): Promise; + + update(options: {}, callback: Callback): void; + update(options: {}): Promise; + + top(options: {}, callback: Callback): void; + top(callback: Callback): void; + top(options?: {}): Promise; + + changes(callback: Callback): void; + changes(): Promise; + + export(callback: Callback): void; + export(): Promise; + + start(options: {}, callback: Callback): void; + start(callback: Callback): void; + start(options?: {}): Promise; + + pause(options: {}, callback: Callback): void; + pause(callback: Callback): void; + pause(options?: {}): Promise; + + unpause(options: {}, callback: Callback): void; + unpause(callback: Callback): void; + unpause(options?: {}): Promise; + + exec(options: {}, callback: Callback): void; + exec(options: {}): Promise; + + commit(options: {}, callback: Callback): void; + commit(callback: Callback): void; + commit(options?: {}): Promise; + + stop(options: {}, callback: Callback): void; + stop(callback: Callback): void; + stop(options?: {}): Promise; + + restart(options: {}, callback: Callback): void; + restart(callback: Callback): void; + restart(options?: {}): Promise; + + kill(options: {}, callback: Callback): void; + kill(callback: Callback): void; + kill(options?: {}): Promise; + + resize(options: {}, callback: Callback): void; + resize(callback: Callback): void; + resize(options?: {}): Promise; + + wait(callback: Callback): void; + wait(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + /** Deprecated since RAPI v1.20 */ + copy(options: {}, callback: Callback): void; + /** Deprecated since RAPI v1.20 */ + copy(callback: Callback): void; + /** Deprecated since RAPI v1.20 */ + copy(options?: {}): Promise; + + getArchive( + options: {}, + callback: Callback + ): void; + getArchive(options: {}): Promise; + + infoArchive(options: {}, callback: Callback): void; + infoArchive(options: {}): Promise; + + /** @param file Filename (will read synchronously), Buffer or stream */ + putArchive( + file: string | Buffer | NodeJS.ReadableStream, + options: {}, + callback: Callback + ): void; + putArchive( + file: string | Buffer | NodeJS.ReadableStream, + options: {} + ): Promise; + + logs( + options: ContainerLogsOptions, + callback: Callback + ): void; + logs(callback: Callback): void; + logs(options?: ContainerLogsOptions): Promise; + + stats(options: {}, callback: Callback): void; + stats(callback: Callback): void; + stats(options?: {}): Promise; + + attach(options: {}, callback: Callback): void; + attach(options: {}): Promise; - rename(options: {}, callback: Callback): void; - rename(options: {}): Promise; + modem: any; + id?: string; + } - update(options: {}, callback: Callback): void; - update(options: {}): Promise; + interface Image { + inspect(callback: Callback): void; + inspect(): Promise; + + history(callback: Callback): void; + history(): Promise; - top(options: {}, callback: Callback): void; - top(callback: Callback): void; - top(options?: {}): Promise; - - changes(callback: Callback): void; - changes(): Promise; - - export(callback: Callback): void; - export(): Promise; - - start(options: {}, callback: Callback): void; - start(callback: Callback): void; - start(options?: {}): Promise; - - pause(options: {}, callback: Callback): void; - pause(callback: Callback): void; - pause(options?: {}): Promise; - - unpause(options: {}, callback: Callback): void; - unpause(callback: Callback): void; - unpause(options?: {}): Promise; - - exec(options: {}, callback: Callback): void; - exec(options: {}): Promise; - - commit(options: {}, callback: Callback): void; - commit(callback: Callback): void; - commit(options?: {}): Promise; - - stop(options: {}, callback: Callback): void; - stop(callback: Callback): void; - stop(options?: {}): Promise; - - restart(options: {}, callback: Callback): void; - restart(callback: Callback): void; - restart(options?: {}): Promise; - - kill(options: {}, callback: Callback): void; - kill(callback: Callback): void; - kill(options?: {}): Promise; - - resize(options: {}, callback: Callback): void; - resize(callback: Callback): void; - resize(options?: {}): Promise; - - wait(callback: Callback): void; - wait(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - /** Deprecated since RAPI v1.20 */ - copy(options: {}, callback: Callback): void; - /** Deprecated since RAPI v1.20 */ - copy(callback: Callback): void; - /** Deprecated since RAPI v1.20 */ - copy(options?: {}): Promise; - - getArchive(options: {}, callback: Callback): void; - getArchive(options: {}): Promise; - - infoArchive(options: {}, callback: Callback): void; - infoArchive(options: {}): Promise; - - /** @param file Filename (will read synchronously), Buffer or stream */ - putArchive(file: string | Buffer | NodeJS.ReadableStream, options: {}, callback: Callback): void; - putArchive(file: string | Buffer | NodeJS.ReadableStream, options: {}): Promise; - - logs(options: ContainerLogsOptions, callback: Callback): void; - logs(callback: Callback): void; - logs(options?: ContainerLogsOptions): Promise; - - stats(options: {}, callback: Callback): void; - stats(callback: Callback): void; - stats(options?: {}): Promise; - - attach(options: {}, callback: Callback): void; - attach(options: {}): Promise; - - modem: any; - id?: string; - } - - interface Image { - inspect(callback: Callback): void; - inspect(): Promise; - - history(callback: Callback): void; - history(): Promise; - - get(callback: Callback): void; - get(): Promise; - - push(options: {}, callback: Callback): void; - push(callback: Callback): void; - push(options?: {}): Promise; - - tag(options: {}, callback: Callback): void; - tag(callback: Callback): void; - tag(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Volume { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - name?: string; - } - - interface Service { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - update(options: {}, callback: Callback): void; - update(options: {}): Promise; - - modem: any; - id?: string; - } - - interface Task { - inspect(callback: Callback): void; - inspect(): Promise; - - modem: any; - id?: string; - } - - interface Node { - inspect(callback: Callback): void; - inspect(): Promise; - - update(options: {}, callback: Callback): void; - update(callback: Callback): void; - update(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Plugin { - modem: any; - name: string; - remote: any; - - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - privileges(callback: Callback): void; - privileges(): Promise; - - pull(options: {}, callback: Callback): void; - pull(options: {}): Promise; - - enable(options: {}, callback: Callback): void; - enable(callback: Callback): void; - enable(options?: {}): Promise; - - disable(options: {}, callback: Callback): void; - disable(callback: Callback): void; - disable(options?: {}): Promise; - - push(options: {}, callback: Callback): void; - push(callback: Callback): void; - push(options?: {}): Promise; - - configure(options: {}, callback: Callback): void; - configure(callback: Callback): void; - configure(options?: {}): Promise; - - upgrade(auth: any, options: {}, callback: Callback): void; - upgrade(auth: any, callback: Callback): void; - upgrade(auth: any, options?: {}): Promise; - } - - interface Secret { - inspect(callback: Callback): void; - inspect(): Promise; - - update(options: {}, callback: Callback): void; - update(callback: Callback): void; - update(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Network { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - connect(options: {}, callback: Callback): void; - connect(callback: Callback): void; - connect(options?: {}): Promise; - - disconnect(options: {}, callback: Callback): void; - disconnect(callback: Callback): void; - disconnect(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Exec { - inspect(callback: Callback): void; - inspect(): Promise; - - start(options: {}, callback: Callback): void; - start(options: {}): Promise; - - resize(options: {}, callback: Callback): void; - resize(options: {}): Promise; - - modem: any; - id?: string; - } - - interface ImageInfo { - Id: string; - ParentId: string; - RepoTags: string[]; - RepoDigests?: string[]; - Created: number; - Size: number; - VirtualSize: number; - Labels: { [label: string]: string }; - } - - interface ContainerInfo { - Id: string; - Names: string[]; - Image: string; - ImageID: string; - Command: string; - Created: number; - Ports: Port[]; - Labels: { [label: string]: string }; - State: string; - Status: string; - HostConfig: { - NetworkMode: string; - }; - NetworkSettings: { - Networks: { [networkType: string]: NetworkInfo } - }; - } - - interface Port { - IP: string; - PrivatePort: number; - PublicPort: number; - Type: string; - } - - interface NetworkInfo { - IPAMConfig?: any; - Links?: any; - Aliases?: any; - NetworkID: string; - EndpointID: string; - Gateway: string; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - MacAddress: string; - } - - interface ContainerInspectInfo { - Id: string; - Created: string; - Path: string; - Args: string[]; - State: { - Status: string; - Running: boolean; - Paused: boolean; - Restarting: boolean; - OOMKilled: boolean; - Dead: boolean; - Pid: number; - ExitCode: number; - Error: string; - StartedAt: string; - FinishedAt: string; - }; - Image: string; - ResolvConfPath: string; - HostnamePath: string; - HostsPath: string; - LogPath: string; - Name: string; - RestartCount: number; - Driver: string; - MountLabel: string; - ProcessLabel: string; - AppArmorProfile: string; - ExecIDs?: any; - HostConfig: HostConfig; - GraphDriver: { - Name: string; - Data: { - DeviceId: string; - DeviceName: string; - DeviceSize: string; - } - }; - Mounts: Array<{ - Source: string; - Destination: string; - Mode: string; - RW: boolean; - Propagation: string; - }>; - Config: { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} }; - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - Image: string; - Volumes: { [volume: string]: {} }; - WorkingDir: string; - Entrypoint?: any; - OnBuild?: any; - Labels: { [label: string]: string } - }; - NetworkSettings: { - Bridge: string; - SandboxID: string; - HairpinMode: boolean; - LinkLocalIPv6Address: string; - LinkLocalIPv6PrefixLen: number; - Ports: { - [portAndProtocol: string]: Array<{ - HostIp: string; - HostPort: string; + get(callback: Callback): void; + get(): Promise; + + push(options: {}, callback: Callback): void; + push(callback: Callback): void; + push(options?: {}): Promise; + + tag(options: {}, callback: Callback): void; + tag(callback: Callback): void; + tag(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Volume { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + name?: string; + } + + interface Service { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + update(options: {}, callback: Callback): void; + update(options: {}): Promise; + + modem: any; + id?: string; + } + + interface Task { + inspect(callback: Callback): void; + inspect(): Promise; + + modem: any; + id?: string; + } + + interface Node { + inspect(callback: Callback): void; + inspect(): Promise; + + update(options: {}, callback: Callback): void; + update(callback: Callback): void; + update(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Plugin { + modem: any; + name: string; + remote: any; + + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + privileges(callback: Callback): void; + privileges(): Promise; + + pull(options: {}, callback: Callback): void; + pull(options: {}): Promise; + + enable(options: {}, callback: Callback): void; + enable(callback: Callback): void; + enable(options?: {}): Promise; + + disable(options: {}, callback: Callback): void; + disable(callback: Callback): void; + disable(options?: {}): Promise; + + push(options: {}, callback: Callback): void; + push(callback: Callback): void; + push(options?: {}): Promise; + + configure(options: {}, callback: Callback): void; + configure(callback: Callback): void; + configure(options?: {}): Promise; + + upgrade(auth: any, options: {}, callback: Callback): void; + upgrade(auth: any, callback: Callback): void; + upgrade(auth: any, options?: {}): Promise; + } + + interface Secret { + inspect(callback: Callback): void; + inspect(): Promise; + + update(options: {}, callback: Callback): void; + update(callback: Callback): void; + update(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Network { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + connect(options: {}, callback: Callback): void; + connect(callback: Callback): void; + connect(options?: {}): Promise; + + disconnect(options: {}, callback: Callback): void; + disconnect(callback: Callback): void; + disconnect(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Exec { + inspect(callback: Callback): void; + inspect(): Promise; + + start(options: {}, callback: Callback): void; + start(options: {}): Promise; + + resize(options: {}, callback: Callback): void; + resize(options: {}): Promise; + + modem: any; + id?: string; + } + + interface ImageInfo { + Id: string; + ParentId: string; + RepoTags: string[]; + RepoDigests?: string[]; + Created: number; + Size: number; + VirtualSize: number; + Labels: { [label: string]: string }; + } + + interface ContainerInfo { + Id: string; + Names: string[]; + Image: string; + ImageID: string; + Command: string; + Created: number; + Ports: Port[]; + Labels: { [label: string]: string }; + State: string; + Status: string; + HostConfig: { NetworkMode: string }; + NetworkSettings: { Networks: { [networkType: string]: NetworkInfo } }; + } + + interface Port { + IP: string; + PrivatePort: number; + PublicPort: number; + Type: string; + } + + interface NetworkInfo { + IPAMConfig?: any; + Links?: any; + Aliases?: any; + NetworkID: string; + EndpointID: string; + Gateway: string; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + MacAddress: string; + } + + // not complete definition of network inspection + // info which is returned by list / inspect + interface NetworkInspectInfo { + Id: string; + Name: string; + Driver: string; + Created: string; + Scope: string; + EnableIPv6: boolean; + Internal: boolean; + Attachable: boolean; + Ingress: boolean; + } + + interface ContainerInspectInfo { + Id: string; + Created: string; + Path: string; + Args: string[]; + State: { + Status: string; + Running: boolean; + Paused: boolean; + Restarting: boolean; + OOMKilled: boolean; + Dead: boolean; + Pid: number; + ExitCode: number; + Error: string; + StartedAt: string; + FinishedAt: string; + }; + Image: string; + ResolvConfPath: string; + HostnamePath: string; + HostsPath: string; + LogPath: string; + Name: string; + RestartCount: number; + Driver: string; + MountLabel: string; + ProcessLabel: string; + AppArmorProfile: string; + ExecIDs?: any; + HostConfig: HostConfig; + GraphDriver: { + Name: string; + Data: { DeviceId: string; DeviceName: string; DeviceSize: string }; + }; + Mounts: Array<{ + Source: string; + Destination: string; + Mode: string; + RW: boolean; + Propagation: string; }>; - }; - SandboxKey: string; - SecondaryIPAddresses?: any; - SecondaryIPv6Addresses?: any; - EndpointID: string; - Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - MacAddress: string; - Networks: { - [type: string]: { - IPAMConfig?: any; - Links?: any; - Aliases?: any; - NetworkID: string; - EndpointID: string; - Gateway: string; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - MacAddress: string; - } - }; - Node?: { - ID: string; - IP: string; - Addr: string; - Name: string; - Cpus: number; - Memory: number; - Labels: any; - } - }; - } + Config: { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} }; + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + Image: string; + Volumes: { [volume: string]: {} }; + WorkingDir: string; + Entrypoint?: any; + OnBuild?: any; + Labels: { [label: string]: string }; + }; + NetworkSettings: { + Bridge: string; + SandboxID: string; + HairpinMode: boolean; + LinkLocalIPv6Address: string; + LinkLocalIPv6PrefixLen: number; + Ports: { + [portAndProtocol: string]: Array<{ + HostIp: string; + HostPort: string; + }>; + }; + SandboxKey: string; + SecondaryIPAddresses?: any; + SecondaryIPv6Addresses?: any; + EndpointID: string; + Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + MacAddress: string; + Networks: { + [type: string]: { + IPAMConfig?: any; + Links?: any; + Aliases?: any; + NetworkID: string; + EndpointID: string; + Gateway: string; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + MacAddress: string; + }; + }; + Node?: { + ID: string; + IP: string; + Addr: string; + Name: string; + Cpus: number; + Memory: number; + Labels: any; + }; + }; + } - interface HostConfig { - AutoRemove: boolean; - Binds: string[]; - ContainerIDFile: string; - LogConfig: { - Type: string; - Config: any; - }; - NetworkMode: string; - PortBindings?: any; - RestartPolicy: { - Name: string; - MaximumRetryCount: number; - }; - VolumeDriver: string; - VolumesFrom?: any; - CapAdd?: any; - CapDrop?: any; - Dns: any[]; - DnsOptions: any[]; - DnsSearch: any[]; - ExtraHosts?: any; - IpcMode: string; - Links?: any; - OomScoreAdj: number; - PidMode: string; - Privileged: boolean; - PublishAllPorts: boolean; - ReadonlyRootfs: boolean; - SecurityOpt?: any; - UTSMode: string; - ShmSize: number; - ConsoleSize: number[]; - Isolation: string; - CpuShares: number; - CgroupParent: string; - BlkioWeight: number; - BlkioWeightDevice?: any; - BlkioDeviceReadBps?: any; - BlkioDeviceWriteBps?: any; - BlkioDeviceReadIOps?: any; - BlkioDeviceWriteIOps?: any; - CpuPeriod: number; - CpuQuota: number; - CpusetCpus: string; - CpusetMems: string; - Devices?: any; - DiskQuota: number; - KernelMemory: number; - Memory: number; - MemoryReservation: number; - MemorySwap: number; - MemorySwappiness: number; - OomKillDisable: boolean; - PidsLimit: number; - Ulimits?: any; - } + interface HostConfig { + AutoRemove: boolean; + Binds: string[]; + ContainerIDFile: string; + LogConfig: { Type: string; Config: any }; + NetworkMode: string; + PortBindings?: any; + RestartPolicy: { Name: string; MaximumRetryCount: number }; + VolumeDriver: string; + VolumesFrom?: any; + CapAdd?: any; + CapDrop?: any; + Dns: any[]; + DnsOptions: any[]; + DnsSearch: any[]; + ExtraHosts?: any; + IpcMode: string; + Links?: any; + OomScoreAdj: number; + PidMode: string; + Privileged: boolean; + PublishAllPorts: boolean; + ReadonlyRootfs: boolean; + SecurityOpt?: any; + UTSMode: string; + ShmSize: number; + ConsoleSize: number[]; + Isolation: string; + CpuShares: number; + CgroupParent: string; + BlkioWeight: number; + BlkioWeightDevice?: any; + BlkioDeviceReadBps?: any; + BlkioDeviceWriteBps?: any; + BlkioDeviceReadIOps?: any; + BlkioDeviceWriteIOps?: any; + CpuPeriod: number; + CpuQuota: number; + CpusetCpus: string; + CpusetMems: string; + Devices?: any; + DiskQuota: number; + KernelMemory: number; + Memory: number; + MemoryReservation: number; + MemorySwap: number; + MemorySwappiness: number; + OomKillDisable: boolean; + PidsLimit: number; + Ulimits?: any; + } - interface ImageInspectInfo { - Id: string; - RepoTags: string[]; - RepoDigests: string[]; - Parent: string; - Comment: string; - Created: string; - Container: string; - ContainerConfig: - { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} }; - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - ArgsEscaped: boolean; - Image: string; - Volumes: { [path: string]: {} }, - WorkingDir: string; - Entrypoint?: any; - OnBuild?: any[]; - Labels: { [label: string]: string } - }; - DockerVersion: string; - Author: string; - Config: - { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} } - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - ArgsEscaped: boolean; - Image: string; - Volumes: { [path: string]: {} }, - WorkingDir: string; - Entrypoint?: any; - OnBuild: any[]; - Labels: { [label: string]: string } - }; - Architecture: string; - Os: string; - Size: number; - VirtualSize: number; - GraphDriver: - { - Name: string; - Data: - { - DeviceId: string; - DeviceName: string; - DeviceSize: string; - } - }; - } + interface ImageInspectInfo { + Id: string; + RepoTags: string[]; + RepoDigests: string[]; + Parent: string; + Comment: string; + Created: string; + Container: string; + ContainerConfig: { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} }; + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + ArgsEscaped: boolean; + Image: string; + Volumes: { [path: string]: {} }; + WorkingDir: string; + Entrypoint?: any; + OnBuild?: any[]; + Labels: { [label: string]: string }; + }; + DockerVersion: string; + Author: string; + Config: { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} }; + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + ArgsEscaped: boolean; + Image: string; + Volumes: { [path: string]: {} }; + WorkingDir: string; + Entrypoint?: any; + OnBuild: any[]; + Labels: { [label: string]: string }; + }; + Architecture: string; + Os: string; + Size: number; + VirtualSize: number; + GraphDriver: { + Name: string; + Data: { DeviceId: string; DeviceName: string; DeviceSize: string }; + }; + } - interface ContainerCreateOptions { - name?: string; - Hostname?: string; - Domainname?: string; - User?: string; - AttachStdin?: boolean; - AttachStdout?: boolean; - AttachStderr?: boolean; - Tty?: boolean; - OpenStdin?: boolean; - StdinOnce?: boolean; - Env?: string[]; - Cmd?: string[]; - Entrypoint?: string; - Image?: string; - Labels?: { [label: string]: string }; - Volumes?: { [volume: string]: {} }; - WorkingDir?: string; - NetworkDisabled?: boolean; - MacAddress?: boolean; - ExposedPorts?: { [port: string]: {} }; - StopSignal?: string; - HostConfig?: { - AutoRemove?: boolean; - Binds?: string[]; - Links?: string[]; - Memory?: number; - MemorySwap?: number; - MemoryReservation?: number; - KernelMemory?: number; - CpuPercent?: number; - CpuShares?: number; - CpuPeriod?: number; - CpuQuota?: number; - CpusetMems?: string; - MaximumIOps?: number; - MaxmimumIOBps?: number; - BlkioWeightDevice?: Array<{}>; - BlkioDeviceReadBps?: Array<{}>; - BlkioDeviceReadIOps?: Array<{}>; - BlkioDeviceWriteBps?: Array<{}>; - BlkioDeviceWriteIOps?: Array<{}>; - MemorySwappiness?: number; - OomKillDisable?: boolean; - OomScoreAdj?: number; - PidMode?: string; - PidsLimit?: number; - PortBindings?: { [portAndProtocol: string]: Array<{ [index: string]: string }> }; - PublishAllPorts?: boolean; - Privileged?: boolean; - ReadonlyRootfs?: boolean; - Dns?: string[]; - DnsOptions?: string[]; - DnsSearch?: string[]; - ExtraHosts?: any; - VolumesFrom?: string[]; - CapAdd?: string[]; - CapDrop?: string[]; - GroupAdd?: string[]; - RestartPolicy?: { [index: string]: number | string }; - NetworkMode?: string; - Devices?: any[]; - Sysctls?: { [index: string]: string }; - Ulimits?: Array<{}>; - LogConfig?: { [index: string]: string | {} }; - SecurityOpt?: { [index: string]: any }; - CgroupParent?: string; - VolumeDriver?: string; - ShmSize?: number; - }; - NetworkingConfig?: { - EndpointsConfig?: { - [index: string]: any; - isolated_nw?: { - [index: string]: any; - IPAMConfig?: { - IPv4Address?: string; - IPv6Adress?: string; - LinkLocalIPs?: string[]; - } - Links?: string[]; - Aliases?: string[]; - } - } - }; - } + interface PortBinding { + HostIp?: string; + HostPort?: string; + } - interface KeyObject { - pem: string | Buffer; - passphrase?: string; - } + interface PortMap { + [key: string]: PortBinding[]; + } - interface DockerOptions { - socketPath?: string; - host?: string; - port?: number | string; - ca?: string | string[] | Buffer | Buffer[]; - cert?: string | string[] | Buffer | Buffer[]; - key?: string | string[] | Buffer | Buffer[] | KeyObject[]; - protocol?: "https" | "http"; - timeout?: number; - version?: string; - Promise?: typeof Promise; - } + interface RestartPolicy { + Name: string; + MaximumRetryCount?: number; + } - interface SecretVersion { - Index: number; - } + type LoggingDriverType = + | "json-file" + | "syslog" + | "journald" + | "gelf" + | "fluentd" + | "awslogs" + | "splunk" + | "etwlogs" + | "none"; - interface ServiceSpec { - Name: string; - } + interface LogConfig { + Type: LoggingDriverType; + Config?: { [key: string]: string }; + } - interface SecretInfo { - ID: string; - Version: SecretVersion; - CreatedAt: string; - UpdatedAt?: string; - Spec?: ServiceSpec; - } + interface DeviceMapping { + PathOnHost: string; + PathinContainer: string; + CgroupPermissions: string; + } - interface PluginInfo { - Id?: string; - Name: string; - Enabled: boolean; - Settings: PluginSettings; - PluginReference?: string; - Config: PluginConfig; - } + interface ContainerCreateOptions { + name?: string; + Hostname?: string; + Domainname?: string; + User?: string; + AttachStdin?: boolean; + AttachStdout?: boolean; + AttachStderr?: boolean; + Tty?: boolean; + OpenStdin?: boolean; + StdinOnce?: boolean; + Env?: string[]; + Cmd?: string[]; + Entrypoint?: string; + Image?: string; + Labels?: { [label: string]: string }; + Volumes?: { [volume: string]: {} }; + WorkingDir?: string; + NetworkDisabled?: boolean; + MacAddress?: boolean; + ExposedPorts?: { [port: string]: {} }; + StopSignal?: string; + HostConfig?: { + AutoRemove?: boolean; + Binds?: string[]; + Links?: string[]; + Memory?: number; + MemorySwap?: number; + MemoryReservation?: number; + KernelMemory?: number; + CpuPercent?: number; + CpuShares?: number; + CpuPeriod?: number; + CpuQuota?: number; + CpusetMems?: string; + MaximumIOps?: number; + MaxmimumIOBps?: number; + BlkioWeightDevice?: Array<{}>; + BlkioDeviceReadBps?: Array<{}>; + BlkioDeviceReadIOps?: Array<{}>; + BlkioDeviceWriteBps?: Array<{}>; + BlkioDeviceWriteIOps?: Array<{}>; + MemorySwappiness?: number; + OomKillDisable?: boolean; + OomScoreAdj?: number; + PidMode?: string; + PidsLimit?: number; + PortBindings?: PortMap; + PublishAllPorts?: boolean; + Privileged?: boolean; + ReadonlyRootfs?: boolean; + Dns?: string[]; + DnsOptions?: string[]; + DnsSearch?: string[]; + ExtraHosts?: any; + VolumesFrom?: string[]; + CapAdd?: string[]; + CapDrop?: string[]; + GroupAdd?: string[]; + RestartPolicy?: RestartPolicy; + NetworkMode?: string; + Devices?: DeviceMapping[]; + Sysctls?: { [index: string]: string }; + Ulimits?: Array<{}>; + LogConfig?: LogConfig; + SecurityOpt?: { [index: string]: any }; + CgroupParent?: string; + VolumeDriver?: string; + ShmSize?: number; + }; + NetworkingConfig?: { + EndpointsConfig?: { + [index: string]: any; + isolated_nw?: { + [index: string]: any; + IPAMConfig?: { + IPv4Address?: string; + IPv6Adress?: string; + LinkLocalIPs?: string[]; + }; + Links?: string[]; + Aliases?: string[]; + }; + }; + }; + } - type PluginInspectInfo = PluginInfo; + interface KeyObject { + pem: string | Buffer; + passphrase?: string; + } - interface PluginSettings { - Mounts: PluginMount[]; - Env: string[]; - Args: string[]; - Devices: PluginDevice[]; - } + interface DockerOptions { + socketPath?: string; + host?: string; + port?: number | string; + ca?: string | string[] | Buffer | Buffer[]; + cert?: string | string[] | Buffer | Buffer[]; + key?: string | string[] | Buffer | Buffer[] | KeyObject[]; + protocol?: "https" | "http"; + timeout?: number; + version?: string; + Promise?: typeof Promise; + } - interface PluginConfig { - Description: string; - Documentation: string; - Interface: any; - Entrypoint: string[]; - WorkDir: string; - User?: User; - Network: Network; - Linux: Linux; - PropagatedMount: string; - Mounts: PluginMount[]; - Env: PluginEnv[]; - Args: Args; - rootfs: any; - } + interface SecretVersion { + Index: number; + } - interface Interface { - Types: PluginInterfaceType[]; - Socket: string; - } + interface ServiceSpec { + Name: string; + } - interface PluginInterfaceType { - Prefix: string; - Capability: string; - Version: string; - } + interface SecretInfo { + ID: string; + Version: SecretVersion; + CreatedAt: string; + UpdatedAt?: string; + Spec?: ServiceSpec; + } - interface PluginMount { - Name: string; - Description: string; - Settable: string[]; - Source: string; - Destination: string; - Type: string; - Options: string[]; - } + interface PluginInfo { + Id?: string; + Name: string; + Enabled: boolean; + Settings: PluginSettings; + PluginReference?: string; + Config: PluginConfig; + } - interface Linux { - Capabilities: string[]; - AllowAllDevices: boolean; - Devices: PluginDevice[]; - } + type PluginInspectInfo = PluginInfo; - interface PluginDevice { - Name: string; - Description: string; - Settable: string[]; - Path: string; - } + interface PluginSettings { + Mounts: PluginMount[]; + Env: string[]; + Args: string[]; + Devices: PluginDevice[]; + } - interface Network { - Type: string; - } + interface PluginConfig { + Description: string; + Documentation: string; + Interface: any; + Entrypoint: string[]; + WorkDir: string; + User?: User; + Network: Network; + Linux: Linux; + PropagatedMount: string; + Mounts: PluginMount[]; + Env: PluginEnv[]; + Args: Args; + rootfs: any; + } - interface PluginEnv { - Name: string; - Description: string; - Settable: string[]; - Value: string; - } + interface Interface { + Types: PluginInterfaceType[]; + Socket: string; + } - interface Args { - Name: string; - Description: string; - Settable: string[]; - Value: string; - } + interface PluginInterfaceType { + Prefix: string; + Capability: string; + Version: string; + } - interface User { - UID: number; - GID: number; - } + interface PluginMount { + Name: string; + Description: string; + Settable: string[]; + Source: string; + Destination: string; + Type: string; + Options: string[]; + } - interface ImageRemoveInfo { - Untagged: string; - Deleted: string; - } + interface Linux { + Capabilities: string[]; + AllowAllDevices: boolean; + Devices: PluginDevice[]; + } - interface PruneImagesInfo { - ImagesDeleted: ImageRemoveInfo[]; - SpaceReclaimed: number; - } + interface PluginDevice { + Name: string; + Description: string; + Settable: string[]; + Path: string; + } - interface PruneVolumesInfo { - VolumesDeleted: string[]; - SpaceReclaimed: number; - } + interface Network { + Type: string; + } - interface PruneContainersInfo { - ContainersDeleted: string[]; - SpaceReclaimed: number; - } + interface PluginEnv { + Name: string; + Description: string; + Settable: string[]; + Value: string; + } - interface PruneNetworksInfo { - NetworksDeleted: string[]; - } + interface Args { + Name: string; + Description: string; + Settable: string[]; + Value: string; + } - interface ContainerLogsOptions { - stdout?: boolean; - stderr?: boolean; - follow?: boolean; - since?: number; - details?: boolean; - tail?: number; - timestamps?: boolean; - } + interface User { + UID: number; + GID: number; + } - interface ImageBuildContext { - context: string; - src: string[]; - } + interface ImageRemoveInfo { + Untagged: string; + Deleted: string; + } - interface DockerVersion { - ApiVersion: string; - Arch: string; - BuildTime: Date; - Components: Array<{ - Details: { + interface PruneImagesInfo { + ImagesDeleted: ImageRemoveInfo[]; + SpaceReclaimed: number; + } + + interface PruneVolumesInfo { + VolumesDeleted: string[]; + SpaceReclaimed: number; + } + + interface PruneContainersInfo { + ContainersDeleted: string[]; + SpaceReclaimed: number; + } + + interface PruneNetworksInfo { + NetworksDeleted: string[]; + } + + interface ContainerLogsOptions { + stdout?: boolean; + stderr?: boolean; + follow?: boolean; + since?: number; + details?: boolean; + tail?: number; + timestamps?: boolean; + } + + interface ImageBuildContext { + context: string; + src: string[]; + } + + interface DockerVersion { ApiVersion: string; Arch: string; - BuilTime: Date; - Experimental: string; + BuildTime: Date; + Components: Array<{ + Details: { + ApiVersion: string; + Arch: string; + BuilTime: Date; + Experimental: string; + GitCommit: string; + GoVersion: string; + KernelVersion: string; + Os: string; + }; + Name: string; + Version: string; + }>; GitCommit: string; GoVersion: string; KernelVersion: string; + MinAPIVersion: string; Os: string; - }; - Name: string; - Version: string; - }>; - GitCommit: string; - GoVersion: string; - KernelVersion: string; - MinAPIVersion: string; - Os: string; - Platform: { - Name: string; - }; - Version: string; - } + Platform: { Name: string }; + Version: string; + } } type Callback = (error?: any, result?: T) => void; declare class Dockerode { - constructor(options?: Dockerode.DockerOptions); + constructor(options?: Dockerode.DockerOptions); - createContainer(options: Dockerode.ContainerCreateOptions, callback: Callback): void; - createContainer(options: Dockerode.ContainerCreateOptions): Promise; + createContainer( + options: Dockerode.ContainerCreateOptions, + callback: Callback + ): void; + createContainer( + options: Dockerode.ContainerCreateOptions + ): Promise; - createImage(options: {}, callback: Callback): void; - createImage(auth: any, options: {}, callback: Callback): void; - createImage(options: {}): Promise; - createImage(auth: any, options: {}): Promise; + createImage(options: {}, callback: Callback): void; + createImage( + auth: any, + options: {}, + callback: Callback + ): void; + createImage(options: {}): Promise; + createImage(auth: any, options: {}): Promise; - loadImage(file: string | NodeJS.ReadableStream, options: {}, callback: Callback): void; - loadImage(file: string | NodeJS.ReadableStream, callback: Callback): void; - loadImage(file: string | NodeJS.ReadableStream, options?: {}): Promise; + loadImage( + file: string | NodeJS.ReadableStream, + options: {}, + callback: Callback + ): void; + loadImage( + file: string | NodeJS.ReadableStream, + callback: Callback + ): void; + loadImage( + file: string | NodeJS.ReadableStream, + options?: {} + ): Promise; - importImage(file: string | NodeJS.ReadableStream, options: {}, callback: Callback): void; - importImage(file: string | NodeJS.ReadableStream, callback: Callback): void; - importImage(file: string | NodeJS.ReadableStream, options?: {}): Promise; + importImage( + file: string | NodeJS.ReadableStream, + options: {}, + callback: Callback + ): void; + importImage( + file: string | NodeJS.ReadableStream, + callback: Callback + ): void; + importImage( + file: string | NodeJS.ReadableStream, + options?: {} + ): Promise; - checkAuth(options: any, callback: Callback): void; - checkAuth(options: any): Promise; + checkAuth(options: any, callback: Callback): void; + checkAuth(options: any): Promise; - buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, options: {}, callback: Callback): void; - buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, callback: Callback): void; - buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, options?: {}): Promise; + buildImage( + file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, + options: {}, + callback: Callback + ): void; + buildImage( + file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, + callback: Callback + ): void; + buildImage( + file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, + options?: {} + ): Promise; - getContainer(id: string): Dockerode.Container; + getContainer(id: string): Dockerode.Container; - getImage(name: string): Dockerode.Image; + getImage(name: string): Dockerode.Image; - getVolume(name: string): Dockerode.Volume; + getVolume(name: string): Dockerode.Volume; - getPlugin(name: string, remote: any): Dockerode.Plugin; + getPlugin(name: string, remote: any): Dockerode.Plugin; - getService(id: string): Dockerode.Service; + getService(id: string): Dockerode.Service; - getTask(id: string): Dockerode.Task; + getTask(id: string): Dockerode.Task; - getNode(id: string): Dockerode.Node; + getNode(id: string): Dockerode.Node; - getNetwork(id: string): Dockerode.Network; + getNetwork(id: string): Dockerode.Network; - getSecret(id: string): Dockerode.Secret; + getSecret(id: string): Dockerode.Secret; - getExec(id: string): Dockerode.Exec; + getExec(id: string): Dockerode.Exec; - listContainers(options: {}, callback: Callback): void; - listContainers(callback: Callback): void; - listContainers(options?: {}): Promise; + listContainers( + options: {}, + callback: Callback + ): void; + listContainers(callback: Callback): void; + listContainers(options?: {}): Promise; - listImages(options: {}, callback: Callback): void; - listImages(callback: Callback): void; - listImages(options?: {}): Promise; + listImages(options: {}, callback: Callback): void; + listImages(callback: Callback): void; + listImages(options?: {}): Promise; - listServices(options: {}, callback: Callback): void; - listServices(callback: Callback): void; - listServices(options?: {}): Promise; + listServices(options: {}, callback: Callback): void; + listServices(callback: Callback): void; + listServices(options?: {}): Promise; - listNodes(options: {}, callback: Callback): void; - listNodes(callback: Callback): void; - listNodes(options?: {}): Promise; + listNodes(options: {}, callback: Callback): void; + listNodes(callback: Callback): void; + listNodes(options?: {}): Promise; - listTasks(options: {}, callback: Callback): void; - listTasks(callback: Callback): void; - listTasks(options?: {}): Promise; + listTasks(options: {}, callback: Callback): void; + listTasks(callback: Callback): void; + listTasks(options?: {}): Promise; - listSecrets(options: {}, callback: Callback): void; - listSecrets(callback: Callback): void; - listSecrets(options?: {}): Promise; + listSecrets(options: {}, callback: Callback): void; + listSecrets(callback: Callback): void; + listSecrets(options?: {}): Promise; - listPlugins(options: {}, callback: Callback): void; - listPlugins(callback: Callback): void; - listPlugins(options?: {}): Promise; + listPlugins(options: {}, callback: Callback): void; + listPlugins(callback: Callback): void; + listPlugins(options?: {}): Promise; - listVolumes(options: {}, callback: Callback): void; - listVolumes(callback: Callback): void; - listVolumes(options?: {}): Promise; + listVolumes(options: {}, callback: Callback): void; + listVolumes(callback: Callback): void; + listVolumes(options?: {}): Promise; - listNetworks(options: {}, callback: Callback): void; - listNetworks(callback: Callback): void; - listNetworks(options?: {}): Promise; + listNetworks(options: {}, callback: Callback): void; + listNetworks(callback: Callback): void; + listNetworks(options?: {}): Promise; - createSecret(options: {}, callback: Callback): void; - createSecret(options: {}): Promise; + createSecret(options: {}, callback: Callback): void; + createSecret(options: {}): Promise; - createPlugin(options: {}, callback: Callback): void; - createPlugin(options: {}): Promise; + createPlugin(options: {}, callback: Callback): void; + createPlugin(options: {}): Promise; - createVolume(options: {}, callback: Callback): void; - createVolume(options: {}): Promise; + createVolume(options: {}, callback: Callback): void; + createVolume(options: {}): Promise; - createService(options: {}, callback: Callback): void; - createService(options: {}): Promise; + createService(options: {}, callback: Callback): void; + createService(options: {}): Promise; - createNetwork(options: {}, callback: Callback): void; - createNetwork(options: {}): Promise; + createNetwork(options: {}, callback: Callback): void; + createNetwork(options: {}): Promise; - searchImages(options: {}, callback: Callback): void; - searchImages(options: {}): Promise; + searchImages(options: {}, callback: Callback): void; + searchImages(options: {}): Promise; - pruneImages(options: {}, callback: Callback): void; - pruneImages(callback: Callback): void; - pruneImages(options?: {}): Promise; + pruneImages( + options: {}, + callback: Callback + ): void; + pruneImages(callback: Callback): void; + pruneImages(options?: {}): Promise; - pruneContainers(options: {}, callback: Callback): void; - pruneContainers(callback: Callback): void; - pruneContainers(options?: {}): Promise; + pruneContainers( + options: {}, + callback: Callback + ): void; + pruneContainers(callback: Callback): void; + pruneContainers(options?: {}): Promise; - pruneVolumes(options: {}, callback: Callback): void; - pruneVolumes(callback: Callback): void; - pruneVolumes(options?: {}): Promise; + pruneVolumes( + options: {}, + callback: Callback + ): void; + pruneVolumes(callback: Callback): void; + pruneVolumes(options?: {}): Promise; - pruneNetworks(options: {}, callback: Callback): void; - pruneNetworks(callback: Callback): void; - pruneNetworks(options?: {}): Promise; + pruneNetworks( + options: {}, + callback: Callback + ): void; + pruneNetworks(callback: Callback): void; + pruneNetworks(options?: {}): Promise; - info(callback: Callback): void; - info(): Promise; + info(callback: Callback): void; + info(): Promise; - df(callback: Callback): void; - df(): Promise; + df(callback: Callback): void; + df(): Promise; - version(callback: Callback): void; - version(): Promise; + version(callback: Callback): void; + version(): Promise; - ping(callback: Callback): void; - ping(): Promise; + ping(callback: Callback): void; + ping(): Promise; - getEvents(options: {}, callback: Callback): void; - getEvents(callback: Callback): void; - getEvents(options?: {}): Promise; + getEvents(options: {}, callback: Callback): void; + getEvents(callback: Callback): void; + getEvents(options?: {}): Promise; - pull(repoTag: string, options: {}, callback: Callback, auth?: {}): Dockerode.Image; - pull(repoTag: string, options: {}, auth?: {}): Promise; + pull( + repoTag: string, + options: {}, + callback: Callback, + auth?: {} + ): Dockerode.Image; + pull(repoTag: string, options: {}, auth?: {}): Promise; - run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions: {}, startOptions: {}, callback: Callback): events.EventEmitter; - run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], startOptions: {}, callback: Callback): events.EventEmitter; - run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], callback: Callback): events.EventEmitter; - run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions: {}, callback: Callback): events.EventEmitter; - run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions?: {}, startOptions?: {}): Promise; + run( + image: string, + cmd: string[], + outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], + createOptions: {}, + startOptions: {}, + callback: Callback + ): events.EventEmitter; + run( + image: string, + cmd: string[], + outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], + startOptions: {}, + callback: Callback + ): events.EventEmitter; + run( + image: string, + cmd: string[], + outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], + callback: Callback + ): events.EventEmitter; + run( + image: string, + cmd: string[], + outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], + createOptions: {}, + callback: Callback + ): events.EventEmitter; + run( + image: string, + cmd: string[], + outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], + createOptions?: {}, + startOptions?: {} + ): Promise; - swarmInit(options: {}, callback: Callback): void; - swarmInit(options: {}): Promise; + swarmInit(options: {}, callback: Callback): void; + swarmInit(options: {}): Promise; - swarmJoin(options: {}, callback: Callback): void; - swarmJoin(options: {}): Promise; + swarmJoin(options: {}, callback: Callback): void; + swarmJoin(options: {}): Promise; - swarmLeave(options: {}, callback: Callback): void; - swarmLeave(options: {}): Promise; + swarmLeave(options: {}, callback: Callback): void; + swarmLeave(options: {}): Promise; - swarmUpdate(options: {}, callback: Callback): void; - swarmUpdate(options: {}): Promise; + swarmUpdate(options: {}, callback: Callback): void; + swarmUpdate(options: {}): Promise; - swarmInspect(callback: Callback): void; - swarmInspect(): Promise; + swarmInspect(callback: Callback): void; + swarmInspect(): Promise; - modem: any; + modem: any; } export = Dockerode; From 4ca1d661b9b96978962c366f81ece6c6f1fd2add Mon Sep 17 00:00:00 2001 From: Kapil Sachdeva Date: Tue, 6 Nov 2018 10:22:37 -0600 Subject: [PATCH 2/3] dockerode - remove the formatting (done by vscode) to ease the review --- types/dockerode/index.d.ts | 1980 +++++++++++++++++------------------- 1 file changed, 951 insertions(+), 1029 deletions(-) diff --git a/types/dockerode/index.d.ts b/types/dockerode/index.d.ts index c0114bbfec..3cea2177c6 100644 --- a/types/dockerode/index.d.ts +++ b/types/dockerode/index.d.ts @@ -11,1136 +11,1058 @@ /// -import * as events from "events"; -import * as stream from "stream"; +import * as stream from 'stream'; +import * as events from 'events'; declare namespace Dockerode { - interface Container { - inspect(options: {}, callback: Callback): void; - inspect(callback: Callback): void; - inspect(options?: {}): Promise; - - rename(options: {}, callback: Callback): void; - rename(options: {}): Promise; - - update(options: {}, callback: Callback): void; - update(options: {}): Promise; - - top(options: {}, callback: Callback): void; - top(callback: Callback): void; - top(options?: {}): Promise; - - changes(callback: Callback): void; - changes(): Promise; - - export(callback: Callback): void; - export(): Promise; - - start(options: {}, callback: Callback): void; - start(callback: Callback): void; - start(options?: {}): Promise; - - pause(options: {}, callback: Callback): void; - pause(callback: Callback): void; - pause(options?: {}): Promise; - - unpause(options: {}, callback: Callback): void; - unpause(callback: Callback): void; - unpause(options?: {}): Promise; - - exec(options: {}, callback: Callback): void; - exec(options: {}): Promise; - - commit(options: {}, callback: Callback): void; - commit(callback: Callback): void; - commit(options?: {}): Promise; - - stop(options: {}, callback: Callback): void; - stop(callback: Callback): void; - stop(options?: {}): Promise; - - restart(options: {}, callback: Callback): void; - restart(callback: Callback): void; - restart(options?: {}): Promise; - - kill(options: {}, callback: Callback): void; - kill(callback: Callback): void; - kill(options?: {}): Promise; - - resize(options: {}, callback: Callback): void; - resize(callback: Callback): void; - resize(options?: {}): Promise; - - wait(callback: Callback): void; - wait(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - /** Deprecated since RAPI v1.20 */ - copy(options: {}, callback: Callback): void; - /** Deprecated since RAPI v1.20 */ - copy(callback: Callback): void; - /** Deprecated since RAPI v1.20 */ - copy(options?: {}): Promise; - - getArchive( - options: {}, - callback: Callback - ): void; - getArchive(options: {}): Promise; - - infoArchive(options: {}, callback: Callback): void; - infoArchive(options: {}): Promise; - - /** @param file Filename (will read synchronously), Buffer or stream */ - putArchive( - file: string | Buffer | NodeJS.ReadableStream, - options: {}, - callback: Callback - ): void; - putArchive( - file: string | Buffer | NodeJS.ReadableStream, - options: {} - ): Promise; - - logs( - options: ContainerLogsOptions, - callback: Callback - ): void; - logs(callback: Callback): void; - logs(options?: ContainerLogsOptions): Promise; - - stats(options: {}, callback: Callback): void; - stats(callback: Callback): void; - stats(options?: {}): Promise; - - attach(options: {}, callback: Callback): void; - attach(options: {}): Promise; + interface Container { + inspect(options: {}, callback: Callback): void; + inspect(callback: Callback): void; + inspect(options?: {}): Promise; - modem: any; - id?: string; - } + rename(options: {}, callback: Callback): void; + rename(options: {}): Promise; - interface Image { - inspect(callback: Callback): void; - inspect(): Promise; - - history(callback: Callback): void; - history(): Promise; + update(options: {}, callback: Callback): void; + update(options: {}): Promise; - get(callback: Callback): void; - get(): Promise; - - push(options: {}, callback: Callback): void; - push(callback: Callback): void; - push(options?: {}): Promise; - - tag(options: {}, callback: Callback): void; - tag(callback: Callback): void; - tag(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Volume { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - name?: string; - } - - interface Service { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - update(options: {}, callback: Callback): void; - update(options: {}): Promise; - - modem: any; - id?: string; - } - - interface Task { - inspect(callback: Callback): void; - inspect(): Promise; - - modem: any; - id?: string; - } - - interface Node { - inspect(callback: Callback): void; - inspect(): Promise; - - update(options: {}, callback: Callback): void; - update(callback: Callback): void; - update(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Plugin { - modem: any; - name: string; - remote: any; - - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - privileges(callback: Callback): void; - privileges(): Promise; - - pull(options: {}, callback: Callback): void; - pull(options: {}): Promise; - - enable(options: {}, callback: Callback): void; - enable(callback: Callback): void; - enable(options?: {}): Promise; - - disable(options: {}, callback: Callback): void; - disable(callback: Callback): void; - disable(options?: {}): Promise; - - push(options: {}, callback: Callback): void; - push(callback: Callback): void; - push(options?: {}): Promise; - - configure(options: {}, callback: Callback): void; - configure(callback: Callback): void; - configure(options?: {}): Promise; - - upgrade(auth: any, options: {}, callback: Callback): void; - upgrade(auth: any, callback: Callback): void; - upgrade(auth: any, options?: {}): Promise; - } - - interface Secret { - inspect(callback: Callback): void; - inspect(): Promise; - - update(options: {}, callback: Callback): void; - update(callback: Callback): void; - update(options?: {}): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Network { - inspect(callback: Callback): void; - inspect(): Promise; - - remove(options: {}, callback: Callback): void; - remove(callback: Callback): void; - remove(options?: {}): Promise; - - connect(options: {}, callback: Callback): void; - connect(callback: Callback): void; - connect(options?: {}): Promise; - - disconnect(options: {}, callback: Callback): void; - disconnect(callback: Callback): void; - disconnect(options?: {}): Promise; - - modem: any; - id?: string; - } - - interface Exec { - inspect(callback: Callback): void; - inspect(): Promise; - - start(options: {}, callback: Callback): void; - start(options: {}): Promise; - - resize(options: {}, callback: Callback): void; - resize(options: {}): Promise; - - modem: any; - id?: string; - } - - interface ImageInfo { - Id: string; - ParentId: string; - RepoTags: string[]; - RepoDigests?: string[]; - Created: number; - Size: number; - VirtualSize: number; - Labels: { [label: string]: string }; - } - - interface ContainerInfo { - Id: string; - Names: string[]; - Image: string; - ImageID: string; - Command: string; - Created: number; - Ports: Port[]; - Labels: { [label: string]: string }; - State: string; - Status: string; - HostConfig: { NetworkMode: string }; - NetworkSettings: { Networks: { [networkType: string]: NetworkInfo } }; - } - - interface Port { - IP: string; - PrivatePort: number; - PublicPort: number; - Type: string; - } - - interface NetworkInfo { - IPAMConfig?: any; - Links?: any; - Aliases?: any; - NetworkID: string; - EndpointID: string; - Gateway: string; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - MacAddress: string; - } - - // not complete definition of network inspection - // info which is returned by list / inspect - interface NetworkInspectInfo { - Id: string; - Name: string; - Driver: string; - Created: string; - Scope: string; - EnableIPv6: boolean; - Internal: boolean; - Attachable: boolean; - Ingress: boolean; - } - - interface ContainerInspectInfo { - Id: string; - Created: string; - Path: string; - Args: string[]; - State: { - Status: string; - Running: boolean; - Paused: boolean; - Restarting: boolean; - OOMKilled: boolean; - Dead: boolean; - Pid: number; - ExitCode: number; - Error: string; - StartedAt: string; - FinishedAt: string; - }; - Image: string; - ResolvConfPath: string; - HostnamePath: string; - HostsPath: string; - LogPath: string; - Name: string; - RestartCount: number; - Driver: string; - MountLabel: string; - ProcessLabel: string; - AppArmorProfile: string; - ExecIDs?: any; - HostConfig: HostConfig; - GraphDriver: { - Name: string; - Data: { DeviceId: string; DeviceName: string; DeviceSize: string }; - }; - Mounts: Array<{ - Source: string; - Destination: string; - Mode: string; - RW: boolean; - Propagation: string; + top(options: {}, callback: Callback): void; + top(callback: Callback): void; + top(options?: {}): Promise; + + changes(callback: Callback): void; + changes(): Promise; + + export(callback: Callback): void; + export(): Promise; + + start(options: {}, callback: Callback): void; + start(callback: Callback): void; + start(options?: {}): Promise; + + pause(options: {}, callback: Callback): void; + pause(callback: Callback): void; + pause(options?: {}): Promise; + + unpause(options: {}, callback: Callback): void; + unpause(callback: Callback): void; + unpause(options?: {}): Promise; + + exec(options: {}, callback: Callback): void; + exec(options: {}): Promise; + + commit(options: {}, callback: Callback): void; + commit(callback: Callback): void; + commit(options?: {}): Promise; + + stop(options: {}, callback: Callback): void; + stop(callback: Callback): void; + stop(options?: {}): Promise; + + restart(options: {}, callback: Callback): void; + restart(callback: Callback): void; + restart(options?: {}): Promise; + + kill(options: {}, callback: Callback): void; + kill(callback: Callback): void; + kill(options?: {}): Promise; + + resize(options: {}, callback: Callback): void; + resize(callback: Callback): void; + resize(options?: {}): Promise; + + wait(callback: Callback): void; + wait(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + /** Deprecated since RAPI v1.20 */ + copy(options: {}, callback: Callback): void; + /** Deprecated since RAPI v1.20 */ + copy(callback: Callback): void; + /** Deprecated since RAPI v1.20 */ + copy(options?: {}): Promise; + + getArchive(options: {}, callback: Callback): void; + getArchive(options: {}): Promise; + + infoArchive(options: {}, callback: Callback): void; + infoArchive(options: {}): Promise; + + /** @param file Filename (will read synchronously), Buffer or stream */ + putArchive(file: string | Buffer | NodeJS.ReadableStream, options: {}, callback: Callback): void; + putArchive(file: string | Buffer | NodeJS.ReadableStream, options: {}): Promise; + + logs(options: ContainerLogsOptions, callback: Callback): void; + logs(callback: Callback): void; + logs(options?: ContainerLogsOptions): Promise; + + stats(options: {}, callback: Callback): void; + stats(callback: Callback): void; + stats(options?: {}): Promise; + + attach(options: {}, callback: Callback): void; + attach(options: {}): Promise; + + modem: any; + id?: string; + } + + interface Image { + inspect(callback: Callback): void; + inspect(): Promise; + + history(callback: Callback): void; + history(): Promise; + + get(callback: Callback): void; + get(): Promise; + + push(options: {}, callback: Callback): void; + push(callback: Callback): void; + push(options?: {}): Promise; + + tag(options: {}, callback: Callback): void; + tag(callback: Callback): void; + tag(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Volume { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + name?: string; + } + + interface Service { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + update(options: {}, callback: Callback): void; + update(options: {}): Promise; + + modem: any; + id?: string; + } + + interface Task { + inspect(callback: Callback): void; + inspect(): Promise; + + modem: any; + id?: string; + } + + interface Node { + inspect(callback: Callback): void; + inspect(): Promise; + + update(options: {}, callback: Callback): void; + update(callback: Callback): void; + update(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Plugin { + modem: any; + name: string; + remote: any; + + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + privileges(callback: Callback): void; + privileges(): Promise; + + pull(options: {}, callback: Callback): void; + pull(options: {}): Promise; + + enable(options: {}, callback: Callback): void; + enable(callback: Callback): void; + enable(options?: {}): Promise; + + disable(options: {}, callback: Callback): void; + disable(callback: Callback): void; + disable(options?: {}): Promise; + + push(options: {}, callback: Callback): void; + push(callback: Callback): void; + push(options?: {}): Promise; + + configure(options: {}, callback: Callback): void; + configure(callback: Callback): void; + configure(options?: {}): Promise; + + upgrade(auth: any, options: {}, callback: Callback): void; + upgrade(auth: any, callback: Callback): void; + upgrade(auth: any, options?: {}): Promise; + } + + interface Secret { + inspect(callback: Callback): void; + inspect(): Promise; + + update(options: {}, callback: Callback): void; + update(callback: Callback): void; + update(options?: {}): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Network { + inspect(callback: Callback): void; + inspect(): Promise; + + remove(options: {}, callback: Callback): void; + remove(callback: Callback): void; + remove(options?: {}): Promise; + + connect(options: {}, callback: Callback): void; + connect(callback: Callback): void; + connect(options?: {}): Promise; + + disconnect(options: {}, callback: Callback): void; + disconnect(callback: Callback): void; + disconnect(options?: {}): Promise; + + modem: any; + id?: string; + } + + interface Exec { + inspect(callback: Callback): void; + inspect(): Promise; + + start(options: {}, callback: Callback): void; + start(options: {}): Promise; + + resize(options: {}, callback: Callback): void; + resize(options: {}): Promise; + + modem: any; + id?: string; + } + + interface ImageInfo { + Id: string; + ParentId: string; + RepoTags: string[]; + RepoDigests?: string[]; + Created: number; + Size: number; + VirtualSize: number; + Labels: { [label: string]: string }; + } + + interface ContainerInfo { + Id: string; + Names: string[]; + Image: string; + ImageID: string; + Command: string; + Created: number; + Ports: Port[]; + Labels: { [label: string]: string }; + State: string; + Status: string; + HostConfig: { + NetworkMode: string; + }; + NetworkSettings: { + Networks: { [networkType: string]: NetworkInfo } + }; + } + + interface Port { + IP: string; + PrivatePort: number; + PublicPort: number; + Type: string; + } + + interface NetworkInfo { + IPAMConfig?: any; + Links?: any; + Aliases?: any; + NetworkID: string; + EndpointID: string; + Gateway: string; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + MacAddress: string; + } + + // not complete definition of network inspection + // info which is returned by list / inspect + interface NetworkInspectInfo { + Id: string; + Name: string; + Driver: string; + Created: string; + Scope: string; + EnableIPv6: boolean; + Internal: boolean; + Attachable: boolean; + Ingress: boolean; + } + + interface ContainerInspectInfo { + Id: string; + Created: string; + Path: string; + Args: string[]; + State: { + Status: string; + Running: boolean; + Paused: boolean; + Restarting: boolean; + OOMKilled: boolean; + Dead: boolean; + Pid: number; + ExitCode: number; + Error: string; + StartedAt: string; + FinishedAt: string; + }; + Image: string; + ResolvConfPath: string; + HostnamePath: string; + HostsPath: string; + LogPath: string; + Name: string; + RestartCount: number; + Driver: string; + MountLabel: string; + ProcessLabel: string; + AppArmorProfile: string; + ExecIDs?: any; + HostConfig: HostConfig; + GraphDriver: { + Name: string; + Data: { + DeviceId: string; + DeviceName: string; + DeviceSize: string; + } + }; + Mounts: Array<{ + Source: string; + Destination: string; + Mode: string; + RW: boolean; + Propagation: string; + }>; + Config: { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} }; + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + Image: string; + Volumes: { [volume: string]: {} }; + WorkingDir: string; + Entrypoint?: any; + OnBuild?: any; + Labels: { [label: string]: string } + }; + NetworkSettings: { + Bridge: string; + SandboxID: string; + HairpinMode: boolean; + LinkLocalIPv6Address: string; + LinkLocalIPv6PrefixLen: number; + Ports: { + [portAndProtocol: string]: Array<{ + HostIp: string; + HostPort: string; }>; - Config: { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} }; - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - Image: string; - Volumes: { [volume: string]: {} }; - WorkingDir: string; - Entrypoint?: any; - OnBuild?: any; - Labels: { [label: string]: string }; - }; - NetworkSettings: { - Bridge: string; - SandboxID: string; - HairpinMode: boolean; - LinkLocalIPv6Address: string; - LinkLocalIPv6PrefixLen: number; - Ports: { - [portAndProtocol: string]: Array<{ - HostIp: string; - HostPort: string; - }>; - }; - SandboxKey: string; - SecondaryIPAddresses?: any; - SecondaryIPv6Addresses?: any; - EndpointID: string; - Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - MacAddress: string; - Networks: { - [type: string]: { - IPAMConfig?: any; - Links?: any; - Aliases?: any; - NetworkID: string; - EndpointID: string; - Gateway: string; - IPAddress: string; - IPPrefixLen: number; - IPv6Gateway: string; - GlobalIPv6Address: string; - GlobalIPv6PrefixLen: number; - MacAddress: string; - }; - }; - Node?: { - ID: string; - IP: string; - Addr: string; - Name: string; - Cpus: number; - Memory: number; - Labels: any; - }; - }; - } + }; + SandboxKey: string; + SecondaryIPAddresses?: any; + SecondaryIPv6Addresses?: any; + EndpointID: string; + Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + MacAddress: string; + Networks: { + [type: string]: { + IPAMConfig?: any; + Links?: any; + Aliases?: any; + NetworkID: string; + EndpointID: string; + Gateway: string; + IPAddress: string; + IPPrefixLen: number; + IPv6Gateway: string; + GlobalIPv6Address: string; + GlobalIPv6PrefixLen: number; + MacAddress: string; + } + }; + Node?: { + ID: string; + IP: string; + Addr: string; + Name: string; + Cpus: number; + Memory: number; + Labels: any; + } + }; + } - interface HostConfig { - AutoRemove: boolean; - Binds: string[]; - ContainerIDFile: string; - LogConfig: { Type: string; Config: any }; - NetworkMode: string; - PortBindings?: any; - RestartPolicy: { Name: string; MaximumRetryCount: number }; - VolumeDriver: string; - VolumesFrom?: any; - CapAdd?: any; - CapDrop?: any; - Dns: any[]; - DnsOptions: any[]; - DnsSearch: any[]; - ExtraHosts?: any; - IpcMode: string; - Links?: any; - OomScoreAdj: number; - PidMode: string; - Privileged: boolean; - PublishAllPorts: boolean; - ReadonlyRootfs: boolean; - SecurityOpt?: any; - UTSMode: string; - ShmSize: number; - ConsoleSize: number[]; - Isolation: string; - CpuShares: number; - CgroupParent: string; - BlkioWeight: number; - BlkioWeightDevice?: any; - BlkioDeviceReadBps?: any; - BlkioDeviceWriteBps?: any; - BlkioDeviceReadIOps?: any; - BlkioDeviceWriteIOps?: any; - CpuPeriod: number; - CpuQuota: number; - CpusetCpus: string; - CpusetMems: string; - Devices?: any; - DiskQuota: number; - KernelMemory: number; - Memory: number; - MemoryReservation: number; - MemorySwap: number; - MemorySwappiness: number; - OomKillDisable: boolean; - PidsLimit: number; - Ulimits?: any; - } + interface HostConfig { + AutoRemove: boolean; + Binds: string[]; + ContainerIDFile: string; + LogConfig: { + Type: string; + Config: any; + }; + NetworkMode: string; + PortBindings?: any; + RestartPolicy: { + Name: string; + MaximumRetryCount: number; + }; + VolumeDriver: string; + VolumesFrom?: any; + CapAdd?: any; + CapDrop?: any; + Dns: any[]; + DnsOptions: any[]; + DnsSearch: any[]; + ExtraHosts?: any; + IpcMode: string; + Links?: any; + OomScoreAdj: number; + PidMode: string; + Privileged: boolean; + PublishAllPorts: boolean; + ReadonlyRootfs: boolean; + SecurityOpt?: any; + UTSMode: string; + ShmSize: number; + ConsoleSize: number[]; + Isolation: string; + CpuShares: number; + CgroupParent: string; + BlkioWeight: number; + BlkioWeightDevice?: any; + BlkioDeviceReadBps?: any; + BlkioDeviceWriteBps?: any; + BlkioDeviceReadIOps?: any; + BlkioDeviceWriteIOps?: any; + CpuPeriod: number; + CpuQuota: number; + CpusetCpus: string; + CpusetMems: string; + Devices?: any; + DiskQuota: number; + KernelMemory: number; + Memory: number; + MemoryReservation: number; + MemorySwap: number; + MemorySwappiness: number; + OomKillDisable: boolean; + PidsLimit: number; + Ulimits?: any; + } - interface ImageInspectInfo { - Id: string; - RepoTags: string[]; - RepoDigests: string[]; - Parent: string; - Comment: string; - Created: string; - Container: string; - ContainerConfig: { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} }; - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - ArgsEscaped: boolean; - Image: string; - Volumes: { [path: string]: {} }; - WorkingDir: string; - Entrypoint?: any; - OnBuild?: any[]; - Labels: { [label: string]: string }; - }; - DockerVersion: string; - Author: string; - Config: { - Hostname: string; - Domainname: string; - User: string; - AttachStdin: boolean; - AttachStdout: boolean; - AttachStderr: boolean; - ExposedPorts: { [portAndProtocol: string]: {} }; - Tty: boolean; - OpenStdin: boolean; - StdinOnce: boolean; - Env: string[]; - Cmd: string[]; - ArgsEscaped: boolean; - Image: string; - Volumes: { [path: string]: {} }; - WorkingDir: string; - Entrypoint?: any; - OnBuild: any[]; - Labels: { [label: string]: string }; - }; - Architecture: string; - Os: string; - Size: number; - VirtualSize: number; - GraphDriver: { - Name: string; - Data: { DeviceId: string; DeviceName: string; DeviceSize: string }; - }; - } + interface ImageInspectInfo { + Id: string; + RepoTags: string[]; + RepoDigests: string[]; + Parent: string; + Comment: string; + Created: string; + Container: string; + ContainerConfig: + { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} }; + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + ArgsEscaped: boolean; + Image: string; + Volumes: { [path: string]: {} }, + WorkingDir: string; + Entrypoint?: any; + OnBuild?: any[]; + Labels: { [label: string]: string } + }; + DockerVersion: string; + Author: string; + Config: + { + Hostname: string; + Domainname: string; + User: string; + AttachStdin: boolean; + AttachStdout: boolean; + AttachStderr: boolean; + ExposedPorts: { [portAndProtocol: string]: {} } + Tty: boolean; + OpenStdin: boolean; + StdinOnce: boolean; + Env: string[]; + Cmd: string[]; + ArgsEscaped: boolean; + Image: string; + Volumes: { [path: string]: {} }, + WorkingDir: string; + Entrypoint?: any; + OnBuild: any[]; + Labels: { [label: string]: string } + }; + Architecture: string; + Os: string; + Size: number; + VirtualSize: number; + GraphDriver: + { + Name: string; + Data: + { + DeviceId: string; + DeviceName: string; + DeviceSize: string; + } + }; + } - interface PortBinding { - HostIp?: string; - HostPort?: string; - } + interface PortBinding { + HostIp?: string; + HostPort?: string; + } - interface PortMap { - [key: string]: PortBinding[]; - } + interface PortMap { + [key: string]: PortBinding[]; + } - interface RestartPolicy { - Name: string; - MaximumRetryCount?: number; - } + interface RestartPolicy { + Name: string; + MaximumRetryCount?: number; + } type LoggingDriverType = - | "json-file" - | "syslog" - | "journald" - | "gelf" - | "fluentd" - | "awslogs" - | "splunk" - | "etwlogs" - | "none"; + | "json-file" + | "syslog" + | "journald" + | "gelf" + | "fluentd" + | "awslogs" + | "splunk" + | "etwlogs" + | "none"; - interface LogConfig { - Type: LoggingDriverType; - Config?: { [key: string]: string }; - } + interface LogConfig { + Type: LoggingDriverType; + Config?: { [key: string]: string }; + } - interface DeviceMapping { - PathOnHost: string; - PathinContainer: string; - CgroupPermissions: string; - } + interface DeviceMapping { + PathOnHost: string; + PathinContainer: string; + CgroupPermissions: string; + } - interface ContainerCreateOptions { - name?: string; - Hostname?: string; - Domainname?: string; - User?: string; - AttachStdin?: boolean; - AttachStdout?: boolean; - AttachStderr?: boolean; - Tty?: boolean; - OpenStdin?: boolean; - StdinOnce?: boolean; - Env?: string[]; - Cmd?: string[]; - Entrypoint?: string; - Image?: string; - Labels?: { [label: string]: string }; - Volumes?: { [volume: string]: {} }; - WorkingDir?: string; - NetworkDisabled?: boolean; - MacAddress?: boolean; - ExposedPorts?: { [port: string]: {} }; - StopSignal?: string; - HostConfig?: { - AutoRemove?: boolean; - Binds?: string[]; - Links?: string[]; - Memory?: number; - MemorySwap?: number; - MemoryReservation?: number; - KernelMemory?: number; - CpuPercent?: number; - CpuShares?: number; - CpuPeriod?: number; - CpuQuota?: number; - CpusetMems?: string; - MaximumIOps?: number; - MaxmimumIOBps?: number; - BlkioWeightDevice?: Array<{}>; - BlkioDeviceReadBps?: Array<{}>; - BlkioDeviceReadIOps?: Array<{}>; - BlkioDeviceWriteBps?: Array<{}>; - BlkioDeviceWriteIOps?: Array<{}>; - MemorySwappiness?: number; - OomKillDisable?: boolean; - OomScoreAdj?: number; - PidMode?: string; - PidsLimit?: number; - PortBindings?: PortMap; - PublishAllPorts?: boolean; - Privileged?: boolean; - ReadonlyRootfs?: boolean; - Dns?: string[]; - DnsOptions?: string[]; - DnsSearch?: string[]; - ExtraHosts?: any; - VolumesFrom?: string[]; - CapAdd?: string[]; - CapDrop?: string[]; - GroupAdd?: string[]; - RestartPolicy?: RestartPolicy; - NetworkMode?: string; - Devices?: DeviceMapping[]; - Sysctls?: { [index: string]: string }; - Ulimits?: Array<{}>; - LogConfig?: LogConfig; - SecurityOpt?: { [index: string]: any }; - CgroupParent?: string; - VolumeDriver?: string; - ShmSize?: number; - }; - NetworkingConfig?: { - EndpointsConfig?: { - [index: string]: any; - isolated_nw?: { - [index: string]: any; - IPAMConfig?: { - IPv4Address?: string; - IPv6Adress?: string; - LinkLocalIPs?: string[]; - }; - Links?: string[]; - Aliases?: string[]; - }; - }; - }; - } + interface ContainerCreateOptions { + name?: string; + Hostname?: string; + Domainname?: string; + User?: string; + AttachStdin?: boolean; + AttachStdout?: boolean; + AttachStderr?: boolean; + Tty?: boolean; + OpenStdin?: boolean; + StdinOnce?: boolean; + Env?: string[]; + Cmd?: string[]; + Entrypoint?: string; + Image?: string; + Labels?: { [label: string]: string }; + Volumes?: { [volume: string]: {} }; + WorkingDir?: string; + NetworkDisabled?: boolean; + MacAddress?: boolean; + ExposedPorts?: { [port: string]: {} }; + StopSignal?: string; + HostConfig?: { + AutoRemove?: boolean; + Binds?: string[]; + Links?: string[]; + Memory?: number; + MemorySwap?: number; + MemoryReservation?: number; + KernelMemory?: number; + CpuPercent?: number; + CpuShares?: number; + CpuPeriod?: number; + CpuQuota?: number; + CpusetMems?: string; + MaximumIOps?: number; + MaxmimumIOBps?: number; + BlkioWeightDevice?: Array<{}>; + BlkioDeviceReadBps?: Array<{}>; + BlkioDeviceReadIOps?: Array<{}>; + BlkioDeviceWriteBps?: Array<{}>; + BlkioDeviceWriteIOps?: Array<{}>; + MemorySwappiness?: number; + OomKillDisable?: boolean; + OomScoreAdj?: number; + PidMode?: string; + PidsLimit?: number; + PortBindings?: PortMap; + PublishAllPorts?: boolean; + Privileged?: boolean; + ReadonlyRootfs?: boolean; + Dns?: string[]; + DnsOptions?: string[]; + DnsSearch?: string[]; + ExtraHosts?: any; + VolumesFrom?: string[]; + CapAdd?: string[]; + CapDrop?: string[]; + GroupAdd?: string[]; + RestartPolicy?: RestartPolicy; + NetworkMode?: string; + Devices?: DeviceMapping[]; + Sysctls?: { [index: string]: string }; + Ulimits?: Array<{}>; + LogConfig?: LogConfig; + SecurityOpt?: { [index: string]: any }; + CgroupParent?: string; + VolumeDriver?: string; + ShmSize?: number; + }; + NetworkingConfig?: { + EndpointsConfig?: { + [index: string]: any; + isolated_nw?: { + [index: string]: any; + IPAMConfig?: { + IPv4Address?: string; + IPv6Adress?: string; + LinkLocalIPs?: string[]; + } + Links?: string[]; + Aliases?: string[]; + } + } + }; + } - interface KeyObject { - pem: string | Buffer; - passphrase?: string; - } + interface KeyObject { + pem: string | Buffer; + passphrase?: string; + } - interface DockerOptions { - socketPath?: string; - host?: string; - port?: number | string; - ca?: string | string[] | Buffer | Buffer[]; - cert?: string | string[] | Buffer | Buffer[]; - key?: string | string[] | Buffer | Buffer[] | KeyObject[]; - protocol?: "https" | "http"; - timeout?: number; - version?: string; - Promise?: typeof Promise; - } + interface DockerOptions { + socketPath?: string; + host?: string; + port?: number | string; + ca?: string | string[] | Buffer | Buffer[]; + cert?: string | string[] | Buffer | Buffer[]; + key?: string | string[] | Buffer | Buffer[] | KeyObject[]; + protocol?: "https" | "http"; + timeout?: number; + version?: string; + Promise?: typeof Promise; + } - interface SecretVersion { - Index: number; - } + interface SecretVersion { + Index: number; + } - interface ServiceSpec { - Name: string; - } + interface ServiceSpec { + Name: string; + } - interface SecretInfo { - ID: string; - Version: SecretVersion; - CreatedAt: string; - UpdatedAt?: string; - Spec?: ServiceSpec; - } + interface SecretInfo { + ID: string; + Version: SecretVersion; + CreatedAt: string; + UpdatedAt?: string; + Spec?: ServiceSpec; + } - interface PluginInfo { - Id?: string; - Name: string; - Enabled: boolean; - Settings: PluginSettings; - PluginReference?: string; - Config: PluginConfig; - } + interface PluginInfo { + Id?: string; + Name: string; + Enabled: boolean; + Settings: PluginSettings; + PluginReference?: string; + Config: PluginConfig; + } - type PluginInspectInfo = PluginInfo; + type PluginInspectInfo = PluginInfo; - interface PluginSettings { - Mounts: PluginMount[]; - Env: string[]; - Args: string[]; - Devices: PluginDevice[]; - } + interface PluginSettings { + Mounts: PluginMount[]; + Env: string[]; + Args: string[]; + Devices: PluginDevice[]; + } - interface PluginConfig { - Description: string; - Documentation: string; - Interface: any; - Entrypoint: string[]; - WorkDir: string; - User?: User; - Network: Network; - Linux: Linux; - PropagatedMount: string; - Mounts: PluginMount[]; - Env: PluginEnv[]; - Args: Args; - rootfs: any; - } + interface PluginConfig { + Description: string; + Documentation: string; + Interface: any; + Entrypoint: string[]; + WorkDir: string; + User?: User; + Network: Network; + Linux: Linux; + PropagatedMount: string; + Mounts: PluginMount[]; + Env: PluginEnv[]; + Args: Args; + rootfs: any; + } - interface Interface { - Types: PluginInterfaceType[]; - Socket: string; - } + interface Interface { + Types: PluginInterfaceType[]; + Socket: string; + } - interface PluginInterfaceType { - Prefix: string; - Capability: string; - Version: string; - } + interface PluginInterfaceType { + Prefix: string; + Capability: string; + Version: string; + } - interface PluginMount { - Name: string; - Description: string; - Settable: string[]; - Source: string; - Destination: string; - Type: string; - Options: string[]; - } + interface PluginMount { + Name: string; + Description: string; + Settable: string[]; + Source: string; + Destination: string; + Type: string; + Options: string[]; + } - interface Linux { - Capabilities: string[]; - AllowAllDevices: boolean; - Devices: PluginDevice[]; - } + interface Linux { + Capabilities: string[]; + AllowAllDevices: boolean; + Devices: PluginDevice[]; + } - interface PluginDevice { - Name: string; - Description: string; - Settable: string[]; - Path: string; - } + interface PluginDevice { + Name: string; + Description: string; + Settable: string[]; + Path: string; + } - interface Network { - Type: string; - } + interface Network { + Type: string; + } - interface PluginEnv { - Name: string; - Description: string; - Settable: string[]; - Value: string; - } + interface PluginEnv { + Name: string; + Description: string; + Settable: string[]; + Value: string; + } - interface Args { - Name: string; - Description: string; - Settable: string[]; - Value: string; - } + interface Args { + Name: string; + Description: string; + Settable: string[]; + Value: string; + } - interface User { - UID: number; - GID: number; - } + interface User { + UID: number; + GID: number; + } - interface ImageRemoveInfo { - Untagged: string; - Deleted: string; - } + interface ImageRemoveInfo { + Untagged: string; + Deleted: string; + } - interface PruneImagesInfo { - ImagesDeleted: ImageRemoveInfo[]; - SpaceReclaimed: number; - } + interface PruneImagesInfo { + ImagesDeleted: ImageRemoveInfo[]; + SpaceReclaimed: number; + } - interface PruneVolumesInfo { - VolumesDeleted: string[]; - SpaceReclaimed: number; - } + interface PruneVolumesInfo { + VolumesDeleted: string[]; + SpaceReclaimed: number; + } - interface PruneContainersInfo { - ContainersDeleted: string[]; - SpaceReclaimed: number; - } + interface PruneContainersInfo { + ContainersDeleted: string[]; + SpaceReclaimed: number; + } - interface PruneNetworksInfo { - NetworksDeleted: string[]; - } + interface PruneNetworksInfo { + NetworksDeleted: string[]; + } - interface ContainerLogsOptions { - stdout?: boolean; - stderr?: boolean; - follow?: boolean; - since?: number; - details?: boolean; - tail?: number; - timestamps?: boolean; - } + interface ContainerLogsOptions { + stdout?: boolean; + stderr?: boolean; + follow?: boolean; + since?: number; + details?: boolean; + tail?: number; + timestamps?: boolean; + } - interface ImageBuildContext { - context: string; - src: string[]; - } + interface ImageBuildContext { + context: string; + src: string[]; + } - interface DockerVersion { + interface DockerVersion { + ApiVersion: string; + Arch: string; + BuildTime: Date; + Components: Array<{ + Details: { ApiVersion: string; Arch: string; - BuildTime: Date; - Components: Array<{ - Details: { - ApiVersion: string; - Arch: string; - BuilTime: Date; - Experimental: string; - GitCommit: string; - GoVersion: string; - KernelVersion: string; - Os: string; - }; - Name: string; - Version: string; - }>; + BuilTime: Date; + Experimental: string; GitCommit: string; GoVersion: string; KernelVersion: string; - MinAPIVersion: string; Os: string; - Platform: { Name: string }; - Version: string; - } + }; + Name: string; + Version: string; + }>; + GitCommit: string; + GoVersion: string; + KernelVersion: string; + MinAPIVersion: string; + Os: string; + Platform: { + Name: string; + }; + Version: string; + } } type Callback = (error?: any, result?: T) => void; declare class Dockerode { - constructor(options?: Dockerode.DockerOptions); + constructor(options?: Dockerode.DockerOptions); - createContainer( - options: Dockerode.ContainerCreateOptions, - callback: Callback - ): void; - createContainer( - options: Dockerode.ContainerCreateOptions - ): Promise; + createContainer(options: Dockerode.ContainerCreateOptions, callback: Callback): void; + createContainer(options: Dockerode.ContainerCreateOptions): Promise; - createImage(options: {}, callback: Callback): void; - createImage( - auth: any, - options: {}, - callback: Callback - ): void; - createImage(options: {}): Promise; - createImage(auth: any, options: {}): Promise; + createImage(options: {}, callback: Callback): void; + createImage(auth: any, options: {}, callback: Callback): void; + createImage(options: {}): Promise; + createImage(auth: any, options: {}): Promise; - loadImage( - file: string | NodeJS.ReadableStream, - options: {}, - callback: Callback - ): void; - loadImage( - file: string | NodeJS.ReadableStream, - callback: Callback - ): void; - loadImage( - file: string | NodeJS.ReadableStream, - options?: {} - ): Promise; + loadImage(file: string | NodeJS.ReadableStream, options: {}, callback: Callback): void; + loadImage(file: string | NodeJS.ReadableStream, callback: Callback): void; + loadImage(file: string | NodeJS.ReadableStream, options?: {}): Promise; - importImage( - file: string | NodeJS.ReadableStream, - options: {}, - callback: Callback - ): void; - importImage( - file: string | NodeJS.ReadableStream, - callback: Callback - ): void; - importImage( - file: string | NodeJS.ReadableStream, - options?: {} - ): Promise; + importImage(file: string | NodeJS.ReadableStream, options: {}, callback: Callback): void; + importImage(file: string | NodeJS.ReadableStream, callback: Callback): void; + importImage(file: string | NodeJS.ReadableStream, options?: {}): Promise; - checkAuth(options: any, callback: Callback): void; - checkAuth(options: any): Promise; + checkAuth(options: any, callback: Callback): void; + checkAuth(options: any): Promise; - buildImage( - file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, - options: {}, - callback: Callback - ): void; - buildImage( - file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, - callback: Callback - ): void; - buildImage( - file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, - options?: {} - ): Promise; + buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, options: {}, callback: Callback): void; + buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, callback: Callback): void; + buildImage(file: string | NodeJS.ReadableStream | Dockerode.ImageBuildContext, options?: {}): Promise; - getContainer(id: string): Dockerode.Container; + getContainer(id: string): Dockerode.Container; - getImage(name: string): Dockerode.Image; + getImage(name: string): Dockerode.Image; - getVolume(name: string): Dockerode.Volume; + getVolume(name: string): Dockerode.Volume; - getPlugin(name: string, remote: any): Dockerode.Plugin; + getPlugin(name: string, remote: any): Dockerode.Plugin; - getService(id: string): Dockerode.Service; + getService(id: string): Dockerode.Service; - getTask(id: string): Dockerode.Task; + getTask(id: string): Dockerode.Task; - getNode(id: string): Dockerode.Node; + getNode(id: string): Dockerode.Node; - getNetwork(id: string): Dockerode.Network; + getNetwork(id: string): Dockerode.Network; - getSecret(id: string): Dockerode.Secret; + getSecret(id: string): Dockerode.Secret; - getExec(id: string): Dockerode.Exec; + getExec(id: string): Dockerode.Exec; - listContainers( - options: {}, - callback: Callback - ): void; - listContainers(callback: Callback): void; - listContainers(options?: {}): Promise; + listContainers(options: {}, callback: Callback): void; + listContainers(callback: Callback): void; + listContainers(options?: {}): Promise; - listImages(options: {}, callback: Callback): void; - listImages(callback: Callback): void; - listImages(options?: {}): Promise; + listImages(options: {}, callback: Callback): void; + listImages(callback: Callback): void; + listImages(options?: {}): Promise; - listServices(options: {}, callback: Callback): void; - listServices(callback: Callback): void; - listServices(options?: {}): Promise; + listServices(options: {}, callback: Callback): void; + listServices(callback: Callback): void; + listServices(options?: {}): Promise; - listNodes(options: {}, callback: Callback): void; - listNodes(callback: Callback): void; - listNodes(options?: {}): Promise; + listNodes(options: {}, callback: Callback): void; + listNodes(callback: Callback): void; + listNodes(options?: {}): Promise; - listTasks(options: {}, callback: Callback): void; - listTasks(callback: Callback): void; - listTasks(options?: {}): Promise; + listTasks(options: {}, callback: Callback): void; + listTasks(callback: Callback): void; + listTasks(options?: {}): Promise; - listSecrets(options: {}, callback: Callback): void; - listSecrets(callback: Callback): void; - listSecrets(options?: {}): Promise; + listSecrets(options: {}, callback: Callback): void; + listSecrets(callback: Callback): void; + listSecrets(options?: {}): Promise; - listPlugins(options: {}, callback: Callback): void; - listPlugins(callback: Callback): void; - listPlugins(options?: {}): Promise; + listPlugins(options: {}, callback: Callback): void; + listPlugins(callback: Callback): void; + listPlugins(options?: {}): Promise; - listVolumes(options: {}, callback: Callback): void; - listVolumes(callback: Callback): void; - listVolumes(options?: {}): Promise; + listVolumes(options: {}, callback: Callback): void; + listVolumes(callback: Callback): void; + listVolumes(options?: {}): Promise; - listNetworks(options: {}, callback: Callback): void; - listNetworks(callback: Callback): void; - listNetworks(options?: {}): Promise; + listNetworks(options: {}, callback: Callback): void; + listNetworks(callback: Callback): void; + listNetworks(options?: {}): Promise; - createSecret(options: {}, callback: Callback): void; - createSecret(options: {}): Promise; + createSecret(options: {}, callback: Callback): void; + createSecret(options: {}): Promise; - createPlugin(options: {}, callback: Callback): void; - createPlugin(options: {}): Promise; + createPlugin(options: {}, callback: Callback): void; + createPlugin(options: {}): Promise; - createVolume(options: {}, callback: Callback): void; - createVolume(options: {}): Promise; + createVolume(options: {}, callback: Callback): void; + createVolume(options: {}): Promise; - createService(options: {}, callback: Callback): void; - createService(options: {}): Promise; + createService(options: {}, callback: Callback): void; + createService(options: {}): Promise; - createNetwork(options: {}, callback: Callback): void; - createNetwork(options: {}): Promise; + createNetwork(options: {}, callback: Callback): void; + createNetwork(options: {}): Promise; - searchImages(options: {}, callback: Callback): void; - searchImages(options: {}): Promise; + searchImages(options: {}, callback: Callback): void; + searchImages(options: {}): Promise; - pruneImages( - options: {}, - callback: Callback - ): void; - pruneImages(callback: Callback): void; - pruneImages(options?: {}): Promise; + pruneImages(options: {}, callback: Callback): void; + pruneImages(callback: Callback): void; + pruneImages(options?: {}): Promise; - pruneContainers( - options: {}, - callback: Callback - ): void; - pruneContainers(callback: Callback): void; - pruneContainers(options?: {}): Promise; + pruneContainers(options: {}, callback: Callback): void; + pruneContainers(callback: Callback): void; + pruneContainers(options?: {}): Promise; - pruneVolumes( - options: {}, - callback: Callback - ): void; - pruneVolumes(callback: Callback): void; - pruneVolumes(options?: {}): Promise; + pruneVolumes(options: {}, callback: Callback): void; + pruneVolumes(callback: Callback): void; + pruneVolumes(options?: {}): Promise; - pruneNetworks( - options: {}, - callback: Callback - ): void; - pruneNetworks(callback: Callback): void; - pruneNetworks(options?: {}): Promise; + pruneNetworks(options: {}, callback: Callback): void; + pruneNetworks(callback: Callback): void; + pruneNetworks(options?: {}): Promise; - info(callback: Callback): void; - info(): Promise; + info(callback: Callback): void; + info(): Promise; - df(callback: Callback): void; - df(): Promise; + df(callback: Callback): void; + df(): Promise; - version(callback: Callback): void; - version(): Promise; + version(callback: Callback): void; + version(): Promise; - ping(callback: Callback): void; - ping(): Promise; + ping(callback: Callback): void; + ping(): Promise; - getEvents(options: {}, callback: Callback): void; - getEvents(callback: Callback): void; - getEvents(options?: {}): Promise; + getEvents(options: {}, callback: Callback): void; + getEvents(callback: Callback): void; + getEvents(options?: {}): Promise; - pull( - repoTag: string, - options: {}, - callback: Callback, - auth?: {} - ): Dockerode.Image; - pull(repoTag: string, options: {}, auth?: {}): Promise; + pull(repoTag: string, options: {}, callback: Callback, auth?: {}): Dockerode.Image; + pull(repoTag: string, options: {}, auth?: {}): Promise; - run( - image: string, - cmd: string[], - outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], - createOptions: {}, - startOptions: {}, - callback: Callback - ): events.EventEmitter; - run( - image: string, - cmd: string[], - outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], - startOptions: {}, - callback: Callback - ): events.EventEmitter; - run( - image: string, - cmd: string[], - outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], - callback: Callback - ): events.EventEmitter; - run( - image: string, - cmd: string[], - outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], - createOptions: {}, - callback: Callback - ): events.EventEmitter; - run( - image: string, - cmd: string[], - outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], - createOptions?: {}, - startOptions?: {} - ): Promise; + run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions: {}, startOptions: {}, callback: Callback): events.EventEmitter; + run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], startOptions: {}, callback: Callback): events.EventEmitter; + run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], callback: Callback): events.EventEmitter; + run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions: {}, callback: Callback): events.EventEmitter; + run(image: string, cmd: string[], outputStream: NodeJS.WritableStream | NodeJS.WritableStream[], createOptions?: {}, startOptions?: {}): Promise; - swarmInit(options: {}, callback: Callback): void; - swarmInit(options: {}): Promise; + swarmInit(options: {}, callback: Callback): void; + swarmInit(options: {}): Promise; - swarmJoin(options: {}, callback: Callback): void; - swarmJoin(options: {}): Promise; + swarmJoin(options: {}, callback: Callback): void; + swarmJoin(options: {}): Promise; - swarmLeave(options: {}, callback: Callback): void; - swarmLeave(options: {}): Promise; + swarmLeave(options: {}, callback: Callback): void; + swarmLeave(options: {}): Promise; - swarmUpdate(options: {}, callback: Callback): void; - swarmUpdate(options: {}): Promise; + swarmUpdate(options: {}, callback: Callback): void; + swarmUpdate(options: {}): Promise; - swarmInspect(callback: Callback): void; - swarmInspect(): Promise; + swarmInspect(callback: Callback): void; + swarmInspect(): Promise; - modem: any; + modem: any; } export = Dockerode; From 2ecb8765a0568c88c044e237d0350160a5d02a7d Mon Sep 17 00:00:00 2001 From: Kapil Sachdeva Date: Tue, 6 Nov 2018 10:29:16 -0600 Subject: [PATCH 3/3] dockerode - add definition for AuthConfig --- types/dockerode/index.d.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/types/dockerode/index.d.ts b/types/dockerode/index.d.ts index 3cea2177c6..41707948ca 100644 --- a/types/dockerode/index.d.ts +++ b/types/dockerode/index.d.ts @@ -587,6 +587,13 @@ declare namespace Dockerode { }; } + interface AuthConfig { + username: string; + password: string; + serveraddress: string; + email?: string; + } + interface PortBinding { HostIp?: string; HostPort?: string; @@ -601,7 +608,7 @@ declare namespace Dockerode { MaximumRetryCount?: number; } - type LoggingDriverType = + type LoggingDriverType = | "json-file" | "syslog" | "journald"