'use strict';

var tslib_es6 = require('../../../../../../tslib@2.3.0/node_modules/tslib/tslib.es6.js');
var extension = require('../../extension.js');
var Component = require('../../view/Component.js');
var SingleAxisView = require('../axis/SingleAxisView.js');
var axisModelCreator = require('../../coord/axisModelCreator.js');
var AxisModel = require('../../coord/single/AxisModel.js');
var singleCreator = require('../../coord/single/singleCreator.js');
var install$1 = require('../axisPointer/install.js');
var AxisView = require('../axis/AxisView.js');
var SingleAxisPointer = require('../axisPointer/SingleAxisPointer.js');

var SingleView = /** @class */function (_super) {
  tslib_es6.__extends(SingleView, _super);
  function SingleView() {
    var _this = _super !== null && _super.apply(this, arguments) || this;
    _this.type = SingleView.type;
    return _this;
  }
  SingleView.type = 'single';
  return SingleView;
}(Component.default);
function install(registers) {
  extension.use(install$1.install);
  AxisView.default.registerAxisPointerClass('SingleAxisPointer', SingleAxisPointer.default);
  registers.registerComponentView(SingleView);
  // Axis
  registers.registerComponentView(SingleAxisView.default);
  registers.registerComponentModel(AxisModel.default);
  axisModelCreator.default(registers, 'single', AxisModel.default, AxisModel.default.defaultOption);
  registers.registerCoordinateSystem('single', singleCreator.default);
}

exports.install = install;
