UNPKG

nats-micro

Version:

NATS micro compatible extra-lightweight microservice library

30 lines (29 loc) 1.3 kB
import * as nats from 'nats'; import { Broker } from './broker.js'; import { RequestOptions, SendOptions, BrokerResponse, Subject, RequestManyOptions, MessageHandler } from './types/broker.js'; export type { ConnectionOptions } from 'nats'; export declare class NatsBroker implements Broker { readonly options: nats.ConnectionOptions; clientId: number | undefined; private readonly ee; private connection; private connectionClosedWaiter; private readonly codec; private subscriptions; constructor(options: nats.ConnectionOptions); get name(): string; connect(): Promise<this>; disconnect(): Promise<void>; createInbox(): string; private decode; private handleMessageFromSubscription; private encodeHeaders; private decodeHeaders; private subscribe; private unsubscribe; on<T>(subject: Subject, listener: MessageHandler<T>, queue?: string | undefined): void; off<T>(subject: Subject, listener: MessageHandler<T>): void; send<T>(subject: Subject, data: T, options?: SendOptions): Promise<void>; requestMany<T, R>(subject: Subject, data: T, options?: RequestManyOptions): AsyncIterableIterator<BrokerResponse<R>>; request<T, R>(subject: Subject, data: T, options?: RequestOptions): Promise<BrokerResponse<R>>; }