Kann natürlich jeder machen wie er will. Aber diverse Diskussionen (z.B. hier) legen nahe, dass eine Mehrheit Code ohne solche typedefs lesbarer findet (die akzeptierte Antwort dort geht auf genau den Fall ein, in dem viele so ein typedef sinnvoll finden: Genau dann, wenn man gar nicht wissen SOLL, dass es sich um einen Pointer handelt).
Also typedefs generell find eich ganz nützlich in bestimmten Situationen. Um einen Pointer "zu verstecken" finde ich das aber furchtbar, weil ich dann im Code immer im Zweifel bin ob ich gerade einen Pointer oder ein Objekt benutze.
Wo ich es ganz nützlich finde ist bei Funktionstypen. z.B.
Wenn man dann einen Funktionspointer hinschreibt wird das schnell kompliziert deswegen ist es da recht nützlich wenn ich das mit einem typedef lesbarer mache.