Let's agree that the term attribute is wrong, you mean field . TypeScript has its public members by default, so in the absence of anything explicit access is general.
The fact that you do not see private
is only a coincidence, it's possible. There is a current that does not follow this "object-oriented" fashion that everything has to be private, even though people do not even understand why they are doing it. TS is a script language, as the name itself says, so it is much less necessary to follow object-oriented rules than in other languages. But if you have a good reason you can establish that any member is private.
It's a bit different from Java, which by the way people find it private by default and it's not.