import { CustomTransportStrategy, RmqOptions } from '../interfaces';
import { Server } from './server';
export declare class ServerRMQ extends Server implements CustomTransportStrategy {
private readonly options;
private server;
private channel;
private readonly urls;
private readonly queue;
private readonly prefetchCount;
private readonly queueOptions;
private readonly isGlobalPrefetchCount;
constructor(options: RmqOptions['options']);
getTransport(): number;
listen(callback: () => void): Promise<void>;
close(): void;
start(callback?: () => void): Promise<void>;
createClient<T = any>(): T;
setupChannel(channel: any, callback: Function): Promise<void>;
handleMessage(message: Record<string, any>, channel: any): Promise<void>;
sendMessage<T = any>(message: T, replyTo: any, correlationId: string): void;
}