typescript enum type parameter