///
import { ListenerFn } from 'eventemitter2';
import { Database, StateDB } from '@liskhq/lisk-db';
import { EventCallback } from '../event';
import { BaseChannel, InvokeRequest } from './base_channel';
import { Bus } from '../bus';
import { EndpointHandlers } from '../../types';
import { Logger } from '../../logger';
export declare class InMemoryChannel extends BaseChannel {
private bus;
private readonly _db;
private readonly _moduleDB;
private readonly _chainID;
constructor(logger: Logger, db: StateDB, moduleDB: Database, namespace: string, events: ReadonlyArray, endpoints: EndpointHandlers, chainID: Buffer);
registerToBus(bus: Bus): Promise;
subscribe(eventName: string, cb: EventCallback): void;
unsubscribe(eventName: string, cb: ListenerFn): void;
once(eventName: string, cb: EventCallback): void;
publish(eventName: string, data?: Record): void;
invoke(req: InvokeRequest): Promise;
}