I have recently been working on creating functionality for a module that requires certain content related to the module be deleted before the module itself can be uninstalled. https://www.drupal.org/project/commerce_pos/issues/3006353
I used an example for core's book module where I saw that a service called module_install.uninstall_validator and a ProxyClass called BookUninstallValidator were used in order to implement functionality similar to what I was attempting to achieve.
My question is thus: why is the module_install.uninstall_validator set to lazy and what exactly is a proxy class?
I have searched in the documentation but have been unable to find any useful explanation; so any here or links to such pages would be much appreciated.