=== tests/cases/conformance/jsdoc/declarations/base.js === class Base { >Base : Base constructor() {} } const BaseFactory = () => { >BaseFactory : { (): Base; Base: typeof Base; } >() => { return new Base();} : { (): Base; Base: typeof Base; } return new Base(); >new Base() : Base >Base : typeof Base }; BaseFactory.Base = Base; >BaseFactory.Base = Base : typeof Base >BaseFactory.Base : typeof Base >BaseFactory : { (): Base; Base: typeof Base; } >Base : typeof Base >Base : typeof Base module.exports = BaseFactory; >module.exports = BaseFactory : { (): Base; Base: typeof Base; } >module.exports : { (): Base; Base: typeof Base; } >module : { exports: { (): Base; Base: typeof Base; }; } >exports : { (): Base; Base: typeof Base; } >BaseFactory : { (): Base; Base: typeof Base; } === tests/cases/conformance/jsdoc/declarations/file.js === /** @typedef {typeof import('./base')} BaseFactory */ /** * * @param {InstanceType} base * @returns {InstanceType} */ const test = (base) => { >test : (base: InstanceType) => Base >(base) => { return base;} : (base: InstanceType) => Base >base : Base return base; >base : Base };