UNPKG

nats-micro

Version:

NATS micro compatible extra-lightweight microservice library

49 lines (39 loc) 918 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>>; }