import mitt from 'mitt' import type { EventBusKeyPayloadMap, EventBusKeys } from '~~/lib/core/composables/eventBus' export default defineNuxtPlugin(() => { const emitter = mitt() return { provide: { eventBus: { on: ( key: T, handler: (event: EventBusKeyPayloadMap[T]) => void ) => emitter.on(key, handler), emit: (key: T, payload: EventBusKeyPayloadMap[T]) => emitter.emit(key, payload) } } } })