import { TypeRegistrar } from "igniteui-react-core/ES5/type";
/**
 * Event arguments for the Financial Chart's custom indicator event.
*/
var FinancialChartCustomIndicatorArgs = /** @class */ (function () {
    function FinancialChartCustomIndicatorArgs() {
    }
    Object.defineProperty(FinancialChartCustomIndicatorArgs.prototype, "i", {
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    FinancialChartCustomIndicatorArgs.prototype.onImplementationCreated = function () {
    };
    FinancialChartCustomIndicatorArgs.prototype._provideImplementation = function (i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
    };
    Object.defineProperty(FinancialChartCustomIndicatorArgs.prototype, "indicatorInfo", {
        get: function () {
            if (!this.i.indicatorInfo) {
                return null;
            }
            if (!this.i.indicatorInfo.externalObject && TypeRegistrar.isRegistered("igr-financial-event-args")) {
                var e = TypeRegistrar.create("igr-financial-event-args");
                e._implementation = this.i.indicatorInfo;
                this.i.indicatorInfo.externalObject = e;
            }
            if (this.i.indicatorInfo.externalObject) {
                return this.i.indicatorInfo.externalObject;
            }
            return null;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(FinancialChartCustomIndicatorArgs.prototype, "series", {
        /**
     * The Series in context.
    */
        get: function () {
            if (this.i.series == null) {
                return null;
            }
            return this.i.series.externalObject;
        },
        set: function (v) {
            v == null ? this.i.series = null : this.i.series = v.i;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(FinancialChartCustomIndicatorArgs.prototype, "index", {
        /**
         * An integer representing the position of the associated custom indicator in its host.
        */
        get: function () {
            return this.i.index;
        },
        set: function (v) {
            this.i.index = +v;
        },
        enumerable: true,
        configurable: true
    });
    return FinancialChartCustomIndicatorArgs;
}());
export { FinancialChartCustomIndicatorArgs };
