It would be good to add a `@struct` annotation to this class to catch any properties initialised outside the constructor.