As far as I know there is no other way. We can dynamically define under which property path is the state of the object, so it can't be achieved by a static interface.