function getOptionsObjectWithCallbackFunction(defaultOptions, optionsOrCallback) {
  return Object.assign(
    {},
    defaultOptions,
    typeof optionsOrCallback === 'function' ? { callback: optionsOrCallback } : optionsOrCallback
  );
}
Gets a normalized object with provided defaults. If the 2nd argument is a function,
we add this to the returned object with `callback` as its key.

@name getOptionsObjectWithCallbackFunction
@param {Object} defaultOptions The default options
@param {Object|Function} optionsOrCallback The options object or callback function
@returns {Object} The normalized options object