import { Message } from '../model/message';
import { RedisConfig } from '../redis/config';
import { HasSubscribers, Publisher, Subscriber, Subscription } from './publisher';
/**
 * A Publisher that use Redis pub / sub feature to message communications.
 */
export declare class RedisPublisher implements Publisher, HasSubscribers {
    private redisSubscriber;
    private redisPublisher;
    private listeners;
    private listenningRedis;
    constructor(config: RedisConfig);
    publish(message: Message): Promise<boolean>;
    subscribe(aggregation: string, subscriber: Subscriber): Promise<Subscription>;
    private registerRedisListener;
}
