import type { Token } from '@nl-framework/core'; import type { Logger } from '@nl-framework/logger'; import type { MessagePattern } from '../interfaces/transport'; export interface MessageDispatcherOptions { resolve?: (token: Token) => Promise | T; logger?: Logger; } export declare class MessageDispatcher { private readonly options; private readonly handlers; constructor(options?: MessageDispatcherOptions); registerController(controller: object): void; dispatch(pattern: MessagePattern, data: unknown, metadata?: Record): Promise; private matchPattern; private handleException; private collectExceptionFilters; private resolveExceptionFilter; private isFilterInstance; } //# sourceMappingURL=message-dispatcher.d.ts.map