Most (but not all) objects in DSFML do not use polymorphism, but they are declared as classes.
I think that for a lot of reasons, anything that can be a struct should be a struct. Anything that needs polymorphism can be declared as a class, but otherwise should be a struct.
The 2.3 API will follow this and will change any classes that do not use polymorphism to be structs instead.