import * as tslib_1 from "tslib";
import { delegateCombine, delegateRemove } from "igniteui-react-core/ES5/type";
import { FinancialChartVolumeType_$type } from "./FinancialChartVolumeType";
import { FinancialChartXAxisMode_$type } from "./FinancialChartXAxisMode";
import { FinancialChartYAxisMode_$type } from "./FinancialChartYAxisMode";
import { FinancialChartType_$type } from "./FinancialChartType";
import { HorizontalAlignment_$type } from "igniteui-react-core/ES5/HorizontalAlignment";
import { FinancialIndicatorTypeCollection } from "./igr-financial-indicator-type-collection";
import { FinancialOverlayTypeCollection } from "./igr-financial-overlay-type-collection";
import { AxisLabelsLocation_$type } from "./AxisLabelsLocation";
import { FinancialChartZoomSliderType_$type } from "./FinancialChartZoomSliderType";
import { IndicatorDisplayTypeCollection } from "./igr-indicator-display-type-collection";
import { FinancialChartRangeSelectorOptionCollection } from "./igr-financial-chart-range-selector-option-collection";
import { CustomIndicatorNameCollection } from "./igr-custom-indicator-name-collection";
import { FinancialChartCustomIndicatorArgs } from "./igr-financial-chart-custom-indicator-args";
import { IgrXYChart } from "./igr-xy-chart";
import { FinancialChart } from "./FinancialChart";
import { ensureBool, ensureEnum, toBrushCollection, fromBrushCollection, brushToString, stringToBrush } from "igniteui-react-core/ES5/componentUtil";
import { FinancialIndicatorTypeCollection as FinancialIndicatorTypeCollection_internal } from "./FinancialIndicatorTypeCollection";
import { FinancialOverlayTypeCollection as FinancialOverlayTypeCollection_internal } from "./FinancialOverlayTypeCollection";
import { IndicatorDisplayTypeCollection as IndicatorDisplayTypeCollection_internal } from "./IndicatorDisplayTypeCollection";
import { FinancialChartRangeSelectorOptionCollection as FinancialChartRangeSelectorOptionCollection_internal } from "./FinancialChartRangeSelectorOptionCollection";
import { CustomIndicatorNameCollection as CustomIndicatorNameCollection_internal } from "./CustomIndicatorNameCollection";
/**
 * Represents a chart with an ordinal X-axis and a numeric Y-axis.
*/
var IgrFinancialChart = /** @class */ (function (_super) {
    tslib_1.__extends(IgrFinancialChart, _super);
    function IgrFinancialChart(props) {
        var _this = _super.call(this, props) || this;
        _this._indicatorTypes = null;
        _this._overlayTypes = null;
        _this._indicatorDisplayTypes = null;
        _this._rangeSelectorOptions = null;
        _this._customIndicatorNames = null;
        _this._applyCustomIndicators = null;
        _this._applyCustomIndicators_wrapped = null;
        return _this;
    }
    IgrFinancialChart.prototype.createImplementation = function () {
        return new FinancialChart();
    };
    Object.defineProperty(IgrFinancialChart.prototype, "i", {
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "leftMargin", {
        get: function () {
            return this.i.bw;
        },
        set: function (v) {
            this.i.bw = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "isHorizontalZoomEnabled", {
        get: function () {
            return this.i.ay;
        },
        set: function (v) {
            this.i.ay = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "toolbarHeight", {
        get: function () {
            return this.i.qp;
        },
        set: function (v) {
            this.i.qp = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisIsLogarithmic", {
        /**
         * Gets or sets whether the Y-axis should use a logarithmic scale instead of a linear one.
         * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero.
        */
        get: function () {
            return this.i.p2;
        },
        set: function (v) {
            this.i.p2 = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisLogarithmBase", {
        /**
         * Gets or sets the base value to use in the log function when mapping the position of data items along the Y-axis.
         * This property is effective only when YAxisIsLogarithmic is true.
        */
        get: function () {
            return this.i.rh;
        },
        set: function (v) {
            this.i.rh = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisInterval", {
        /**
         * Gets or sets the distance between each label and grid line along the Y-axis.
        */
        get: function () {
            return this.i.qt;
        },
        set: function (v) {
            this.i.qt = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisMinimumValue", {
        /**
         * Gets or sets the data value corresponding to the minimum value of the Y-axis.
        */
        get: function () {
            return this.i.qv;
        },
        set: function (v) {
            this.i.qv = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisMaximumValue", {
        /**
         * Gets or sets the data value corresponding to the maximum value of the Y-axis.
        */
        get: function () {
            return this.i.qu;
        },
        set: function (v) {
            this.i.qu = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisMinorInterval", {
        /**
         * Gets or sets the frequency of displayed minor lines along the Y-axis.
        */
        get: function () {
            return this.i.qw;
        },
        set: function (v) {
            this.i.qw = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisActualMinimum", {
        /**
         * Gets the current minimum value for the Y-axis.
        */
        get: function () {
            return this.i.qs;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisActualMaximum", {
        /**
         * Gets the current maximum value for the Y-axis.
        */
        get: function () {
            return this.i.qr;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "volumeType", {
        /**
         * The type of series to display in the volume pane.
        */
        get: function () {
            return this.i.n4;
        },
        set: function (v) {
            this.i.n4 = ensureEnum(FinancialChartVolumeType_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "xAxisMode", {
        /**
         * The scaling mode of the X-axis.
        */
        get: function () {
            return this.i.n6;
        },
        set: function (v) {
            this.i.n6 = ensureEnum(FinancialChartXAxisMode_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisMode", {
        /**
         * The scaling mode of the Y-axis.
        */
        get: function () {
            return this.i.n8;
        },
        set: function (v) {
            this.i.n8 = ensureEnum(FinancialChartYAxisMode_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "isToolbarVisible", {
        /**
         * A boolean property controlling the visibility of the toolbar.
        */
        get: function () {
            return this.i.px;
        },
        set: function (v) {
            this.i.px = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "chartType", {
        /**
         * The type of price series to display in the main chart.
        */
        get: function () {
            return this.i.nz;
        },
        set: function (v) {
            this.i.nz = ensureEnum(FinancialChartType_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisLabelHorizontalAlignment", {
        /**
         * Gets or sets Horizontal alignment of Y-axis labels.
        */
        get: function () {
            return this.i.lv;
        },
        set: function (v) {
            this.i.lv = ensureEnum(HorizontalAlignment_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "isWindowSyncedToVisibleRange", {
        /**
         * A boolean indicating whether the chart should automatically zoom in vertically on the currently visible range of data.
         * When this property is set to true, panning and zooming along the X-axis will result in a corresponding zoom on the Y-axis, so that the visible range of data fills the zoom window as fully as possible.
        */
        get: function () {
            return this.i.py;
        },
        set: function (v) {
            this.i.py = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorTypes", {
        /**
         * A collection indicating what financial indicator types to display on the Financial Chart.
        */
        get: function () {
            if (this._indicatorTypes === null) {
                var coll = new FinancialIndicatorTypeCollection();
                var innerColl = this.i.od;
                var wasNull = false;
                if (!innerColl) {
                    wasNull = true;
                    innerColl = new FinancialIndicatorTypeCollection_internal(0);
                }
                this._indicatorTypes = coll._fromInner(innerColl);
                if (wasNull) {
                    this.i.od = innerColl;
                }
            }
            return this._indicatorTypes;
        },
        set: function (v) {
            var coll = new FinancialIndicatorTypeCollection();
            this._indicatorTypes = coll._fromOuter(v);
            var innerColl = new FinancialIndicatorTypeCollection_internal(0);
            var va = typeof v == 'string' ? coll._splitOuter(v) : v;
            innerColl._inner = va.map(function (item) { return coll._ensureOuter(item); });
            this.i.od = innerColl;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "overlayTypes", {
        /**
         * A collection indicating what financial overlay types to display on the Financial Chart.
        */
        get: function () {
            if (this._overlayTypes === null) {
                var coll = new FinancialOverlayTypeCollection();
                var innerColl = this.i.of;
                var wasNull = false;
                if (!innerColl) {
                    wasNull = true;
                    innerColl = new FinancialOverlayTypeCollection_internal(0);
                }
                this._overlayTypes = coll._fromInner(innerColl);
                if (wasNull) {
                    this.i.of = innerColl;
                }
            }
            return this._overlayTypes;
        },
        set: function (v) {
            var coll = new FinancialOverlayTypeCollection();
            this._overlayTypes = coll._fromOuter(v);
            var innerColl = new FinancialOverlayTypeCollection_internal(0);
            var va = typeof v == 'string' ? coll._splitOuter(v) : v;
            innerColl._inner = va.map(function (item) { return coll._ensureOuter(item); });
            this.i.of = innerColl;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisAbbreviateLargeNumbers", {
        /**
         * Gets or sets whether the large numbers on the Y-axis labels are abbreviated.
        */
        get: function () {
            return this.i.p1;
        },
        set: function (v) {
            this.i.p1 = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "resolution", {
        /**
         * Gets or sets the rendering resolution for all series in this chart.
         * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint.  When Resolution = 0, all datapoints will be rendered as graphical objects.  Charts with a higher resolution will have faster performance.
        */
        get: function () {
            return this.i.by;
        },
        set: function (v) {
            this.i.by = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "yAxisLabelLocation", {
        /**
         * The location of Y-axis labels, relative to the plot area.
        */
        get: function () {
            return this.i.gr;
        },
        set: function (v) {
            this.i.gr = ensureEnum(AxisLabelsLocation_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "zoomSliderType", {
        /**
         * The type of series to display in the zoom slider pane.
        */
        get: function () {
            return this.i.ob;
        },
        set: function (v) {
            this.i.ob = ensureEnum(FinancialChartZoomSliderType_$type, v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "negativeBrushes", {
        /**
         * Gets or sets the palette used for coloring negative items of Waterfall chart type.
        */
        get: function () {
            return fromBrushCollection(this.i.m8);
        },
        set: function (v) {
            this.i.m8 = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "negativeOutlines", {
        /**
         * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall.
        */
        get: function () {
            return fromBrushCollection(this.i.m9);
        },
        set: function (v) {
            this.i.m9 = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "overlayBrushes", {
        /**
         * Brushes to use for filling financial overlays.
        */
        get: function () {
            return fromBrushCollection(this.i.na);
        },
        set: function (v) {
            this.i.na = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "overlayOutlines", {
        /**
         * Brushes to use for outlining financial overlays.
        */
        get: function () {
            return fromBrushCollection(this.i.nb);
        },
        set: function (v) {
            this.i.nb = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "volumeOutlines", {
        /**
         * Brushes to use for outlining volume series in the volume pane.
        */
        get: function () {
            return fromBrushCollection(this.i.nd);
        },
        set: function (v) {
            this.i.nd = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "volumeBrushes", {
        /**
         * Brushes to use for filling volume series in the volume pane.
        */
        get: function () {
            return fromBrushCollection(this.i.nc);
        },
        set: function (v) {
            this.i.nc = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorNegativeBrushes", {
        /**
         * Brushes to use for negative elements in financial indicators.
        */
        get: function () {
            return fromBrushCollection(this.i.m7);
        },
        set: function (v) {
            this.i.m7 = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorBrushes", {
        /**
         * Brushes to use for financial indicators.
        */
        get: function () {
            return fromBrushCollection(this.i.m6);
        },
        set: function (v) {
            this.i.m6 = toBrushCollection(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "volumeThickness", {
        /**
         * The outline thickness of volume series in the volume pane.
        */
        get: function () {
            return this.i.qq;
        },
        set: function (v) {
            this.i.qq = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "overlayThickness", {
        /**
         * The outline thickness of financial overlays.
        */
        get: function () {
            return this.i.qo;
        },
        set: function (v) {
            this.i.qo = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorThickness", {
        /**
         * The outline or stroke thickness of financial indicators.
        */
        get: function () {
            return this.i.qn;
        },
        set: function (v) {
            this.i.qn = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorDisplayTypes", {
        /**
         * The display types of financial indicators.
        */
        get: function () {
            if (this._indicatorDisplayTypes === null) {
                var coll = new IndicatorDisplayTypeCollection();
                var innerColl = this.i.op;
                var wasNull = false;
                if (!innerColl) {
                    wasNull = true;
                    innerColl = new IndicatorDisplayTypeCollection_internal();
                }
                this._indicatorDisplayTypes = coll._fromInner(innerColl);
                if (wasNull) {
                    this.i.op = innerColl;
                }
            }
            return this._indicatorDisplayTypes;
        },
        set: function (v) {
            var coll = new IndicatorDisplayTypeCollection();
            this._indicatorDisplayTypes = coll._fromOuter(v);
            var innerColl = new IndicatorDisplayTypeCollection_internal();
            var va = typeof v == 'string' ? coll._splitOuter(v) : v;
            innerColl._inner = va.map(function (item) { return coll._ensureOuter(item); });
            this.i.op = innerColl;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorPeriod", {
        /**
         * The period of financial indicators, where applicable.
        */
        get: function () {
            return this.i.rc;
        },
        set: function (v) {
            this.i.rc = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorMultiplier", {
        /**
         * The multiplier of financial indicators, where applicable.
        */
        get: function () {
            return this.i.qm;
        },
        set: function (v) {
            this.i.qm = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorSmoothingPeriod", {
        /**
         * The smoothing period of financial indicators, where applicable.
        */
        get: function () {
            return this.i.rf;
        },
        set: function (v) {
            this.i.rf = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorShortPeriod", {
        /**
         * The short period of financial indicators, where applicable.
        */
        get: function () {
            return this.i.rd;
        },
        set: function (v) {
            this.i.rd = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorLongPeriod", {
        /**
         * The long period of financial indicators, where applicable.
        */
        get: function () {
            return this.i.rb;
        },
        set: function (v) {
            this.i.rb = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "indicatorSignalPeriod", {
        /**
         * The signal period of financial indicators, where applicable.
        */
        get: function () {
            return this.i.re;
        },
        set: function (v) {
            this.i.re = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "rangeSelectorOptions", {
        /**
         * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar.
        */
        get: function () {
            if (this._rangeSelectorOptions === null) {
                var coll = new FinancialChartRangeSelectorOptionCollection();
                var innerColl = this.i.nv;
                var wasNull = false;
                if (!innerColl) {
                    wasNull = true;
                    innerColl = new FinancialChartRangeSelectorOptionCollection_internal(0);
                }
                this._rangeSelectorOptions = coll._fromInner(innerColl);
                if (wasNull) {
                    this.i.nv = innerColl;
                }
            }
            return this._rangeSelectorOptions;
        },
        set: function (v) {
            var coll = new FinancialChartRangeSelectorOptionCollection();
            this._rangeSelectorOptions = coll._fromOuter(v);
            var innerColl = new FinancialChartRangeSelectorOptionCollection_internal(0);
            var va = typeof v == 'string' ? coll._splitOuter(v) : v;
            innerColl._inner = va.map(function (item) { return coll._ensureOuter(item); });
            this.i.nv = innerColl;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "customIndicatorNames", {
        /**
         * The names of custom indicators to add to the chart.
         * When CustomIndicatorNames is set, the ApplyCustomIndicators event will be raised for each custom indicator name.
        */
        get: function () {
            if (this._customIndicatorNames === null) {
                var coll = new CustomIndicatorNameCollection();
                var innerColl = this.i.customIndicatorNames;
                var wasNull = false;
                if (!innerColl) {
                    wasNull = true;
                    innerColl = new CustomIndicatorNameCollection_internal(0);
                }
                this._customIndicatorNames = coll._fromInner(innerColl);
                if (wasNull) {
                    this.i.customIndicatorNames = innerColl;
                }
            }
            return this._customIndicatorNames;
        },
        set: function (v) {
            var coll = new CustomIndicatorNameCollection();
            this._customIndicatorNames = coll._fromOuter(v);
            var innerColl = new CustomIndicatorNameCollection_internal(0);
            var va = typeof v == 'string' ? coll._splitOuter(v) : v;
            innerColl._inner = va.map(function (item) { return coll._ensureOuter(item); });
            this.i.customIndicatorNames = innerColl;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "isVerticalZoomEnabled", {
        get: function () {
            return this.i.a3;
        },
        set: function (v) {
            this.i.a3 = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "zoomSliderXAxisMajorStroke", {
        get: function () {
            return brushToString(this.i.u9);
        },
        set: function (v) {
            this.i.u9 = stringToBrush(v);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "zoomSliderXAxisMajorStrokeThickness", {
        get: function () {
            return this.i.qx;
        },
        set: function (v) {
            this.i.qx = +v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrFinancialChart.prototype, "isLegendVisible", {
        get: function () {
            return this.i.pt;
        },
        set: function (v) {
            this.i.pt = ensureBool(v);
        },
        enumerable: true,
        configurable: true
    });
    IgrFinancialChart.prototype.provideContainer = function (container) {
        this.i.provideContainer(container);
    };
    IgrFinancialChart.prototype.notifyInsertItem = function (source_, index, newItem) {
        this.i.e9(source_, index, newItem);
    };
    IgrFinancialChart.prototype.notifyRemoveItem = function (source_, index, oldItem) {
        this.i.fa(source_, index, oldItem);
    };
    IgrFinancialChart.prototype.notifyClearItems = function (source_) {
        this.i.e8(source_);
    };
    IgrFinancialChart.prototype.notifySetItem = function (source_, index, oldItem, newItem) {
        this.i.fc(source_, index, oldItem, newItem);
    };
    /**
     * Returns visuals as a serialized string.
    
    */
    IgrFinancialChart.prototype.exportSerializedVisualData = function () {
        var iv = this.i.r1();
        return (iv);
    };
    Object.defineProperty(IgrFinancialChart.prototype, "applyCustomIndicators", {
        /**
         * Event raised by the chart when custom indicator data is needed from the application.
         * During series rendering, event will be raised once for each value in the CustomIndicatorNames collection.
        */
        get: function () {
            return this._applyCustomIndicators;
        },
        set: function (ev) {
            var _this = this;
            if (this._applyCustomIndicators !== null) {
                this.i.applyCustomIndicators = delegateRemove(this.i.applyCustomIndicators, this._applyCustomIndicators_wrapped);
                this._applyCustomIndicators_wrapped = null;
                this._applyCustomIndicators = null;
            }
            this._applyCustomIndicators = ev;
            this._applyCustomIndicators_wrapped = function (o, e) {
                var outerArgs = new FinancialChartCustomIndicatorArgs();
                outerArgs._provideImplementation(e);
                _this._applyCustomIndicators(_this, outerArgs);
            };
            this.i.applyCustomIndicators = delegateCombine(this.i.applyCustomIndicators, this._applyCustomIndicators_wrapped);
        },
        enumerable: true,
        configurable: true
    });
    return IgrFinancialChart;
}(IgrXYChart));
export { IgrFinancialChart };
