code: function makeRegions(agent) {
      let functor = function (id) {
          if (id === undefined) {
              return agent.request('get_universe_regions', undefined);
          }
          else {
              return new RegionImpl(agent, id);
          }
      };
      functor.search = search_1.makeDefaultSearch(agent, "region" /* REGION */);
      functor.names = function (ids) {
          if (ids === undefined) {
              return functor().then(allIds => functor.names(allIds));
          }
          else {
              return names_1.getNames(agent, "region" /* REGION */, ids);
          }
      };
      return functor;
  }
docs: Create a new {@link Regions} instance that uses the given `agent` to
  make its HTTP requests to the ESI interface.
  
  @param agent The agent making actual requests
  @returns An Regions API instance