@zukhruf/docker 0.0.0-stage → 0.3.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +902 -2
  3. package/dist/api-version.d.ts +7 -0
  4. package/dist/api-version.d.ts.map +1 -0
  5. package/dist/api-version.js +22 -0
  6. package/dist/api-version.js.map +1 -0
  7. package/dist/container-process.d.ts +35 -0
  8. package/dist/container-process.d.ts.map +1 -0
  9. package/dist/container-process.js +91 -0
  10. package/dist/container-process.js.map +1 -0
  11. package/dist/containers.d.ts +160 -0
  12. package/dist/containers.d.ts.map +1 -0
  13. package/dist/containers.js +700 -0
  14. package/dist/containers.js.map +1 -0
  15. package/dist/context-store.d.ts +22 -0
  16. package/dist/context-store.d.ts.map +1 -0
  17. package/dist/context-store.js +128 -0
  18. package/dist/context-store.js.map +1 -0
  19. package/dist/docker.d.ts +57 -0
  20. package/dist/docker.d.ts.map +1 -0
  21. package/dist/docker.js +96 -0
  22. package/dist/docker.js.map +1 -0
  23. package/dist/engine-api.d.ts +390 -0
  24. package/dist/engine-api.d.ts.map +1 -0
  25. package/dist/engine-api.js +4 -0
  26. package/dist/engine-api.js.map +1 -0
  27. package/dist/engine-client.d.ts +74 -0
  28. package/dist/engine-client.d.ts.map +1 -0
  29. package/dist/engine-client.js +253 -0
  30. package/dist/engine-client.js.map +1 -0
  31. package/dist/errors.d.ts +133 -0
  32. package/dist/errors.d.ts.map +1 -0
  33. package/dist/errors.js +214 -0
  34. package/dist/errors.js.map +1 -0
  35. package/dist/host.d.ts +13 -0
  36. package/dist/host.d.ts.map +1 -0
  37. package/dist/host.js +22 -0
  38. package/dist/host.js.map +1 -0
  39. package/dist/images.d.ts +40 -0
  40. package/dist/images.d.ts.map +1 -0
  41. package/dist/images.js +173 -0
  42. package/dist/images.js.map +1 -0
  43. package/dist/index.d.ts +14 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +6 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/multiplexed-stream.d.ts +11 -0
  48. package/dist/multiplexed-stream.d.ts.map +1 -0
  49. package/dist/multiplexed-stream.js +81 -0
  50. package/dist/multiplexed-stream.js.map +1 -0
  51. package/dist/ndjson.d.ts +7 -0
  52. package/dist/ndjson.d.ts.map +1 -0
  53. package/dist/ndjson.js +21 -0
  54. package/dist/ndjson.js.map +1 -0
  55. package/dist/networks.d.ts +46 -0
  56. package/dist/networks.d.ts.map +1 -0
  57. package/dist/networks.js +170 -0
  58. package/dist/networks.js.map +1 -0
  59. package/dist/options.d.ts +7 -0
  60. package/dist/options.d.ts.map +1 -0
  61. package/dist/options.js +2 -0
  62. package/dist/options.js.map +1 -0
  63. package/dist/output.d.ts +18 -0
  64. package/dist/output.d.ts.map +1 -0
  65. package/dist/output.js +21 -0
  66. package/dist/output.js.map +1 -0
  67. package/dist/progress.d.ts +9 -0
  68. package/dist/progress.d.ts.map +1 -0
  69. package/dist/progress.js +20 -0
  70. package/dist/progress.js.map +1 -0
  71. package/dist/ssh-connection.d.ts +23 -0
  72. package/dist/ssh-connection.d.ts.map +1 -0
  73. package/dist/ssh-connection.js +225 -0
  74. package/dist/ssh-connection.js.map +1 -0
  75. package/dist/tar-reader.d.ts +22 -0
  76. package/dist/tar-reader.d.ts.map +1 -0
  77. package/dist/tar-reader.js +163 -0
  78. package/dist/tar-reader.js.map +1 -0
  79. package/dist/tar-writer.d.ts +16 -0
  80. package/dist/tar-writer.d.ts.map +1 -0
  81. package/dist/tar-writer.js +114 -0
  82. package/dist/tar-writer.js.map +1 -0
  83. package/dist/transport.d.ts +29 -0
  84. package/dist/transport.d.ts.map +1 -0
  85. package/dist/transport.js +56 -0
  86. package/dist/transport.js.map +1 -0
  87. package/dist/volumes.d.ts +41 -0
  88. package/dist/volumes.d.ts.map +1 -0
  89. package/dist/volumes.js +119 -0
  90. package/dist/volumes.js.map +1 -0
  91. package/package.json +43 -4
@@ -0,0 +1,390 @@
1
+ /** The answer of GET /info. Each field is optional, as in the reference. */
2
+ export interface SystemInfo {
3
+ ID?: string;
4
+ Name?: string;
5
+ ServerVersion?: string;
6
+ OperatingSystem?: string;
7
+ OSType?: string;
8
+ Architecture?: string;
9
+ KernelVersion?: string;
10
+ NCPU?: number;
11
+ MemTotal?: number;
12
+ Containers?: number;
13
+ ContainersRunning?: number;
14
+ ContainersPaused?: number;
15
+ ContainersStopped?: number;
16
+ Images?: number;
17
+ Driver?: string;
18
+ DockerRootDir?: string;
19
+ Labels?: string[];
20
+ }
21
+ /** One published binding of a port, as the reference names it. */
22
+ export interface PortBinding {
23
+ HostIp?: string;
24
+ HostPort?: string;
25
+ }
26
+ /** The configuration of a container that does not depend on the host. */
27
+ export interface ContainerConfig {
28
+ Hostname?: string;
29
+ Domainname?: string;
30
+ User?: string;
31
+ AttachStdin?: boolean;
32
+ AttachStdout?: boolean;
33
+ AttachStderr?: boolean;
34
+ ExposedPorts?: Record<string, Record<string, never>>;
35
+ Tty?: boolean;
36
+ OpenStdin?: boolean;
37
+ StdinOnce?: boolean;
38
+ Env?: string[];
39
+ Cmd?: string[];
40
+ Healthcheck?: {
41
+ Test?: string[];
42
+ Interval?: number;
43
+ Timeout?: number;
44
+ Retries?: number;
45
+ StartPeriod?: number;
46
+ StartInterval?: number;
47
+ };
48
+ Image?: string;
49
+ Volumes?: Record<string, Record<string, never>>;
50
+ WorkingDir?: string;
51
+ Entrypoint?: string[];
52
+ NetworkDisabled?: boolean;
53
+ Labels?: Record<string, string>;
54
+ StopSignal?: string;
55
+ StopTimeout?: number;
56
+ }
57
+ /** A mount of a container, as HostConfig.Mounts takes it. */
58
+ export interface Mount {
59
+ Target?: string;
60
+ Source?: string;
61
+ Type?: 'bind' | 'volume' | 'tmpfs' | 'npipe' | 'cluster' | 'image';
62
+ ReadOnly?: boolean;
63
+ Consistency?: string;
64
+ BindOptions?: {
65
+ Propagation?: string;
66
+ CreateMountpoint?: boolean;
67
+ };
68
+ VolumeOptions?: {
69
+ NoCopy?: boolean;
70
+ Labels?: Record<string, string>;
71
+ Subpath?: string;
72
+ };
73
+ TmpfsOptions?: {
74
+ SizeBytes?: number;
75
+ Mode?: number;
76
+ };
77
+ }
78
+ /** The configuration of a container that depends on the host. */
79
+ export interface HostConfig {
80
+ Binds?: string[];
81
+ Mounts?: Mount[];
82
+ NetworkMode?: string;
83
+ PortBindings?: Record<string, PortBinding[]>;
84
+ PublishAllPorts?: boolean;
85
+ RestartPolicy?: {
86
+ Name?: '' | 'no' | 'always' | 'unless-stopped' | 'on-failure';
87
+ MaximumRetryCount?: number;
88
+ };
89
+ AutoRemove?: boolean;
90
+ Memory?: number;
91
+ NanoCpus?: number;
92
+ CpuShares?: number;
93
+ Privileged?: boolean;
94
+ ReadonlyRootfs?: boolean;
95
+ CapAdd?: string[];
96
+ CapDrop?: string[];
97
+ ExtraHosts?: string[];
98
+ Init?: boolean;
99
+ ShmSize?: number;
100
+ Tmpfs?: Record<string, string>;
101
+ SecurityOpt?: string[];
102
+ UsernsMode?: string;
103
+ PidsLimit?: number;
104
+ }
105
+ /** The settings of a container on one network. */
106
+ export interface EndpointSettings {
107
+ Aliases?: string[];
108
+ Links?: string[];
109
+ NetworkID?: string;
110
+ EndpointID?: string;
111
+ Gateway?: string;
112
+ IPAddress?: string;
113
+ MacAddress?: string;
114
+ DriverOpts?: Record<string, string>;
115
+ }
116
+ /** The networks that a create connects the container to. */
117
+ export interface NetworkingConfig {
118
+ EndpointsConfig?: Record<string, EndpointSettings>;
119
+ }
120
+ /** The body of POST /containers/create, as container.CreateRequest of Moby names it. */
121
+ export type ContainerCreateRequest = ContainerConfig & {
122
+ HostConfig?: HostConfig;
123
+ NetworkingConfig?: NetworkingConfig;
124
+ };
125
+ /** The answer of POST /containers/create. */
126
+ export interface ContainerCreateResponse {
127
+ Id: string;
128
+ Warnings: string[];
129
+ }
130
+ export interface ContainerState {
131
+ Status?: 'created' | 'running' | 'paused' | 'restarting' | 'removing' | 'exited' | 'dead';
132
+ Running?: boolean;
133
+ Paused?: boolean;
134
+ Restarting?: boolean;
135
+ OOMKilled?: boolean;
136
+ Dead?: boolean;
137
+ Pid?: number;
138
+ ExitCode?: number;
139
+ Error?: string;
140
+ StartedAt?: string;
141
+ FinishedAt?: string;
142
+ Health?: {
143
+ Status?: 'none' | 'starting' | 'healthy' | 'unhealthy';
144
+ };
145
+ }
146
+ /** A mount of a container, as an inspect gives it. */
147
+ export interface MountPoint {
148
+ Type?: string;
149
+ Name?: string;
150
+ Source?: string;
151
+ Destination?: string;
152
+ Driver?: string;
153
+ Mode?: string;
154
+ RW?: boolean;
155
+ Propagation?: string;
156
+ }
157
+ /** The answer of GET /containers/{id}/json. */
158
+ export interface ContainerInspectResponse {
159
+ Id: string;
160
+ Created?: string;
161
+ Path?: string;
162
+ Args?: string[];
163
+ State?: ContainerState;
164
+ Image?: string;
165
+ Name?: string;
166
+ RestartCount?: number;
167
+ Platform?: string;
168
+ HostConfig?: HostConfig;
169
+ Mounts?: MountPoint[];
170
+ Config?: ContainerConfig;
171
+ NetworkSettings?: {
172
+ /** null for an exposed port that is not published. */
173
+ Ports?: Record<string, PortBinding[] | null>;
174
+ Networks?: Record<string, EndpointSettings>;
175
+ };
176
+ }
177
+ /** One container of GET /containers/json. */
178
+ export interface ContainerSummary {
179
+ Id: string;
180
+ Names?: string[];
181
+ Image?: string;
182
+ ImageID?: string;
183
+ Command?: string;
184
+ Created?: number;
185
+ Ports?: {
186
+ IP?: string;
187
+ PrivatePort: number;
188
+ PublicPort?: number;
189
+ Type: 'tcp' | 'udp' | 'sctp';
190
+ }[];
191
+ Labels?: Record<string, string>;
192
+ State?: ContainerState['Status'];
193
+ Status?: string;
194
+ Mounts?: MountPoint[];
195
+ }
196
+ /** The answer of POST /containers/{id}/wait. */
197
+ export interface ContainerWaitResponse {
198
+ StatusCode: number;
199
+ Error?: {
200
+ Message?: string;
201
+ } | null;
202
+ }
203
+ /** The answer of GET /images/{name}/json. */
204
+ export interface ImageInspect {
205
+ Id: string;
206
+ RepoTags?: string[];
207
+ RepoDigests?: string[];
208
+ Created?: string;
209
+ Architecture?: string;
210
+ Variant?: string;
211
+ Os?: string;
212
+ Size?: number;
213
+ Config?: ContainerConfig;
214
+ }
215
+ /** Explicit credentials of a registry, as the X-Registry-Auth header takes them. */
216
+ export type AuthConfig = {
217
+ username: string;
218
+ password: string;
219
+ serveraddress?: string;
220
+ email?: string;
221
+ } | {
222
+ identitytoken: string;
223
+ serveraddress?: string;
224
+ };
225
+ /**
226
+ * The body of POST /containers/{id}/exec, without the fields that the package
227
+ * sets: AttachStdin, AttachStdout, AttachStderr and Detach.
228
+ */
229
+ export interface ExecConfig {
230
+ Cmd: string[];
231
+ Tty?: boolean;
232
+ /** [height, width] of the TTY. */
233
+ ConsoleSize?: [number, number] | null;
234
+ DetachKeys?: string;
235
+ Env?: string[];
236
+ Privileged?: boolean;
237
+ User?: string;
238
+ WorkingDir?: string;
239
+ }
240
+ /** The answer of GET /exec/{id}/json. */
241
+ export interface ExecInspectResponse {
242
+ ID: string;
243
+ ContainerID?: string;
244
+ Running: boolean;
245
+ /** null while the command runs. */
246
+ ExitCode: number | null;
247
+ Pid?: number;
248
+ OpenStdin?: boolean;
249
+ OpenStdout?: boolean;
250
+ OpenStderr?: boolean;
251
+ CanRemove?: boolean;
252
+ DetachKeys?: string;
253
+ ProcessConfig?: {
254
+ privileged?: boolean;
255
+ user?: string;
256
+ tty?: boolean;
257
+ entrypoint?: string;
258
+ arguments?: string[];
259
+ };
260
+ }
261
+ /** One message of GET /events. */
262
+ export interface EventMessage {
263
+ Type?: 'builder' | 'config' | 'container' | 'daemon' | 'image' | 'network' | 'node' | 'plugin' | 'secret' | 'service' | 'volume';
264
+ /** Such as 'create', 'start', 'die' or 'health_status: healthy'. */
265
+ Action?: string;
266
+ Actor?: {
267
+ ID?: string;
268
+ Attributes?: Record<string, string>;
269
+ };
270
+ scope?: 'local' | 'swarm';
271
+ /** Seconds since the Unix epoch. */
272
+ time?: number;
273
+ /** Nanoseconds since the Unix epoch. */
274
+ timeNano?: number;
275
+ }
276
+ /** The JSON of the header X-Docker-Container-Path-Stat, as container.PathStat of Moby names it. */
277
+ export interface ContainerPathStat {
278
+ name: string;
279
+ size: number;
280
+ /** The FileMode of Go: the permission bits, and high bits for the kind of the entry. */
281
+ mode: number;
282
+ mtime: string;
283
+ /** The target of a symlink; '' for each other entry. */
284
+ linkTarget: string;
285
+ }
286
+ /** A volume, as GET /volumes/{name} gives it. */
287
+ export interface Volume {
288
+ Name: string;
289
+ Driver: string;
290
+ Mountpoint: string;
291
+ CreatedAt?: string;
292
+ Status?: Record<string, unknown>;
293
+ Labels: Record<string, string> | null;
294
+ Scope: 'local' | 'global';
295
+ Options: Record<string, string> | null;
296
+ UsageData?: {
297
+ Size: number;
298
+ RefCount: number;
299
+ } | null;
300
+ }
301
+ /** The body of POST /volumes/create. The engine gives the volume a name when it has none. */
302
+ export interface VolumeCreateRequest {
303
+ Name?: string;
304
+ Driver?: string;
305
+ DriverOpts?: Record<string, string>;
306
+ Labels?: Record<string, string>;
307
+ }
308
+ /** The answer of GET /volumes. */
309
+ export interface VolumeListResponse {
310
+ Volumes: Volume[] | null;
311
+ Warnings: string[] | null;
312
+ }
313
+ /** The address management of a network. */
314
+ export interface IPAM {
315
+ Driver?: string;
316
+ Config?: {
317
+ Subnet?: string;
318
+ IPRange?: string;
319
+ Gateway?: string;
320
+ AuxiliaryAddresses?: Record<string, string>;
321
+ }[];
322
+ Options?: Record<string, string>;
323
+ }
324
+ /** The body of POST /networks/create. */
325
+ export interface NetworkCreateRequest {
326
+ Name: string;
327
+ Driver?: string;
328
+ Scope?: string;
329
+ Internal?: boolean;
330
+ Attachable?: boolean;
331
+ Ingress?: boolean;
332
+ ConfigOnly?: boolean;
333
+ ConfigFrom?: {
334
+ Network?: string;
335
+ };
336
+ IPAM?: IPAM;
337
+ EnableIPv4?: boolean;
338
+ EnableIPv6?: boolean;
339
+ Options?: Record<string, string>;
340
+ Labels?: Record<string, string>;
341
+ }
342
+ /** A network, as GET /networks gives each one. */
343
+ export interface NetworkSummary {
344
+ Name: string;
345
+ Id: string;
346
+ Created?: string;
347
+ Scope?: string;
348
+ Driver?: string;
349
+ EnableIPv4?: boolean;
350
+ EnableIPv6?: boolean;
351
+ IPAM?: IPAM;
352
+ Internal?: boolean;
353
+ Attachable?: boolean;
354
+ Ingress?: boolean;
355
+ ConfigFrom?: {
356
+ Network?: string;
357
+ };
358
+ ConfigOnly?: boolean;
359
+ Options?: Record<string, string>;
360
+ Labels?: Record<string, string>;
361
+ }
362
+ /** A network, as GET /networks/{id} gives it: the summary and the containers that are connected. */
363
+ export interface NetworkInspect extends NetworkSummary {
364
+ /** The connected containers, by their IDs. Only a running container has an endpoint. */
365
+ Containers?: Record<string, {
366
+ Name?: string;
367
+ EndpointID?: string;
368
+ MacAddress?: string;
369
+ IPv4Address?: string;
370
+ IPv6Address?: string;
371
+ }>;
372
+ }
373
+ /** The body of POST /networks/{id}/connect. */
374
+ export interface NetworkConnectRequest {
375
+ Container: string;
376
+ EndpointConfig?: EndpointSettings;
377
+ }
378
+ /** One image of GET /images/json. */
379
+ export interface ImageSummary {
380
+ Id: string;
381
+ ParentId: string;
382
+ RepoTags: string[];
383
+ RepoDigests: string[];
384
+ Created: number;
385
+ Size: number;
386
+ SharedSize: number;
387
+ Labels: Record<string, string> | null;
388
+ Containers: number;
389
+ }
390
+ //# sourceMappingURL=engine-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-api.d.ts","sourceRoot":"","sources":["../src/engine-api.ts"],"names":[],"mappings":"AAGA,4EAA4E;AAC5E,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,kEAAkE;AAClE,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,CAAC,EAAE;QACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,6DAA6D;AAC7D,MAAM,WAAW,KAAK;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACnE,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD;AAED,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7C,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE;QACd,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,GAAG,QAAQ,GAAG,gBAAgB,GAAG,YAAY,CAAC;QAC9D,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,kDAAkD;AAClD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,4DAA4D;AAC5D,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACpD;AAED,wFAAwF;AACxF,MAAM,MAAM,sBAAsB,GAAG,eAAe,GAAG;IACrD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF,6CAA6C;AAC7C,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EACH,SAAS,GACT,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,QAAQ,GACR,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAA;KAAE,CAAC;CACrE;AAED,sDAAsD;AACtD,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+CAA+C;AAC/C,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,eAAe,CAAC,EAAE;QAChB,sDAAsD;QACtD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;KAC7C,CAAC;CACH;AAED,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE;QACN,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;KAC9B,EAAE,CAAC;IACJ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,gDAAgD;AAChD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACrC;AAED,6CAA6C;AAC7C,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED,oFAAoF;AACpF,MAAM,MAAM,UAAU,GAClB;IACE,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GACD;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,kCAAkC;IAClC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,mCAAmC;IACnC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE;QACd,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;CACH;AAED,kCAAkC;AAClC,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EACD,SAAS,GACT,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,OAAO,GACP,SAAS,GACT,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,CAAC;IACb,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAC7D,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,mGAAmG;AACnG,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,wFAAwF;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,iDAAiD;AACjD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACtC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACvD;AAED,6FAA6F;AAC7F,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC3B;AAED,2CAA2C;AAC3C,MAAM,WAAW,IAAI;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC7C,EAAE,CAAC;IACJ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,kDAAkD;AAClD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,oGAAoG;AACpG,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACN;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CACF,CAAC;CACH;AAED,+CAA+C;AAC/C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACtC,UAAU,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,4 @@
1
+ // The bodies and answers of the Engine API, with the names of its reference
2
+ // (https://docs.docker.com/reference/api/engine/). Types only.
3
+ export {};
4
+ //# sourceMappingURL=engine-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-api.js","sourceRoot":"","sources":["../src/engine-api.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,+DAA+D"}
@@ -0,0 +1,74 @@
1
+ import type { IncomingHttpHeaders, IncomingMessage } from 'node:http';
2
+ import { type Duplex, Readable } from 'node:stream';
3
+ import { DockerEngineError } from './errors.ts';
4
+ import type { Filters } from './options.ts';
5
+ import type { Transport } from './transport.ts';
6
+ /** The query of a request. An array repeats the parameter; `filters` goes to the engine as JSON. */
7
+ export type Query = Record<string, string | number | boolean | string[] | Filters | undefined>;
8
+ export interface EngineRequestOptions {
9
+ query?: Query | undefined;
10
+ /** Goes to the engine as JSON. */
11
+ body?: unknown;
12
+ /** Goes to the engine as it is, with its media type, in place of a JSON body. */
13
+ content?: {
14
+ type: string;
15
+ data: Uint8Array | AsyncIterable<Uint8Array>;
16
+ } | undefined;
17
+ headers?: Record<string, string> | undefined;
18
+ signal?: AbortSignal | undefined;
19
+ }
20
+ export interface EngineResponse {
21
+ status: number;
22
+ headers: IncomingHttpHeaders;
23
+ body: Buffer;
24
+ }
25
+ /** A connection that the engine upgraded to a two-way stream of bytes. */
26
+ export interface HijackedConnection {
27
+ /** The output of the engine, then the input to the engine. */
28
+ readonly socket: Duplex;
29
+ /** The bytes of the output that came with the answer, before the first read of the socket. */
30
+ readonly head: Buffer;
31
+ /** The Content-Type of the answer: application/vnd.docker.multiplexed-stream or application/vnd.docker.raw-stream. */
32
+ readonly contentType: string;
33
+ /** Ends the input through the end of input of the transport. The output stays open. */
34
+ endInput(): void;
35
+ }
36
+ /** True for a 2xx status. */
37
+ export declare function isSuccess(response: EngineResponse): boolean;
38
+ /** The JSON body of an answer. */
39
+ export declare function parseBody<T>(response: EngineResponse): T;
40
+ /** Sends requests of the Engine API to one engine. */
41
+ export declare class EngineClient {
42
+ #private;
43
+ constructor(host: string, transport: Transport, apiVersion?: string, streams?: Set<Readable>, disposal?: AbortController);
44
+ /** The same engine and connections, with the API version in the path of each request. */
45
+ versioned(apiVersion: string): EngineClient;
46
+ /**
47
+ * Closes each connection, and resolves when each one is closed. A request
48
+ * in flight, a request that starts after close() started, and an iteration
49
+ * of a stream that is open reject with a DockerError that says that the
50
+ * client was disposed.
51
+ */
52
+ close(): Promise<void>;
53
+ /** Sends a request. A status that is not 2xx rejects with DockerEngineError. */
54
+ request(method: string, path: string, options?: EngineRequestOptions): Promise<EngineResponse>;
55
+ /** Sends a request and gives its JSON body. */
56
+ json<T>(method: string, path: string, options?: EngineRequestOptions): Promise<T>;
57
+ /** Sends a request and gives the answer with each status. */
58
+ exchange(method: string, path: string, options?: EngineRequestOptions): Promise<EngineResponse>;
59
+ /**
60
+ * Sends a request and gives the body of a 2xx answer as it comes. An abort
61
+ * of the signal rejects the read of the body with its reason. Each other
62
+ * status rejects with DockerEngineError.
63
+ */
64
+ stream(method: string, path: string, options?: EngineRequestOptions): Promise<IncomingMessage>;
65
+ /**
66
+ * Sends a request that the engine upgrades to a hijacked connection, for an
67
+ * attach and for the start of an exec. An answer without an upgrade
68
+ * rejects with DockerEngineError.
69
+ */
70
+ hijack(method: string, path: string, options?: EngineRequestOptions): Promise<HijackedConnection>;
71
+ /** The DockerEngineError of an answer that is not 2xx. */
72
+ error(response: EngineResponse, method: string, path: string): DockerEngineError;
73
+ }
74
+ //# sourceMappingURL=engine-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-client.d.ts","sourceRoot":"","sources":["../src/engine-client.ts"],"names":[],"mappings":"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"}