import { z } from "zod";
import { type McpResponse } from "../utils.js";
export declare const serverMaintainSchema: {
    action: z.ZodEnum<{
        restart: "restart";
        update: "update";
        maintain: "maintain";
    }>;
    server: z.ZodOptional<z.ZodString>;
    skipReboot: z.ZodDefault<z.ZodBoolean>;
};
export declare const serverMaintainOutputSchema: z.ZodObject<{
    result: z.ZodDiscriminatedUnion<[z.ZodObject<{
        action: z.ZodLiteral<"update">;
        success: z.ZodBoolean;
        server: z.ZodString;
        ip: z.ZodString;
        message: z.ZodString;
        suggested_actions: z.ZodArray<z.ZodObject<{
            command: z.ZodString;
            reason: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>, z.ZodObject<{
        action: z.ZodLiteral<"restart">;
        success: z.ZodBoolean;
        server: z.ZodString;
        ip: z.ZodString;
        message: z.ZodString;
        finalStatus: z.ZodString;
        suggested_actions: z.ZodArray<z.ZodObject<{
            command: z.ZodString;
            reason: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>, z.ZodObject<{
        action: z.ZodLiteral<"maintain">;
        success: z.ZodBoolean;
        server: z.ZodString;
        ip: z.ZodString;
        provider: z.ZodString;
        steps: z.ZodArray<z.ZodObject<{
            step: z.ZodString;
            status: z.ZodString;
            message: z.ZodOptional<z.ZodString>;
            error: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        summary: z.ZodObject<{
            total: z.ZodNumber;
            success: z.ZodNumber;
            failure: z.ZodNumber;
            skipped: z.ZodNumber;
        }, z.core.$strip>;
        suggested_actions: z.ZodArray<z.ZodObject<{
            command: z.ZodString;
            reason: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>], "action">;
}, z.core.$strip>;
export type ServerMaintainOutput = z.infer<typeof serverMaintainOutputSchema>;
export declare function handleServerMaintain(params: {
    action: "update" | "restart" | "maintain";
    server?: string;
    skipReboot?: boolean;
}): Promise<McpResponse>;
//# sourceMappingURL=serverMaintain.d.ts.map