The solution is to edit the paths config to find nested files.
"baseUrl": ".",
"paths": {
"app*": ["src/app*"]
}
Now when I add import { Test } from 'app/components' Typescript will look into src/app/components/index.js and it works. I also like to add @ to aliases to avoid conflicts with other modules. Like so:
"@app*": ["src/app*"]