Microsoft/TypeScript
在 GitHub 查看Union tuple type in rest argument can't accpect less argument.
Open
#48,663 创建于 2022年4月13日
BugDomain: check: Variance RelationshipsHelp Wanted
仓库指标
- Star
- (48,455 star)
- PR 合并指标
- (平均合并 6天 17小时) (30 天内合并 9 个 PR)
描述
Bug Report
🔎 Search Terms
source has but target allows only
🕗 Version & Regression Information
- This is a crash
⏯ Playground Link
Playground link with relevant code
💻 Code
const func: (...args: [number, string] | [string, number]) => void = (item) => { }
🙁 Actual behavior
throw error
Type '(item: string | number) => void' is not assignable to type '(...args: [number, string] | [string, number]) => void'.
Types of parameters 'item' and 'args' are incompatible.
Type '[number, string] | [string, number]' is not assignable to type '[item: string | number]'.
Type '[number, string]' is not assignable to type '[item: string | number]'.
Source has 2 element(s) but target allows only 1.
🙂 Expected behavior
no error