<p dir="auto">For completeness, we should add a polyfill for <a href="https://nodejs.org/api/vm.html" rel="nofollow">Node's vm module</a>.</p>
<p dir="auto">"moduleResolution" is <a href="https://github.com/denoland/deno/blob/main/cli/config_file.rs#L115">listed as an ignored</a> compiler option, but why is this necessary? Ie. why does it fall under...</p>
<blockquote>
<p dir="auto">there are lots of parts of a TypeScript configuration file that are meaningless in a Deno context or would cause Deno to not function properly if they were applied.</p>
</blockquote>
<p dir="auto">... from <a href="https://deno.land/manual/typescript/configuration#how-deno-uses-a-configuration-file" rel="nofollow">https://deno.land/manual/typescript/configuration#how-deno-uses-a-configuration-file</a></p>
<p dir="auto"><code class="notranslate">compilerOptions.moduleResolution</code> is <strong>meaningful</strong> (as it relates to loading third-party code) but I fail to see how it causes Deno to function improperly.</p>
<p dir="auto">Typescript itself says that the "classic" strategy (which is what Deno uses) <a href="https://www.typescriptlang.org/docs/handbook/module-resolution.html#classic" rel="nofollow">should only exist for backwards-compatability</a> which means that a lot of projects written in Typescript are bound to use Node's strategy where importing a directory will look (by default) for an <code class="notranslate">index.ts</code> file.</p>