>>omouse+(OP)
I would take elisp over TypeScript any day. The tooling around TypeScript is hot garbage, debugging async code is a huge time waster, and things that are trivial with dynamic binding turn into major undertakings because of the module system. Also the verbosity and reams of boilerplate.