/// import { ListenerFn } from 'eventemitter2'; import { BaseChannel, InvokeRequest } from './base_channel'; import { EndpointHandlers } from '../../types'; import { Logger } from '../../logger'; interface ChildProcessOptions { socketsPath: string; } export declare class IPCChannel extends BaseChannel { private readonly _emitter; private readonly _ipcClient; private readonly _rpcRequestIds; private readonly _chainID; constructor(logger: Logger, namespace: string, events: ReadonlyArray, endpoints: EndpointHandlers, chainID: Buffer, options: ChildProcessOptions); startAndListen(): Promise; registerToBus(): Promise; subscribe(eventName: string, cb: ListenerFn): void; unsubscribe(eventName: string, cb: ListenerFn): void; once(eventName: string, cb: ListenerFn): void; publish(eventName: string, data?: Record): void; invoke(req: InvokeRequest): Promise; cleanup(_status?: number, _message?: string): void; private get _pubSocket(); private get _subSocket(); private get _rpcServer(); private get _rpcClient(); } export {};