UNPKG

nats

Version:

Node.js client for NATS, a lightweight, high-performance cloud native messaging system

42 lines (41 loc) 1.6 kB
import { NatsConnection, RequestManyOptions } from "./types"; import { QueuedIterator } from "./queued_iterator"; import { ServiceInfo, ServiceStats, ServiceVerb } from "./mod"; import { ServiceIdentity, ServiceSchema } from "./service"; export interface ServiceClient { /** * Pings services * @param name - optional * @param id - optional */ ping(name?: string, id?: string): Promise<QueuedIterator<ServiceIdentity>>; /** * Requests all the stats from services * @param name * @param id */ stats(name?: string, id?: string): Promise<QueuedIterator<ServiceStats>>; /** * Requests schema information from services * @param name * @param id */ schema(name?: string, id?: string): Promise<QueuedIterator<ServiceSchema>>; /** * Requests info from services * @param name * @param id */ info(name?: string, id?: string): Promise<QueuedIterator<ServiceInfo>>; } export declare class ServiceClientImpl implements ServiceClient { nc: NatsConnection; prefix: string | undefined; opts: RequestManyOptions; constructor(nc: NatsConnection, opts?: RequestManyOptions, prefix?: string); ping(name?: string, id?: string): Promise<QueuedIterator<ServiceIdentity>>; stats(name?: string, id?: string): Promise<QueuedIterator<ServiceStats>>; schema(name?: string, id?: string): Promise<QueuedIterator<ServiceSchema>>; info(name?: string, id?: string): Promise<QueuedIterator<ServiceInfo>>; q<T>(v: ServiceVerb, name?: string, id?: string): Promise<QueuedIterator<T>>; }