Provider constructor receives an object rather than multiple parameters