import { OnModuleDestroy, OnModuleInit } from '@nestjs/common'; import { CreateCronConfig, CronConfig, CronManagerControl, CronManagerDeps, CronManager as CronManagerInterface, Frame, JobExecution, UpdateCronConfig } from '../types'; export declare const CMC_WATCH = "cmc"; export declare class CronManager implements CronManagerInterface, OnModuleInit, OnModuleDestroy { private readonly replicaId; private readonly logger; private readonly cronManagerControlRepository; private readonly cronConfigRepository; private readonly cronJobRepository; private readonly redisService; private readonly orm; private readonly watchTime; private readonly enabled; private readonly querySecret; private readonly entityManager; private readonly cronJobService; private databaseOps; private readonly cronJobs; private logLevel; private readonly logLevels; private readonly releaseLocksOnShutdown; static readonly JobType: { INLINE: string; QUERY: string; METHOD: string; }; constructor({ replicaId, logger, enabled, watchTime, querySecret, orm, cronConfigRepository, cronJobRepository, redisService, cronJobService, entityManager, cronManagerControlRepository, releaseLocksOnShutdown, }: CronManagerDeps); onModuleInit(): void; checkInit(): { name: string; status: string; }[]; private isGlobalEnabled; private prepare; private initializeJobs; private scheduleJob; private executeJob; private resetJobs; private startJob; private endJob; private expireJobs; private encryptQuery; private decryptQuery; private getTotalEnabledJobs; createCronConfig(data: CreateCronConfig): Promise<{ cronConfig: CronConfig; }>; updateCronConfig({ id, ...update }: UpdateCronConfig): Promise<{ cronConfig: CronConfig; }>; listCronConfig(): Promise; toggleCronConfig(id: number | string): Promise<{ cronConfig: CronConfig; }>; enableAllCronConfig(): Promise<{ cronConfigs: CronConfig[]; }>; disableAllCronConfig(): Promise<{ cronConfigs: CronConfig[]; }>; getControl(): Promise; purgeControl(retries?: number): Promise<{ success: boolean; }>; toggleControl(): Promise<{ enabled: boolean; }>; private readonly log; private logMessage; private readonly releaseLock; handleJob(name: string, execution: JobExecution): Promise; onModuleDestroy(): Promise; } export declare class Lens { private readonly frames; get isEmpty(): boolean; capture(action: Frame): void; getFrames(): string; } export declare function bindMethods(instance: any): void;