I have a Swift protocol that defines a generic function for making network requests. It looks something like this:
protocol TaskManagerProtocol { func run