import EventBusRepositoryInterface, { EventHandler } from './EventBusRepositoryInterface'; export default class EventBusMemoryRepository implements EventBusRepositoryInterface { private eventBusConfig; private emitter; private wildcardHandlers; private logger; /** * Constructor */ constructor(eventBusConfig: any); /** * Emit an event with optional data */ emit(event: string, data?: any, ttlMinutes?: number): Promise; /** * Subscribe to an event */ on(eventPattern: string, handler: EventHandler): void; /** * Subscribe to an event with durable delivery (guaranteed delivery) * Not supported in Memory driver - use RabbitMQ for guaranteed delivery */ onDurable(_eventPattern: string, _handler: EventHandler): Promise; /** * Unsubscribe from an event */ off(eventPattern: string, handler?: EventHandler): void; /** * Remove all listeners for an event or all events */ removeAllListeners(eventPattern?: string): void; /** * Get the count of listeners for a specific event */ listenerCount(eventPattern: string): number; /** * Get all event patterns that have listeners */ eventNames(): string[]; /** * Check if a pattern contains wildcards */ private isWildcardPattern; /** * Add a wildcard handler */ private addWildcardHandler; /** * Remove a wildcard handler */ private removeWildcardHandler; /** * Emit events to wildcard handlers */ private emitWildcardEvents; /** * Check if an event matches a wildcard pattern */ private matchesWildcard; }