import { IBus } from "./base"; import { ReadableStream } from "../streams"; export type BusCallback = (message: T) => U; export class CallbackBus implements IBus { constructor(readonly callback: BusCallback) { } dispatch(message: T): U { return this.callback(message); } } export const createCallbackBus = (callback: BusCallback) => new CallbackBus(callback);