import { Authentication } from '../Authentication';
import { NetworkNodeFacade } from '../NetworkNodeFacade';
import { StreamRegistry } from '../contracts/StreamRegistry';
import { StreamrClientEventEmitter } from '../events';
import { MessageSigner } from '../signature/MessageSigner';
import { SignatureValidator } from '../signature/SignatureValidator';
import { LoggerFactory } from '../utils/LoggerFactory';
import { LocalGroupKeyStore } from './LocalGroupKeyStore';
export declare class PublisherKeyExchange {
    private readonly networkNodeFacade;
    private readonly streamRegistry;
    private readonly signatureValidator;
    private readonly messageSigner;
    private readonly store;
    private readonly authentication;
    private readonly logger;
    private readonly erc1271Publishers;
    constructor(networkNodeFacade: NetworkNodeFacade, streamRegistry: StreamRegistry, signatureValidator: SignatureValidator, messageSigner: MessageSigner, store: LocalGroupKeyStore, authentication: Authentication, eventEmitter: StreamrClientEventEmitter, loggerFactory: LoggerFactory);
    private onMessage;
    private getResponseType;
    private createResponse;
}
