import { z } from "zod";
import { type McpResponse } from "../utils.js";
import type { LogService } from "../../core/logs.js";
export declare const serverLogsSchema: {
    action: z.ZodEnum<{
        logs: "logs";
        monitor: "monitor";
    }>;
    server: z.ZodOptional<z.ZodString>;
    service: z.ZodDefault<z.ZodEnum<{
        coolify: "coolify";
        docker: "docker";
        system: "system";
    }>>;
    lines: z.ZodDefault<z.ZodNumber>;
    containers: z.ZodDefault<z.ZodBoolean>;
};
export declare const serverLogsOutputSchema: z.ZodObject<{
    result: z.ZodDiscriminatedUnion<[z.ZodObject<{
        server: z.ZodString;
        ip: z.ZodString;
        service: z.ZodString;
        lines: z.ZodNumber;
        logs: z.ZodString;
        suggested_actions: z.ZodArray<z.ZodObject<{
            command: z.ZodString;
            reason: z.ZodString;
        }, z.core.$strip>>;
        action: z.ZodLiteral<"logs">;
    }, z.core.$strip>, z.ZodObject<{
        server: z.ZodString;
        ip: z.ZodString;
        metrics: z.ZodObject<{
            cpu: z.ZodObject<{
                percent: z.ZodNumber;
            }, z.core.$strip>;
            mem: z.ZodObject<{
                percent: z.ZodNumber;
                total: z.ZodNumber;
                used: z.ZodNumber;
            }, z.core.$strip>;
            disk: z.ZodObject<{
                percent: z.ZodNumber;
                total: z.ZodNumber;
                used: z.ZodNumber;
            }, z.core.$strip>;
        }, z.core.$strip>;
        containers: z.ZodOptional<z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            name: z.ZodString;
            status: z.ZodString;
        }, z.core.$strip>>>;
        suggested_actions: z.ZodArray<z.ZodObject<{
            command: z.ZodString;
            reason: z.ZodString;
        }, z.core.$strip>>;
        action: z.ZodLiteral<"monitor">;
    }, z.core.$strip>], "action">;
}, z.core.$strip>;
export type ServerLogsOutput = z.infer<typeof serverLogsOutputSchema>;
export declare function handleServerLogs(params: {
    action: "logs" | "monitor";
    server?: string;
    service?: LogService;
    lines?: number;
    containers?: boolean;
}): Promise<McpResponse>;
//# sourceMappingURL=serverLogs.d.ts.map