Rework Serializer interface and Types