@figulus/schema 0.4.0-alpha-dev

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 (50) hide show
  1. package/dist/figspec.d.ts +4394 -0
  2. package/dist/figspec.d.ts.map +1 -0
  3. package/dist/figspec.js +214 -0
  4. package/dist/figspec.js.map +1 -0
  5. package/dist/figstack.d.ts +419 -0
  6. package/dist/figstack.d.ts.map +1 -0
  7. package/dist/figstack.js +72 -0
  8. package/dist/figstack.js.map +1 -0
  9. package/dist/health.d.ts +16 -0
  10. package/dist/health.d.ts.map +1 -0
  11. package/dist/health.js +7 -0
  12. package/dist/health.js.map +1 -0
  13. package/dist/image.d.ts +115 -0
  14. package/dist/image.d.ts.map +1 -0
  15. package/dist/image.js +42 -0
  16. package/dist/image.js.map +1 -0
  17. package/dist/index.d.ts +9 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +9 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/run-request.d.ts +244 -0
  22. package/dist/run-request.d.ts.map +1 -0
  23. package/dist/run-request.js +43 -0
  24. package/dist/run-request.js.map +1 -0
  25. package/dist/session.d.ts +447 -0
  26. package/dist/session.d.ts.map +1 -0
  27. package/dist/session.js +78 -0
  28. package/dist/session.js.map +1 -0
  29. package/dist/shared.d.ts +90 -0
  30. package/dist/shared.d.ts.map +1 -0
  31. package/dist/shared.js +41 -0
  32. package/dist/shared.js.map +1 -0
  33. package/dist/volume.d.ts +140 -0
  34. package/dist/volume.d.ts.map +1 -0
  35. package/dist/volume.js +37 -0
  36. package/dist/volume.js.map +1 -0
  37. package/package.json +22 -0
  38. package/src/figspec.ts +279 -0
  39. package/src/figstack.ts +92 -0
  40. package/src/health.ts +8 -0
  41. package/src/image.ts +55 -0
  42. package/src/index.ts +8 -0
  43. package/src/run-request.ts +55 -0
  44. package/src/session.ts +101 -0
  45. package/src/shared.ts +56 -0
  46. package/src/volume.ts +50 -0
  47. package/tests/figspec.test.ts +383 -0
  48. package/tests/schemas.test.ts +187 -0
  49. package/tsconfig.build.json +11 -0
  50. package/tsconfig.json +12 -0
@@ -0,0 +1,4394 @@
1
+ import { z } from 'zod';
2
+ export declare const fileContentSchema: z.ZodObject<{
3
+ data: z.ZodString;
4
+ encoding: z.ZodOptional<z.ZodString>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ data: string;
7
+ encoding?: string | undefined;
8
+ }, {
9
+ data: string;
10
+ encoding?: string | undefined;
11
+ }>;
12
+ export type FileContent = z.infer<typeof fileContentSchema>;
13
+ export declare const filePermissionsSchema: z.ZodObject<{
14
+ read: z.ZodNumber;
15
+ write: z.ZodNumber;
16
+ execute: z.ZodNumber;
17
+ }, "strip", z.ZodTypeAny, {
18
+ read: number;
19
+ write: number;
20
+ execute: number;
21
+ }, {
22
+ read: number;
23
+ write: number;
24
+ execute: number;
25
+ }>;
26
+ export type FilePermissions = z.infer<typeof filePermissionsSchema>;
27
+ export declare const packageSpecSchema: z.ZodObject<{
28
+ name: z.ZodString;
29
+ version: z.ZodOptional<z.ZodString>;
30
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
31
+ }, "strip", z.ZodTypeAny, {
32
+ name: string;
33
+ version?: string | undefined;
34
+ args?: string[] | undefined;
35
+ }, {
36
+ name: string;
37
+ version?: string | undefined;
38
+ args?: string[] | undefined;
39
+ }>;
40
+ export type PackageSpec = z.infer<typeof packageSpecSchema>;
41
+ export declare const installGroupSchema: z.ZodObject<{
42
+ packageManager: z.ZodString;
43
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
44
+ name: z.ZodString;
45
+ version: z.ZodOptional<z.ZodString>;
46
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
47
+ }, "strip", z.ZodTypeAny, {
48
+ name: string;
49
+ version?: string | undefined;
50
+ args?: string[] | undefined;
51
+ }, {
52
+ name: string;
53
+ version?: string | undefined;
54
+ args?: string[] | undefined;
55
+ }>]>, "many">;
56
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
57
+ }, "strip", z.ZodTypeAny, {
58
+ packageManager: string;
59
+ packages: (string | {
60
+ name: string;
61
+ version?: string | undefined;
62
+ args?: string[] | undefined;
63
+ })[];
64
+ globalArgs?: string[] | undefined;
65
+ }, {
66
+ packageManager: string;
67
+ packages: (string | {
68
+ name: string;
69
+ version?: string | undefined;
70
+ args?: string[] | undefined;
71
+ })[];
72
+ globalArgs?: string[] | undefined;
73
+ }>;
74
+ export type InstallGroup = z.infer<typeof installGroupSchema>;
75
+ export declare const buildVolumeMountRegularSchema: z.ZodObject<{
76
+ type: z.ZodLiteral<"regular">;
77
+ host_path: z.ZodOptional<z.ZodString>;
78
+ container_path: z.ZodOptional<z.ZodString>;
79
+ read_only: z.ZodOptional<z.ZodBoolean>;
80
+ }, "strip", z.ZodTypeAny, {
81
+ type: "regular";
82
+ host_path?: string | undefined;
83
+ container_path?: string | undefined;
84
+ read_only?: boolean | undefined;
85
+ }, {
86
+ type: "regular";
87
+ host_path?: string | undefined;
88
+ container_path?: string | undefined;
89
+ read_only?: boolean | undefined;
90
+ }>;
91
+ export declare const buildVolumeMountNewFileSchema: z.ZodObject<{
92
+ type: z.ZodLiteral<"new-file">;
93
+ container_path: z.ZodString;
94
+ content: z.ZodObject<{
95
+ data: z.ZodString;
96
+ encoding: z.ZodOptional<z.ZodString>;
97
+ }, "strip", z.ZodTypeAny, {
98
+ data: string;
99
+ encoding?: string | undefined;
100
+ }, {
101
+ data: string;
102
+ encoding?: string | undefined;
103
+ }>;
104
+ owner: z.ZodOptional<z.ZodString>;
105
+ permissions: z.ZodOptional<z.ZodObject<{
106
+ read: z.ZodNumber;
107
+ write: z.ZodNumber;
108
+ execute: z.ZodNumber;
109
+ }, "strip", z.ZodTypeAny, {
110
+ read: number;
111
+ write: number;
112
+ execute: number;
113
+ }, {
114
+ read: number;
115
+ write: number;
116
+ execute: number;
117
+ }>>;
118
+ }, "strip", z.ZodTypeAny, {
119
+ type: "new-file";
120
+ container_path: string;
121
+ content: {
122
+ data: string;
123
+ encoding?: string | undefined;
124
+ };
125
+ owner?: string | undefined;
126
+ permissions?: {
127
+ read: number;
128
+ write: number;
129
+ execute: number;
130
+ } | undefined;
131
+ }, {
132
+ type: "new-file";
133
+ container_path: string;
134
+ content: {
135
+ data: string;
136
+ encoding?: string | undefined;
137
+ };
138
+ owner?: string | undefined;
139
+ permissions?: {
140
+ read: number;
141
+ write: number;
142
+ execute: number;
143
+ } | undefined;
144
+ }>;
145
+ export declare const buildVolumeMountSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
146
+ type: z.ZodLiteral<"regular">;
147
+ host_path: z.ZodOptional<z.ZodString>;
148
+ container_path: z.ZodOptional<z.ZodString>;
149
+ read_only: z.ZodOptional<z.ZodBoolean>;
150
+ }, "strip", z.ZodTypeAny, {
151
+ type: "regular";
152
+ host_path?: string | undefined;
153
+ container_path?: string | undefined;
154
+ read_only?: boolean | undefined;
155
+ }, {
156
+ type: "regular";
157
+ host_path?: string | undefined;
158
+ container_path?: string | undefined;
159
+ read_only?: boolean | undefined;
160
+ }>, z.ZodObject<{
161
+ type: z.ZodLiteral<"new-file">;
162
+ container_path: z.ZodString;
163
+ content: z.ZodObject<{
164
+ data: z.ZodString;
165
+ encoding: z.ZodOptional<z.ZodString>;
166
+ }, "strip", z.ZodTypeAny, {
167
+ data: string;
168
+ encoding?: string | undefined;
169
+ }, {
170
+ data: string;
171
+ encoding?: string | undefined;
172
+ }>;
173
+ owner: z.ZodOptional<z.ZodString>;
174
+ permissions: z.ZodOptional<z.ZodObject<{
175
+ read: z.ZodNumber;
176
+ write: z.ZodNumber;
177
+ execute: z.ZodNumber;
178
+ }, "strip", z.ZodTypeAny, {
179
+ read: number;
180
+ write: number;
181
+ execute: number;
182
+ }, {
183
+ read: number;
184
+ write: number;
185
+ execute: number;
186
+ }>>;
187
+ }, "strip", z.ZodTypeAny, {
188
+ type: "new-file";
189
+ container_path: string;
190
+ content: {
191
+ data: string;
192
+ encoding?: string | undefined;
193
+ };
194
+ owner?: string | undefined;
195
+ permissions?: {
196
+ read: number;
197
+ write: number;
198
+ execute: number;
199
+ } | undefined;
200
+ }, {
201
+ type: "new-file";
202
+ container_path: string;
203
+ content: {
204
+ data: string;
205
+ encoding?: string | undefined;
206
+ };
207
+ owner?: string | undefined;
208
+ permissions?: {
209
+ read: number;
210
+ write: number;
211
+ execute: number;
212
+ } | undefined;
213
+ }>]>;
214
+ export type BuildVolumeMount = z.infer<typeof buildVolumeMountSchema>;
215
+ export declare const runVolumeMountRegularSchema: z.ZodObject<{
216
+ type: z.ZodLiteral<"regular">;
217
+ host_path: z.ZodOptional<z.ZodString>;
218
+ container_path: z.ZodOptional<z.ZodString>;
219
+ read_only: z.ZodOptional<z.ZodBoolean>;
220
+ }, "strip", z.ZodTypeAny, {
221
+ type: "regular";
222
+ host_path?: string | undefined;
223
+ container_path?: string | undefined;
224
+ read_only?: boolean | undefined;
225
+ }, {
226
+ type: "regular";
227
+ host_path?: string | undefined;
228
+ container_path?: string | undefined;
229
+ read_only?: boolean | undefined;
230
+ }>;
231
+ export declare const runVolumeMountDockerSocketSchema: z.ZodObject<{
232
+ type: z.ZodLiteral<"docker-socket">;
233
+ container_path: z.ZodOptional<z.ZodString>;
234
+ }, "strip", z.ZodTypeAny, {
235
+ type: "docker-socket";
236
+ container_path?: string | undefined;
237
+ }, {
238
+ type: "docker-socket";
239
+ container_path?: string | undefined;
240
+ }>;
241
+ export declare const runVolumeMountNewFileSchema: z.ZodObject<{
242
+ type: z.ZodLiteral<"new-file">;
243
+ container_path: z.ZodString;
244
+ content: z.ZodObject<{
245
+ data: z.ZodString;
246
+ encoding: z.ZodOptional<z.ZodString>;
247
+ }, "strip", z.ZodTypeAny, {
248
+ data: string;
249
+ encoding?: string | undefined;
250
+ }, {
251
+ data: string;
252
+ encoding?: string | undefined;
253
+ }>;
254
+ owner: z.ZodOptional<z.ZodString>;
255
+ permissions: z.ZodOptional<z.ZodObject<{
256
+ read: z.ZodNumber;
257
+ write: z.ZodNumber;
258
+ execute: z.ZodNumber;
259
+ }, "strip", z.ZodTypeAny, {
260
+ read: number;
261
+ write: number;
262
+ execute: number;
263
+ }, {
264
+ read: number;
265
+ write: number;
266
+ execute: number;
267
+ }>>;
268
+ }, "strip", z.ZodTypeAny, {
269
+ type: "new-file";
270
+ container_path: string;
271
+ content: {
272
+ data: string;
273
+ encoding?: string | undefined;
274
+ };
275
+ owner?: string | undefined;
276
+ permissions?: {
277
+ read: number;
278
+ write: number;
279
+ execute: number;
280
+ } | undefined;
281
+ }, {
282
+ type: "new-file";
283
+ container_path: string;
284
+ content: {
285
+ data: string;
286
+ encoding?: string | undefined;
287
+ };
288
+ owner?: string | undefined;
289
+ permissions?: {
290
+ read: number;
291
+ write: number;
292
+ execute: number;
293
+ } | undefined;
294
+ }>;
295
+ export declare const runVolumeMountNamedSchema: z.ZodObject<{
296
+ type: z.ZodLiteral<"named">;
297
+ name: z.ZodString;
298
+ container_path: z.ZodString;
299
+ read_only: z.ZodOptional<z.ZodBoolean>;
300
+ }, "strip", z.ZodTypeAny, {
301
+ type: "named";
302
+ name: string;
303
+ container_path: string;
304
+ read_only?: boolean | undefined;
305
+ }, {
306
+ type: "named";
307
+ name: string;
308
+ container_path: string;
309
+ read_only?: boolean | undefined;
310
+ }>;
311
+ export declare const runVolumeMountAnonymousSchema: z.ZodObject<{
312
+ type: z.ZodLiteral<"anonymous">;
313
+ container_path: z.ZodString;
314
+ }, "strip", z.ZodTypeAny, {
315
+ type: "anonymous";
316
+ container_path: string;
317
+ }, {
318
+ type: "anonymous";
319
+ container_path: string;
320
+ }>;
321
+ export declare const runVolumeMountTmpfsSchema: z.ZodObject<{
322
+ type: z.ZodLiteral<"tmpfs">;
323
+ container_path: z.ZodString;
324
+ size_mb: z.ZodOptional<z.ZodNumber>;
325
+ }, "strip", z.ZodTypeAny, {
326
+ type: "tmpfs";
327
+ container_path: string;
328
+ size_mb?: number | undefined;
329
+ }, {
330
+ type: "tmpfs";
331
+ container_path: string;
332
+ size_mb?: number | undefined;
333
+ }>;
334
+ export declare const runVolumeMountCopyInSchema: z.ZodObject<{
335
+ type: z.ZodLiteral<"copy-in">;
336
+ host_path: z.ZodString;
337
+ container_path: z.ZodString;
338
+ }, "strip", z.ZodTypeAny, {
339
+ type: "copy-in";
340
+ host_path: string;
341
+ container_path: string;
342
+ }, {
343
+ type: "copy-in";
344
+ host_path: string;
345
+ container_path: string;
346
+ }>;
347
+ export declare const runVolumeMountCopyOutSchema: z.ZodObject<{
348
+ type: z.ZodLiteral<"copy-out">;
349
+ container_path: z.ZodString;
350
+ host_path: z.ZodString;
351
+ changed_only: z.ZodOptional<z.ZodBoolean>;
352
+ }, "strip", z.ZodTypeAny, {
353
+ type: "copy-out";
354
+ host_path: string;
355
+ container_path: string;
356
+ changed_only?: boolean | undefined;
357
+ }, {
358
+ type: "copy-out";
359
+ host_path: string;
360
+ container_path: string;
361
+ changed_only?: boolean | undefined;
362
+ }>;
363
+ export declare const runVolumeMountSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
364
+ type: z.ZodLiteral<"regular">;
365
+ host_path: z.ZodOptional<z.ZodString>;
366
+ container_path: z.ZodOptional<z.ZodString>;
367
+ read_only: z.ZodOptional<z.ZodBoolean>;
368
+ }, "strip", z.ZodTypeAny, {
369
+ type: "regular";
370
+ host_path?: string | undefined;
371
+ container_path?: string | undefined;
372
+ read_only?: boolean | undefined;
373
+ }, {
374
+ type: "regular";
375
+ host_path?: string | undefined;
376
+ container_path?: string | undefined;
377
+ read_only?: boolean | undefined;
378
+ }>, z.ZodObject<{
379
+ type: z.ZodLiteral<"docker-socket">;
380
+ container_path: z.ZodOptional<z.ZodString>;
381
+ }, "strip", z.ZodTypeAny, {
382
+ type: "docker-socket";
383
+ container_path?: string | undefined;
384
+ }, {
385
+ type: "docker-socket";
386
+ container_path?: string | undefined;
387
+ }>, z.ZodObject<{
388
+ type: z.ZodLiteral<"new-file">;
389
+ container_path: z.ZodString;
390
+ content: z.ZodObject<{
391
+ data: z.ZodString;
392
+ encoding: z.ZodOptional<z.ZodString>;
393
+ }, "strip", z.ZodTypeAny, {
394
+ data: string;
395
+ encoding?: string | undefined;
396
+ }, {
397
+ data: string;
398
+ encoding?: string | undefined;
399
+ }>;
400
+ owner: z.ZodOptional<z.ZodString>;
401
+ permissions: z.ZodOptional<z.ZodObject<{
402
+ read: z.ZodNumber;
403
+ write: z.ZodNumber;
404
+ execute: z.ZodNumber;
405
+ }, "strip", z.ZodTypeAny, {
406
+ read: number;
407
+ write: number;
408
+ execute: number;
409
+ }, {
410
+ read: number;
411
+ write: number;
412
+ execute: number;
413
+ }>>;
414
+ }, "strip", z.ZodTypeAny, {
415
+ type: "new-file";
416
+ container_path: string;
417
+ content: {
418
+ data: string;
419
+ encoding?: string | undefined;
420
+ };
421
+ owner?: string | undefined;
422
+ permissions?: {
423
+ read: number;
424
+ write: number;
425
+ execute: number;
426
+ } | undefined;
427
+ }, {
428
+ type: "new-file";
429
+ container_path: string;
430
+ content: {
431
+ data: string;
432
+ encoding?: string | undefined;
433
+ };
434
+ owner?: string | undefined;
435
+ permissions?: {
436
+ read: number;
437
+ write: number;
438
+ execute: number;
439
+ } | undefined;
440
+ }>, z.ZodObject<{
441
+ type: z.ZodLiteral<"named">;
442
+ name: z.ZodString;
443
+ container_path: z.ZodString;
444
+ read_only: z.ZodOptional<z.ZodBoolean>;
445
+ }, "strip", z.ZodTypeAny, {
446
+ type: "named";
447
+ name: string;
448
+ container_path: string;
449
+ read_only?: boolean | undefined;
450
+ }, {
451
+ type: "named";
452
+ name: string;
453
+ container_path: string;
454
+ read_only?: boolean | undefined;
455
+ }>, z.ZodObject<{
456
+ type: z.ZodLiteral<"anonymous">;
457
+ container_path: z.ZodString;
458
+ }, "strip", z.ZodTypeAny, {
459
+ type: "anonymous";
460
+ container_path: string;
461
+ }, {
462
+ type: "anonymous";
463
+ container_path: string;
464
+ }>, z.ZodObject<{
465
+ type: z.ZodLiteral<"tmpfs">;
466
+ container_path: z.ZodString;
467
+ size_mb: z.ZodOptional<z.ZodNumber>;
468
+ }, "strip", z.ZodTypeAny, {
469
+ type: "tmpfs";
470
+ container_path: string;
471
+ size_mb?: number | undefined;
472
+ }, {
473
+ type: "tmpfs";
474
+ container_path: string;
475
+ size_mb?: number | undefined;
476
+ }>, z.ZodObject<{
477
+ type: z.ZodLiteral<"copy-in">;
478
+ host_path: z.ZodString;
479
+ container_path: z.ZodString;
480
+ }, "strip", z.ZodTypeAny, {
481
+ type: "copy-in";
482
+ host_path: string;
483
+ container_path: string;
484
+ }, {
485
+ type: "copy-in";
486
+ host_path: string;
487
+ container_path: string;
488
+ }>, z.ZodObject<{
489
+ type: z.ZodLiteral<"copy-out">;
490
+ container_path: z.ZodString;
491
+ host_path: z.ZodString;
492
+ changed_only: z.ZodOptional<z.ZodBoolean>;
493
+ }, "strip", z.ZodTypeAny, {
494
+ type: "copy-out";
495
+ host_path: string;
496
+ container_path: string;
497
+ changed_only?: boolean | undefined;
498
+ }, {
499
+ type: "copy-out";
500
+ host_path: string;
501
+ container_path: string;
502
+ changed_only?: boolean | undefined;
503
+ }>]>;
504
+ export type RunVolumeMount = z.infer<typeof runVolumeMountSchema>;
505
+ export declare const mainCmdOnExitWithCodeSchema: z.ZodObject<{
506
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
507
+ exitCode: z.ZodNumber;
508
+ }, "strip", z.ZodTypeAny, {
509
+ exitCode: number;
510
+ cmd?: string | null | undefined;
511
+ }, {
512
+ exitCode: number;
513
+ cmd?: string | null | undefined;
514
+ }>;
515
+ export type MainCmdOnExitWithCode = z.infer<typeof mainCmdOnExitWithCodeSchema>;
516
+ export declare const onExitBehaviorSchema: z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
517
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
518
+ exitCode: z.ZodNumber;
519
+ }, "strip", z.ZodTypeAny, {
520
+ exitCode: number;
521
+ cmd?: string | null | undefined;
522
+ }, {
523
+ exitCode: number;
524
+ cmd?: string | null | undefined;
525
+ }>, "many">]>;
526
+ export type OnExitBehavior = z.infer<typeof onExitBehaviorSchema>;
527
+ export declare const executeStartupCmdSchema: z.ZodObject<{
528
+ cmd: z.ZodString;
529
+ async: z.ZodOptional<z.ZodBoolean>;
530
+ }, "strip", z.ZodTypeAny, {
531
+ cmd: string;
532
+ async?: boolean | undefined;
533
+ }, {
534
+ cmd: string;
535
+ async?: boolean | undefined;
536
+ }>;
537
+ export type ExecuteStartupCmd = z.infer<typeof executeStartupCmdSchema>;
538
+ export declare const executeMainCmdSchema: z.ZodObject<{
539
+ cmd: z.ZodString;
540
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
541
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
542
+ exitCode: z.ZodNumber;
543
+ }, "strip", z.ZodTypeAny, {
544
+ exitCode: number;
545
+ cmd?: string | null | undefined;
546
+ }, {
547
+ exitCode: number;
548
+ cmd?: string | null | undefined;
549
+ }>, "many">]>>;
550
+ parser: z.ZodOptional<z.ZodString>;
551
+ }, "strip", z.ZodTypeAny, {
552
+ cmd: string;
553
+ onExit?: string | {
554
+ exitCode: number;
555
+ cmd?: string | null | undefined;
556
+ }[] | null | undefined;
557
+ parser?: string | undefined;
558
+ }, {
559
+ cmd: string;
560
+ onExit?: string | {
561
+ exitCode: number;
562
+ cmd?: string | null | undefined;
563
+ }[] | null | undefined;
564
+ parser?: string | undefined;
565
+ }>;
566
+ export type ExecuteMainCmd = z.infer<typeof executeMainCmdSchema>;
567
+ export declare const executeShutdownCmdSchema: z.ZodObject<{
568
+ cmd: z.ZodString;
569
+ }, "strip", z.ZodTypeAny, {
570
+ cmd: string;
571
+ }, {
572
+ cmd: string;
573
+ }>;
574
+ export type ExecuteShutdownCmd = z.infer<typeof executeShutdownCmdSchema>;
575
+ export declare const scheduleExpressionStructSchema: z.ZodObject<{
576
+ interval: z.ZodOptional<z.ZodNumber>;
577
+ time: z.ZodOptional<z.ZodString>;
578
+ cron: z.ZodOptional<z.ZodString>;
579
+ }, "strip", z.ZodTypeAny, {
580
+ interval?: number | undefined;
581
+ time?: string | undefined;
582
+ cron?: string | undefined;
583
+ }, {
584
+ interval?: number | undefined;
585
+ time?: string | undefined;
586
+ cron?: string | undefined;
587
+ }>;
588
+ export type ScheduleExpressionStruct = z.infer<typeof scheduleExpressionStructSchema>;
589
+ export declare const scheduleExpressionSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
590
+ interval: z.ZodOptional<z.ZodNumber>;
591
+ time: z.ZodOptional<z.ZodString>;
592
+ cron: z.ZodOptional<z.ZodString>;
593
+ }, "strip", z.ZodTypeAny, {
594
+ interval?: number | undefined;
595
+ time?: string | undefined;
596
+ cron?: string | undefined;
597
+ }, {
598
+ interval?: number | undefined;
599
+ time?: string | undefined;
600
+ cron?: string | undefined;
601
+ }>]>;
602
+ export type ScheduleExpression = z.infer<typeof scheduleExpressionSchema>;
603
+ export declare const scheduledCmdSchema: z.ZodObject<{
604
+ cmd: z.ZodString;
605
+ runAt: z.ZodUnion<[z.ZodString, z.ZodObject<{
606
+ interval: z.ZodOptional<z.ZodNumber>;
607
+ time: z.ZodOptional<z.ZodString>;
608
+ cron: z.ZodOptional<z.ZodString>;
609
+ }, "strip", z.ZodTypeAny, {
610
+ interval?: number | undefined;
611
+ time?: string | undefined;
612
+ cron?: string | undefined;
613
+ }, {
614
+ interval?: number | undefined;
615
+ time?: string | undefined;
616
+ cron?: string | undefined;
617
+ }>]>;
618
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
619
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
620
+ exitCode: z.ZodNumber;
621
+ }, "strip", z.ZodTypeAny, {
622
+ exitCode: number;
623
+ cmd?: string | null | undefined;
624
+ }, {
625
+ exitCode: number;
626
+ cmd?: string | null | undefined;
627
+ }>, "many">]>>;
628
+ parser: z.ZodOptional<z.ZodString>;
629
+ }, "strip", z.ZodTypeAny, {
630
+ cmd: string;
631
+ runAt: string | {
632
+ interval?: number | undefined;
633
+ time?: string | undefined;
634
+ cron?: string | undefined;
635
+ };
636
+ onExit?: string | {
637
+ exitCode: number;
638
+ cmd?: string | null | undefined;
639
+ }[] | null | undefined;
640
+ parser?: string | undefined;
641
+ }, {
642
+ cmd: string;
643
+ runAt: string | {
644
+ interval?: number | undefined;
645
+ time?: string | undefined;
646
+ cron?: string | undefined;
647
+ };
648
+ onExit?: string | {
649
+ exitCode: number;
650
+ cmd?: string | null | undefined;
651
+ }[] | null | undefined;
652
+ parser?: string | undefined;
653
+ }>;
654
+ export type ScheduledCmd = z.infer<typeof scheduledCmdSchema>;
655
+ export declare const figSpecExecuteSchema: z.ZodObject<{
656
+ startup: z.ZodOptional<z.ZodArray<z.ZodObject<{
657
+ cmd: z.ZodString;
658
+ async: z.ZodOptional<z.ZodBoolean>;
659
+ }, "strip", z.ZodTypeAny, {
660
+ cmd: string;
661
+ async?: boolean | undefined;
662
+ }, {
663
+ cmd: string;
664
+ async?: boolean | undefined;
665
+ }>, "many">>;
666
+ main: z.ZodObject<{
667
+ cmd: z.ZodString;
668
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
669
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
670
+ exitCode: z.ZodNumber;
671
+ }, "strip", z.ZodTypeAny, {
672
+ exitCode: number;
673
+ cmd?: string | null | undefined;
674
+ }, {
675
+ exitCode: number;
676
+ cmd?: string | null | undefined;
677
+ }>, "many">]>>;
678
+ parser: z.ZodOptional<z.ZodString>;
679
+ }, "strip", z.ZodTypeAny, {
680
+ cmd: string;
681
+ onExit?: string | {
682
+ exitCode: number;
683
+ cmd?: string | null | undefined;
684
+ }[] | null | undefined;
685
+ parser?: string | undefined;
686
+ }, {
687
+ cmd: string;
688
+ onExit?: string | {
689
+ exitCode: number;
690
+ cmd?: string | null | undefined;
691
+ }[] | null | undefined;
692
+ parser?: string | undefined;
693
+ }>;
694
+ shutdown: z.ZodOptional<z.ZodArray<z.ZodObject<{
695
+ cmd: z.ZodString;
696
+ }, "strip", z.ZodTypeAny, {
697
+ cmd: string;
698
+ }, {
699
+ cmd: string;
700
+ }>, "many">>;
701
+ scheduled: z.ZodOptional<z.ZodArray<z.ZodObject<{
702
+ cmd: z.ZodString;
703
+ runAt: z.ZodUnion<[z.ZodString, z.ZodObject<{
704
+ interval: z.ZodOptional<z.ZodNumber>;
705
+ time: z.ZodOptional<z.ZodString>;
706
+ cron: z.ZodOptional<z.ZodString>;
707
+ }, "strip", z.ZodTypeAny, {
708
+ interval?: number | undefined;
709
+ time?: string | undefined;
710
+ cron?: string | undefined;
711
+ }, {
712
+ interval?: number | undefined;
713
+ time?: string | undefined;
714
+ cron?: string | undefined;
715
+ }>]>;
716
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
717
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
718
+ exitCode: z.ZodNumber;
719
+ }, "strip", z.ZodTypeAny, {
720
+ exitCode: number;
721
+ cmd?: string | null | undefined;
722
+ }, {
723
+ exitCode: number;
724
+ cmd?: string | null | undefined;
725
+ }>, "many">]>>;
726
+ parser: z.ZodOptional<z.ZodString>;
727
+ }, "strip", z.ZodTypeAny, {
728
+ cmd: string;
729
+ runAt: string | {
730
+ interval?: number | undefined;
731
+ time?: string | undefined;
732
+ cron?: string | undefined;
733
+ };
734
+ onExit?: string | {
735
+ exitCode: number;
736
+ cmd?: string | null | undefined;
737
+ }[] | null | undefined;
738
+ parser?: string | undefined;
739
+ }, {
740
+ cmd: string;
741
+ runAt: string | {
742
+ interval?: number | undefined;
743
+ time?: string | undefined;
744
+ cron?: string | undefined;
745
+ };
746
+ onExit?: string | {
747
+ exitCode: number;
748
+ cmd?: string | null | undefined;
749
+ }[] | null | undefined;
750
+ parser?: string | undefined;
751
+ }>, "many">>;
752
+ }, "strip", z.ZodTypeAny, {
753
+ main: {
754
+ cmd: string;
755
+ onExit?: string | {
756
+ exitCode: number;
757
+ cmd?: string | null | undefined;
758
+ }[] | null | undefined;
759
+ parser?: string | undefined;
760
+ };
761
+ startup?: {
762
+ cmd: string;
763
+ async?: boolean | undefined;
764
+ }[] | undefined;
765
+ shutdown?: {
766
+ cmd: string;
767
+ }[] | undefined;
768
+ scheduled?: {
769
+ cmd: string;
770
+ runAt: string | {
771
+ interval?: number | undefined;
772
+ time?: string | undefined;
773
+ cron?: string | undefined;
774
+ };
775
+ onExit?: string | {
776
+ exitCode: number;
777
+ cmd?: string | null | undefined;
778
+ }[] | null | undefined;
779
+ parser?: string | undefined;
780
+ }[] | undefined;
781
+ }, {
782
+ main: {
783
+ cmd: string;
784
+ onExit?: string | {
785
+ exitCode: number;
786
+ cmd?: string | null | undefined;
787
+ }[] | null | undefined;
788
+ parser?: string | undefined;
789
+ };
790
+ startup?: {
791
+ cmd: string;
792
+ async?: boolean | undefined;
793
+ }[] | undefined;
794
+ shutdown?: {
795
+ cmd: string;
796
+ }[] | undefined;
797
+ scheduled?: {
798
+ cmd: string;
799
+ runAt: string | {
800
+ interval?: number | undefined;
801
+ time?: string | undefined;
802
+ cron?: string | undefined;
803
+ };
804
+ onExit?: string | {
805
+ exitCode: number;
806
+ cmd?: string | null | undefined;
807
+ }[] | null | undefined;
808
+ parser?: string | undefined;
809
+ }[] | undefined;
810
+ }>;
811
+ export type FigSpecExecute = z.infer<typeof figSpecExecuteSchema>;
812
+ export declare const buildExecuteStepSchema: z.ZodObject<{
813
+ cmd: z.ZodString;
814
+ }, "strip", z.ZodTypeAny, {
815
+ cmd: string;
816
+ }, {
817
+ cmd: string;
818
+ }>;
819
+ export type BuildExecuteStep = z.infer<typeof buildExecuteStepSchema>;
820
+ export declare const figSpecBuildBaseSchema: z.ZodObject<{
821
+ schemaVersion: z.ZodOptional<z.ZodString>;
822
+ specName: z.ZodOptional<z.ZodString>;
823
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
824
+ packageManager: z.ZodString;
825
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
826
+ name: z.ZodString;
827
+ version: z.ZodOptional<z.ZodString>;
828
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
829
+ }, "strip", z.ZodTypeAny, {
830
+ name: string;
831
+ version?: string | undefined;
832
+ args?: string[] | undefined;
833
+ }, {
834
+ name: string;
835
+ version?: string | undefined;
836
+ args?: string[] | undefined;
837
+ }>]>, "many">;
838
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
839
+ }, "strip", z.ZodTypeAny, {
840
+ packageManager: string;
841
+ packages: (string | {
842
+ name: string;
843
+ version?: string | undefined;
844
+ args?: string[] | undefined;
845
+ })[];
846
+ globalArgs?: string[] | undefined;
847
+ }, {
848
+ packageManager: string;
849
+ packages: (string | {
850
+ name: string;
851
+ version?: string | undefined;
852
+ args?: string[] | undefined;
853
+ })[];
854
+ globalArgs?: string[] | undefined;
855
+ }>, "many">>;
856
+ platform: z.ZodOptional<z.ZodString>;
857
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
858
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
859
+ type: z.ZodLiteral<"regular">;
860
+ host_path: z.ZodOptional<z.ZodString>;
861
+ container_path: z.ZodOptional<z.ZodString>;
862
+ read_only: z.ZodOptional<z.ZodBoolean>;
863
+ }, "strip", z.ZodTypeAny, {
864
+ type: "regular";
865
+ host_path?: string | undefined;
866
+ container_path?: string | undefined;
867
+ read_only?: boolean | undefined;
868
+ }, {
869
+ type: "regular";
870
+ host_path?: string | undefined;
871
+ container_path?: string | undefined;
872
+ read_only?: boolean | undefined;
873
+ }>, z.ZodObject<{
874
+ type: z.ZodLiteral<"new-file">;
875
+ container_path: z.ZodString;
876
+ content: z.ZodObject<{
877
+ data: z.ZodString;
878
+ encoding: z.ZodOptional<z.ZodString>;
879
+ }, "strip", z.ZodTypeAny, {
880
+ data: string;
881
+ encoding?: string | undefined;
882
+ }, {
883
+ data: string;
884
+ encoding?: string | undefined;
885
+ }>;
886
+ owner: z.ZodOptional<z.ZodString>;
887
+ permissions: z.ZodOptional<z.ZodObject<{
888
+ read: z.ZodNumber;
889
+ write: z.ZodNumber;
890
+ execute: z.ZodNumber;
891
+ }, "strip", z.ZodTypeAny, {
892
+ read: number;
893
+ write: number;
894
+ execute: number;
895
+ }, {
896
+ read: number;
897
+ write: number;
898
+ execute: number;
899
+ }>>;
900
+ }, "strip", z.ZodTypeAny, {
901
+ type: "new-file";
902
+ container_path: string;
903
+ content: {
904
+ data: string;
905
+ encoding?: string | undefined;
906
+ };
907
+ owner?: string | undefined;
908
+ permissions?: {
909
+ read: number;
910
+ write: number;
911
+ execute: number;
912
+ } | undefined;
913
+ }, {
914
+ type: "new-file";
915
+ container_path: string;
916
+ content: {
917
+ data: string;
918
+ encoding?: string | undefined;
919
+ };
920
+ owner?: string | undefined;
921
+ permissions?: {
922
+ read: number;
923
+ write: number;
924
+ execute: number;
925
+ } | undefined;
926
+ }>]>, "many">>;
927
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
928
+ cmd: z.ZodString;
929
+ }, "strip", z.ZodTypeAny, {
930
+ cmd: string;
931
+ }, {
932
+ cmd: string;
933
+ }>, "many">>;
934
+ workDir: z.ZodOptional<z.ZodString>;
935
+ user: z.ZodOptional<z.ZodString>;
936
+ }, "strip", z.ZodTypeAny, {
937
+ execute?: {
938
+ cmd: string;
939
+ }[] | undefined;
940
+ schemaVersion?: string | undefined;
941
+ specName?: string | undefined;
942
+ packagesToInstall?: {
943
+ packageManager: string;
944
+ packages: (string | {
945
+ name: string;
946
+ version?: string | undefined;
947
+ args?: string[] | undefined;
948
+ })[];
949
+ globalArgs?: string[] | undefined;
950
+ }[] | undefined;
951
+ platform?: string | undefined;
952
+ env?: Record<string, string> | undefined;
953
+ volumes?: ({
954
+ type: "regular";
955
+ host_path?: string | undefined;
956
+ container_path?: string | undefined;
957
+ read_only?: boolean | undefined;
958
+ } | {
959
+ type: "new-file";
960
+ container_path: string;
961
+ content: {
962
+ data: string;
963
+ encoding?: string | undefined;
964
+ };
965
+ owner?: string | undefined;
966
+ permissions?: {
967
+ read: number;
968
+ write: number;
969
+ execute: number;
970
+ } | undefined;
971
+ })[] | undefined;
972
+ workDir?: string | undefined;
973
+ user?: string | undefined;
974
+ }, {
975
+ execute?: {
976
+ cmd: string;
977
+ }[] | undefined;
978
+ schemaVersion?: string | undefined;
979
+ specName?: string | undefined;
980
+ packagesToInstall?: {
981
+ packageManager: string;
982
+ packages: (string | {
983
+ name: string;
984
+ version?: string | undefined;
985
+ args?: string[] | undefined;
986
+ })[];
987
+ globalArgs?: string[] | undefined;
988
+ }[] | undefined;
989
+ platform?: string | undefined;
990
+ env?: Record<string, string> | undefined;
991
+ volumes?: ({
992
+ type: "regular";
993
+ host_path?: string | undefined;
994
+ container_path?: string | undefined;
995
+ read_only?: boolean | undefined;
996
+ } | {
997
+ type: "new-file";
998
+ container_path: string;
999
+ content: {
1000
+ data: string;
1001
+ encoding?: string | undefined;
1002
+ };
1003
+ owner?: string | undefined;
1004
+ permissions?: {
1005
+ read: number;
1006
+ write: number;
1007
+ execute: number;
1008
+ } | undefined;
1009
+ })[] | undefined;
1010
+ workDir?: string | undefined;
1011
+ user?: string | undefined;
1012
+ }>;
1013
+ export declare const figSpecBuildStandaloneSchema: z.ZodObject<{
1014
+ schemaVersion: z.ZodOptional<z.ZodString>;
1015
+ specName: z.ZodOptional<z.ZodString>;
1016
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
1017
+ packageManager: z.ZodString;
1018
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1019
+ name: z.ZodString;
1020
+ version: z.ZodOptional<z.ZodString>;
1021
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1022
+ }, "strip", z.ZodTypeAny, {
1023
+ name: string;
1024
+ version?: string | undefined;
1025
+ args?: string[] | undefined;
1026
+ }, {
1027
+ name: string;
1028
+ version?: string | undefined;
1029
+ args?: string[] | undefined;
1030
+ }>]>, "many">;
1031
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1032
+ }, "strip", z.ZodTypeAny, {
1033
+ packageManager: string;
1034
+ packages: (string | {
1035
+ name: string;
1036
+ version?: string | undefined;
1037
+ args?: string[] | undefined;
1038
+ })[];
1039
+ globalArgs?: string[] | undefined;
1040
+ }, {
1041
+ packageManager: string;
1042
+ packages: (string | {
1043
+ name: string;
1044
+ version?: string | undefined;
1045
+ args?: string[] | undefined;
1046
+ })[];
1047
+ globalArgs?: string[] | undefined;
1048
+ }>, "many">>;
1049
+ platform: z.ZodOptional<z.ZodString>;
1050
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1051
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1052
+ type: z.ZodLiteral<"regular">;
1053
+ host_path: z.ZodOptional<z.ZodString>;
1054
+ container_path: z.ZodOptional<z.ZodString>;
1055
+ read_only: z.ZodOptional<z.ZodBoolean>;
1056
+ }, "strip", z.ZodTypeAny, {
1057
+ type: "regular";
1058
+ host_path?: string | undefined;
1059
+ container_path?: string | undefined;
1060
+ read_only?: boolean | undefined;
1061
+ }, {
1062
+ type: "regular";
1063
+ host_path?: string | undefined;
1064
+ container_path?: string | undefined;
1065
+ read_only?: boolean | undefined;
1066
+ }>, z.ZodObject<{
1067
+ type: z.ZodLiteral<"new-file">;
1068
+ container_path: z.ZodString;
1069
+ content: z.ZodObject<{
1070
+ data: z.ZodString;
1071
+ encoding: z.ZodOptional<z.ZodString>;
1072
+ }, "strip", z.ZodTypeAny, {
1073
+ data: string;
1074
+ encoding?: string | undefined;
1075
+ }, {
1076
+ data: string;
1077
+ encoding?: string | undefined;
1078
+ }>;
1079
+ owner: z.ZodOptional<z.ZodString>;
1080
+ permissions: z.ZodOptional<z.ZodObject<{
1081
+ read: z.ZodNumber;
1082
+ write: z.ZodNumber;
1083
+ execute: z.ZodNumber;
1084
+ }, "strip", z.ZodTypeAny, {
1085
+ read: number;
1086
+ write: number;
1087
+ execute: number;
1088
+ }, {
1089
+ read: number;
1090
+ write: number;
1091
+ execute: number;
1092
+ }>>;
1093
+ }, "strip", z.ZodTypeAny, {
1094
+ type: "new-file";
1095
+ container_path: string;
1096
+ content: {
1097
+ data: string;
1098
+ encoding?: string | undefined;
1099
+ };
1100
+ owner?: string | undefined;
1101
+ permissions?: {
1102
+ read: number;
1103
+ write: number;
1104
+ execute: number;
1105
+ } | undefined;
1106
+ }, {
1107
+ type: "new-file";
1108
+ container_path: string;
1109
+ content: {
1110
+ data: string;
1111
+ encoding?: string | undefined;
1112
+ };
1113
+ owner?: string | undefined;
1114
+ permissions?: {
1115
+ read: number;
1116
+ write: number;
1117
+ execute: number;
1118
+ } | undefined;
1119
+ }>]>, "many">>;
1120
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
1121
+ cmd: z.ZodString;
1122
+ }, "strip", z.ZodTypeAny, {
1123
+ cmd: string;
1124
+ }, {
1125
+ cmd: string;
1126
+ }>, "many">>;
1127
+ workDir: z.ZodOptional<z.ZodString>;
1128
+ user: z.ZodOptional<z.ZodString>;
1129
+ } & {
1130
+ baseImage: z.ZodString;
1131
+ }, "strip", z.ZodTypeAny, {
1132
+ baseImage: string;
1133
+ execute?: {
1134
+ cmd: string;
1135
+ }[] | undefined;
1136
+ schemaVersion?: string | undefined;
1137
+ specName?: string | undefined;
1138
+ packagesToInstall?: {
1139
+ packageManager: string;
1140
+ packages: (string | {
1141
+ name: string;
1142
+ version?: string | undefined;
1143
+ args?: string[] | undefined;
1144
+ })[];
1145
+ globalArgs?: string[] | undefined;
1146
+ }[] | undefined;
1147
+ platform?: string | undefined;
1148
+ env?: Record<string, string> | undefined;
1149
+ volumes?: ({
1150
+ type: "regular";
1151
+ host_path?: string | undefined;
1152
+ container_path?: string | undefined;
1153
+ read_only?: boolean | undefined;
1154
+ } | {
1155
+ type: "new-file";
1156
+ container_path: string;
1157
+ content: {
1158
+ data: string;
1159
+ encoding?: string | undefined;
1160
+ };
1161
+ owner?: string | undefined;
1162
+ permissions?: {
1163
+ read: number;
1164
+ write: number;
1165
+ execute: number;
1166
+ } | undefined;
1167
+ })[] | undefined;
1168
+ workDir?: string | undefined;
1169
+ user?: string | undefined;
1170
+ }, {
1171
+ baseImage: string;
1172
+ execute?: {
1173
+ cmd: string;
1174
+ }[] | undefined;
1175
+ schemaVersion?: string | undefined;
1176
+ specName?: string | undefined;
1177
+ packagesToInstall?: {
1178
+ packageManager: string;
1179
+ packages: (string | {
1180
+ name: string;
1181
+ version?: string | undefined;
1182
+ args?: string[] | undefined;
1183
+ })[];
1184
+ globalArgs?: string[] | undefined;
1185
+ }[] | undefined;
1186
+ platform?: string | undefined;
1187
+ env?: Record<string, string> | undefined;
1188
+ volumes?: ({
1189
+ type: "regular";
1190
+ host_path?: string | undefined;
1191
+ container_path?: string | undefined;
1192
+ read_only?: boolean | undefined;
1193
+ } | {
1194
+ type: "new-file";
1195
+ container_path: string;
1196
+ content: {
1197
+ data: string;
1198
+ encoding?: string | undefined;
1199
+ };
1200
+ owner?: string | undefined;
1201
+ permissions?: {
1202
+ read: number;
1203
+ write: number;
1204
+ execute: number;
1205
+ } | undefined;
1206
+ })[] | undefined;
1207
+ workDir?: string | undefined;
1208
+ user?: string | undefined;
1209
+ }>;
1210
+ export type FigSpecBuildStandalone = z.infer<typeof figSpecBuildStandaloneSchema>;
1211
+ export declare const figSpecBuildWithBaseSpecSchema: z.ZodObject<{
1212
+ schemaVersion: z.ZodOptional<z.ZodString>;
1213
+ specName: z.ZodOptional<z.ZodString>;
1214
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
1215
+ packageManager: z.ZodString;
1216
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1217
+ name: z.ZodString;
1218
+ version: z.ZodOptional<z.ZodString>;
1219
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1220
+ }, "strip", z.ZodTypeAny, {
1221
+ name: string;
1222
+ version?: string | undefined;
1223
+ args?: string[] | undefined;
1224
+ }, {
1225
+ name: string;
1226
+ version?: string | undefined;
1227
+ args?: string[] | undefined;
1228
+ }>]>, "many">;
1229
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1230
+ }, "strip", z.ZodTypeAny, {
1231
+ packageManager: string;
1232
+ packages: (string | {
1233
+ name: string;
1234
+ version?: string | undefined;
1235
+ args?: string[] | undefined;
1236
+ })[];
1237
+ globalArgs?: string[] | undefined;
1238
+ }, {
1239
+ packageManager: string;
1240
+ packages: (string | {
1241
+ name: string;
1242
+ version?: string | undefined;
1243
+ args?: string[] | undefined;
1244
+ })[];
1245
+ globalArgs?: string[] | undefined;
1246
+ }>, "many">>;
1247
+ platform: z.ZodOptional<z.ZodString>;
1248
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1249
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1250
+ type: z.ZodLiteral<"regular">;
1251
+ host_path: z.ZodOptional<z.ZodString>;
1252
+ container_path: z.ZodOptional<z.ZodString>;
1253
+ read_only: z.ZodOptional<z.ZodBoolean>;
1254
+ }, "strip", z.ZodTypeAny, {
1255
+ type: "regular";
1256
+ host_path?: string | undefined;
1257
+ container_path?: string | undefined;
1258
+ read_only?: boolean | undefined;
1259
+ }, {
1260
+ type: "regular";
1261
+ host_path?: string | undefined;
1262
+ container_path?: string | undefined;
1263
+ read_only?: boolean | undefined;
1264
+ }>, z.ZodObject<{
1265
+ type: z.ZodLiteral<"new-file">;
1266
+ container_path: z.ZodString;
1267
+ content: z.ZodObject<{
1268
+ data: z.ZodString;
1269
+ encoding: z.ZodOptional<z.ZodString>;
1270
+ }, "strip", z.ZodTypeAny, {
1271
+ data: string;
1272
+ encoding?: string | undefined;
1273
+ }, {
1274
+ data: string;
1275
+ encoding?: string | undefined;
1276
+ }>;
1277
+ owner: z.ZodOptional<z.ZodString>;
1278
+ permissions: z.ZodOptional<z.ZodObject<{
1279
+ read: z.ZodNumber;
1280
+ write: z.ZodNumber;
1281
+ execute: z.ZodNumber;
1282
+ }, "strip", z.ZodTypeAny, {
1283
+ read: number;
1284
+ write: number;
1285
+ execute: number;
1286
+ }, {
1287
+ read: number;
1288
+ write: number;
1289
+ execute: number;
1290
+ }>>;
1291
+ }, "strip", z.ZodTypeAny, {
1292
+ type: "new-file";
1293
+ container_path: string;
1294
+ content: {
1295
+ data: string;
1296
+ encoding?: string | undefined;
1297
+ };
1298
+ owner?: string | undefined;
1299
+ permissions?: {
1300
+ read: number;
1301
+ write: number;
1302
+ execute: number;
1303
+ } | undefined;
1304
+ }, {
1305
+ type: "new-file";
1306
+ container_path: string;
1307
+ content: {
1308
+ data: string;
1309
+ encoding?: string | undefined;
1310
+ };
1311
+ owner?: string | undefined;
1312
+ permissions?: {
1313
+ read: number;
1314
+ write: number;
1315
+ execute: number;
1316
+ } | undefined;
1317
+ }>]>, "many">>;
1318
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
1319
+ cmd: z.ZodString;
1320
+ }, "strip", z.ZodTypeAny, {
1321
+ cmd: string;
1322
+ }, {
1323
+ cmd: string;
1324
+ }>, "many">>;
1325
+ workDir: z.ZodOptional<z.ZodString>;
1326
+ user: z.ZodOptional<z.ZodString>;
1327
+ } & {
1328
+ baseSpec: z.ZodString;
1329
+ baseImage: z.ZodOptional<z.ZodString>;
1330
+ }, "strip", z.ZodTypeAny, {
1331
+ baseSpec: string;
1332
+ execute?: {
1333
+ cmd: string;
1334
+ }[] | undefined;
1335
+ schemaVersion?: string | undefined;
1336
+ specName?: string | undefined;
1337
+ packagesToInstall?: {
1338
+ packageManager: string;
1339
+ packages: (string | {
1340
+ name: string;
1341
+ version?: string | undefined;
1342
+ args?: string[] | undefined;
1343
+ })[];
1344
+ globalArgs?: string[] | undefined;
1345
+ }[] | undefined;
1346
+ platform?: string | undefined;
1347
+ env?: Record<string, string> | undefined;
1348
+ volumes?: ({
1349
+ type: "regular";
1350
+ host_path?: string | undefined;
1351
+ container_path?: string | undefined;
1352
+ read_only?: boolean | undefined;
1353
+ } | {
1354
+ type: "new-file";
1355
+ container_path: string;
1356
+ content: {
1357
+ data: string;
1358
+ encoding?: string | undefined;
1359
+ };
1360
+ owner?: string | undefined;
1361
+ permissions?: {
1362
+ read: number;
1363
+ write: number;
1364
+ execute: number;
1365
+ } | undefined;
1366
+ })[] | undefined;
1367
+ workDir?: string | undefined;
1368
+ user?: string | undefined;
1369
+ baseImage?: string | undefined;
1370
+ }, {
1371
+ baseSpec: string;
1372
+ execute?: {
1373
+ cmd: string;
1374
+ }[] | undefined;
1375
+ schemaVersion?: string | undefined;
1376
+ specName?: string | undefined;
1377
+ packagesToInstall?: {
1378
+ packageManager: string;
1379
+ packages: (string | {
1380
+ name: string;
1381
+ version?: string | undefined;
1382
+ args?: string[] | undefined;
1383
+ })[];
1384
+ globalArgs?: string[] | undefined;
1385
+ }[] | undefined;
1386
+ platform?: string | undefined;
1387
+ env?: Record<string, string> | undefined;
1388
+ volumes?: ({
1389
+ type: "regular";
1390
+ host_path?: string | undefined;
1391
+ container_path?: string | undefined;
1392
+ read_only?: boolean | undefined;
1393
+ } | {
1394
+ type: "new-file";
1395
+ container_path: string;
1396
+ content: {
1397
+ data: string;
1398
+ encoding?: string | undefined;
1399
+ };
1400
+ owner?: string | undefined;
1401
+ permissions?: {
1402
+ read: number;
1403
+ write: number;
1404
+ execute: number;
1405
+ } | undefined;
1406
+ })[] | undefined;
1407
+ workDir?: string | undefined;
1408
+ user?: string | undefined;
1409
+ baseImage?: string | undefined;
1410
+ }>;
1411
+ export type FigSpecBuildWithBaseSpec = z.infer<typeof figSpecBuildWithBaseSpecSchema>;
1412
+ export declare const figSpecBuildSchema: z.ZodUnion<[z.ZodObject<{
1413
+ schemaVersion: z.ZodOptional<z.ZodString>;
1414
+ specName: z.ZodOptional<z.ZodString>;
1415
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
1416
+ packageManager: z.ZodString;
1417
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1418
+ name: z.ZodString;
1419
+ version: z.ZodOptional<z.ZodString>;
1420
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1421
+ }, "strip", z.ZodTypeAny, {
1422
+ name: string;
1423
+ version?: string | undefined;
1424
+ args?: string[] | undefined;
1425
+ }, {
1426
+ name: string;
1427
+ version?: string | undefined;
1428
+ args?: string[] | undefined;
1429
+ }>]>, "many">;
1430
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1431
+ }, "strip", z.ZodTypeAny, {
1432
+ packageManager: string;
1433
+ packages: (string | {
1434
+ name: string;
1435
+ version?: string | undefined;
1436
+ args?: string[] | undefined;
1437
+ })[];
1438
+ globalArgs?: string[] | undefined;
1439
+ }, {
1440
+ packageManager: string;
1441
+ packages: (string | {
1442
+ name: string;
1443
+ version?: string | undefined;
1444
+ args?: string[] | undefined;
1445
+ })[];
1446
+ globalArgs?: string[] | undefined;
1447
+ }>, "many">>;
1448
+ platform: z.ZodOptional<z.ZodString>;
1449
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1450
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1451
+ type: z.ZodLiteral<"regular">;
1452
+ host_path: z.ZodOptional<z.ZodString>;
1453
+ container_path: z.ZodOptional<z.ZodString>;
1454
+ read_only: z.ZodOptional<z.ZodBoolean>;
1455
+ }, "strip", z.ZodTypeAny, {
1456
+ type: "regular";
1457
+ host_path?: string | undefined;
1458
+ container_path?: string | undefined;
1459
+ read_only?: boolean | undefined;
1460
+ }, {
1461
+ type: "regular";
1462
+ host_path?: string | undefined;
1463
+ container_path?: string | undefined;
1464
+ read_only?: boolean | undefined;
1465
+ }>, z.ZodObject<{
1466
+ type: z.ZodLiteral<"new-file">;
1467
+ container_path: z.ZodString;
1468
+ content: z.ZodObject<{
1469
+ data: z.ZodString;
1470
+ encoding: z.ZodOptional<z.ZodString>;
1471
+ }, "strip", z.ZodTypeAny, {
1472
+ data: string;
1473
+ encoding?: string | undefined;
1474
+ }, {
1475
+ data: string;
1476
+ encoding?: string | undefined;
1477
+ }>;
1478
+ owner: z.ZodOptional<z.ZodString>;
1479
+ permissions: z.ZodOptional<z.ZodObject<{
1480
+ read: z.ZodNumber;
1481
+ write: z.ZodNumber;
1482
+ execute: z.ZodNumber;
1483
+ }, "strip", z.ZodTypeAny, {
1484
+ read: number;
1485
+ write: number;
1486
+ execute: number;
1487
+ }, {
1488
+ read: number;
1489
+ write: number;
1490
+ execute: number;
1491
+ }>>;
1492
+ }, "strip", z.ZodTypeAny, {
1493
+ type: "new-file";
1494
+ container_path: string;
1495
+ content: {
1496
+ data: string;
1497
+ encoding?: string | undefined;
1498
+ };
1499
+ owner?: string | undefined;
1500
+ permissions?: {
1501
+ read: number;
1502
+ write: number;
1503
+ execute: number;
1504
+ } | undefined;
1505
+ }, {
1506
+ type: "new-file";
1507
+ container_path: string;
1508
+ content: {
1509
+ data: string;
1510
+ encoding?: string | undefined;
1511
+ };
1512
+ owner?: string | undefined;
1513
+ permissions?: {
1514
+ read: number;
1515
+ write: number;
1516
+ execute: number;
1517
+ } | undefined;
1518
+ }>]>, "many">>;
1519
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
1520
+ cmd: z.ZodString;
1521
+ }, "strip", z.ZodTypeAny, {
1522
+ cmd: string;
1523
+ }, {
1524
+ cmd: string;
1525
+ }>, "many">>;
1526
+ workDir: z.ZodOptional<z.ZodString>;
1527
+ user: z.ZodOptional<z.ZodString>;
1528
+ } & {
1529
+ baseImage: z.ZodString;
1530
+ }, "strip", z.ZodTypeAny, {
1531
+ baseImage: string;
1532
+ execute?: {
1533
+ cmd: string;
1534
+ }[] | undefined;
1535
+ schemaVersion?: string | undefined;
1536
+ specName?: string | undefined;
1537
+ packagesToInstall?: {
1538
+ packageManager: string;
1539
+ packages: (string | {
1540
+ name: string;
1541
+ version?: string | undefined;
1542
+ args?: string[] | undefined;
1543
+ })[];
1544
+ globalArgs?: string[] | undefined;
1545
+ }[] | undefined;
1546
+ platform?: string | undefined;
1547
+ env?: Record<string, string> | undefined;
1548
+ volumes?: ({
1549
+ type: "regular";
1550
+ host_path?: string | undefined;
1551
+ container_path?: string | undefined;
1552
+ read_only?: boolean | undefined;
1553
+ } | {
1554
+ type: "new-file";
1555
+ container_path: string;
1556
+ content: {
1557
+ data: string;
1558
+ encoding?: string | undefined;
1559
+ };
1560
+ owner?: string | undefined;
1561
+ permissions?: {
1562
+ read: number;
1563
+ write: number;
1564
+ execute: number;
1565
+ } | undefined;
1566
+ })[] | undefined;
1567
+ workDir?: string | undefined;
1568
+ user?: string | undefined;
1569
+ }, {
1570
+ baseImage: string;
1571
+ execute?: {
1572
+ cmd: string;
1573
+ }[] | undefined;
1574
+ schemaVersion?: string | undefined;
1575
+ specName?: string | undefined;
1576
+ packagesToInstall?: {
1577
+ packageManager: string;
1578
+ packages: (string | {
1579
+ name: string;
1580
+ version?: string | undefined;
1581
+ args?: string[] | undefined;
1582
+ })[];
1583
+ globalArgs?: string[] | undefined;
1584
+ }[] | undefined;
1585
+ platform?: string | undefined;
1586
+ env?: Record<string, string> | undefined;
1587
+ volumes?: ({
1588
+ type: "regular";
1589
+ host_path?: string | undefined;
1590
+ container_path?: string | undefined;
1591
+ read_only?: boolean | undefined;
1592
+ } | {
1593
+ type: "new-file";
1594
+ container_path: string;
1595
+ content: {
1596
+ data: string;
1597
+ encoding?: string | undefined;
1598
+ };
1599
+ owner?: string | undefined;
1600
+ permissions?: {
1601
+ read: number;
1602
+ write: number;
1603
+ execute: number;
1604
+ } | undefined;
1605
+ })[] | undefined;
1606
+ workDir?: string | undefined;
1607
+ user?: string | undefined;
1608
+ }>, z.ZodObject<{
1609
+ schemaVersion: z.ZodOptional<z.ZodString>;
1610
+ specName: z.ZodOptional<z.ZodString>;
1611
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
1612
+ packageManager: z.ZodString;
1613
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
1614
+ name: z.ZodString;
1615
+ version: z.ZodOptional<z.ZodString>;
1616
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1617
+ }, "strip", z.ZodTypeAny, {
1618
+ name: string;
1619
+ version?: string | undefined;
1620
+ args?: string[] | undefined;
1621
+ }, {
1622
+ name: string;
1623
+ version?: string | undefined;
1624
+ args?: string[] | undefined;
1625
+ }>]>, "many">;
1626
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1627
+ }, "strip", z.ZodTypeAny, {
1628
+ packageManager: string;
1629
+ packages: (string | {
1630
+ name: string;
1631
+ version?: string | undefined;
1632
+ args?: string[] | undefined;
1633
+ })[];
1634
+ globalArgs?: string[] | undefined;
1635
+ }, {
1636
+ packageManager: string;
1637
+ packages: (string | {
1638
+ name: string;
1639
+ version?: string | undefined;
1640
+ args?: string[] | undefined;
1641
+ })[];
1642
+ globalArgs?: string[] | undefined;
1643
+ }>, "many">>;
1644
+ platform: z.ZodOptional<z.ZodString>;
1645
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1646
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1647
+ type: z.ZodLiteral<"regular">;
1648
+ host_path: z.ZodOptional<z.ZodString>;
1649
+ container_path: z.ZodOptional<z.ZodString>;
1650
+ read_only: z.ZodOptional<z.ZodBoolean>;
1651
+ }, "strip", z.ZodTypeAny, {
1652
+ type: "regular";
1653
+ host_path?: string | undefined;
1654
+ container_path?: string | undefined;
1655
+ read_only?: boolean | undefined;
1656
+ }, {
1657
+ type: "regular";
1658
+ host_path?: string | undefined;
1659
+ container_path?: string | undefined;
1660
+ read_only?: boolean | undefined;
1661
+ }>, z.ZodObject<{
1662
+ type: z.ZodLiteral<"new-file">;
1663
+ container_path: z.ZodString;
1664
+ content: z.ZodObject<{
1665
+ data: z.ZodString;
1666
+ encoding: z.ZodOptional<z.ZodString>;
1667
+ }, "strip", z.ZodTypeAny, {
1668
+ data: string;
1669
+ encoding?: string | undefined;
1670
+ }, {
1671
+ data: string;
1672
+ encoding?: string | undefined;
1673
+ }>;
1674
+ owner: z.ZodOptional<z.ZodString>;
1675
+ permissions: z.ZodOptional<z.ZodObject<{
1676
+ read: z.ZodNumber;
1677
+ write: z.ZodNumber;
1678
+ execute: z.ZodNumber;
1679
+ }, "strip", z.ZodTypeAny, {
1680
+ read: number;
1681
+ write: number;
1682
+ execute: number;
1683
+ }, {
1684
+ read: number;
1685
+ write: number;
1686
+ execute: number;
1687
+ }>>;
1688
+ }, "strip", z.ZodTypeAny, {
1689
+ type: "new-file";
1690
+ container_path: string;
1691
+ content: {
1692
+ data: string;
1693
+ encoding?: string | undefined;
1694
+ };
1695
+ owner?: string | undefined;
1696
+ permissions?: {
1697
+ read: number;
1698
+ write: number;
1699
+ execute: number;
1700
+ } | undefined;
1701
+ }, {
1702
+ type: "new-file";
1703
+ container_path: string;
1704
+ content: {
1705
+ data: string;
1706
+ encoding?: string | undefined;
1707
+ };
1708
+ owner?: string | undefined;
1709
+ permissions?: {
1710
+ read: number;
1711
+ write: number;
1712
+ execute: number;
1713
+ } | undefined;
1714
+ }>]>, "many">>;
1715
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
1716
+ cmd: z.ZodString;
1717
+ }, "strip", z.ZodTypeAny, {
1718
+ cmd: string;
1719
+ }, {
1720
+ cmd: string;
1721
+ }>, "many">>;
1722
+ workDir: z.ZodOptional<z.ZodString>;
1723
+ user: z.ZodOptional<z.ZodString>;
1724
+ } & {
1725
+ baseSpec: z.ZodString;
1726
+ baseImage: z.ZodOptional<z.ZodString>;
1727
+ }, "strip", z.ZodTypeAny, {
1728
+ baseSpec: string;
1729
+ execute?: {
1730
+ cmd: string;
1731
+ }[] | undefined;
1732
+ schemaVersion?: string | undefined;
1733
+ specName?: string | undefined;
1734
+ packagesToInstall?: {
1735
+ packageManager: string;
1736
+ packages: (string | {
1737
+ name: string;
1738
+ version?: string | undefined;
1739
+ args?: string[] | undefined;
1740
+ })[];
1741
+ globalArgs?: string[] | undefined;
1742
+ }[] | undefined;
1743
+ platform?: string | undefined;
1744
+ env?: Record<string, string> | undefined;
1745
+ volumes?: ({
1746
+ type: "regular";
1747
+ host_path?: string | undefined;
1748
+ container_path?: string | undefined;
1749
+ read_only?: boolean | undefined;
1750
+ } | {
1751
+ type: "new-file";
1752
+ container_path: string;
1753
+ content: {
1754
+ data: string;
1755
+ encoding?: string | undefined;
1756
+ };
1757
+ owner?: string | undefined;
1758
+ permissions?: {
1759
+ read: number;
1760
+ write: number;
1761
+ execute: number;
1762
+ } | undefined;
1763
+ })[] | undefined;
1764
+ workDir?: string | undefined;
1765
+ user?: string | undefined;
1766
+ baseImage?: string | undefined;
1767
+ }, {
1768
+ baseSpec: string;
1769
+ execute?: {
1770
+ cmd: string;
1771
+ }[] | undefined;
1772
+ schemaVersion?: string | undefined;
1773
+ specName?: string | undefined;
1774
+ packagesToInstall?: {
1775
+ packageManager: string;
1776
+ packages: (string | {
1777
+ name: string;
1778
+ version?: string | undefined;
1779
+ args?: string[] | undefined;
1780
+ })[];
1781
+ globalArgs?: string[] | undefined;
1782
+ }[] | undefined;
1783
+ platform?: string | undefined;
1784
+ env?: Record<string, string> | undefined;
1785
+ volumes?: ({
1786
+ type: "regular";
1787
+ host_path?: string | undefined;
1788
+ container_path?: string | undefined;
1789
+ read_only?: boolean | undefined;
1790
+ } | {
1791
+ type: "new-file";
1792
+ container_path: string;
1793
+ content: {
1794
+ data: string;
1795
+ encoding?: string | undefined;
1796
+ };
1797
+ owner?: string | undefined;
1798
+ permissions?: {
1799
+ read: number;
1800
+ write: number;
1801
+ execute: number;
1802
+ } | undefined;
1803
+ })[] | undefined;
1804
+ workDir?: string | undefined;
1805
+ user?: string | undefined;
1806
+ baseImage?: string | undefined;
1807
+ }>]>;
1808
+ export type FigSpecBuild = z.infer<typeof figSpecBuildSchema>;
1809
+ export declare const figSpecRunSchema: z.ZodObject<{
1810
+ schemaVersion: z.ZodOptional<z.ZodString>;
1811
+ specName: z.ZodOptional<z.ZodString>;
1812
+ execute: z.ZodObject<{
1813
+ startup: z.ZodOptional<z.ZodArray<z.ZodObject<{
1814
+ cmd: z.ZodString;
1815
+ async: z.ZodOptional<z.ZodBoolean>;
1816
+ }, "strip", z.ZodTypeAny, {
1817
+ cmd: string;
1818
+ async?: boolean | undefined;
1819
+ }, {
1820
+ cmd: string;
1821
+ async?: boolean | undefined;
1822
+ }>, "many">>;
1823
+ main: z.ZodObject<{
1824
+ cmd: z.ZodString;
1825
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
1826
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1827
+ exitCode: z.ZodNumber;
1828
+ }, "strip", z.ZodTypeAny, {
1829
+ exitCode: number;
1830
+ cmd?: string | null | undefined;
1831
+ }, {
1832
+ exitCode: number;
1833
+ cmd?: string | null | undefined;
1834
+ }>, "many">]>>;
1835
+ parser: z.ZodOptional<z.ZodString>;
1836
+ }, "strip", z.ZodTypeAny, {
1837
+ cmd: string;
1838
+ onExit?: string | {
1839
+ exitCode: number;
1840
+ cmd?: string | null | undefined;
1841
+ }[] | null | undefined;
1842
+ parser?: string | undefined;
1843
+ }, {
1844
+ cmd: string;
1845
+ onExit?: string | {
1846
+ exitCode: number;
1847
+ cmd?: string | null | undefined;
1848
+ }[] | null | undefined;
1849
+ parser?: string | undefined;
1850
+ }>;
1851
+ shutdown: z.ZodOptional<z.ZodArray<z.ZodObject<{
1852
+ cmd: z.ZodString;
1853
+ }, "strip", z.ZodTypeAny, {
1854
+ cmd: string;
1855
+ }, {
1856
+ cmd: string;
1857
+ }>, "many">>;
1858
+ scheduled: z.ZodOptional<z.ZodArray<z.ZodObject<{
1859
+ cmd: z.ZodString;
1860
+ runAt: z.ZodUnion<[z.ZodString, z.ZodObject<{
1861
+ interval: z.ZodOptional<z.ZodNumber>;
1862
+ time: z.ZodOptional<z.ZodString>;
1863
+ cron: z.ZodOptional<z.ZodString>;
1864
+ }, "strip", z.ZodTypeAny, {
1865
+ interval?: number | undefined;
1866
+ time?: string | undefined;
1867
+ cron?: string | undefined;
1868
+ }, {
1869
+ interval?: number | undefined;
1870
+ time?: string | undefined;
1871
+ cron?: string | undefined;
1872
+ }>]>;
1873
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
1874
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1875
+ exitCode: z.ZodNumber;
1876
+ }, "strip", z.ZodTypeAny, {
1877
+ exitCode: number;
1878
+ cmd?: string | null | undefined;
1879
+ }, {
1880
+ exitCode: number;
1881
+ cmd?: string | null | undefined;
1882
+ }>, "many">]>>;
1883
+ parser: z.ZodOptional<z.ZodString>;
1884
+ }, "strip", z.ZodTypeAny, {
1885
+ cmd: string;
1886
+ runAt: string | {
1887
+ interval?: number | undefined;
1888
+ time?: string | undefined;
1889
+ cron?: string | undefined;
1890
+ };
1891
+ onExit?: string | {
1892
+ exitCode: number;
1893
+ cmd?: string | null | undefined;
1894
+ }[] | null | undefined;
1895
+ parser?: string | undefined;
1896
+ }, {
1897
+ cmd: string;
1898
+ runAt: string | {
1899
+ interval?: number | undefined;
1900
+ time?: string | undefined;
1901
+ cron?: string | undefined;
1902
+ };
1903
+ onExit?: string | {
1904
+ exitCode: number;
1905
+ cmd?: string | null | undefined;
1906
+ }[] | null | undefined;
1907
+ parser?: string | undefined;
1908
+ }>, "many">>;
1909
+ }, "strip", z.ZodTypeAny, {
1910
+ main: {
1911
+ cmd: string;
1912
+ onExit?: string | {
1913
+ exitCode: number;
1914
+ cmd?: string | null | undefined;
1915
+ }[] | null | undefined;
1916
+ parser?: string | undefined;
1917
+ };
1918
+ startup?: {
1919
+ cmd: string;
1920
+ async?: boolean | undefined;
1921
+ }[] | undefined;
1922
+ shutdown?: {
1923
+ cmd: string;
1924
+ }[] | undefined;
1925
+ scheduled?: {
1926
+ cmd: string;
1927
+ runAt: string | {
1928
+ interval?: number | undefined;
1929
+ time?: string | undefined;
1930
+ cron?: string | undefined;
1931
+ };
1932
+ onExit?: string | {
1933
+ exitCode: number;
1934
+ cmd?: string | null | undefined;
1935
+ }[] | null | undefined;
1936
+ parser?: string | undefined;
1937
+ }[] | undefined;
1938
+ }, {
1939
+ main: {
1940
+ cmd: string;
1941
+ onExit?: string | {
1942
+ exitCode: number;
1943
+ cmd?: string | null | undefined;
1944
+ }[] | null | undefined;
1945
+ parser?: string | undefined;
1946
+ };
1947
+ startup?: {
1948
+ cmd: string;
1949
+ async?: boolean | undefined;
1950
+ }[] | undefined;
1951
+ shutdown?: {
1952
+ cmd: string;
1953
+ }[] | undefined;
1954
+ scheduled?: {
1955
+ cmd: string;
1956
+ runAt: string | {
1957
+ interval?: number | undefined;
1958
+ time?: string | undefined;
1959
+ cron?: string | undefined;
1960
+ };
1961
+ onExit?: string | {
1962
+ exitCode: number;
1963
+ cmd?: string | null | undefined;
1964
+ }[] | null | undefined;
1965
+ parser?: string | undefined;
1966
+ }[] | undefined;
1967
+ }>;
1968
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1969
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1970
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1971
+ type: z.ZodLiteral<"regular">;
1972
+ host_path: z.ZodOptional<z.ZodString>;
1973
+ container_path: z.ZodOptional<z.ZodString>;
1974
+ read_only: z.ZodOptional<z.ZodBoolean>;
1975
+ }, "strip", z.ZodTypeAny, {
1976
+ type: "regular";
1977
+ host_path?: string | undefined;
1978
+ container_path?: string | undefined;
1979
+ read_only?: boolean | undefined;
1980
+ }, {
1981
+ type: "regular";
1982
+ host_path?: string | undefined;
1983
+ container_path?: string | undefined;
1984
+ read_only?: boolean | undefined;
1985
+ }>, z.ZodObject<{
1986
+ type: z.ZodLiteral<"docker-socket">;
1987
+ container_path: z.ZodOptional<z.ZodString>;
1988
+ }, "strip", z.ZodTypeAny, {
1989
+ type: "docker-socket";
1990
+ container_path?: string | undefined;
1991
+ }, {
1992
+ type: "docker-socket";
1993
+ container_path?: string | undefined;
1994
+ }>, z.ZodObject<{
1995
+ type: z.ZodLiteral<"new-file">;
1996
+ container_path: z.ZodString;
1997
+ content: z.ZodObject<{
1998
+ data: z.ZodString;
1999
+ encoding: z.ZodOptional<z.ZodString>;
2000
+ }, "strip", z.ZodTypeAny, {
2001
+ data: string;
2002
+ encoding?: string | undefined;
2003
+ }, {
2004
+ data: string;
2005
+ encoding?: string | undefined;
2006
+ }>;
2007
+ owner: z.ZodOptional<z.ZodString>;
2008
+ permissions: z.ZodOptional<z.ZodObject<{
2009
+ read: z.ZodNumber;
2010
+ write: z.ZodNumber;
2011
+ execute: z.ZodNumber;
2012
+ }, "strip", z.ZodTypeAny, {
2013
+ read: number;
2014
+ write: number;
2015
+ execute: number;
2016
+ }, {
2017
+ read: number;
2018
+ write: number;
2019
+ execute: number;
2020
+ }>>;
2021
+ }, "strip", z.ZodTypeAny, {
2022
+ type: "new-file";
2023
+ container_path: string;
2024
+ content: {
2025
+ data: string;
2026
+ encoding?: string | undefined;
2027
+ };
2028
+ owner?: string | undefined;
2029
+ permissions?: {
2030
+ read: number;
2031
+ write: number;
2032
+ execute: number;
2033
+ } | undefined;
2034
+ }, {
2035
+ type: "new-file";
2036
+ container_path: string;
2037
+ content: {
2038
+ data: string;
2039
+ encoding?: string | undefined;
2040
+ };
2041
+ owner?: string | undefined;
2042
+ permissions?: {
2043
+ read: number;
2044
+ write: number;
2045
+ execute: number;
2046
+ } | undefined;
2047
+ }>, z.ZodObject<{
2048
+ type: z.ZodLiteral<"named">;
2049
+ name: z.ZodString;
2050
+ container_path: z.ZodString;
2051
+ read_only: z.ZodOptional<z.ZodBoolean>;
2052
+ }, "strip", z.ZodTypeAny, {
2053
+ type: "named";
2054
+ name: string;
2055
+ container_path: string;
2056
+ read_only?: boolean | undefined;
2057
+ }, {
2058
+ type: "named";
2059
+ name: string;
2060
+ container_path: string;
2061
+ read_only?: boolean | undefined;
2062
+ }>, z.ZodObject<{
2063
+ type: z.ZodLiteral<"anonymous">;
2064
+ container_path: z.ZodString;
2065
+ }, "strip", z.ZodTypeAny, {
2066
+ type: "anonymous";
2067
+ container_path: string;
2068
+ }, {
2069
+ type: "anonymous";
2070
+ container_path: string;
2071
+ }>, z.ZodObject<{
2072
+ type: z.ZodLiteral<"tmpfs">;
2073
+ container_path: z.ZodString;
2074
+ size_mb: z.ZodOptional<z.ZodNumber>;
2075
+ }, "strip", z.ZodTypeAny, {
2076
+ type: "tmpfs";
2077
+ container_path: string;
2078
+ size_mb?: number | undefined;
2079
+ }, {
2080
+ type: "tmpfs";
2081
+ container_path: string;
2082
+ size_mb?: number | undefined;
2083
+ }>, z.ZodObject<{
2084
+ type: z.ZodLiteral<"copy-in">;
2085
+ host_path: z.ZodString;
2086
+ container_path: z.ZodString;
2087
+ }, "strip", z.ZodTypeAny, {
2088
+ type: "copy-in";
2089
+ host_path: string;
2090
+ container_path: string;
2091
+ }, {
2092
+ type: "copy-in";
2093
+ host_path: string;
2094
+ container_path: string;
2095
+ }>, z.ZodObject<{
2096
+ type: z.ZodLiteral<"copy-out">;
2097
+ container_path: z.ZodString;
2098
+ host_path: z.ZodString;
2099
+ changed_only: z.ZodOptional<z.ZodBoolean>;
2100
+ }, "strip", z.ZodTypeAny, {
2101
+ type: "copy-out";
2102
+ host_path: string;
2103
+ container_path: string;
2104
+ changed_only?: boolean | undefined;
2105
+ }, {
2106
+ type: "copy-out";
2107
+ host_path: string;
2108
+ container_path: string;
2109
+ changed_only?: boolean | undefined;
2110
+ }>]>, "many">>;
2111
+ workDir: z.ZodOptional<z.ZodString>;
2112
+ user: z.ZodOptional<z.ZodString>;
2113
+ ports: z.ZodOptional<z.ZodArray<z.ZodObject<{
2114
+ container: z.ZodNumber;
2115
+ host: z.ZodOptional<z.ZodNumber>;
2116
+ }, "strip", z.ZodTypeAny, {
2117
+ container: number;
2118
+ host?: number | undefined;
2119
+ }, {
2120
+ container: number;
2121
+ host?: number | undefined;
2122
+ }>, "many">>;
2123
+ }, "strip", z.ZodTypeAny, {
2124
+ execute: {
2125
+ main: {
2126
+ cmd: string;
2127
+ onExit?: string | {
2128
+ exitCode: number;
2129
+ cmd?: string | null | undefined;
2130
+ }[] | null | undefined;
2131
+ parser?: string | undefined;
2132
+ };
2133
+ startup?: {
2134
+ cmd: string;
2135
+ async?: boolean | undefined;
2136
+ }[] | undefined;
2137
+ shutdown?: {
2138
+ cmd: string;
2139
+ }[] | undefined;
2140
+ scheduled?: {
2141
+ cmd: string;
2142
+ runAt: string | {
2143
+ interval?: number | undefined;
2144
+ time?: string | undefined;
2145
+ cron?: string | undefined;
2146
+ };
2147
+ onExit?: string | {
2148
+ exitCode: number;
2149
+ cmd?: string | null | undefined;
2150
+ }[] | null | undefined;
2151
+ parser?: string | undefined;
2152
+ }[] | undefined;
2153
+ };
2154
+ schemaVersion?: string | undefined;
2155
+ specName?: string | undefined;
2156
+ env?: Record<string, string> | undefined;
2157
+ volumes?: ({
2158
+ type: "regular";
2159
+ host_path?: string | undefined;
2160
+ container_path?: string | undefined;
2161
+ read_only?: boolean | undefined;
2162
+ } | {
2163
+ type: "docker-socket";
2164
+ container_path?: string | undefined;
2165
+ } | {
2166
+ type: "new-file";
2167
+ container_path: string;
2168
+ content: {
2169
+ data: string;
2170
+ encoding?: string | undefined;
2171
+ };
2172
+ owner?: string | undefined;
2173
+ permissions?: {
2174
+ read: number;
2175
+ write: number;
2176
+ execute: number;
2177
+ } | undefined;
2178
+ } | {
2179
+ type: "named";
2180
+ name: string;
2181
+ container_path: string;
2182
+ read_only?: boolean | undefined;
2183
+ } | {
2184
+ type: "anonymous";
2185
+ container_path: string;
2186
+ } | {
2187
+ type: "tmpfs";
2188
+ container_path: string;
2189
+ size_mb?: number | undefined;
2190
+ } | {
2191
+ type: "copy-in";
2192
+ host_path: string;
2193
+ container_path: string;
2194
+ } | {
2195
+ type: "copy-out";
2196
+ host_path: string;
2197
+ container_path: string;
2198
+ changed_only?: boolean | undefined;
2199
+ })[] | undefined;
2200
+ workDir?: string | undefined;
2201
+ user?: string | undefined;
2202
+ secrets?: Record<string, string> | undefined;
2203
+ ports?: {
2204
+ container: number;
2205
+ host?: number | undefined;
2206
+ }[] | undefined;
2207
+ }, {
2208
+ execute: {
2209
+ main: {
2210
+ cmd: string;
2211
+ onExit?: string | {
2212
+ exitCode: number;
2213
+ cmd?: string | null | undefined;
2214
+ }[] | null | undefined;
2215
+ parser?: string | undefined;
2216
+ };
2217
+ startup?: {
2218
+ cmd: string;
2219
+ async?: boolean | undefined;
2220
+ }[] | undefined;
2221
+ shutdown?: {
2222
+ cmd: string;
2223
+ }[] | undefined;
2224
+ scheduled?: {
2225
+ cmd: string;
2226
+ runAt: string | {
2227
+ interval?: number | undefined;
2228
+ time?: string | undefined;
2229
+ cron?: string | undefined;
2230
+ };
2231
+ onExit?: string | {
2232
+ exitCode: number;
2233
+ cmd?: string | null | undefined;
2234
+ }[] | null | undefined;
2235
+ parser?: string | undefined;
2236
+ }[] | undefined;
2237
+ };
2238
+ schemaVersion?: string | undefined;
2239
+ specName?: string | undefined;
2240
+ env?: Record<string, string> | undefined;
2241
+ volumes?: ({
2242
+ type: "regular";
2243
+ host_path?: string | undefined;
2244
+ container_path?: string | undefined;
2245
+ read_only?: boolean | undefined;
2246
+ } | {
2247
+ type: "docker-socket";
2248
+ container_path?: string | undefined;
2249
+ } | {
2250
+ type: "new-file";
2251
+ container_path: string;
2252
+ content: {
2253
+ data: string;
2254
+ encoding?: string | undefined;
2255
+ };
2256
+ owner?: string | undefined;
2257
+ permissions?: {
2258
+ read: number;
2259
+ write: number;
2260
+ execute: number;
2261
+ } | undefined;
2262
+ } | {
2263
+ type: "named";
2264
+ name: string;
2265
+ container_path: string;
2266
+ read_only?: boolean | undefined;
2267
+ } | {
2268
+ type: "anonymous";
2269
+ container_path: string;
2270
+ } | {
2271
+ type: "tmpfs";
2272
+ container_path: string;
2273
+ size_mb?: number | undefined;
2274
+ } | {
2275
+ type: "copy-in";
2276
+ host_path: string;
2277
+ container_path: string;
2278
+ } | {
2279
+ type: "copy-out";
2280
+ host_path: string;
2281
+ container_path: string;
2282
+ changed_only?: boolean | undefined;
2283
+ })[] | undefined;
2284
+ workDir?: string | undefined;
2285
+ user?: string | undefined;
2286
+ secrets?: Record<string, string> | undefined;
2287
+ ports?: {
2288
+ container: number;
2289
+ host?: number | undefined;
2290
+ }[] | undefined;
2291
+ }>;
2292
+ export type FigSpecRun = z.infer<typeof figSpecRunSchema>;
2293
+ export declare const figSpecBuildInputSchema: z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
2294
+ schemaVersion: z.ZodOptional<z.ZodString>;
2295
+ specName: z.ZodOptional<z.ZodString>;
2296
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
2297
+ packageManager: z.ZodString;
2298
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
2299
+ name: z.ZodString;
2300
+ version: z.ZodOptional<z.ZodString>;
2301
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2302
+ }, "strip", z.ZodTypeAny, {
2303
+ name: string;
2304
+ version?: string | undefined;
2305
+ args?: string[] | undefined;
2306
+ }, {
2307
+ name: string;
2308
+ version?: string | undefined;
2309
+ args?: string[] | undefined;
2310
+ }>]>, "many">;
2311
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2312
+ }, "strip", z.ZodTypeAny, {
2313
+ packageManager: string;
2314
+ packages: (string | {
2315
+ name: string;
2316
+ version?: string | undefined;
2317
+ args?: string[] | undefined;
2318
+ })[];
2319
+ globalArgs?: string[] | undefined;
2320
+ }, {
2321
+ packageManager: string;
2322
+ packages: (string | {
2323
+ name: string;
2324
+ version?: string | undefined;
2325
+ args?: string[] | undefined;
2326
+ })[];
2327
+ globalArgs?: string[] | undefined;
2328
+ }>, "many">>;
2329
+ platform: z.ZodOptional<z.ZodString>;
2330
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2331
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
2332
+ type: z.ZodLiteral<"regular">;
2333
+ host_path: z.ZodOptional<z.ZodString>;
2334
+ container_path: z.ZodOptional<z.ZodString>;
2335
+ read_only: z.ZodOptional<z.ZodBoolean>;
2336
+ }, "strip", z.ZodTypeAny, {
2337
+ type: "regular";
2338
+ host_path?: string | undefined;
2339
+ container_path?: string | undefined;
2340
+ read_only?: boolean | undefined;
2341
+ }, {
2342
+ type: "regular";
2343
+ host_path?: string | undefined;
2344
+ container_path?: string | undefined;
2345
+ read_only?: boolean | undefined;
2346
+ }>, z.ZodObject<{
2347
+ type: z.ZodLiteral<"new-file">;
2348
+ container_path: z.ZodString;
2349
+ content: z.ZodObject<{
2350
+ data: z.ZodString;
2351
+ encoding: z.ZodOptional<z.ZodString>;
2352
+ }, "strip", z.ZodTypeAny, {
2353
+ data: string;
2354
+ encoding?: string | undefined;
2355
+ }, {
2356
+ data: string;
2357
+ encoding?: string | undefined;
2358
+ }>;
2359
+ owner: z.ZodOptional<z.ZodString>;
2360
+ permissions: z.ZodOptional<z.ZodObject<{
2361
+ read: z.ZodNumber;
2362
+ write: z.ZodNumber;
2363
+ execute: z.ZodNumber;
2364
+ }, "strip", z.ZodTypeAny, {
2365
+ read: number;
2366
+ write: number;
2367
+ execute: number;
2368
+ }, {
2369
+ read: number;
2370
+ write: number;
2371
+ execute: number;
2372
+ }>>;
2373
+ }, "strip", z.ZodTypeAny, {
2374
+ type: "new-file";
2375
+ container_path: string;
2376
+ content: {
2377
+ data: string;
2378
+ encoding?: string | undefined;
2379
+ };
2380
+ owner?: string | undefined;
2381
+ permissions?: {
2382
+ read: number;
2383
+ write: number;
2384
+ execute: number;
2385
+ } | undefined;
2386
+ }, {
2387
+ type: "new-file";
2388
+ container_path: string;
2389
+ content: {
2390
+ data: string;
2391
+ encoding?: string | undefined;
2392
+ };
2393
+ owner?: string | undefined;
2394
+ permissions?: {
2395
+ read: number;
2396
+ write: number;
2397
+ execute: number;
2398
+ } | undefined;
2399
+ }>]>, "many">>;
2400
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
2401
+ cmd: z.ZodString;
2402
+ }, "strip", z.ZodTypeAny, {
2403
+ cmd: string;
2404
+ }, {
2405
+ cmd: string;
2406
+ }>, "many">>;
2407
+ workDir: z.ZodOptional<z.ZodString>;
2408
+ user: z.ZodOptional<z.ZodString>;
2409
+ } & {
2410
+ baseImage: z.ZodString;
2411
+ }, "strip", z.ZodTypeAny, {
2412
+ baseImage: string;
2413
+ execute?: {
2414
+ cmd: string;
2415
+ }[] | undefined;
2416
+ schemaVersion?: string | undefined;
2417
+ specName?: string | undefined;
2418
+ packagesToInstall?: {
2419
+ packageManager: string;
2420
+ packages: (string | {
2421
+ name: string;
2422
+ version?: string | undefined;
2423
+ args?: string[] | undefined;
2424
+ })[];
2425
+ globalArgs?: string[] | undefined;
2426
+ }[] | undefined;
2427
+ platform?: string | undefined;
2428
+ env?: Record<string, string> | undefined;
2429
+ volumes?: ({
2430
+ type: "regular";
2431
+ host_path?: string | undefined;
2432
+ container_path?: string | undefined;
2433
+ read_only?: boolean | undefined;
2434
+ } | {
2435
+ type: "new-file";
2436
+ container_path: string;
2437
+ content: {
2438
+ data: string;
2439
+ encoding?: string | undefined;
2440
+ };
2441
+ owner?: string | undefined;
2442
+ permissions?: {
2443
+ read: number;
2444
+ write: number;
2445
+ execute: number;
2446
+ } | undefined;
2447
+ })[] | undefined;
2448
+ workDir?: string | undefined;
2449
+ user?: string | undefined;
2450
+ }, {
2451
+ baseImage: string;
2452
+ execute?: {
2453
+ cmd: string;
2454
+ }[] | undefined;
2455
+ schemaVersion?: string | undefined;
2456
+ specName?: string | undefined;
2457
+ packagesToInstall?: {
2458
+ packageManager: string;
2459
+ packages: (string | {
2460
+ name: string;
2461
+ version?: string | undefined;
2462
+ args?: string[] | undefined;
2463
+ })[];
2464
+ globalArgs?: string[] | undefined;
2465
+ }[] | undefined;
2466
+ platform?: string | undefined;
2467
+ env?: Record<string, string> | undefined;
2468
+ volumes?: ({
2469
+ type: "regular";
2470
+ host_path?: string | undefined;
2471
+ container_path?: string | undefined;
2472
+ read_only?: boolean | undefined;
2473
+ } | {
2474
+ type: "new-file";
2475
+ container_path: string;
2476
+ content: {
2477
+ data: string;
2478
+ encoding?: string | undefined;
2479
+ };
2480
+ owner?: string | undefined;
2481
+ permissions?: {
2482
+ read: number;
2483
+ write: number;
2484
+ execute: number;
2485
+ } | undefined;
2486
+ })[] | undefined;
2487
+ workDir?: string | undefined;
2488
+ user?: string | undefined;
2489
+ }>, z.ZodObject<{
2490
+ schemaVersion: z.ZodOptional<z.ZodString>;
2491
+ specName: z.ZodOptional<z.ZodString>;
2492
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
2493
+ packageManager: z.ZodString;
2494
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
2495
+ name: z.ZodString;
2496
+ version: z.ZodOptional<z.ZodString>;
2497
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2498
+ }, "strip", z.ZodTypeAny, {
2499
+ name: string;
2500
+ version?: string | undefined;
2501
+ args?: string[] | undefined;
2502
+ }, {
2503
+ name: string;
2504
+ version?: string | undefined;
2505
+ args?: string[] | undefined;
2506
+ }>]>, "many">;
2507
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2508
+ }, "strip", z.ZodTypeAny, {
2509
+ packageManager: string;
2510
+ packages: (string | {
2511
+ name: string;
2512
+ version?: string | undefined;
2513
+ args?: string[] | undefined;
2514
+ })[];
2515
+ globalArgs?: string[] | undefined;
2516
+ }, {
2517
+ packageManager: string;
2518
+ packages: (string | {
2519
+ name: string;
2520
+ version?: string | undefined;
2521
+ args?: string[] | undefined;
2522
+ })[];
2523
+ globalArgs?: string[] | undefined;
2524
+ }>, "many">>;
2525
+ platform: z.ZodOptional<z.ZodString>;
2526
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2527
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
2528
+ type: z.ZodLiteral<"regular">;
2529
+ host_path: z.ZodOptional<z.ZodString>;
2530
+ container_path: z.ZodOptional<z.ZodString>;
2531
+ read_only: z.ZodOptional<z.ZodBoolean>;
2532
+ }, "strip", z.ZodTypeAny, {
2533
+ type: "regular";
2534
+ host_path?: string | undefined;
2535
+ container_path?: string | undefined;
2536
+ read_only?: boolean | undefined;
2537
+ }, {
2538
+ type: "regular";
2539
+ host_path?: string | undefined;
2540
+ container_path?: string | undefined;
2541
+ read_only?: boolean | undefined;
2542
+ }>, z.ZodObject<{
2543
+ type: z.ZodLiteral<"new-file">;
2544
+ container_path: z.ZodString;
2545
+ content: z.ZodObject<{
2546
+ data: z.ZodString;
2547
+ encoding: z.ZodOptional<z.ZodString>;
2548
+ }, "strip", z.ZodTypeAny, {
2549
+ data: string;
2550
+ encoding?: string | undefined;
2551
+ }, {
2552
+ data: string;
2553
+ encoding?: string | undefined;
2554
+ }>;
2555
+ owner: z.ZodOptional<z.ZodString>;
2556
+ permissions: z.ZodOptional<z.ZodObject<{
2557
+ read: z.ZodNumber;
2558
+ write: z.ZodNumber;
2559
+ execute: z.ZodNumber;
2560
+ }, "strip", z.ZodTypeAny, {
2561
+ read: number;
2562
+ write: number;
2563
+ execute: number;
2564
+ }, {
2565
+ read: number;
2566
+ write: number;
2567
+ execute: number;
2568
+ }>>;
2569
+ }, "strip", z.ZodTypeAny, {
2570
+ type: "new-file";
2571
+ container_path: string;
2572
+ content: {
2573
+ data: string;
2574
+ encoding?: string | undefined;
2575
+ };
2576
+ owner?: string | undefined;
2577
+ permissions?: {
2578
+ read: number;
2579
+ write: number;
2580
+ execute: number;
2581
+ } | undefined;
2582
+ }, {
2583
+ type: "new-file";
2584
+ container_path: string;
2585
+ content: {
2586
+ data: string;
2587
+ encoding?: string | undefined;
2588
+ };
2589
+ owner?: string | undefined;
2590
+ permissions?: {
2591
+ read: number;
2592
+ write: number;
2593
+ execute: number;
2594
+ } | undefined;
2595
+ }>]>, "many">>;
2596
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
2597
+ cmd: z.ZodString;
2598
+ }, "strip", z.ZodTypeAny, {
2599
+ cmd: string;
2600
+ }, {
2601
+ cmd: string;
2602
+ }>, "many">>;
2603
+ workDir: z.ZodOptional<z.ZodString>;
2604
+ user: z.ZodOptional<z.ZodString>;
2605
+ } & {
2606
+ baseSpec: z.ZodString;
2607
+ baseImage: z.ZodOptional<z.ZodString>;
2608
+ }, "strip", z.ZodTypeAny, {
2609
+ baseSpec: string;
2610
+ execute?: {
2611
+ cmd: string;
2612
+ }[] | undefined;
2613
+ schemaVersion?: string | undefined;
2614
+ specName?: string | undefined;
2615
+ packagesToInstall?: {
2616
+ packageManager: string;
2617
+ packages: (string | {
2618
+ name: string;
2619
+ version?: string | undefined;
2620
+ args?: string[] | undefined;
2621
+ })[];
2622
+ globalArgs?: string[] | undefined;
2623
+ }[] | undefined;
2624
+ platform?: string | undefined;
2625
+ env?: Record<string, string> | undefined;
2626
+ volumes?: ({
2627
+ type: "regular";
2628
+ host_path?: string | undefined;
2629
+ container_path?: string | undefined;
2630
+ read_only?: boolean | undefined;
2631
+ } | {
2632
+ type: "new-file";
2633
+ container_path: string;
2634
+ content: {
2635
+ data: string;
2636
+ encoding?: string | undefined;
2637
+ };
2638
+ owner?: string | undefined;
2639
+ permissions?: {
2640
+ read: number;
2641
+ write: number;
2642
+ execute: number;
2643
+ } | undefined;
2644
+ })[] | undefined;
2645
+ workDir?: string | undefined;
2646
+ user?: string | undefined;
2647
+ baseImage?: string | undefined;
2648
+ }, {
2649
+ baseSpec: string;
2650
+ execute?: {
2651
+ cmd: string;
2652
+ }[] | undefined;
2653
+ schemaVersion?: string | undefined;
2654
+ specName?: string | undefined;
2655
+ packagesToInstall?: {
2656
+ packageManager: string;
2657
+ packages: (string | {
2658
+ name: string;
2659
+ version?: string | undefined;
2660
+ args?: string[] | undefined;
2661
+ })[];
2662
+ globalArgs?: string[] | undefined;
2663
+ }[] | undefined;
2664
+ platform?: string | undefined;
2665
+ env?: Record<string, string> | undefined;
2666
+ volumes?: ({
2667
+ type: "regular";
2668
+ host_path?: string | undefined;
2669
+ container_path?: string | undefined;
2670
+ read_only?: boolean | undefined;
2671
+ } | {
2672
+ type: "new-file";
2673
+ container_path: string;
2674
+ content: {
2675
+ data: string;
2676
+ encoding?: string | undefined;
2677
+ };
2678
+ owner?: string | undefined;
2679
+ permissions?: {
2680
+ read: number;
2681
+ write: number;
2682
+ execute: number;
2683
+ } | undefined;
2684
+ })[] | undefined;
2685
+ workDir?: string | undefined;
2686
+ user?: string | undefined;
2687
+ baseImage?: string | undefined;
2688
+ }>]>, z.ZodString, z.ZodArray<z.ZodString, "many">]>;
2689
+ export type FigSpecBuildInput = z.infer<typeof figSpecBuildInputSchema>;
2690
+ export declare const figSpecRunInputSchema: z.ZodUnion<[z.ZodObject<{
2691
+ schemaVersion: z.ZodOptional<z.ZodString>;
2692
+ specName: z.ZodOptional<z.ZodString>;
2693
+ execute: z.ZodObject<{
2694
+ startup: z.ZodOptional<z.ZodArray<z.ZodObject<{
2695
+ cmd: z.ZodString;
2696
+ async: z.ZodOptional<z.ZodBoolean>;
2697
+ }, "strip", z.ZodTypeAny, {
2698
+ cmd: string;
2699
+ async?: boolean | undefined;
2700
+ }, {
2701
+ cmd: string;
2702
+ async?: boolean | undefined;
2703
+ }>, "many">>;
2704
+ main: z.ZodObject<{
2705
+ cmd: z.ZodString;
2706
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
2707
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
2708
+ exitCode: z.ZodNumber;
2709
+ }, "strip", z.ZodTypeAny, {
2710
+ exitCode: number;
2711
+ cmd?: string | null | undefined;
2712
+ }, {
2713
+ exitCode: number;
2714
+ cmd?: string | null | undefined;
2715
+ }>, "many">]>>;
2716
+ parser: z.ZodOptional<z.ZodString>;
2717
+ }, "strip", z.ZodTypeAny, {
2718
+ cmd: string;
2719
+ onExit?: string | {
2720
+ exitCode: number;
2721
+ cmd?: string | null | undefined;
2722
+ }[] | null | undefined;
2723
+ parser?: string | undefined;
2724
+ }, {
2725
+ cmd: string;
2726
+ onExit?: string | {
2727
+ exitCode: number;
2728
+ cmd?: string | null | undefined;
2729
+ }[] | null | undefined;
2730
+ parser?: string | undefined;
2731
+ }>;
2732
+ shutdown: z.ZodOptional<z.ZodArray<z.ZodObject<{
2733
+ cmd: z.ZodString;
2734
+ }, "strip", z.ZodTypeAny, {
2735
+ cmd: string;
2736
+ }, {
2737
+ cmd: string;
2738
+ }>, "many">>;
2739
+ scheduled: z.ZodOptional<z.ZodArray<z.ZodObject<{
2740
+ cmd: z.ZodString;
2741
+ runAt: z.ZodUnion<[z.ZodString, z.ZodObject<{
2742
+ interval: z.ZodOptional<z.ZodNumber>;
2743
+ time: z.ZodOptional<z.ZodString>;
2744
+ cron: z.ZodOptional<z.ZodString>;
2745
+ }, "strip", z.ZodTypeAny, {
2746
+ interval?: number | undefined;
2747
+ time?: string | undefined;
2748
+ cron?: string | undefined;
2749
+ }, {
2750
+ interval?: number | undefined;
2751
+ time?: string | undefined;
2752
+ cron?: string | undefined;
2753
+ }>]>;
2754
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
2755
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
2756
+ exitCode: z.ZodNumber;
2757
+ }, "strip", z.ZodTypeAny, {
2758
+ exitCode: number;
2759
+ cmd?: string | null | undefined;
2760
+ }, {
2761
+ exitCode: number;
2762
+ cmd?: string | null | undefined;
2763
+ }>, "many">]>>;
2764
+ parser: z.ZodOptional<z.ZodString>;
2765
+ }, "strip", z.ZodTypeAny, {
2766
+ cmd: string;
2767
+ runAt: string | {
2768
+ interval?: number | undefined;
2769
+ time?: string | undefined;
2770
+ cron?: string | undefined;
2771
+ };
2772
+ onExit?: string | {
2773
+ exitCode: number;
2774
+ cmd?: string | null | undefined;
2775
+ }[] | null | undefined;
2776
+ parser?: string | undefined;
2777
+ }, {
2778
+ cmd: string;
2779
+ runAt: string | {
2780
+ interval?: number | undefined;
2781
+ time?: string | undefined;
2782
+ cron?: string | undefined;
2783
+ };
2784
+ onExit?: string | {
2785
+ exitCode: number;
2786
+ cmd?: string | null | undefined;
2787
+ }[] | null | undefined;
2788
+ parser?: string | undefined;
2789
+ }>, "many">>;
2790
+ }, "strip", z.ZodTypeAny, {
2791
+ main: {
2792
+ cmd: string;
2793
+ onExit?: string | {
2794
+ exitCode: number;
2795
+ cmd?: string | null | undefined;
2796
+ }[] | null | undefined;
2797
+ parser?: string | undefined;
2798
+ };
2799
+ startup?: {
2800
+ cmd: string;
2801
+ async?: boolean | undefined;
2802
+ }[] | undefined;
2803
+ shutdown?: {
2804
+ cmd: string;
2805
+ }[] | undefined;
2806
+ scheduled?: {
2807
+ cmd: string;
2808
+ runAt: string | {
2809
+ interval?: number | undefined;
2810
+ time?: string | undefined;
2811
+ cron?: string | undefined;
2812
+ };
2813
+ onExit?: string | {
2814
+ exitCode: number;
2815
+ cmd?: string | null | undefined;
2816
+ }[] | null | undefined;
2817
+ parser?: string | undefined;
2818
+ }[] | undefined;
2819
+ }, {
2820
+ main: {
2821
+ cmd: string;
2822
+ onExit?: string | {
2823
+ exitCode: number;
2824
+ cmd?: string | null | undefined;
2825
+ }[] | null | undefined;
2826
+ parser?: string | undefined;
2827
+ };
2828
+ startup?: {
2829
+ cmd: string;
2830
+ async?: boolean | undefined;
2831
+ }[] | undefined;
2832
+ shutdown?: {
2833
+ cmd: string;
2834
+ }[] | undefined;
2835
+ scheduled?: {
2836
+ cmd: string;
2837
+ runAt: string | {
2838
+ interval?: number | undefined;
2839
+ time?: string | undefined;
2840
+ cron?: string | undefined;
2841
+ };
2842
+ onExit?: string | {
2843
+ exitCode: number;
2844
+ cmd?: string | null | undefined;
2845
+ }[] | null | undefined;
2846
+ parser?: string | undefined;
2847
+ }[] | undefined;
2848
+ }>;
2849
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2850
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2851
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
2852
+ type: z.ZodLiteral<"regular">;
2853
+ host_path: z.ZodOptional<z.ZodString>;
2854
+ container_path: z.ZodOptional<z.ZodString>;
2855
+ read_only: z.ZodOptional<z.ZodBoolean>;
2856
+ }, "strip", z.ZodTypeAny, {
2857
+ type: "regular";
2858
+ host_path?: string | undefined;
2859
+ container_path?: string | undefined;
2860
+ read_only?: boolean | undefined;
2861
+ }, {
2862
+ type: "regular";
2863
+ host_path?: string | undefined;
2864
+ container_path?: string | undefined;
2865
+ read_only?: boolean | undefined;
2866
+ }>, z.ZodObject<{
2867
+ type: z.ZodLiteral<"docker-socket">;
2868
+ container_path: z.ZodOptional<z.ZodString>;
2869
+ }, "strip", z.ZodTypeAny, {
2870
+ type: "docker-socket";
2871
+ container_path?: string | undefined;
2872
+ }, {
2873
+ type: "docker-socket";
2874
+ container_path?: string | undefined;
2875
+ }>, z.ZodObject<{
2876
+ type: z.ZodLiteral<"new-file">;
2877
+ container_path: z.ZodString;
2878
+ content: z.ZodObject<{
2879
+ data: z.ZodString;
2880
+ encoding: z.ZodOptional<z.ZodString>;
2881
+ }, "strip", z.ZodTypeAny, {
2882
+ data: string;
2883
+ encoding?: string | undefined;
2884
+ }, {
2885
+ data: string;
2886
+ encoding?: string | undefined;
2887
+ }>;
2888
+ owner: z.ZodOptional<z.ZodString>;
2889
+ permissions: z.ZodOptional<z.ZodObject<{
2890
+ read: z.ZodNumber;
2891
+ write: z.ZodNumber;
2892
+ execute: z.ZodNumber;
2893
+ }, "strip", z.ZodTypeAny, {
2894
+ read: number;
2895
+ write: number;
2896
+ execute: number;
2897
+ }, {
2898
+ read: number;
2899
+ write: number;
2900
+ execute: number;
2901
+ }>>;
2902
+ }, "strip", z.ZodTypeAny, {
2903
+ type: "new-file";
2904
+ container_path: string;
2905
+ content: {
2906
+ data: string;
2907
+ encoding?: string | undefined;
2908
+ };
2909
+ owner?: string | undefined;
2910
+ permissions?: {
2911
+ read: number;
2912
+ write: number;
2913
+ execute: number;
2914
+ } | undefined;
2915
+ }, {
2916
+ type: "new-file";
2917
+ container_path: string;
2918
+ content: {
2919
+ data: string;
2920
+ encoding?: string | undefined;
2921
+ };
2922
+ owner?: string | undefined;
2923
+ permissions?: {
2924
+ read: number;
2925
+ write: number;
2926
+ execute: number;
2927
+ } | undefined;
2928
+ }>, z.ZodObject<{
2929
+ type: z.ZodLiteral<"named">;
2930
+ name: z.ZodString;
2931
+ container_path: z.ZodString;
2932
+ read_only: z.ZodOptional<z.ZodBoolean>;
2933
+ }, "strip", z.ZodTypeAny, {
2934
+ type: "named";
2935
+ name: string;
2936
+ container_path: string;
2937
+ read_only?: boolean | undefined;
2938
+ }, {
2939
+ type: "named";
2940
+ name: string;
2941
+ container_path: string;
2942
+ read_only?: boolean | undefined;
2943
+ }>, z.ZodObject<{
2944
+ type: z.ZodLiteral<"anonymous">;
2945
+ container_path: z.ZodString;
2946
+ }, "strip", z.ZodTypeAny, {
2947
+ type: "anonymous";
2948
+ container_path: string;
2949
+ }, {
2950
+ type: "anonymous";
2951
+ container_path: string;
2952
+ }>, z.ZodObject<{
2953
+ type: z.ZodLiteral<"tmpfs">;
2954
+ container_path: z.ZodString;
2955
+ size_mb: z.ZodOptional<z.ZodNumber>;
2956
+ }, "strip", z.ZodTypeAny, {
2957
+ type: "tmpfs";
2958
+ container_path: string;
2959
+ size_mb?: number | undefined;
2960
+ }, {
2961
+ type: "tmpfs";
2962
+ container_path: string;
2963
+ size_mb?: number | undefined;
2964
+ }>, z.ZodObject<{
2965
+ type: z.ZodLiteral<"copy-in">;
2966
+ host_path: z.ZodString;
2967
+ container_path: z.ZodString;
2968
+ }, "strip", z.ZodTypeAny, {
2969
+ type: "copy-in";
2970
+ host_path: string;
2971
+ container_path: string;
2972
+ }, {
2973
+ type: "copy-in";
2974
+ host_path: string;
2975
+ container_path: string;
2976
+ }>, z.ZodObject<{
2977
+ type: z.ZodLiteral<"copy-out">;
2978
+ container_path: z.ZodString;
2979
+ host_path: z.ZodString;
2980
+ changed_only: z.ZodOptional<z.ZodBoolean>;
2981
+ }, "strip", z.ZodTypeAny, {
2982
+ type: "copy-out";
2983
+ host_path: string;
2984
+ container_path: string;
2985
+ changed_only?: boolean | undefined;
2986
+ }, {
2987
+ type: "copy-out";
2988
+ host_path: string;
2989
+ container_path: string;
2990
+ changed_only?: boolean | undefined;
2991
+ }>]>, "many">>;
2992
+ workDir: z.ZodOptional<z.ZodString>;
2993
+ user: z.ZodOptional<z.ZodString>;
2994
+ ports: z.ZodOptional<z.ZodArray<z.ZodObject<{
2995
+ container: z.ZodNumber;
2996
+ host: z.ZodOptional<z.ZodNumber>;
2997
+ }, "strip", z.ZodTypeAny, {
2998
+ container: number;
2999
+ host?: number | undefined;
3000
+ }, {
3001
+ container: number;
3002
+ host?: number | undefined;
3003
+ }>, "many">>;
3004
+ }, "strip", z.ZodTypeAny, {
3005
+ execute: {
3006
+ main: {
3007
+ cmd: string;
3008
+ onExit?: string | {
3009
+ exitCode: number;
3010
+ cmd?: string | null | undefined;
3011
+ }[] | null | undefined;
3012
+ parser?: string | undefined;
3013
+ };
3014
+ startup?: {
3015
+ cmd: string;
3016
+ async?: boolean | undefined;
3017
+ }[] | undefined;
3018
+ shutdown?: {
3019
+ cmd: string;
3020
+ }[] | undefined;
3021
+ scheduled?: {
3022
+ cmd: string;
3023
+ runAt: string | {
3024
+ interval?: number | undefined;
3025
+ time?: string | undefined;
3026
+ cron?: string | undefined;
3027
+ };
3028
+ onExit?: string | {
3029
+ exitCode: number;
3030
+ cmd?: string | null | undefined;
3031
+ }[] | null | undefined;
3032
+ parser?: string | undefined;
3033
+ }[] | undefined;
3034
+ };
3035
+ schemaVersion?: string | undefined;
3036
+ specName?: string | undefined;
3037
+ env?: Record<string, string> | undefined;
3038
+ volumes?: ({
3039
+ type: "regular";
3040
+ host_path?: string | undefined;
3041
+ container_path?: string | undefined;
3042
+ read_only?: boolean | undefined;
3043
+ } | {
3044
+ type: "docker-socket";
3045
+ container_path?: string | undefined;
3046
+ } | {
3047
+ type: "new-file";
3048
+ container_path: string;
3049
+ content: {
3050
+ data: string;
3051
+ encoding?: string | undefined;
3052
+ };
3053
+ owner?: string | undefined;
3054
+ permissions?: {
3055
+ read: number;
3056
+ write: number;
3057
+ execute: number;
3058
+ } | undefined;
3059
+ } | {
3060
+ type: "named";
3061
+ name: string;
3062
+ container_path: string;
3063
+ read_only?: boolean | undefined;
3064
+ } | {
3065
+ type: "anonymous";
3066
+ container_path: string;
3067
+ } | {
3068
+ type: "tmpfs";
3069
+ container_path: string;
3070
+ size_mb?: number | undefined;
3071
+ } | {
3072
+ type: "copy-in";
3073
+ host_path: string;
3074
+ container_path: string;
3075
+ } | {
3076
+ type: "copy-out";
3077
+ host_path: string;
3078
+ container_path: string;
3079
+ changed_only?: boolean | undefined;
3080
+ })[] | undefined;
3081
+ workDir?: string | undefined;
3082
+ user?: string | undefined;
3083
+ secrets?: Record<string, string> | undefined;
3084
+ ports?: {
3085
+ container: number;
3086
+ host?: number | undefined;
3087
+ }[] | undefined;
3088
+ }, {
3089
+ execute: {
3090
+ main: {
3091
+ cmd: string;
3092
+ onExit?: string | {
3093
+ exitCode: number;
3094
+ cmd?: string | null | undefined;
3095
+ }[] | null | undefined;
3096
+ parser?: string | undefined;
3097
+ };
3098
+ startup?: {
3099
+ cmd: string;
3100
+ async?: boolean | undefined;
3101
+ }[] | undefined;
3102
+ shutdown?: {
3103
+ cmd: string;
3104
+ }[] | undefined;
3105
+ scheduled?: {
3106
+ cmd: string;
3107
+ runAt: string | {
3108
+ interval?: number | undefined;
3109
+ time?: string | undefined;
3110
+ cron?: string | undefined;
3111
+ };
3112
+ onExit?: string | {
3113
+ exitCode: number;
3114
+ cmd?: string | null | undefined;
3115
+ }[] | null | undefined;
3116
+ parser?: string | undefined;
3117
+ }[] | undefined;
3118
+ };
3119
+ schemaVersion?: string | undefined;
3120
+ specName?: string | undefined;
3121
+ env?: Record<string, string> | undefined;
3122
+ volumes?: ({
3123
+ type: "regular";
3124
+ host_path?: string | undefined;
3125
+ container_path?: string | undefined;
3126
+ read_only?: boolean | undefined;
3127
+ } | {
3128
+ type: "docker-socket";
3129
+ container_path?: string | undefined;
3130
+ } | {
3131
+ type: "new-file";
3132
+ container_path: string;
3133
+ content: {
3134
+ data: string;
3135
+ encoding?: string | undefined;
3136
+ };
3137
+ owner?: string | undefined;
3138
+ permissions?: {
3139
+ read: number;
3140
+ write: number;
3141
+ execute: number;
3142
+ } | undefined;
3143
+ } | {
3144
+ type: "named";
3145
+ name: string;
3146
+ container_path: string;
3147
+ read_only?: boolean | undefined;
3148
+ } | {
3149
+ type: "anonymous";
3150
+ container_path: string;
3151
+ } | {
3152
+ type: "tmpfs";
3153
+ container_path: string;
3154
+ size_mb?: number | undefined;
3155
+ } | {
3156
+ type: "copy-in";
3157
+ host_path: string;
3158
+ container_path: string;
3159
+ } | {
3160
+ type: "copy-out";
3161
+ host_path: string;
3162
+ container_path: string;
3163
+ changed_only?: boolean | undefined;
3164
+ })[] | undefined;
3165
+ workDir?: string | undefined;
3166
+ user?: string | undefined;
3167
+ secrets?: Record<string, string> | undefined;
3168
+ ports?: {
3169
+ container: number;
3170
+ host?: number | undefined;
3171
+ }[] | undefined;
3172
+ }>, z.ZodString]>;
3173
+ export type FigSpecRunInput = z.infer<typeof figSpecRunInputSchema>;
3174
+ export declare const figSpecSchema: z.ZodObject<{
3175
+ schemaVersion: z.ZodString;
3176
+ specName: z.ZodOptional<z.ZodString>;
3177
+ build: z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
3178
+ schemaVersion: z.ZodOptional<z.ZodString>;
3179
+ specName: z.ZodOptional<z.ZodString>;
3180
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
3181
+ packageManager: z.ZodString;
3182
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
3183
+ name: z.ZodString;
3184
+ version: z.ZodOptional<z.ZodString>;
3185
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3186
+ }, "strip", z.ZodTypeAny, {
3187
+ name: string;
3188
+ version?: string | undefined;
3189
+ args?: string[] | undefined;
3190
+ }, {
3191
+ name: string;
3192
+ version?: string | undefined;
3193
+ args?: string[] | undefined;
3194
+ }>]>, "many">;
3195
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3196
+ }, "strip", z.ZodTypeAny, {
3197
+ packageManager: string;
3198
+ packages: (string | {
3199
+ name: string;
3200
+ version?: string | undefined;
3201
+ args?: string[] | undefined;
3202
+ })[];
3203
+ globalArgs?: string[] | undefined;
3204
+ }, {
3205
+ packageManager: string;
3206
+ packages: (string | {
3207
+ name: string;
3208
+ version?: string | undefined;
3209
+ args?: string[] | undefined;
3210
+ })[];
3211
+ globalArgs?: string[] | undefined;
3212
+ }>, "many">>;
3213
+ platform: z.ZodOptional<z.ZodString>;
3214
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3215
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
3216
+ type: z.ZodLiteral<"regular">;
3217
+ host_path: z.ZodOptional<z.ZodString>;
3218
+ container_path: z.ZodOptional<z.ZodString>;
3219
+ read_only: z.ZodOptional<z.ZodBoolean>;
3220
+ }, "strip", z.ZodTypeAny, {
3221
+ type: "regular";
3222
+ host_path?: string | undefined;
3223
+ container_path?: string | undefined;
3224
+ read_only?: boolean | undefined;
3225
+ }, {
3226
+ type: "regular";
3227
+ host_path?: string | undefined;
3228
+ container_path?: string | undefined;
3229
+ read_only?: boolean | undefined;
3230
+ }>, z.ZodObject<{
3231
+ type: z.ZodLiteral<"new-file">;
3232
+ container_path: z.ZodString;
3233
+ content: z.ZodObject<{
3234
+ data: z.ZodString;
3235
+ encoding: z.ZodOptional<z.ZodString>;
3236
+ }, "strip", z.ZodTypeAny, {
3237
+ data: string;
3238
+ encoding?: string | undefined;
3239
+ }, {
3240
+ data: string;
3241
+ encoding?: string | undefined;
3242
+ }>;
3243
+ owner: z.ZodOptional<z.ZodString>;
3244
+ permissions: z.ZodOptional<z.ZodObject<{
3245
+ read: z.ZodNumber;
3246
+ write: z.ZodNumber;
3247
+ execute: z.ZodNumber;
3248
+ }, "strip", z.ZodTypeAny, {
3249
+ read: number;
3250
+ write: number;
3251
+ execute: number;
3252
+ }, {
3253
+ read: number;
3254
+ write: number;
3255
+ execute: number;
3256
+ }>>;
3257
+ }, "strip", z.ZodTypeAny, {
3258
+ type: "new-file";
3259
+ container_path: string;
3260
+ content: {
3261
+ data: string;
3262
+ encoding?: string | undefined;
3263
+ };
3264
+ owner?: string | undefined;
3265
+ permissions?: {
3266
+ read: number;
3267
+ write: number;
3268
+ execute: number;
3269
+ } | undefined;
3270
+ }, {
3271
+ type: "new-file";
3272
+ container_path: string;
3273
+ content: {
3274
+ data: string;
3275
+ encoding?: string | undefined;
3276
+ };
3277
+ owner?: string | undefined;
3278
+ permissions?: {
3279
+ read: number;
3280
+ write: number;
3281
+ execute: number;
3282
+ } | undefined;
3283
+ }>]>, "many">>;
3284
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
3285
+ cmd: z.ZodString;
3286
+ }, "strip", z.ZodTypeAny, {
3287
+ cmd: string;
3288
+ }, {
3289
+ cmd: string;
3290
+ }>, "many">>;
3291
+ workDir: z.ZodOptional<z.ZodString>;
3292
+ user: z.ZodOptional<z.ZodString>;
3293
+ } & {
3294
+ baseImage: z.ZodString;
3295
+ }, "strip", z.ZodTypeAny, {
3296
+ baseImage: string;
3297
+ execute?: {
3298
+ cmd: string;
3299
+ }[] | undefined;
3300
+ schemaVersion?: string | undefined;
3301
+ specName?: string | undefined;
3302
+ packagesToInstall?: {
3303
+ packageManager: string;
3304
+ packages: (string | {
3305
+ name: string;
3306
+ version?: string | undefined;
3307
+ args?: string[] | undefined;
3308
+ })[];
3309
+ globalArgs?: string[] | undefined;
3310
+ }[] | undefined;
3311
+ platform?: string | undefined;
3312
+ env?: Record<string, string> | undefined;
3313
+ volumes?: ({
3314
+ type: "regular";
3315
+ host_path?: string | undefined;
3316
+ container_path?: string | undefined;
3317
+ read_only?: boolean | undefined;
3318
+ } | {
3319
+ type: "new-file";
3320
+ container_path: string;
3321
+ content: {
3322
+ data: string;
3323
+ encoding?: string | undefined;
3324
+ };
3325
+ owner?: string | undefined;
3326
+ permissions?: {
3327
+ read: number;
3328
+ write: number;
3329
+ execute: number;
3330
+ } | undefined;
3331
+ })[] | undefined;
3332
+ workDir?: string | undefined;
3333
+ user?: string | undefined;
3334
+ }, {
3335
+ baseImage: string;
3336
+ execute?: {
3337
+ cmd: string;
3338
+ }[] | undefined;
3339
+ schemaVersion?: string | undefined;
3340
+ specName?: string | undefined;
3341
+ packagesToInstall?: {
3342
+ packageManager: string;
3343
+ packages: (string | {
3344
+ name: string;
3345
+ version?: string | undefined;
3346
+ args?: string[] | undefined;
3347
+ })[];
3348
+ globalArgs?: string[] | undefined;
3349
+ }[] | undefined;
3350
+ platform?: string | undefined;
3351
+ env?: Record<string, string> | undefined;
3352
+ volumes?: ({
3353
+ type: "regular";
3354
+ host_path?: string | undefined;
3355
+ container_path?: string | undefined;
3356
+ read_only?: boolean | undefined;
3357
+ } | {
3358
+ type: "new-file";
3359
+ container_path: string;
3360
+ content: {
3361
+ data: string;
3362
+ encoding?: string | undefined;
3363
+ };
3364
+ owner?: string | undefined;
3365
+ permissions?: {
3366
+ read: number;
3367
+ write: number;
3368
+ execute: number;
3369
+ } | undefined;
3370
+ })[] | undefined;
3371
+ workDir?: string | undefined;
3372
+ user?: string | undefined;
3373
+ }>, z.ZodObject<{
3374
+ schemaVersion: z.ZodOptional<z.ZodString>;
3375
+ specName: z.ZodOptional<z.ZodString>;
3376
+ packagesToInstall: z.ZodOptional<z.ZodArray<z.ZodObject<{
3377
+ packageManager: z.ZodString;
3378
+ packages: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
3379
+ name: z.ZodString;
3380
+ version: z.ZodOptional<z.ZodString>;
3381
+ args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3382
+ }, "strip", z.ZodTypeAny, {
3383
+ name: string;
3384
+ version?: string | undefined;
3385
+ args?: string[] | undefined;
3386
+ }, {
3387
+ name: string;
3388
+ version?: string | undefined;
3389
+ args?: string[] | undefined;
3390
+ }>]>, "many">;
3391
+ globalArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3392
+ }, "strip", z.ZodTypeAny, {
3393
+ packageManager: string;
3394
+ packages: (string | {
3395
+ name: string;
3396
+ version?: string | undefined;
3397
+ args?: string[] | undefined;
3398
+ })[];
3399
+ globalArgs?: string[] | undefined;
3400
+ }, {
3401
+ packageManager: string;
3402
+ packages: (string | {
3403
+ name: string;
3404
+ version?: string | undefined;
3405
+ args?: string[] | undefined;
3406
+ })[];
3407
+ globalArgs?: string[] | undefined;
3408
+ }>, "many">>;
3409
+ platform: z.ZodOptional<z.ZodString>;
3410
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3411
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
3412
+ type: z.ZodLiteral<"regular">;
3413
+ host_path: z.ZodOptional<z.ZodString>;
3414
+ container_path: z.ZodOptional<z.ZodString>;
3415
+ read_only: z.ZodOptional<z.ZodBoolean>;
3416
+ }, "strip", z.ZodTypeAny, {
3417
+ type: "regular";
3418
+ host_path?: string | undefined;
3419
+ container_path?: string | undefined;
3420
+ read_only?: boolean | undefined;
3421
+ }, {
3422
+ type: "regular";
3423
+ host_path?: string | undefined;
3424
+ container_path?: string | undefined;
3425
+ read_only?: boolean | undefined;
3426
+ }>, z.ZodObject<{
3427
+ type: z.ZodLiteral<"new-file">;
3428
+ container_path: z.ZodString;
3429
+ content: z.ZodObject<{
3430
+ data: z.ZodString;
3431
+ encoding: z.ZodOptional<z.ZodString>;
3432
+ }, "strip", z.ZodTypeAny, {
3433
+ data: string;
3434
+ encoding?: string | undefined;
3435
+ }, {
3436
+ data: string;
3437
+ encoding?: string | undefined;
3438
+ }>;
3439
+ owner: z.ZodOptional<z.ZodString>;
3440
+ permissions: z.ZodOptional<z.ZodObject<{
3441
+ read: z.ZodNumber;
3442
+ write: z.ZodNumber;
3443
+ execute: z.ZodNumber;
3444
+ }, "strip", z.ZodTypeAny, {
3445
+ read: number;
3446
+ write: number;
3447
+ execute: number;
3448
+ }, {
3449
+ read: number;
3450
+ write: number;
3451
+ execute: number;
3452
+ }>>;
3453
+ }, "strip", z.ZodTypeAny, {
3454
+ type: "new-file";
3455
+ container_path: string;
3456
+ content: {
3457
+ data: string;
3458
+ encoding?: string | undefined;
3459
+ };
3460
+ owner?: string | undefined;
3461
+ permissions?: {
3462
+ read: number;
3463
+ write: number;
3464
+ execute: number;
3465
+ } | undefined;
3466
+ }, {
3467
+ type: "new-file";
3468
+ container_path: string;
3469
+ content: {
3470
+ data: string;
3471
+ encoding?: string | undefined;
3472
+ };
3473
+ owner?: string | undefined;
3474
+ permissions?: {
3475
+ read: number;
3476
+ write: number;
3477
+ execute: number;
3478
+ } | undefined;
3479
+ }>]>, "many">>;
3480
+ execute: z.ZodOptional<z.ZodArray<z.ZodObject<{
3481
+ cmd: z.ZodString;
3482
+ }, "strip", z.ZodTypeAny, {
3483
+ cmd: string;
3484
+ }, {
3485
+ cmd: string;
3486
+ }>, "many">>;
3487
+ workDir: z.ZodOptional<z.ZodString>;
3488
+ user: z.ZodOptional<z.ZodString>;
3489
+ } & {
3490
+ baseSpec: z.ZodString;
3491
+ baseImage: z.ZodOptional<z.ZodString>;
3492
+ }, "strip", z.ZodTypeAny, {
3493
+ baseSpec: string;
3494
+ execute?: {
3495
+ cmd: string;
3496
+ }[] | undefined;
3497
+ schemaVersion?: string | undefined;
3498
+ specName?: string | undefined;
3499
+ packagesToInstall?: {
3500
+ packageManager: string;
3501
+ packages: (string | {
3502
+ name: string;
3503
+ version?: string | undefined;
3504
+ args?: string[] | undefined;
3505
+ })[];
3506
+ globalArgs?: string[] | undefined;
3507
+ }[] | undefined;
3508
+ platform?: string | undefined;
3509
+ env?: Record<string, string> | undefined;
3510
+ volumes?: ({
3511
+ type: "regular";
3512
+ host_path?: string | undefined;
3513
+ container_path?: string | undefined;
3514
+ read_only?: boolean | undefined;
3515
+ } | {
3516
+ type: "new-file";
3517
+ container_path: string;
3518
+ content: {
3519
+ data: string;
3520
+ encoding?: string | undefined;
3521
+ };
3522
+ owner?: string | undefined;
3523
+ permissions?: {
3524
+ read: number;
3525
+ write: number;
3526
+ execute: number;
3527
+ } | undefined;
3528
+ })[] | undefined;
3529
+ workDir?: string | undefined;
3530
+ user?: string | undefined;
3531
+ baseImage?: string | undefined;
3532
+ }, {
3533
+ baseSpec: string;
3534
+ execute?: {
3535
+ cmd: string;
3536
+ }[] | undefined;
3537
+ schemaVersion?: string | undefined;
3538
+ specName?: string | undefined;
3539
+ packagesToInstall?: {
3540
+ packageManager: string;
3541
+ packages: (string | {
3542
+ name: string;
3543
+ version?: string | undefined;
3544
+ args?: string[] | undefined;
3545
+ })[];
3546
+ globalArgs?: string[] | undefined;
3547
+ }[] | undefined;
3548
+ platform?: string | undefined;
3549
+ env?: Record<string, string> | undefined;
3550
+ volumes?: ({
3551
+ type: "regular";
3552
+ host_path?: string | undefined;
3553
+ container_path?: string | undefined;
3554
+ read_only?: boolean | undefined;
3555
+ } | {
3556
+ type: "new-file";
3557
+ container_path: string;
3558
+ content: {
3559
+ data: string;
3560
+ encoding?: string | undefined;
3561
+ };
3562
+ owner?: string | undefined;
3563
+ permissions?: {
3564
+ read: number;
3565
+ write: number;
3566
+ execute: number;
3567
+ } | undefined;
3568
+ })[] | undefined;
3569
+ workDir?: string | undefined;
3570
+ user?: string | undefined;
3571
+ baseImage?: string | undefined;
3572
+ }>]>, z.ZodString, z.ZodArray<z.ZodString, "many">]>;
3573
+ run: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
3574
+ schemaVersion: z.ZodOptional<z.ZodString>;
3575
+ specName: z.ZodOptional<z.ZodString>;
3576
+ execute: z.ZodObject<{
3577
+ startup: z.ZodOptional<z.ZodArray<z.ZodObject<{
3578
+ cmd: z.ZodString;
3579
+ async: z.ZodOptional<z.ZodBoolean>;
3580
+ }, "strip", z.ZodTypeAny, {
3581
+ cmd: string;
3582
+ async?: boolean | undefined;
3583
+ }, {
3584
+ cmd: string;
3585
+ async?: boolean | undefined;
3586
+ }>, "many">>;
3587
+ main: z.ZodObject<{
3588
+ cmd: z.ZodString;
3589
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
3590
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
3591
+ exitCode: z.ZodNumber;
3592
+ }, "strip", z.ZodTypeAny, {
3593
+ exitCode: number;
3594
+ cmd?: string | null | undefined;
3595
+ }, {
3596
+ exitCode: number;
3597
+ cmd?: string | null | undefined;
3598
+ }>, "many">]>>;
3599
+ parser: z.ZodOptional<z.ZodString>;
3600
+ }, "strip", z.ZodTypeAny, {
3601
+ cmd: string;
3602
+ onExit?: string | {
3603
+ exitCode: number;
3604
+ cmd?: string | null | undefined;
3605
+ }[] | null | undefined;
3606
+ parser?: string | undefined;
3607
+ }, {
3608
+ cmd: string;
3609
+ onExit?: string | {
3610
+ exitCode: number;
3611
+ cmd?: string | null | undefined;
3612
+ }[] | null | undefined;
3613
+ parser?: string | undefined;
3614
+ }>;
3615
+ shutdown: z.ZodOptional<z.ZodArray<z.ZodObject<{
3616
+ cmd: z.ZodString;
3617
+ }, "strip", z.ZodTypeAny, {
3618
+ cmd: string;
3619
+ }, {
3620
+ cmd: string;
3621
+ }>, "many">>;
3622
+ scheduled: z.ZodOptional<z.ZodArray<z.ZodObject<{
3623
+ cmd: z.ZodString;
3624
+ runAt: z.ZodUnion<[z.ZodString, z.ZodObject<{
3625
+ interval: z.ZodOptional<z.ZodNumber>;
3626
+ time: z.ZodOptional<z.ZodString>;
3627
+ cron: z.ZodOptional<z.ZodString>;
3628
+ }, "strip", z.ZodTypeAny, {
3629
+ interval?: number | undefined;
3630
+ time?: string | undefined;
3631
+ cron?: string | undefined;
3632
+ }, {
3633
+ interval?: number | undefined;
3634
+ time?: string | undefined;
3635
+ cron?: string | undefined;
3636
+ }>]>;
3637
+ onExit: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull, z.ZodArray<z.ZodObject<{
3638
+ cmd: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
3639
+ exitCode: z.ZodNumber;
3640
+ }, "strip", z.ZodTypeAny, {
3641
+ exitCode: number;
3642
+ cmd?: string | null | undefined;
3643
+ }, {
3644
+ exitCode: number;
3645
+ cmd?: string | null | undefined;
3646
+ }>, "many">]>>;
3647
+ parser: z.ZodOptional<z.ZodString>;
3648
+ }, "strip", z.ZodTypeAny, {
3649
+ cmd: string;
3650
+ runAt: string | {
3651
+ interval?: number | undefined;
3652
+ time?: string | undefined;
3653
+ cron?: string | undefined;
3654
+ };
3655
+ onExit?: string | {
3656
+ exitCode: number;
3657
+ cmd?: string | null | undefined;
3658
+ }[] | null | undefined;
3659
+ parser?: string | undefined;
3660
+ }, {
3661
+ cmd: string;
3662
+ runAt: string | {
3663
+ interval?: number | undefined;
3664
+ time?: string | undefined;
3665
+ cron?: string | undefined;
3666
+ };
3667
+ onExit?: string | {
3668
+ exitCode: number;
3669
+ cmd?: string | null | undefined;
3670
+ }[] | null | undefined;
3671
+ parser?: string | undefined;
3672
+ }>, "many">>;
3673
+ }, "strip", z.ZodTypeAny, {
3674
+ main: {
3675
+ cmd: string;
3676
+ onExit?: string | {
3677
+ exitCode: number;
3678
+ cmd?: string | null | undefined;
3679
+ }[] | null | undefined;
3680
+ parser?: string | undefined;
3681
+ };
3682
+ startup?: {
3683
+ cmd: string;
3684
+ async?: boolean | undefined;
3685
+ }[] | undefined;
3686
+ shutdown?: {
3687
+ cmd: string;
3688
+ }[] | undefined;
3689
+ scheduled?: {
3690
+ cmd: string;
3691
+ runAt: string | {
3692
+ interval?: number | undefined;
3693
+ time?: string | undefined;
3694
+ cron?: string | undefined;
3695
+ };
3696
+ onExit?: string | {
3697
+ exitCode: number;
3698
+ cmd?: string | null | undefined;
3699
+ }[] | null | undefined;
3700
+ parser?: string | undefined;
3701
+ }[] | undefined;
3702
+ }, {
3703
+ main: {
3704
+ cmd: string;
3705
+ onExit?: string | {
3706
+ exitCode: number;
3707
+ cmd?: string | null | undefined;
3708
+ }[] | null | undefined;
3709
+ parser?: string | undefined;
3710
+ };
3711
+ startup?: {
3712
+ cmd: string;
3713
+ async?: boolean | undefined;
3714
+ }[] | undefined;
3715
+ shutdown?: {
3716
+ cmd: string;
3717
+ }[] | undefined;
3718
+ scheduled?: {
3719
+ cmd: string;
3720
+ runAt: string | {
3721
+ interval?: number | undefined;
3722
+ time?: string | undefined;
3723
+ cron?: string | undefined;
3724
+ };
3725
+ onExit?: string | {
3726
+ exitCode: number;
3727
+ cmd?: string | null | undefined;
3728
+ }[] | null | undefined;
3729
+ parser?: string | undefined;
3730
+ }[] | undefined;
3731
+ }>;
3732
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3733
+ secrets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3734
+ volumes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
3735
+ type: z.ZodLiteral<"regular">;
3736
+ host_path: z.ZodOptional<z.ZodString>;
3737
+ container_path: z.ZodOptional<z.ZodString>;
3738
+ read_only: z.ZodOptional<z.ZodBoolean>;
3739
+ }, "strip", z.ZodTypeAny, {
3740
+ type: "regular";
3741
+ host_path?: string | undefined;
3742
+ container_path?: string | undefined;
3743
+ read_only?: boolean | undefined;
3744
+ }, {
3745
+ type: "regular";
3746
+ host_path?: string | undefined;
3747
+ container_path?: string | undefined;
3748
+ read_only?: boolean | undefined;
3749
+ }>, z.ZodObject<{
3750
+ type: z.ZodLiteral<"docker-socket">;
3751
+ container_path: z.ZodOptional<z.ZodString>;
3752
+ }, "strip", z.ZodTypeAny, {
3753
+ type: "docker-socket";
3754
+ container_path?: string | undefined;
3755
+ }, {
3756
+ type: "docker-socket";
3757
+ container_path?: string | undefined;
3758
+ }>, z.ZodObject<{
3759
+ type: z.ZodLiteral<"new-file">;
3760
+ container_path: z.ZodString;
3761
+ content: z.ZodObject<{
3762
+ data: z.ZodString;
3763
+ encoding: z.ZodOptional<z.ZodString>;
3764
+ }, "strip", z.ZodTypeAny, {
3765
+ data: string;
3766
+ encoding?: string | undefined;
3767
+ }, {
3768
+ data: string;
3769
+ encoding?: string | undefined;
3770
+ }>;
3771
+ owner: z.ZodOptional<z.ZodString>;
3772
+ permissions: z.ZodOptional<z.ZodObject<{
3773
+ read: z.ZodNumber;
3774
+ write: z.ZodNumber;
3775
+ execute: z.ZodNumber;
3776
+ }, "strip", z.ZodTypeAny, {
3777
+ read: number;
3778
+ write: number;
3779
+ execute: number;
3780
+ }, {
3781
+ read: number;
3782
+ write: number;
3783
+ execute: number;
3784
+ }>>;
3785
+ }, "strip", z.ZodTypeAny, {
3786
+ type: "new-file";
3787
+ container_path: string;
3788
+ content: {
3789
+ data: string;
3790
+ encoding?: string | undefined;
3791
+ };
3792
+ owner?: string | undefined;
3793
+ permissions?: {
3794
+ read: number;
3795
+ write: number;
3796
+ execute: number;
3797
+ } | undefined;
3798
+ }, {
3799
+ type: "new-file";
3800
+ container_path: string;
3801
+ content: {
3802
+ data: string;
3803
+ encoding?: string | undefined;
3804
+ };
3805
+ owner?: string | undefined;
3806
+ permissions?: {
3807
+ read: number;
3808
+ write: number;
3809
+ execute: number;
3810
+ } | undefined;
3811
+ }>, z.ZodObject<{
3812
+ type: z.ZodLiteral<"named">;
3813
+ name: z.ZodString;
3814
+ container_path: z.ZodString;
3815
+ read_only: z.ZodOptional<z.ZodBoolean>;
3816
+ }, "strip", z.ZodTypeAny, {
3817
+ type: "named";
3818
+ name: string;
3819
+ container_path: string;
3820
+ read_only?: boolean | undefined;
3821
+ }, {
3822
+ type: "named";
3823
+ name: string;
3824
+ container_path: string;
3825
+ read_only?: boolean | undefined;
3826
+ }>, z.ZodObject<{
3827
+ type: z.ZodLiteral<"anonymous">;
3828
+ container_path: z.ZodString;
3829
+ }, "strip", z.ZodTypeAny, {
3830
+ type: "anonymous";
3831
+ container_path: string;
3832
+ }, {
3833
+ type: "anonymous";
3834
+ container_path: string;
3835
+ }>, z.ZodObject<{
3836
+ type: z.ZodLiteral<"tmpfs">;
3837
+ container_path: z.ZodString;
3838
+ size_mb: z.ZodOptional<z.ZodNumber>;
3839
+ }, "strip", z.ZodTypeAny, {
3840
+ type: "tmpfs";
3841
+ container_path: string;
3842
+ size_mb?: number | undefined;
3843
+ }, {
3844
+ type: "tmpfs";
3845
+ container_path: string;
3846
+ size_mb?: number | undefined;
3847
+ }>, z.ZodObject<{
3848
+ type: z.ZodLiteral<"copy-in">;
3849
+ host_path: z.ZodString;
3850
+ container_path: z.ZodString;
3851
+ }, "strip", z.ZodTypeAny, {
3852
+ type: "copy-in";
3853
+ host_path: string;
3854
+ container_path: string;
3855
+ }, {
3856
+ type: "copy-in";
3857
+ host_path: string;
3858
+ container_path: string;
3859
+ }>, z.ZodObject<{
3860
+ type: z.ZodLiteral<"copy-out">;
3861
+ container_path: z.ZodString;
3862
+ host_path: z.ZodString;
3863
+ changed_only: z.ZodOptional<z.ZodBoolean>;
3864
+ }, "strip", z.ZodTypeAny, {
3865
+ type: "copy-out";
3866
+ host_path: string;
3867
+ container_path: string;
3868
+ changed_only?: boolean | undefined;
3869
+ }, {
3870
+ type: "copy-out";
3871
+ host_path: string;
3872
+ container_path: string;
3873
+ changed_only?: boolean | undefined;
3874
+ }>]>, "many">>;
3875
+ workDir: z.ZodOptional<z.ZodString>;
3876
+ user: z.ZodOptional<z.ZodString>;
3877
+ ports: z.ZodOptional<z.ZodArray<z.ZodObject<{
3878
+ container: z.ZodNumber;
3879
+ host: z.ZodOptional<z.ZodNumber>;
3880
+ }, "strip", z.ZodTypeAny, {
3881
+ container: number;
3882
+ host?: number | undefined;
3883
+ }, {
3884
+ container: number;
3885
+ host?: number | undefined;
3886
+ }>, "many">>;
3887
+ }, "strip", z.ZodTypeAny, {
3888
+ execute: {
3889
+ main: {
3890
+ cmd: string;
3891
+ onExit?: string | {
3892
+ exitCode: number;
3893
+ cmd?: string | null | undefined;
3894
+ }[] | null | undefined;
3895
+ parser?: string | undefined;
3896
+ };
3897
+ startup?: {
3898
+ cmd: string;
3899
+ async?: boolean | undefined;
3900
+ }[] | undefined;
3901
+ shutdown?: {
3902
+ cmd: string;
3903
+ }[] | undefined;
3904
+ scheduled?: {
3905
+ cmd: string;
3906
+ runAt: string | {
3907
+ interval?: number | undefined;
3908
+ time?: string | undefined;
3909
+ cron?: string | undefined;
3910
+ };
3911
+ onExit?: string | {
3912
+ exitCode: number;
3913
+ cmd?: string | null | undefined;
3914
+ }[] | null | undefined;
3915
+ parser?: string | undefined;
3916
+ }[] | undefined;
3917
+ };
3918
+ schemaVersion?: string | undefined;
3919
+ specName?: string | undefined;
3920
+ env?: Record<string, string> | undefined;
3921
+ volumes?: ({
3922
+ type: "regular";
3923
+ host_path?: string | undefined;
3924
+ container_path?: string | undefined;
3925
+ read_only?: boolean | undefined;
3926
+ } | {
3927
+ type: "docker-socket";
3928
+ container_path?: string | undefined;
3929
+ } | {
3930
+ type: "new-file";
3931
+ container_path: string;
3932
+ content: {
3933
+ data: string;
3934
+ encoding?: string | undefined;
3935
+ };
3936
+ owner?: string | undefined;
3937
+ permissions?: {
3938
+ read: number;
3939
+ write: number;
3940
+ execute: number;
3941
+ } | undefined;
3942
+ } | {
3943
+ type: "named";
3944
+ name: string;
3945
+ container_path: string;
3946
+ read_only?: boolean | undefined;
3947
+ } | {
3948
+ type: "anonymous";
3949
+ container_path: string;
3950
+ } | {
3951
+ type: "tmpfs";
3952
+ container_path: string;
3953
+ size_mb?: number | undefined;
3954
+ } | {
3955
+ type: "copy-in";
3956
+ host_path: string;
3957
+ container_path: string;
3958
+ } | {
3959
+ type: "copy-out";
3960
+ host_path: string;
3961
+ container_path: string;
3962
+ changed_only?: boolean | undefined;
3963
+ })[] | undefined;
3964
+ workDir?: string | undefined;
3965
+ user?: string | undefined;
3966
+ secrets?: Record<string, string> | undefined;
3967
+ ports?: {
3968
+ container: number;
3969
+ host?: number | undefined;
3970
+ }[] | undefined;
3971
+ }, {
3972
+ execute: {
3973
+ main: {
3974
+ cmd: string;
3975
+ onExit?: string | {
3976
+ exitCode: number;
3977
+ cmd?: string | null | undefined;
3978
+ }[] | null | undefined;
3979
+ parser?: string | undefined;
3980
+ };
3981
+ startup?: {
3982
+ cmd: string;
3983
+ async?: boolean | undefined;
3984
+ }[] | undefined;
3985
+ shutdown?: {
3986
+ cmd: string;
3987
+ }[] | undefined;
3988
+ scheduled?: {
3989
+ cmd: string;
3990
+ runAt: string | {
3991
+ interval?: number | undefined;
3992
+ time?: string | undefined;
3993
+ cron?: string | undefined;
3994
+ };
3995
+ onExit?: string | {
3996
+ exitCode: number;
3997
+ cmd?: string | null | undefined;
3998
+ }[] | null | undefined;
3999
+ parser?: string | undefined;
4000
+ }[] | undefined;
4001
+ };
4002
+ schemaVersion?: string | undefined;
4003
+ specName?: string | undefined;
4004
+ env?: Record<string, string> | undefined;
4005
+ volumes?: ({
4006
+ type: "regular";
4007
+ host_path?: string | undefined;
4008
+ container_path?: string | undefined;
4009
+ read_only?: boolean | undefined;
4010
+ } | {
4011
+ type: "docker-socket";
4012
+ container_path?: string | undefined;
4013
+ } | {
4014
+ type: "new-file";
4015
+ container_path: string;
4016
+ content: {
4017
+ data: string;
4018
+ encoding?: string | undefined;
4019
+ };
4020
+ owner?: string | undefined;
4021
+ permissions?: {
4022
+ read: number;
4023
+ write: number;
4024
+ execute: number;
4025
+ } | undefined;
4026
+ } | {
4027
+ type: "named";
4028
+ name: string;
4029
+ container_path: string;
4030
+ read_only?: boolean | undefined;
4031
+ } | {
4032
+ type: "anonymous";
4033
+ container_path: string;
4034
+ } | {
4035
+ type: "tmpfs";
4036
+ container_path: string;
4037
+ size_mb?: number | undefined;
4038
+ } | {
4039
+ type: "copy-in";
4040
+ host_path: string;
4041
+ container_path: string;
4042
+ } | {
4043
+ type: "copy-out";
4044
+ host_path: string;
4045
+ container_path: string;
4046
+ changed_only?: boolean | undefined;
4047
+ })[] | undefined;
4048
+ workDir?: string | undefined;
4049
+ user?: string | undefined;
4050
+ secrets?: Record<string, string> | undefined;
4051
+ ports?: {
4052
+ container: number;
4053
+ host?: number | undefined;
4054
+ }[] | undefined;
4055
+ }>, z.ZodString]>>;
4056
+ }, "strip", z.ZodTypeAny, {
4057
+ schemaVersion: string;
4058
+ build: string | string[] | {
4059
+ baseImage: string;
4060
+ execute?: {
4061
+ cmd: string;
4062
+ }[] | undefined;
4063
+ schemaVersion?: string | undefined;
4064
+ specName?: string | undefined;
4065
+ packagesToInstall?: {
4066
+ packageManager: string;
4067
+ packages: (string | {
4068
+ name: string;
4069
+ version?: string | undefined;
4070
+ args?: string[] | undefined;
4071
+ })[];
4072
+ globalArgs?: string[] | undefined;
4073
+ }[] | undefined;
4074
+ platform?: string | undefined;
4075
+ env?: Record<string, string> | undefined;
4076
+ volumes?: ({
4077
+ type: "regular";
4078
+ host_path?: string | undefined;
4079
+ container_path?: string | undefined;
4080
+ read_only?: boolean | undefined;
4081
+ } | {
4082
+ type: "new-file";
4083
+ container_path: string;
4084
+ content: {
4085
+ data: string;
4086
+ encoding?: string | undefined;
4087
+ };
4088
+ owner?: string | undefined;
4089
+ permissions?: {
4090
+ read: number;
4091
+ write: number;
4092
+ execute: number;
4093
+ } | undefined;
4094
+ })[] | undefined;
4095
+ workDir?: string | undefined;
4096
+ user?: string | undefined;
4097
+ } | {
4098
+ baseSpec: string;
4099
+ execute?: {
4100
+ cmd: string;
4101
+ }[] | undefined;
4102
+ schemaVersion?: string | undefined;
4103
+ specName?: string | undefined;
4104
+ packagesToInstall?: {
4105
+ packageManager: string;
4106
+ packages: (string | {
4107
+ name: string;
4108
+ version?: string | undefined;
4109
+ args?: string[] | undefined;
4110
+ })[];
4111
+ globalArgs?: string[] | undefined;
4112
+ }[] | undefined;
4113
+ platform?: string | undefined;
4114
+ env?: Record<string, string> | undefined;
4115
+ volumes?: ({
4116
+ type: "regular";
4117
+ host_path?: string | undefined;
4118
+ container_path?: string | undefined;
4119
+ read_only?: boolean | undefined;
4120
+ } | {
4121
+ type: "new-file";
4122
+ container_path: string;
4123
+ content: {
4124
+ data: string;
4125
+ encoding?: string | undefined;
4126
+ };
4127
+ owner?: string | undefined;
4128
+ permissions?: {
4129
+ read: number;
4130
+ write: number;
4131
+ execute: number;
4132
+ } | undefined;
4133
+ })[] | undefined;
4134
+ workDir?: string | undefined;
4135
+ user?: string | undefined;
4136
+ baseImage?: string | undefined;
4137
+ };
4138
+ specName?: string | undefined;
4139
+ run?: string | {
4140
+ execute: {
4141
+ main: {
4142
+ cmd: string;
4143
+ onExit?: string | {
4144
+ exitCode: number;
4145
+ cmd?: string | null | undefined;
4146
+ }[] | null | undefined;
4147
+ parser?: string | undefined;
4148
+ };
4149
+ startup?: {
4150
+ cmd: string;
4151
+ async?: boolean | undefined;
4152
+ }[] | undefined;
4153
+ shutdown?: {
4154
+ cmd: string;
4155
+ }[] | undefined;
4156
+ scheduled?: {
4157
+ cmd: string;
4158
+ runAt: string | {
4159
+ interval?: number | undefined;
4160
+ time?: string | undefined;
4161
+ cron?: string | undefined;
4162
+ };
4163
+ onExit?: string | {
4164
+ exitCode: number;
4165
+ cmd?: string | null | undefined;
4166
+ }[] | null | undefined;
4167
+ parser?: string | undefined;
4168
+ }[] | undefined;
4169
+ };
4170
+ schemaVersion?: string | undefined;
4171
+ specName?: string | undefined;
4172
+ env?: Record<string, string> | undefined;
4173
+ volumes?: ({
4174
+ type: "regular";
4175
+ host_path?: string | undefined;
4176
+ container_path?: string | undefined;
4177
+ read_only?: boolean | undefined;
4178
+ } | {
4179
+ type: "docker-socket";
4180
+ container_path?: string | undefined;
4181
+ } | {
4182
+ type: "new-file";
4183
+ container_path: string;
4184
+ content: {
4185
+ data: string;
4186
+ encoding?: string | undefined;
4187
+ };
4188
+ owner?: string | undefined;
4189
+ permissions?: {
4190
+ read: number;
4191
+ write: number;
4192
+ execute: number;
4193
+ } | undefined;
4194
+ } | {
4195
+ type: "named";
4196
+ name: string;
4197
+ container_path: string;
4198
+ read_only?: boolean | undefined;
4199
+ } | {
4200
+ type: "anonymous";
4201
+ container_path: string;
4202
+ } | {
4203
+ type: "tmpfs";
4204
+ container_path: string;
4205
+ size_mb?: number | undefined;
4206
+ } | {
4207
+ type: "copy-in";
4208
+ host_path: string;
4209
+ container_path: string;
4210
+ } | {
4211
+ type: "copy-out";
4212
+ host_path: string;
4213
+ container_path: string;
4214
+ changed_only?: boolean | undefined;
4215
+ })[] | undefined;
4216
+ workDir?: string | undefined;
4217
+ user?: string | undefined;
4218
+ secrets?: Record<string, string> | undefined;
4219
+ ports?: {
4220
+ container: number;
4221
+ host?: number | undefined;
4222
+ }[] | undefined;
4223
+ } | undefined;
4224
+ }, {
4225
+ schemaVersion: string;
4226
+ build: string | string[] | {
4227
+ baseImage: string;
4228
+ execute?: {
4229
+ cmd: string;
4230
+ }[] | undefined;
4231
+ schemaVersion?: string | undefined;
4232
+ specName?: string | undefined;
4233
+ packagesToInstall?: {
4234
+ packageManager: string;
4235
+ packages: (string | {
4236
+ name: string;
4237
+ version?: string | undefined;
4238
+ args?: string[] | undefined;
4239
+ })[];
4240
+ globalArgs?: string[] | undefined;
4241
+ }[] | undefined;
4242
+ platform?: string | undefined;
4243
+ env?: Record<string, string> | undefined;
4244
+ volumes?: ({
4245
+ type: "regular";
4246
+ host_path?: string | undefined;
4247
+ container_path?: string | undefined;
4248
+ read_only?: boolean | undefined;
4249
+ } | {
4250
+ type: "new-file";
4251
+ container_path: string;
4252
+ content: {
4253
+ data: string;
4254
+ encoding?: string | undefined;
4255
+ };
4256
+ owner?: string | undefined;
4257
+ permissions?: {
4258
+ read: number;
4259
+ write: number;
4260
+ execute: number;
4261
+ } | undefined;
4262
+ })[] | undefined;
4263
+ workDir?: string | undefined;
4264
+ user?: string | undefined;
4265
+ } | {
4266
+ baseSpec: string;
4267
+ execute?: {
4268
+ cmd: string;
4269
+ }[] | undefined;
4270
+ schemaVersion?: string | undefined;
4271
+ specName?: string | undefined;
4272
+ packagesToInstall?: {
4273
+ packageManager: string;
4274
+ packages: (string | {
4275
+ name: string;
4276
+ version?: string | undefined;
4277
+ args?: string[] | undefined;
4278
+ })[];
4279
+ globalArgs?: string[] | undefined;
4280
+ }[] | undefined;
4281
+ platform?: string | undefined;
4282
+ env?: Record<string, string> | undefined;
4283
+ volumes?: ({
4284
+ type: "regular";
4285
+ host_path?: string | undefined;
4286
+ container_path?: string | undefined;
4287
+ read_only?: boolean | undefined;
4288
+ } | {
4289
+ type: "new-file";
4290
+ container_path: string;
4291
+ content: {
4292
+ data: string;
4293
+ encoding?: string | undefined;
4294
+ };
4295
+ owner?: string | undefined;
4296
+ permissions?: {
4297
+ read: number;
4298
+ write: number;
4299
+ execute: number;
4300
+ } | undefined;
4301
+ })[] | undefined;
4302
+ workDir?: string | undefined;
4303
+ user?: string | undefined;
4304
+ baseImage?: string | undefined;
4305
+ };
4306
+ specName?: string | undefined;
4307
+ run?: string | {
4308
+ execute: {
4309
+ main: {
4310
+ cmd: string;
4311
+ onExit?: string | {
4312
+ exitCode: number;
4313
+ cmd?: string | null | undefined;
4314
+ }[] | null | undefined;
4315
+ parser?: string | undefined;
4316
+ };
4317
+ startup?: {
4318
+ cmd: string;
4319
+ async?: boolean | undefined;
4320
+ }[] | undefined;
4321
+ shutdown?: {
4322
+ cmd: string;
4323
+ }[] | undefined;
4324
+ scheduled?: {
4325
+ cmd: string;
4326
+ runAt: string | {
4327
+ interval?: number | undefined;
4328
+ time?: string | undefined;
4329
+ cron?: string | undefined;
4330
+ };
4331
+ onExit?: string | {
4332
+ exitCode: number;
4333
+ cmd?: string | null | undefined;
4334
+ }[] | null | undefined;
4335
+ parser?: string | undefined;
4336
+ }[] | undefined;
4337
+ };
4338
+ schemaVersion?: string | undefined;
4339
+ specName?: string | undefined;
4340
+ env?: Record<string, string> | undefined;
4341
+ volumes?: ({
4342
+ type: "regular";
4343
+ host_path?: string | undefined;
4344
+ container_path?: string | undefined;
4345
+ read_only?: boolean | undefined;
4346
+ } | {
4347
+ type: "docker-socket";
4348
+ container_path?: string | undefined;
4349
+ } | {
4350
+ type: "new-file";
4351
+ container_path: string;
4352
+ content: {
4353
+ data: string;
4354
+ encoding?: string | undefined;
4355
+ };
4356
+ owner?: string | undefined;
4357
+ permissions?: {
4358
+ read: number;
4359
+ write: number;
4360
+ execute: number;
4361
+ } | undefined;
4362
+ } | {
4363
+ type: "named";
4364
+ name: string;
4365
+ container_path: string;
4366
+ read_only?: boolean | undefined;
4367
+ } | {
4368
+ type: "anonymous";
4369
+ container_path: string;
4370
+ } | {
4371
+ type: "tmpfs";
4372
+ container_path: string;
4373
+ size_mb?: number | undefined;
4374
+ } | {
4375
+ type: "copy-in";
4376
+ host_path: string;
4377
+ container_path: string;
4378
+ } | {
4379
+ type: "copy-out";
4380
+ host_path: string;
4381
+ container_path: string;
4382
+ changed_only?: boolean | undefined;
4383
+ })[] | undefined;
4384
+ workDir?: string | undefined;
4385
+ user?: string | undefined;
4386
+ secrets?: Record<string, string> | undefined;
4387
+ ports?: {
4388
+ container: number;
4389
+ host?: number | undefined;
4390
+ }[] | undefined;
4391
+ } | undefined;
4392
+ }>;
4393
+ export type FigSpec = z.infer<typeof figSpecSchema>;
4394
+ //# sourceMappingURL=figspec.d.ts.map