Classes that define the contract for a resource provider.