import { z } from 'zod'; export declare const createServiceSchema: z.ZodObject<{ name: z.ZodString; /** * Image URL — image-mode (any registry) or source-mode (digest-pinned * registry.fly.io ref produced by the CLI's `flyctl deploy --build-only --push`). * The CLI is responsible for building/pushing in source mode; the cloud * just launches a machine pointing at the resulting image. * * Required for createService (image-mode immediate launch). * Omit for prepareForDeploy / source-mode (the route's own validation handles it). */ imageUrl: z.ZodOptional; port: z.ZodNumber; cpu: z.ZodDefault; memory: z.ZodDefault>; envVars: z.ZodOptional>; region: z.ZodDefault; /** * Edge protocol. `'http'` (default) is the existing behaviour — Fly terminates * TLS at its anycast edge and proxies HTTP/1.1 + HTTP/2 to the container on * the container's port. `'tcp'` is for raw TCP services (Redis, the Postgres * wire protocol, custom binary protocols) — Fly exposes the container's port * directly with empty L7 handlers so bytes flow end-to-end without HTTP * inspection. Optional and back-compat: omitting the field is identical to * sending `'http'` at every fallback site downstream. */ protocol: z.ZodOptional>; /** * Scale-to-zero. `true` (default) is the existing behaviour — Fly stops the * machine when idle and cold-starts it on the next request. `false` keeps * the machine running 24/7 (Fly autostop 'off', one machine always warm) * for services that can't tolerate cold-start latency. Optional and * back-compat: omitting the field is identical to sending `true`. */ scaleToZero: z.ZodOptional; }, "strip", z.ZodTypeAny, { name: string; port: number; region: string; cpu: string; memory: number; imageUrl?: string | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; }, { name: string; port: number; imageUrl?: string | undefined; region?: string | undefined; cpu?: string | undefined; memory?: number | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; }>; export declare const updateServiceSchema: z.ZodEffects; port: z.ZodOptional; cpu: z.ZodOptional; memory: z.ZodOptional>; /** * Wholesale replacement of the env var map. Sending {} clears all env * vars. For partial edits (rotate one secret without restating the * other six), use envVarsPatch instead. */ envVars: z.ZodOptional>; /** * Partial env edit. `set` upserts keys, `unset` removes them. The server * decrypts the existing env_vars blob, applies the patch, and re-encrypts. * Mutually exclusive with `envVars` (the wholesale path) — sending both * is rejected, since the intent would be ambiguous. */ envVarsPatch: z.ZodOptional>; unset: z.ZodOptional>; }, "strip", z.ZodTypeAny, { set?: Record | undefined; unset?: string[] | undefined; }, { set?: Record | undefined; unset?: string[] | undefined; }>, { set?: Record | undefined; unset?: string[] | undefined; }, { set?: Record | undefined; unset?: string[] | undefined; }>>; region: z.ZodOptional; /** * Edge protocol — same semantics as createServiceSchema.protocol. Optional * on update; omitting it leaves the existing service's protocol in place. */ protocol: z.ZodOptional>; /** * Scale-to-zero — same semantics as createServiceSchema.scaleToZero. * Optional on update; omitting it leaves the existing setting in place. */ scaleToZero: z.ZodOptional; }, "strip", z.ZodTypeAny, { imageUrl?: string | undefined; port?: number | undefined; region?: string | undefined; cpu?: string | undefined; memory?: number | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; envVarsPatch?: { set?: Record | undefined; unset?: string[] | undefined; } | undefined; }, { imageUrl?: string | undefined; port?: number | undefined; region?: string | undefined; cpu?: string | undefined; memory?: number | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; envVarsPatch?: { set?: Record | undefined; unset?: string[] | undefined; } | undefined; }>, { imageUrl?: string | undefined; port?: number | undefined; region?: string | undefined; cpu?: string | undefined; memory?: number | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; envVarsPatch?: { set?: Record | undefined; unset?: string[] | undefined; } | undefined; }, { imageUrl?: string | undefined; port?: number | undefined; region?: string | undefined; cpu?: string | undefined; memory?: number | undefined; protocol?: "http" | "tcp" | undefined; scaleToZero?: boolean | undefined; envVars?: Record | undefined; envVarsPatch?: { set?: Record | undefined; unset?: string[] | undefined; } | undefined; }>; export declare const listServicesResponseSchema: z.ZodObject<{ services: z.ZodArray; scaleToZero: z.ZodBoolean; flyAppId: z.ZodNullable; flyMachineId: z.ZodNullable; status: z.ZodEnum<["creating", "deploying", "running", "stopped", "failed", "destroying"]>; endpointUrl: z.ZodNullable; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { status: "creating" | "deploying" | "running" | "stopped" | "failed" | "destroying"; name: string; id: string; imageUrl: string; createdAt: string; updatedAt: string; port: number; region: string; cpu: string; projectId: string; memory: number; protocol: "http" | "tcp"; scaleToZero: boolean; flyAppId: string | null; flyMachineId: string | null; endpointUrl: string | null; }, { status: "creating" | "deploying" | "running" | "stopped" | "failed" | "destroying"; name: string; id: string; imageUrl: string; createdAt: string; updatedAt: string; port: number; region: string; cpu: string; projectId: string; memory: number; protocol: "http" | "tcp"; scaleToZero: boolean; flyAppId: string | null; flyMachineId: string | null; endpointUrl: string | null; }>, "many">; }, "strip", z.ZodTypeAny, { services: { status: "creating" | "deploying" | "running" | "stopped" | "failed" | "destroying"; name: string; id: string; imageUrl: string; createdAt: string; updatedAt: string; port: number; region: string; cpu: string; projectId: string; memory: number; protocol: "http" | "tcp"; scaleToZero: boolean; flyAppId: string | null; flyMachineId: string | null; endpointUrl: string | null; }[]; }, { services: { status: "creating" | "deploying" | "running" | "stopped" | "failed" | "destroying"; name: string; id: string; imageUrl: string; createdAt: string; updatedAt: string; port: number; region: string; cpu: string; projectId: string; memory: number; protocol: "http" | "tcp"; scaleToZero: boolean; flyAppId: string | null; flyMachineId: string | null; endpointUrl: string | null; }[]; }>; export declare const computeLogLineSchema: z.ZodObject<{ timestamp: z.ZodNumber; message: z.ZodString; instance: z.ZodOptional; region: z.ZodOptional; }, "strip", z.ZodTypeAny, { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }, { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }>; export declare const computeLogsResponseSchema: z.ZodObject<{ lines: z.ZodArray; region: z.ZodOptional; }, "strip", z.ZodTypeAny, { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }, { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }>, "many">; nextToken: z.ZodNullable; }, "strip", z.ZodTypeAny, { lines: { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }[]; nextToken: string | null; }, { lines: { message: string; timestamp: number; region?: string | undefined; instance?: string | undefined; }[]; nextToken: string | null; }>; export type CreateServiceRequest = z.infer; export type UpdateServiceRequest = z.infer; export type ListServicesResponse = z.infer; export type ComputeLogLine = z.infer; export type ComputeLogsResponse = z.infer; //# sourceMappingURL=compute-services-api.schema.d.ts.map