text: import fetchWrapper from "./fetch-wrapper";
  export default function withDefaults(oldEndpoint, newDefaults) {
      const endpoint = oldEndpoint.defaults(newDefaults);
      const newApi = function (route, parameters) {
          const endpointOptions = endpoint.merge(route, parameters);
          if (!endpointOptions.request || !endpointOptions.request.hook) {
              return fetchWrapper(endpoint.parse(endpointOptions));
          }
          return endpointOptions.request.hook((options) => {
              return fetchWrapper(endpoint.parse(options));
          }, endpointOptions);
      };
      return Object.assign(newApi, {
          endpoint,
          defaults: withDefaults.bind(null, endpoint)
      });
  }
  