Data types supported by Polars are, for the most part, quite classic.
List of data types
Exotic Polars types
Structs are series combining multiple columns.
Enum is used for categorical variables. It is stricter, but also more efficient than the more flexible and slower Categorical type. When categories are all known before runtime, use Enum. If you need to infer the categories at runtime, use Categorical.