opinionated-machine
Version:
Very opinionated DI framework for fastify, built on top of awilix
19 lines (18 loc) • 774 B
TypeScript
import type { SSEMessage } from '../../sseTypes.js';
import type { SSERoomAdapter, SSERoomMessageHandler } from '../types.js';
/**
* Default no-op adapter for single-node deployments.
*
* This adapter does nothing - all room operations are local only.
* Use this (the default) when running a single server instance.
*
* For multi-node deployments, use RedisAdapter or a custom adapter.
*/
export declare class InMemoryAdapter implements SSERoomAdapter {
connect(): Promise<void>;
disconnect(): Promise<void>;
subscribe(_room: string): Promise<void>;
unsubscribe(_room: string): Promise<void>;
publish(_room: string, _message: SSEMessage, _metadata?: Record<string, unknown>): Promise<void>;
onMessage(_handler: SSERoomMessageHandler): void;
}