import { ClassType } from '@deepkit/core';
export declare const JobSymbol: unique symbol;
export declare const InputDataSymbol: unique symbol;
export declare const OutputDataSymbol: unique symbol;
export declare const WorkerSymbol: unique symbol;
export declare const WorkerJob: () => ClassDecorator;
export declare abstract class BaseJob<I = void, O = void> {
    [JobSymbol]: symbol;
    [InputDataSymbol]: I;
    [OutputDataSymbol]: O;
    static QUEUE_NAME: string;
    static CRON_SCHEDULE: string | null;
    abstract handle(data: I): Promise<O>;
}
export interface BaseJobClass {
    QUEUE_NAME: string;
    CRON_SCHEDULE: string | null;
}
export type JobClass = ClassType<BaseJob> & BaseJobClass;
export interface IJobOptions {
    delay?: number;
}
export declare type __ΩBaseJobClass = any[];
export declare type __ΩJobClass = any[];
export declare type __ΩIJobOptions = any[];
//# sourceMappingURL=types.d.ts.map