import { ListenerState } from '../Enum.js'; import type { IServiceOptions } from '../interface/config.js'; import type { IServiceMetaData, IServiceRunData } from '../interface/discovery.js'; import type { Listener } from './rpc/Listener.js'; import { Worker } from './Worker.js'; declare abstract class Service extends Worker { constructor(name: string, options: IServiceOptions); stop(reason: string): Promise; installListener(listener: Listener): Promise; registerEndpoint(listener: Listener): Promise; registerEndpoints(): Promise; uninstallListener(id: string): Promise; protected getListenerMetaData(listener: Listener): { id: string; state: ListenerState; targetId: string; targetName: string; weight: number; version: string; labels: { [x: string]: string; }; protocol: string; endpoint: string; codecs: string[]; }; get metaData(): IServiceMetaData; get runData(): IServiceRunData; protected get listenerPool(): Map; protected options_: IServiceOptions; private listenerPool_; private discoveryExecutor_; private subManager_; } export { Service }; //# sourceMappingURL=Service.d.ts.map