import { type Provider } from "@intentic/engine"; import { z } from "zod"; import type { SshSession } from "../core/ssh.js"; import type { SshExecutor } from "../core/ssh.js"; export declare const serviceSchema: z.ZodObject<{ address: z.ZodString; user: z.ZodString; sshKey: z.ZodString; port: z.ZodDefault; via: z.ZodDefault>; internalIp: z.ZodString; domain: z.ZodString; }, z.core.$strip>; export interface EnvEntry { readonly key: string; readonly value?: string; } export interface ComposeServiceSpec { readonly kind: string; readonly schema: S; readonly port: number; readonly healthPath: string; readonly readyTimeoutMs?: number; readonly files: (parsed: z.infer, id: string, hash: string) => Record; readonly env?: (parsed: z.infer) => readonly EnvEntry[]; readonly images: (parsed: z.infer) => Record; readonly seed?: (session: SshSession, parsed: z.infer, log: (message: string) => void) => Promise; } export declare const SERVICE_LOGGING = " logging: { driver: json-file, options: { max-size: 10m, max-file: \"3\" } }"; export declare const createComposeServiceProvider: (spec: ComposeServiceSpec, executor: SshExecutor) => Provider; //# sourceMappingURL=compose-service.d.ts.map