typescript-eslint icon indicating copy to clipboard operation
typescript-eslint copied to clipboard

Docs: [no-inferrable-types] Explain whether and how to use (or not use) with `isolatedDeclarations`

Open pikadun opened this issue 1 year ago • 2 comments

Before You File a Proposal Please Confirm You Have Done The Following...

My proposal is suitable for this project

  • [X] I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal).

Link to the rule's documentation

https://typescript-eslint.io/rules/no-inferrable-types/

Description

It would be nice to use "no-inferrable-types" with isolatedDeclarations

Fail

const a: bigint = 10n;
export const b = true;

Pass

const a = 10n;
export const b: boolean = true;

Additional Info

No response

pikadun avatar May 22 '24 07:05 pikadun

It's going to be very hard for us to do this because it depends on the constraints that the flag implies.

If it's too complicated we might just have to advise that people don't use the two together or else we'd have to try and match the same logic TS uses.

bradzacher avatar May 22 '24 08:05 bradzacher

Strong -1 on encoding TS semantics in our rule. ID exists almost precisely to eliminate "inferred types" so I'm not sure why anyone wants to use it with no-inferrable-types. We can add to docs saying they are incompatible.

Josh-Cena avatar May 29 '24 13:05 Josh-Cena