import Emittery, { UnsubscribeFunction } from 'emittery'; import { type FrameworkEvents } from '../types.js'; /** * Runner emitter */ export declare class Emitter extends Emittery { #private; /** * Define onError handler invoked when `emit` fails * @param errorHandler - The error handler to call when an error is emitted */ onError(errorHandler: (error: any) => void | Promise): void; /** * Override Emittery's `on` to unwrap the `{ name, data }` payload that Emittery v1 passes. * Japa reporters expect the raw data object, not the wrapped one. */ on(eventName: Name | readonly Name[], listener: (eventData: Events[Name]) => void | Promise): UnsubscribeFunction; /** * Emit event */ emit(eventName: Name, eventData?: Events[Name], allowMetaEvents?: boolean): Promise; }