@@ -31,12 +31,11 @@ export const generateModuleDeclaration = (
3131) => {
3232 const moduleAPI = modules [ _ . upperFirst ( module . name ) ] || [ ] ;
3333 const newModule = ! modules [ _ . upperFirst ( module . name ) ] ;
34- const isStaticVersion =
35- module . type === 'Module' &&
36- API . some (
37- ( tModule , tIndex ) =>
38- index !== tIndex && tModule . name . toLowerCase ( ) === module . name . toLowerCase ( ) ,
39- ) ;
34+ const instanceModuleForStaticVersion = API . find (
35+ ( tModule , tIndex ) =>
36+ index !== tIndex && tModule . name . toLowerCase ( ) === module . name . toLowerCase ( ) ,
37+ ) ;
38+ const isStaticVersion = module . type === 'Module' && ! ! instanceModuleForStaticVersion ;
4039 const isClass = module . type === 'Class' || isStaticVersion ;
4140 const parentModules : ParsedDocumentationResult = [ ] ;
4241 let parentModule :
@@ -53,11 +52,23 @@ export const generateModuleDeclaration = (
5352 // Interface Declaration
5453 if ( newModule ) {
5554 if ( module . type !== 'Structure' ) {
56- if ( utils . isEmitter ( module ) ) {
55+ let extendsInfo = '' ;
56+ if ( module . extends ) {
57+ extendsInfo = ` extends ${ module . extends } ` ;
58+ } else if (
59+ utils . isEmitter ( module ) ||
60+ ( isStaticVersion &&
61+ instanceModuleForStaticVersion &&
62+ utils . isEmitter ( instanceModuleForStaticVersion ) )
63+ ) {
64+ extendsInfo = ` extends ${ isClass ? 'NodeEventEmitter' : 'NodeJS.EventEmitter' } ` ;
65+ }
66+ if ( module . name . toLowerCase ( ) === 'session' && isStaticVersion ) {
67+ console . log ( { isStaticVersion, instanceModuleForStaticVersion, extendsInfo } ) ;
68+ }
69+ if ( extendsInfo ) {
5770 moduleAPI . push (
58- `${ isClass ? 'class' : 'interface' } ${ _ . upperFirst (
59- module . name ,
60- ) } extends ${ module . extends || ( isClass ? 'NodeEventEmitter' : 'NodeJS.EventEmitter' ) } {`,
71+ `${ isClass ? 'class' : 'interface' } ${ _ . upperFirst ( module . name ) } ${ extendsInfo } {` ,
6172 ) ;
6273 moduleAPI . push ( '' , `// Docs: ${ module . websiteUrl } ` , '' ) ;
6374 } else {
0 commit comments