import { Cronjob, CronjobEnabledChangedMessage } from '@5minds/processcube_engine_sdk'; import { CronjobDatabaseAdapter } from '../Tools/DatabaseAdaptersSequelize/index'; import { IdentityService } from '../Tools/Iam/index'; import { ExecuteProcessService } from './ExecuteProcessService'; import { TimerFacade } from './Facades/index'; export declare class CronjobService { private readonly executeProcessService; private readonly logger; private readonly cronjobAdapter; private readonly timerFacade; private cronjobDictionary; private internalIdentity; private serviceIsRunning; private notificationSubscriptions; constructor(cronjobAdapter: CronjobDatabaseAdapter, executeProcessService: ExecuteProcessService, identityService: IdentityService, timerFacade: TimerFacade); get isRunning(): boolean; start(): Promise; stop(): void; updateCronjobs(deployedProcessDefinitionIds: Array, cronjobMap: { [proessDefinitionId: string]: Array; }): Promise; updateCronjob(options: CronjobEnabledChangedMessage): Promise; removeCronjobsByProcessDefinition(processDefinitionId: string): Promise; private initializeCronjob; private isValidCrontab; private executeProcessModelWithCronjob; private stopCronjobs; private stopCronjob; private getEventMessage; private removeSubscription; private onProcessDeployed; private onProcessUndeployed; private onCronjobEnabledChanged; private createSubscription; }