The generic state type doesn't has to be an enum anymore