nats-micro
Version:
NATS micro compatible extra-lightweight microservice library
19 lines (18 loc) • 925 B
TypeScript
import { Broker } from './broker.js';
import { MessageHandler, Subject, BrokerResponse, RequestManyOptions, RequestOptions, SendOptions } from './types/broker.js';
export declare class InMemoryBroker implements Broker {
private static nextClientId;
private readonly ee;
readonly clientId: number;
readonly name = "test";
constructor();
connect(): Promise<this>;
disconnect(): Promise<void>;
createInbox(): string;
on<T>(subject: Subject, listener: MessageHandler<T>, queue?: string): void;
off<T>(subject: Subject, listener: MessageHandler<T>): void;
offAll(): 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 | undefined>>;
}