diff --git a/xml2js/index.d.ts b/xml2js/index.d.ts index 6dd10acce4..12d2488cbe 100644 --- a/xml2js/index.d.ts +++ b/xml2js/index.d.ts @@ -1,12 +1,14 @@ // Type definitions for node-xml2js // Project: https://github.com/Leonidas-from-XIV/node-xml2js -// Definitions by: Michel Salib , Jason McNeil , Christopher Currens +// Definitions by: Michel Salib , Jason McNeil , Christopher Currens , Edward Hinkle // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// export = xml2js; +import * as events from 'events' + declare namespace xml2js { function parseString(xml: convertableToString, callback: (err: any, result: any) => void): void; function parseString(xml: convertableToString, options: OptionsV2, callback: (err: any, result: any) => void): void; @@ -21,7 +23,7 @@ declare namespace xml2js { buildObject(rootObj: any): string; } - class Parser { + class Parser extends events.EventEmitter { constructor(options?: OptionsV2); parseString(str: convertableToString, cb?: Function): void; reset(): void; diff --git a/xml2js/xml2js-tests.ts b/xml2js/xml2js-tests.ts index 62324b6908..8ee7b7ce25 100644 --- a/xml2js/xml2js-tests.ts +++ b/xml2js/xml2js-tests.ts @@ -69,6 +69,11 @@ var outString = builder.buildObject({ var parser = new xml2js.Parser(); +parser.on('end', (result: any) => { + console.log("Parser Finished"); + return; +}); + var v1Defaults = xml2js.defaults['0.1']; v1Defaults.async = true;