Extends https://github.com/microsoft/TypeScript/pull/43312 Based on the analysis in https://github.com/microsoft/TypeScript/issues/35524#issuecomment-686698291
Extends #43312
Based on the analysis in #35524 (comment)