import { RuntimeConfig } from "./runtimeConfig.js";
export declare enum JobName {
    RSS = "rss",
    SEARCH = "search",
    UPDATE_INDEXER_CAPS = "updateIndexerCaps",
    INJECT = "inject",
    CLEANUP = "cleanup"
}
declare class Job {
    name: JobName;
    cadence: number;
    exec: () => Promise<void>;
    isActive: boolean;
    runAheadOfSchedule: boolean;
    configOverride: Partial<RuntimeConfig>;
    shouldRunFn: () => boolean;
    constructor(name: JobName, cadence: number, exec: () => Promise<void>, shouldRunFn?: () => boolean);
    shouldRun(): boolean;
    run(): Promise<boolean>;
}
export declare function getJobs(): Job[];
export declare function getJobLastRun(name: JobName): Promise<number | undefined>;
export declare function checkJobs(options?: {
    isFirstRun: boolean;
    useQueue: boolean;
}): Promise<void>;
export declare function jobsLoop(): Promise<void>;
export {};
