UNPKG

nats-micro

Version:

NATS micro compatible extra-lightweight microservice library

15 lines (14 loc) 832 B
import { MessageHandler, RequestManyOptions, RequestOptions, SendOptions, Subject, BrokerResponse } from './types/broker.js'; export interface Broker { get clientId(): number | undefined; get name(): string; connect(): Promise<this>; disconnect(): Promise<void>; createInbox(): string; on<T>(subject: Subject, listener: MessageHandler<T>): void; 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): AsyncIterable<BrokerResponse<R>>; request<T, R>(subject: Subject, data: T, options?: RequestOptions): Promise<BrokerResponse<R | undefined>>; }