// Automatically generated from TypeScript type definitions provided by
// DefinitelyTyped (https://github.com/DefinitelyTyped/DefinitelyTyped),
// which is licensed under the MIT license; see file DefinitelyTyped-LICENSE
// in parent directory.
// Type definitions for Node.js 10.5.x
// Project: http://nodejs.org/
// Definitions by: Microsoft TypeScript
// DefinitelyTyped
// Parambir Singh
// Christian Vaagland Tellnes
// Wilco Bakker
// Nicolas Voigt
// Chigozirim C.
// Flarna
// Mariusz Wiktorczyk
// wwwy3y3
// Deividas Bakanas
// Kelvin Jin
// Alvis HT Tang
// Sebastian Silbermann
// Hannes Magnusson
// Alberto Schiabel
// Klaus Meinhardt
// Huw
// Nicolas Even
// Bruno Scheufler
// Mohsen Azimi
// Hong Vn Khi
// Alexander T.
// Lishude
// Andrew Makarov
// Zane Hannan AU
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/**
* @externs
* @fileoverview Definitions for module "events"
*/
var events = function() {};
/**
* @constructor
* @extends {NodeJS.EventEmitter}
*/
events.EventEmitter;
/**
* @type {events.EventEmitter}
*/
events.EventEmitter.EventEmitter;
/**
* @param {events.EventEmitter} emitter
* @param {string} event
* @return {number}
*/
events.EventEmitter.listenerCount = function(emitter, event) {};
/**
* @type {number}
*/
events.EventEmitter.defaultMaxListeners;
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.addListener = function(event, listener) {};
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.on = function(event, listener) {};
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.once = function(event, listener) {};
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.prependListener = function(event, listener) {};
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.prependOnceListener = function(event, listener) {};
/**
* @param {string} event
* @param {Function} listener
* @return {*}
*/
events.EventEmitter.prototype.removeListener = function(event, listener) {};
/**
* @param {string=} event
* @return {*}
*/
events.EventEmitter.prototype.removeAllListeners = function(event) {};
/**
* @param {number} n
* @return {*}
*/
events.EventEmitter.prototype.setMaxListeners = function(n) {};
/**
* @return {number}
*/
events.EventEmitter.prototype.getMaxListeners = function() {};
/**
* @param {string} event
* @return {Array}
*/
events.EventEmitter.prototype.listeners = function(event) {};
/**
* @param {string} event
* @param {...*} args
* @return {boolean}
*/
events.EventEmitter.prototype.emit = function(event, args) {};
/**
* @return {Array}
*/
events.EventEmitter.prototype.eventNames = function() {};
/**
* @param {string} type
* @return {number}
*/
events.EventEmitter.prototype.listenerCount = function(type) {};
module.exports = events;