es), but only when
<code>--strictNullChecks</code> is off. With <code>--strictNullChecks</code> on, widening no
longer happens.</p>
<p>Before <code>--strictNullChecks</code> existed, the compiler already had
internal-only types for <code>null</code> and <code>undefined</code>. But these types
needed to be converted to <code>any</code> whenever they became external, such as
when they were displayed in an editor. That's still what happens
when <code>--strictNullChecks</code> is off. For example:</p>
<p><pre c