import EventEmitter from 'eventemitter3'; import type { Emitter, EventMap } from './types.ts'; export declare function createEmitter(): Emitter; export declare const emitter: { eventNames: () => (keyof EventMap)[]; listeners: (event: T) => ((...args: EventEmitter.ArgumentMap[Extract]) => void)[]; listenerCount: (event: keyof EventMap) => number; emit: (event: T, ...args: EventEmitter.ArgumentMap[Extract]) => boolean; on: (event: T, fn: (...args: EventEmitter.ArgumentMap[Extract]) => void, context?: any) => EventEmitter; addListener: (event: T, fn: (...args: EventEmitter.ArgumentMap[Extract]) => void, context?: any) => EventEmitter; once: (event: T, fn: (...args: EventEmitter.ArgumentMap[Extract]) => void, context?: any) => EventEmitter; removeListener: (event: T, fn?: ((...args: EventEmitter.ArgumentMap[Extract]) => void) | undefined, context?: any, once?: boolean) => EventEmitter; off: (event: T, fn?: ((...args: EventEmitter.ArgumentMap[Extract]) => void) | undefined, context?: any, once?: boolean) => EventEmitter; removeAllListeners: (event?: keyof EventMap | undefined) => EventEmitter; };