import { type SshCommand } from "../utils/sshCommand.js";
export interface ScheduleResult {
    success: boolean;
    error?: string;
    hint?: string;
}
export interface ListScheduleResult {
    success: boolean;
    cronExpr?: string;
    localCronExpr?: string;
    error?: string;
}
export declare function getSchedules(): Record<string, string>;
export declare function saveSchedule(serverName: string, cronExpr: string): void;
export declare function removeSchedule(serverName: string): void;
export declare function validateCronExpr(expr: string): {
    valid: boolean;
    error?: string;
};
export declare function buildDeployBackupScriptCommand(): SshCommand;
export declare function buildInstallCronCommand(cronExpr: string): SshCommand;
export declare function buildListCronCommand(): SshCommand;
export declare function buildRemoveCronCommand(): SshCommand;
export declare function scheduleBackup(ip: string, serverName: string, cronExpr: string): Promise<ScheduleResult>;
export declare function listBackupSchedule(ip: string, serverName: string): Promise<ListScheduleResult>;
export declare function removeBackupSchedule(ip: string, serverName: string): Promise<ScheduleResult>;
//# sourceMappingURL=backupSchedule.d.ts.map