import { fromPoint, toPoint, ensureBool } from "igniteui-react-core";
/**
 * Provides data for IgxDataChartComponent mouse button related events.
*/
var IgrPlotAreaMouseEventArgs = /** @class */ /*@__PURE__*/ (function () {
    function IgrPlotAreaMouseEventArgs() {
    }
    Object.defineProperty(IgrPlotAreaMouseEventArgs.prototype, "i", {
        /**
         * @hidden
         */
        get: function () {
            return this._implementation;
        },
        enumerable: false,
        configurable: true
    });
    IgrPlotAreaMouseEventArgs.prototype.onImplementationCreated = function () {
    };
    IgrPlotAreaMouseEventArgs.prototype._provideImplementation = function (i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    };
    Object.defineProperty(IgrPlotAreaMouseEventArgs.prototype, "chartPosition", {
        get: function () {
            return fromPoint(this.i.chartPosition);
        },
        set: function (v) {
            this.i.chartPosition = toPoint(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrPlotAreaMouseEventArgs.prototype, "plotAreaPosition", {
        get: function () {
            return fromPoint(this.i.plotAreaPosition);
        },
        set: function (v) {
            this.i.plotAreaPosition = toPoint(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrPlotAreaMouseEventArgs.prototype, "isDuringManipulation", {
        get: function () {
            return this.i.isDuringManipulation;
        },
        set: function (v) {
            this.i.isDuringManipulation = ensureBool(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrPlotAreaMouseEventArgs.prototype, "viewer", {
        /**
         * Gets the Chart associated with the current event.
        */
        get: function () {
            var r = this.i.viewer;
            if (r == null) {
                return null;
            }
            return r.externalObject;
        },
        set: function (v) {
            v == null ? this.i.viewer = null : this.i.viewer = v.i;
        },
        enumerable: false,
        configurable: true
    });
    return IgrPlotAreaMouseEventArgs;
}());
export { IgrPlotAreaMouseEventArgs };
