Roblox uses a heavily customized version of Lua, and in it they've fixed many of the pain points of Lua and JS. One example is their Lua allows value types/copy semantics, native number types like f32 / i32, and simd. These are important if you care about tracking performance carefully which I believe they do.
They use Lua heavily in Roblox so they've got a lot of tools and expertise in it, so I assume they see a lot of benefit to further standardizing their high level language.
I'm guessing they have some tooling to auto-translate typescript into Lua to massively speed up their porting. TypeScript has a very good compiler API for doing exactly this sort of thing and I've written a decent TypeScript <-> Python translation before.