/** * Cron Job Service - Manages PM2 processes with cron_restart */ import { CronJobConfig, CronJobStatus } from '../../types/cron'; export declare class CronJobService { private static instance; private constructor(); static getInstance(): CronJobService; private ensureConfigFile; private readConfig; private writeConfig; /** * Validate cron expression */ validateCronExpression(expression: string): { valid: boolean; error?: string; nextRun?: Date; }; /** * Get human-readable description of cron expression */ getCronDescription(expression: string): string; /** * Get script path for inline scripts (creates temp file) */ private getScriptPath; /** * Get file extension for script type */ private getScriptExtension; /** * Convert CronJobConfig to PM2 start options */ private toPM2Options; /** * Create a new cron job */ createCronJob(config: Omit): Promise; /** * Get all cron jobs */ getCronJobs(): CronJobConfig[]; /** * Get a single cron job by ID */ getCronJob(id: string): CronJobConfig | undefined; /** * Update a cron job */ updateCronJob(id: string, updates: Partial): Promise; /** * Delete a cron job */ deleteCronJob(id: string): Promise; /** * Start a cron job (start PM2 process with cron_restart) */ startCronJob(id: string): Promise; /** * Stop a cron job (delete PM2 process) */ stopCronJob(id: string): Promise; /** * Get status of all cron jobs (including PM2 process info) */ getCronJobsStatus(): Promise; /** * Toggle cron job enabled state */ toggleCronJob(id: string): Promise; } declare const _default: CronJobService; export default _default;