Microsoft/TypeScript
Voir sur GitHubAnnotated parameters are not used for inferring rest parameters
Open
#58 746 ouverte le 3 juin 2024
Domain: check: Type InferenceHelp WantedPossible Improvement
Métriques du dépôt
- Stars
- (48 455 stars)
- Métriques de merge PR
- (Merge moyen 6j 17h) (9 PRs mergées en 30 j)
Description
🔎 Search Terms
annotated, "rest parameter"
🕗 Version & Regression Information
- This is the behavior in every version I tried
⏯ Playground Link
💻 Code
function mkAction<Input extends any[]>(action: {
f1:(...xs:Input) => void,
f2:(...xs:Input) => void,
}) {}
mkAction({
f1(x:string, y:number) {},
f2(x, y) {},
// x and y are inferred as "any",
// even though f2 is inferred as "(x: string, y: number) => void"
});
🙁 Actual behavior
Arguments "x" and "y" are inferred as "any", even though "f2" has the correct type (x: string, y: number) => void
🙂 Expected behavior
I would expect inference of x: string and y: number for the arguments of "f2".
Additional information about the issue
No response