import type { WidgetResponse, WidgetCallbacks } from "../domain"; import type { WidgetStateManager } from "./WidgetStateManager"; import { EventHandlerFactory } from "./events/EventHandlerFactory"; export class WidgetEventService { private handlerFactory: EventHandlerFactory; constructor(hide: () => void, resize: (height: string) => void, userId: string, transactionId?: string, callbacks?: WidgetCallbacks, stateManager?: WidgetStateManager) { this.handlerFactory = new EventHandlerFactory(hide, resize, userId, transactionId, callbacks, stateManager); } async handleMessage(message: string, isForm: boolean): Promise { return await this.handlerFactory.processMessage(message, isForm); } }