Skip to content

"The inferred type of X cannot be named without a reference to Y" (TS2742) still happens, when working with npm link to link packages manually #58914

Description

🔎 Search Terms

is:issue is:open 2742

🕗 Version & Regression Information

This seems to not be a regression bug

⏯ Playground Link

https://github.com/Teascade/typescript-error-demonstration

💻 Code

// In the example provided// https://github.com/Teascade/typescript-error-demonstrationimport{extended}from'@privateprefix/lib';// src/index.ts(4,14): error TS2742: The inferred type of 'a' cannot be named without a reference to '@privateprefix/lib/node_modules/joi'. This is likely not portable. A type annotation is necessary.exportconsta=extended.object().keys();

Replacing this with

// Joi is declared, but never used ts(6133)import{typeJoi,extended}from'@privateprefix/lib';// This works now, thoughexportconsta=extended.object().keys();

🙁 Actual behavior

Produces src/index.ts(4,14): error TS2742: The inferred type of 'a' cannot be named without a reference to '@privateprefix/lib/node_modules/joi'. This is likely not portable. A type annotation is necessary.

🙂 Expected behavior

No error is to be expected

Additional information about the issue

In #42873 (comment) it was mentioned, that this issue would now be resolved in TypeScript beta 5.5.0, but it seems to still be broken in this specific scenario

I've made a minimal repository to reroduce this issue in https://github.com/Teascade/typescript-error-demonstration

The GitHub repository has a github action in which the issue is reproduced: https://github.com/Teascade/typescript-error-demonstration/actions/runs/9568149578/job/26377636108

Metadata

Metadata

Labels

Experience EnhancementNoncontroversial enhancementsNeeds InvestigationThis issue needs a team member to investigate its status.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions