Accepts a imageUpload function for custom image upload strategies