The target data seems dependent on the Settings
component and not a generalized type.
And these original types are actually polymorphic at the implementation level. Making the polymorphism explicit or restricting it to be monomorphic in compile time wins in e2e quality, safety, and performance.