Things are weird in the VSC world
At work I am handling a fairly massive TypeScript monorepo, and I have been using Cursor as my main IDE for a few months. The live type inference in the editor has been painfully slow since I started on this project, but I thought there was not much I could do about it.
Eventually, as the project grew, Cursor started showing a "TypeScript server is approaching the memory limit" notice, suggesting I click it to raise the limit. When I looked into it, I noticed that the bundled Node.js was 32-bit, with strict memory limits, and it was also relatively old. Fortunately, VS Code (and its forks) lets you point the TypeScript server to an alternative Node.js runtime. Switching to a modern 64-bit build and giving it a generous memory limit, to ease GC pressure, made everything feel much snappier.
So why does it ship with that Node.js version? That remains a mystery.