/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { __extends } from "tslib";
import { XYChartDescription } from "./XYChartDescription";
import { markType } from "./type";
/**
 * @hidden
 */
var FinancialChartDescription = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(FinancialChartDescription, _super);
    function FinancialChartDescription() {
        var _this = _super.call(this) || this;
        _this.wj = null;
        _this.wl = null;
        _this.wi = null;
        _this.wg = null;
        _this.u5 = 0;
        _this.uh = false;
        _this.u9 = 0;
        _this.up = false;
        _this.v8 = 0;
        _this.vg = 0;
        _this.vi = 0;
        _this.vh = 0;
        _this.vj = 0;
        _this.wk = null;
        _this.wm = null;
        _this.vb = 0;
        _this.ve = 0;
        _this.vc = 0;
        _this.vd = 0;
        _this.vf = 0;
        _this.wo = null;
        _this.uj = false;
        _this.wh = null;
        _this.wn = null;
        _this.ul = false;
        _this.tt = null;
        _this.ty = null;
        _this.un = false;
        _this.u8 = 0;
        _this.um = false;
        _this.uo = false;
        _this.wp = null;
        _this.tu = null;
        _this.tv = null;
        _this.tw = null;
        _this.tx = null;
        _this.t1 = null;
        _this.t0 = null;
        _this.ts = null;
        _this.tq = null;
        _this.va = 0;
        _this.u7 = 0;
        _this.u6 = 0;
        _this.u4 = 0;
        _this.tr = null;
        _this.v4 = 0;
        _this.u3 = 0;
        _this.v7 = 0;
        _this.v5 = 0;
        _this.v3 = 0;
        _this.v6 = 0;
        _this.tz = null;
        _this.tp = null;
        _this.uk = false;
        _this.wq = null;
        _this.vk = 0;
        _this.ui = false;
        _this.u0 = new Date();
        _this.uz = new Date();
        _this.t2 = null;
        _this.wf = null;
        return _this;
    }
    Object.defineProperty(FinancialChartDescription.prototype, "tooltipTemplateRef", {
        get: function () {
            return this.wj;
        },
        set: function (a) {
            this.wj = a;
            this.g("TooltipTemplateRef");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "width", {
        get: function () {
            return this.wl;
        },
        set: function (a) {
            this.wl = a;
            this.g("Width");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "height", {
        get: function () {
            return this.wi;
        },
        set: function (a) {
            this.wi = a;
            this.g("Height");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "background", {
        get: function () {
            return this.wg;
        },
        set: function (a) {
            this.wg = a;
            this.g("Background");
        },
        enumerable: false,
        configurable: true
    });
    FinancialChartDescription.prototype.get_type = function () {
        return "FinancialChart";
    };
    Object.defineProperty(FinancialChartDescription.prototype, "leftMargin", {
        get: function () {
            return this.u5;
        },
        set: function (a) {
            this.u5 = a;
            this.g("LeftMargin");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "isHorizontalZoomEnabled", {
        get: function () {
            return this.uh;
        },
        set: function (a) {
            this.uh = a;
            this.g("IsHorizontalZoomEnabled");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "toolbarHeight", {
        get: function () {
            return this.u9;
        },
        set: function (a) {
            this.u9 = a;
            this.g("ToolbarHeight");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisIsLogarithmic", {
        get: function () {
            return this.up;
        },
        set: function (a) {
            this.up = a;
            this.g("YAxisIsLogarithmic");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisLogarithmBase", {
        get: function () {
            return this.v8;
        },
        set: function (a) {
            this.v8 = a;
            this.g("YAxisLogarithmBase");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisInterval", {
        get: function () {
            return this.vg;
        },
        set: function (a) {
            this.vg = a;
            this.g("YAxisInterval");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisMinimumValue", {
        get: function () {
            return this.vi;
        },
        set: function (a) {
            this.vi = a;
            this.g("YAxisMinimumValue");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisMaximumValue", {
        get: function () {
            return this.vh;
        },
        set: function (a) {
            this.vh = a;
            this.g("YAxisMaximumValue");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisMinorInterval", {
        get: function () {
            return this.vj;
        },
        set: function (a) {
            this.vj = a;
            this.g("YAxisMinorInterval");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "volumeType", {
        get: function () {
            return this.wk;
        },
        set: function (a) {
            this.wk = a;
            this.g("VolumeType");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisMode", {
        get: function () {
            return this.wm;
        },
        set: function (a) {
            this.wm = a;
            this.g("XAxisMode");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisZoomMaximumCategoryRange", {
        get: function () {
            return this.vb;
        },
        set: function (a) {
            this.vb = a;
            this.g("XAxisZoomMaximumCategoryRange");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisZoomToCategoryStart", {
        get: function () {
            return this.ve;
        },
        set: function (a) {
            this.ve = a;
            this.g("XAxisZoomToCategoryStart");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisZoomMaximumItemSpan", {
        get: function () {
            return this.vc;
        },
        set: function (a) {
            this.vc = a;
            this.g("XAxisZoomMaximumItemSpan");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisZoomToCategoryRange", {
        get: function () {
            return this.vd;
        },
        set: function (a) {
            this.vd = a;
            this.g("XAxisZoomToCategoryRange");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisZoomToItemSpan", {
        get: function () {
            return this.vf;
        },
        set: function (a) {
            this.vf = a;
            this.g("XAxisZoomToItemSpan");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisMode", {
        get: function () {
            return this.wo;
        },
        set: function (a) {
            this.wo = a;
            this.g("YAxisMode");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "isToolbarVisible", {
        get: function () {
            return this.uj;
        },
        set: function (a) {
            this.uj = a;
            this.g("IsToolbarVisible");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "chartType", {
        get: function () {
            return this.wh;
        },
        set: function (a) {
            this.wh = a;
            this.g("ChartType");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisLabelHorizontalAlignment", {
        get: function () {
            return this.wn;
        },
        set: function (a) {
            this.wn = a;
            this.g("YAxisLabelHorizontalAlignment");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "isWindowSyncedToVisibleRange", {
        get: function () {
            return this.ul;
        },
        set: function (a) {
            this.ul = a;
            this.g("IsWindowSyncedToVisibleRange");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorTypes", {
        get: function () {
            return this.tt;
        },
        set: function (a) {
            this.tt = a;
            this.g("IndicatorTypes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "overlayTypes", {
        get: function () {
            return this.ty;
        },
        set: function (a) {
            this.ty = a;
            this.g("OverlayTypes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisAbbreviateLargeNumbers", {
        get: function () {
            return this.un;
        },
        set: function (a) {
            this.un = a;
            this.g("YAxisAbbreviateLargeNumbers");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "resolution", {
        get: function () {
            return this.u8;
        },
        set: function (a) {
            this.u8 = a;
            this.g("Resolution");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisEnhancedIntervalPreferMoreCategoryLabels", {
        get: function () {
            return this.um;
        },
        set: function (a) {
            this.um = a;
            this.g("XAxisEnhancedIntervalPreferMoreCategoryLabels");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "yAxisEnhancedIntervalPreferMoreCategoryLabels", {
        get: function () {
            return this.uo;
        },
        set: function (a) {
            this.uo = a;
            this.g("YAxisEnhancedIntervalPreferMoreCategoryLabels");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "zoomSliderType", {
        get: function () {
            return this.wp;
        },
        set: function (a) {
            this.wp = a;
            this.g("ZoomSliderType");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "negativeBrushes", {
        get: function () {
            return this.tu;
        },
        set: function (a) {
            this.tu = a;
            this.g("NegativeBrushes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "negativeOutlines", {
        get: function () {
            return this.tv;
        },
        set: function (a) {
            this.tv = a;
            this.g("NegativeOutlines");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "overlayBrushes", {
        get: function () {
            return this.tw;
        },
        set: function (a) {
            this.tw = a;
            this.g("OverlayBrushes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "overlayOutlines", {
        get: function () {
            return this.tx;
        },
        set: function (a) {
            this.tx = a;
            this.g("OverlayOutlines");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "volumeOutlines", {
        get: function () {
            return this.t1;
        },
        set: function (a) {
            this.t1 = a;
            this.g("VolumeOutlines");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "volumeBrushes", {
        get: function () {
            return this.t0;
        },
        set: function (a) {
            this.t0 = a;
            this.g("VolumeBrushes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorNegativeBrushes", {
        get: function () {
            return this.ts;
        },
        set: function (a) {
            this.ts = a;
            this.g("IndicatorNegativeBrushes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorBrushes", {
        get: function () {
            return this.tq;
        },
        set: function (a) {
            this.tq = a;
            this.g("IndicatorBrushes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "volumeThickness", {
        get: function () {
            return this.va;
        },
        set: function (a) {
            this.va = a;
            this.g("VolumeThickness");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "overlayThickness", {
        get: function () {
            return this.u7;
        },
        set: function (a) {
            this.u7 = a;
            this.g("OverlayThickness");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "overlayMultiplier", {
        get: function () {
            return this.u6;
        },
        set: function (a) {
            this.u6 = a;
            this.g("OverlayMultiplier");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorThickness", {
        get: function () {
            return this.u4;
        },
        set: function (a) {
            this.u4 = a;
            this.g("IndicatorThickness");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorDisplayTypes", {
        get: function () {
            return this.tr;
        },
        set: function (a) {
            this.tr = a;
            this.g("IndicatorDisplayTypes");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorPeriod", {
        get: function () {
            return this.v4;
        },
        set: function (a) {
            this.v4 = a;
            this.g("IndicatorPeriod");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorMultiplier", {
        get: function () {
            return this.u3;
        },
        set: function (a) {
            this.u3 = a;
            this.g("IndicatorMultiplier");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorSmoothingPeriod", {
        get: function () {
            return this.v7;
        },
        set: function (a) {
            this.v7 = a;
            this.g("IndicatorSmoothingPeriod");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorShortPeriod", {
        get: function () {
            return this.v5;
        },
        set: function (a) {
            this.v5 = a;
            this.g("IndicatorShortPeriod");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorLongPeriod", {
        get: function () {
            return this.v3;
        },
        set: function (a) {
            this.v3 = a;
            this.g("IndicatorLongPeriod");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "indicatorSignalPeriod", {
        get: function () {
            return this.v6;
        },
        set: function (a) {
            this.v6 = a;
            this.g("IndicatorSignalPeriod");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "rangeSelectorOptions", {
        get: function () {
            return this.tz;
        },
        set: function (a) {
            this.tz = a;
            this.g("RangeSelectorOptions");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "customIndicatorNames", {
        get: function () {
            return this.tp;
        },
        set: function (a) {
            this.tp = a;
            this.g("CustomIndicatorNames");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "isVerticalZoomEnabled", {
        get: function () {
            return this.uk;
        },
        set: function (a) {
            this.uk = a;
            this.g("IsVerticalZoomEnabled");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "zoomSliderXAxisMajorStroke", {
        get: function () {
            return this.wq;
        },
        set: function (a) {
            this.wq = a;
            this.g("ZoomSliderXAxisMajorStroke");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "zoomSliderXAxisMajorStrokeThickness", {
        get: function () {
            return this.vk;
        },
        set: function (a) {
            this.vk = a;
            this.g("ZoomSliderXAxisMajorStrokeThickness");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "isLegendVisible", {
        get: function () {
            return this.ui;
        },
        set: function (a) {
            this.ui = a;
            this.g("IsLegendVisible");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisMinimumValue", {
        get: function () {
            return this.u0;
        },
        set: function (a) {
            this.u0 = a;
            this.g("XAxisMinimumValue");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisMaximumValue", {
        get: function () {
            return this.uz;
        },
        set: function (a) {
            this.uz = a;
            this.g("XAxisMaximumValue");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "xAxisBreaks", {
        get: function () {
            return this.t2;
        },
        set: function (a) {
            this.t2 = a;
            this.g("XAxisBreaks");
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(FinancialChartDescription.prototype, "applyCustomIndicatorsRef", {
        get: function () {
            return this.wf;
        },
        set: function (a) {
            this.wf = a;
            this.g("ApplyCustomIndicatorsRef");
        },
        enumerable: false,
        configurable: true
    });
    FinancialChartDescription.$t = markType(FinancialChartDescription, 'FinancialChartDescription', XYChartDescription.$);
    return FinancialChartDescription;
}(XYChartDescription));
export { FinancialChartDescription };
