Bug Report
🔎 Search Terms
noUncheckedIndexAccess, array
🕗 Version & Regression Information
- This is the behavior in every version I tried, and I reviewed the FAQ for entries about noUncheckedIndexAccess
⏯ Playground Link
Playground link with relevant code
💻 Code
With noUncheckedIndexAccess enabled:
const arr: string[] = [];
type IncorrectArrayType = typeof arr[0]; // string
// there's a workaround, but it involves runtime overhead
const correct = arr[0];
type CorrectArrayType = typeof correct; // string | undefined
🙁 Actual behavior
Indexing an array type doesn't include undefined with noUncheckedIndexAccess enabled
🙂 Expected behavior
IncorrectArrayType should be string | undefined