// Type definitions for component-emitter v1.2.1 // Project: https://www.npmjs.com/package/component-emitter // Definitions by: Peter Snider // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped/emitter-component interface Emitter { (obj?: Object): Emitter; on(event: string, listener: Function): Emitter; once(event: string, listener: Function): Emitter; off(event?: string, listener?: Function): Emitter; emit(event: string, ...args: any[]): boolean; listeners(event: string): Function[]; hasListeners(event: string): boolean; } declare module 'component-emitter' { var Emitter: Emitter; }