import { IQueueModelStatic } from './QueueModel';
import { MailProcessor } from './MailProcessor';
declare class Scheduler implements IScheduler {
    expression: string;
    maxAttemps: number;
    logging: boolean;
    limit: number;
    mailProcessor: MailProcessor;
    private queueModel;
    constructor(smtpCredentials: any, queueModel: IQueueModelStatic, expression: string, maxAttemps: number, logging: boolean, limit: number, mailProcessor: MailProcessor);
    private runJobs;
    private log;
}
export interface IScheduler {
    expression: string;
    maxAttemps: number;
    logging: boolean;
    mailProcessor: MailProcessor;
}
export declare type LockType = 'transaction';
export default Scheduler;
