import { OnModuleDestroy, OnModuleInit } from '@nestjs/common'; import * as Consul from 'consul'; import { IConsulService } from '@nestcloud/common'; import { IConsulServiceOptions } from './interfaces/consul-service-options.interface'; import { IServiceNode } from '../common'; export declare class ConsulService implements OnModuleInit, OnModuleDestroy, IConsulService { private readonly consul; private store; private readonly logger; private readonly discoveryHost; private readonly serviceId; private readonly serviceName; private readonly servicePort; private readonly timeout; private readonly deregisterCriticalServiceAfter; private readonly interval; private readonly maxRetry; private readonly retryInterval; private readonly protocol; private readonly route; private readonly tcp; private readonly script; private readonly dockerContainerId; private readonly shell; private readonly ttl; private readonly notes; private readonly status; private readonly includes; constructor(consul: Consul, options: IConsulServiceOptions); init(): Promise; watch(service: string, callback: (services: IServiceNode[]) => void): void; watchServiceList(callback: (service: string[]) => void): void; getServices(): { [service: string]: IServiceNode[]; }; getServiceNames(): string[]; getServiceNodes(service: string, passing?: boolean): IServiceNode[]; onModuleInit(): Promise; onModuleDestroy(): Promise; private generateService; private registerService; private cancelService; }