import EventEmitter, { ListenerFn } from 'eventemitter3'; export default class Evented { hasEvents: boolean; private events; on: (event: string | symbol, fn: ListenerFn, context?: any) => EventEmitter; once: (event: string | symbol, fn: ListenerFn, context?: any) => EventEmitter; emit: (event: string | symbol, ...args: any[]) => boolean; off: (event: string | symbol, fn?: EventEmitter.ListenerFn | undefined, context?: any, once?: boolean | undefined) => EventEmitter; clear: (event?: string | undefined) => EventEmitter; listeners: (event: string | symbol) => EventEmitter.ListenerFn[]; }