/** * Shared docker/podman deploy target, parameterized by binary name. * * docker and podman expose the same CLI surface for the run/inspect/logs/rm * verbs this target needs, so one implementation backs both * (`makeContainerDeployTarget("docker" | "podman")`). `tlsTermination: "none"` * means loopback-only: a zod refinement rejects a non-loopback `bind` until tls * config lands (locked decision #12). */ import { type DeployTarget } from "@skaile/workspaces/plugin-registry"; import * as z from "zod"; type ContainerBin = "docker" | "podman"; declare const containerConfigSchema: z.ZodObject<{ image: z.ZodString; port: z.ZodOptional; bind: z.ZodDefault; mounts: z.ZodDefault>; env: z.ZodDefault>; network: z.ZodOptional; pullPolicy: z.ZodDefault>; buildStrategy: z.ZodDefault>; containerPort: z.ZodOptional; readyPattern: z.ZodOptional; }, z.core.$strict>; type ContainerConfig = z.infer; type ContainerPayload = { containerId: string; hostPort: number; runtime: ContainerBin; bind: string; }; /** Build a docker/podman deploy target backed by `bin`. */ export declare function makeContainerDeployTarget(bin: ContainerBin): DeployTarget; export {}; //# sourceMappingURL=container-runtime.d.ts.map