こんな表現を見かけました。

typedef struct {int data;} *koko;
koko a = 5;

なんで
kokoは構造体なのに、こんな表現が許されるのでしょうか?