For context, I'm trying to create a Eslint plugin to detect JavaScript runtime compatibility issues.
So I need to keep track of variable types - a bit like how TypeScript keeps track of types.
I find the way Eslint exposes the AST to be quite limiting.