should be type that is passed in the constructor.