import { OnModuleDestroy, OnModuleInit } from '@nestjs/common';
import { EventStoreOptions, IEvents } from './interfaces/event-store-options.interface';
import { EventBus, IEvent, IEventPublisher, IMessageSource } from '@nestjs/cqrs';
import { Subject } from 'rxjs';
export declare class EventStoreService implements IEventPublisher, OnModuleInit, OnModuleDestroy, IMessageSource {
    private readonly eventBus;
    private logger;
    private client;
    private producer;
    private consumer;
    private subject$;
    private events;
    private eventsForSearch;
    private clientConfig;
    private consumerConfig;
    constructor(options: EventStoreOptions, eventBus: EventBus);
    onModuleInit(): Promise<void>;
    onModuleDestroy(): Promise<void>;
    connect(): Promise<void>;
    subscribe(): Promise<void>;
    disconnect(): Promise<void>;
    publish(event: IEvent): Promise<void>;
    bridgeEventsTo<T extends IEvent>(subject: Subject<T>): Promise<any>;
    addEvents(events?: IEvents): void;
}
//# sourceMappingURL=event-store.service.d.ts.map