mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-09-11 11:50:54 +08:00
Added eventemitter3/eventemitter3.d.ts(0.1.6).
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
///<reference path='eventemitter3.d.ts' />
|
||||
'use strict';
|
||||
|
||||
import EventEmitter = require('eventemitter3');
|
||||
|
||||
class EventEmitterTest {
|
||||
v: EventEmitter;
|
||||
|
||||
constructor() {
|
||||
this.v = new EventEmitter();
|
||||
this.v = new EventEmitter.EventEmitter();
|
||||
this.v = new EventEmitter.EventEmitter2();
|
||||
this.v = new EventEmitter.EventEmitter3();
|
||||
}
|
||||
|
||||
listeners() {
|
||||
var v1: Function[] = this.v.listeners('click');
|
||||
}
|
||||
|
||||
emit() {
|
||||
var v1: boolean = this.v.emit('click');
|
||||
var v2: boolean = this.v.emit('click', 1);
|
||||
var v3: boolean = this.v.emit('click', 1, '1');
|
||||
var v4: boolean = this.v.emit('click', 1, '1', true);
|
||||
var v5: boolean = this.v.emit('click', 1, '1', true, new Date());
|
||||
}
|
||||
|
||||
on() {
|
||||
var fn = () => console.log(1);
|
||||
var v1: EventEmitter = this.v.on('click', fn);
|
||||
var v2: EventEmitter = this.v.on('click', fn, this);
|
||||
}
|
||||
|
||||
once() {
|
||||
var fn = () => console.log(1);
|
||||
var v1: EventEmitter = this.v.once('click', fn);
|
||||
var v2: EventEmitter = this.v.once('click', fn, this);
|
||||
}
|
||||
|
||||
removeListener() {
|
||||
var fn = () => console.log(1);
|
||||
var v1: EventEmitter = this.v.removeListener('click', fn);
|
||||
var v2: EventEmitter = this.v.removeListener('click', fn, true);
|
||||
}
|
||||
|
||||
removeAllListeners() {
|
||||
var v1: EventEmitter = this.v.removeAllListeners('click');
|
||||
}
|
||||
|
||||
off() {
|
||||
var fn = () => console.log(1);
|
||||
var v1: EventEmitter = this.v.off('click', fn);
|
||||
var v2: EventEmitter = this.v.off('click', fn, true);
|
||||
}
|
||||
|
||||
addListener() {
|
||||
var fn = () => console.log(1);
|
||||
var v1: EventEmitter = this.v.addListener('click', fn);
|
||||
var v2: EventEmitter = this.v.addListener('click', fn, this);
|
||||
}
|
||||
|
||||
setMaxListeners() {
|
||||
var v1: EventEmitter = this.v.setMaxListeners();
|
||||
}
|
||||
}
|
||||
Vendored
+100
@@ -0,0 +1,100 @@
|
||||
// Type definitions for EventEmitter3 0.1.6
|
||||
// Project: https://github.com/primus/eventemitter3
|
||||
// Definitions by: Yuichi Murata <https://github.com/mrk21>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module EventEmitter3 {
|
||||
export class EventEmitter {
|
||||
/**
|
||||
* Minimal EventEmitter interface that is molded against the Node.js
|
||||
* EventEmitter interface.
|
||||
*
|
||||
* @constructor
|
||||
* @api public
|
||||
*/
|
||||
constructor();
|
||||
|
||||
/**
|
||||
* Return a list of assigned event listeners.
|
||||
*
|
||||
* @param {String} event The events that should be listed.
|
||||
* @returns {Array}
|
||||
* @api public
|
||||
*/
|
||||
listeners(event: string): Function[];
|
||||
|
||||
/**
|
||||
* Emit an event to all registered event listeners.
|
||||
*
|
||||
* @param {String} event The name of the event.
|
||||
* @returns {Boolean} Indication if we've emitted an event.
|
||||
* @api public
|
||||
*/
|
||||
emit(event: string, ...args: any[]): boolean;
|
||||
|
||||
/**
|
||||
* Register a new EventListener for the given event.
|
||||
*
|
||||
* @param {String} event Name of the event.
|
||||
* @param {Functon} fn Callback function.
|
||||
* @param {Mixed} context The context of the function.
|
||||
* @api public
|
||||
*/
|
||||
on(event: string, fn: Function, context?: any): EventEmitter;
|
||||
|
||||
/**
|
||||
* Add an EventListener that's only called once.
|
||||
*
|
||||
* @param {String} event Name of the event.
|
||||
* @param {Function} fn Callback function.
|
||||
* @param {Mixed} context The context of the function.
|
||||
* @api public
|
||||
*/
|
||||
once(event: string, fn: Function, context?: any): EventEmitter;
|
||||
|
||||
/**
|
||||
* Remove event listeners.
|
||||
*
|
||||
* @param {String} event The event we want to remove.
|
||||
* @param {Function} fn The listener that we need to find.
|
||||
* @param {Boolean} once Only remove once listeners.
|
||||
* @api public
|
||||
*/
|
||||
removeListener(event: string, fn: Function, once?: boolean): EventEmitter;
|
||||
|
||||
/**
|
||||
* Remove all listeners or only the listeners for the specified event.
|
||||
*
|
||||
* @param {String} event The event want to remove all listeners for.
|
||||
* @api public
|
||||
*/
|
||||
removeAllListeners(event: string): EventEmitter;
|
||||
|
||||
//
|
||||
// Alias methods names because people roll like that.
|
||||
//
|
||||
off(event: string, fn: Function, once?: boolean): EventEmitter;
|
||||
addListener(event: string, fn: Function, context?: any): EventEmitter;
|
||||
|
||||
//
|
||||
// This function doesn't apply anymore.
|
||||
//
|
||||
setMaxListeners(): EventEmitter;
|
||||
}
|
||||
export module EventEmitter {
|
||||
//
|
||||
// Expose the module.
|
||||
//
|
||||
export class EventEmitter extends EventEmitter3.EventEmitter {}
|
||||
export class EventEmitter2 extends EventEmitter3.EventEmitter {}
|
||||
export class EventEmitter3 extends EventEmitter3.EventEmitter {}
|
||||
}
|
||||
}
|
||||
|
||||
declare module 'eventemitter3' {
|
||||
//
|
||||
// Expose the module.
|
||||
//
|
||||
class EventEmitter extends EventEmitter3.EventEmitter {}
|
||||
export = EventEmitter;
|
||||
}
|
||||
Reference in New Issue
Block a user