According to #92 (comment), and because it's not in Internal, HasResolver is a public API. However, the module has no doc comment, and HasResolver has no documentation.
If we intend people to provide implementations of HasResolver, we should document the class and its methods, and say what the contract of the implementations is.
If not, we should shift it to Internal.