Fun fact: `typedef int I;` and `int typedef I;` are both valid and do the same thing.
typedef x;
Even "better", C declarators can be empty in order to allow for struct/enum declarations that do not list any variables. So you can leave out the variable, add qualifiers, etc: typedef;
const typedef;
typedef const;
It's a really fun syntax in some ways.