/** * In-process broadcast mesh for realtime presence/broadcast. * * Useful for tests and for "side-by-side" demos where several simulated peers * share one page. Each {@link MemoryRealtimeTransport} delivers messages to * every other transport on the same hub (never to itself). */ import type { RealtimeMessage, RealtimeTransport } from './types.js'; export declare class MemoryHub { private transports; /** Create a transport bound to this hub for the given peer id. */ connect(id: string): MemoryRealtimeTransport; /** Number of currently connected transports. */ size(): number; /** @internal */ _broadcast(from: MemoryRealtimeTransport, message: RealtimeMessage): void; /** @internal */ _remove(transport: MemoryRealtimeTransport): void; } export declare class MemoryRealtimeTransport implements RealtimeTransport { readonly id: string; private hub; private handlers; private closed; constructor(hub: MemoryHub, id: string); send(message: RealtimeMessage): void; onMessage(handler: (message: RealtimeMessage) => void): () => void; close(): void; /** @internal */ _deliver(message: RealtimeMessage): void; } //# sourceMappingURL=memory-hub.d.ts.map