'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.typesToObject = exports.typesObj = undefined;
exports.default = types;

var _models;

function _load_models() {
  return _models = require('./models');
}

function types() {
  return [(_models || _load_models()).Source, (_models || _load_models()).Component, (_models || _load_models()).Version, (_models || _load_models()).ScopeMeta, (_models || _load_models()).Symlink];
}


function typesToObject(typesArr) {
  return typesArr.reduce(function (map, objectType) {
    map[objectType.name] = objectType;
    return map;
  }, {});
}

var typesObj = typesToObject(types());

exports.typesObj = typesObj;
exports.typesToObject = typesToObject;