import { IPeanarJobDefinition, IPeanarJobDefinitionInput } from './app';
import { IExchange } from 'ts-amqp/dist/interfaces/Exchange';
import { IBinding, IQueue } from 'ts-amqp/dist/interfaces/Queue';
export default class Registry {
    private _jobs;
    private _workerQueues;
    private _queues;
    private _exchanges;
    private _bindings;
    private _prepareJobDefinition;
    private registerQueue;
    private registerExchange;
    private registerBinding;
    private extractAmqStructure;
    registerJob(def: IPeanarJobDefinitionInput): IPeanarJobDefinition;
    get workerQueues(): Set<string>;
    get queues(): IQueue[];
    get exchanges(): IExchange[];
    get bindings(): IBinding[];
    getJobDefinition(name: string): IPeanarJobDefinition;
}
