import * as tslib_1 from "tslib";
import { Input } from '@angular/core';
import { TypeRegistrar } from "igniteui-angular-core/ES5/type";
import { IgxNumericXAxisComponent } from "igniteui-angular-charts/ES5/igx-numeric-x-axis-component";
import { IgxNumericYAxisComponent } from "igniteui-angular-charts/ES5/igx-numeric-y-axis-component";
import { IgxSeriesComponent } from './igx-series-component';
/**
 * Represents a IgxScatterTriangulationSeriesComponent base series.
*/
export var IgxScatterTriangulationSeriesComponent_PROVIDERS = [];
var IgxScatterTriangulationSeriesComponent = /** @class */ (function (_super) {
    tslib_1.__extends(IgxScatterTriangulationSeriesComponent, _super);
    function IgxScatterTriangulationSeriesComponent() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        //
        _this._trianglesSource = null;
        return _this;
    }
    IgxScatterTriangulationSeriesComponent.prototype.createImplementation = function () {
        return null;
    };
    IgxScatterTriangulationSeriesComponent.prototype.ngOnInit = function () {
    };
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "trianglesSource", {
        get: function () {
            return this._trianglesSource;
        },
        set: function (value) {
            this._trianglesSource = value;
            this.bindData();
        },
        enumerable: true,
        configurable: true
    });
    IgxScatterTriangulationSeriesComponent.prototype.bindData = function () {
        if (this.i != null && this.i !== undefined) {
            this.i.trianglesSource = this._trianglesSource;
        }
    };
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "i", {
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    IgxScatterTriangulationSeriesComponent._createFromInternal = function (internal) {
        if (!internal) {
            return null;
        }
        if (!internal.$type) {
            return null;
        }
        var name = internal.$type.name;
        var externalName = "Igx" + name + "Component";
        if (!TypeRegistrar.isRegistered(externalName)) {
            return null;
        }
        return TypeRegistrar.create(externalName);
    };
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "xMemberPath", {
        /**
     * The name of the property from which to extract the X-coordinate for each item in the ItemsSource.
    */
        get: function () {
            return this.i.mq;
        },
        set: function (v) {
            this.i.mq = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "yMemberPath", {
        /**
         * The name of the property from which to extract the Y-coordinate for each item in the ItemsSource.
        */
        get: function () {
            return this.i.mu;
        },
        set: function (v) {
            this.i.mu = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "xAxis", {
        /**
         * The X-Axis for this series.
        */
        get: function () {
            if (this.i.ls == null) {
                return null;
            }
            if (!this.i.ls.externalObject) {
                var e = new IgxNumericXAxisComponent();
                e._implementation = this.i.ls;
                this.i.ls.externalObject = e;
            }
            return this.i.ls.externalObject;
        },
        set: function (v) {
            v == null ? this.i.ls = null : this.i.ls = v.i;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "yAxis", {
        /**
         * The Y-Axis for this series.
        */
        get: function () {
            if (this.i.lt == null) {
                return null;
            }
            if (!this.i.lt.externalObject) {
                var e = new IgxNumericYAxisComponent();
                e._implementation = this.i.lt;
                this.i.lt.externalObject = e;
            }
            return this.i.lt.externalObject;
        },
        set: function (v) {
            v == null ? this.i.lt = null : this.i.lt = v.i;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath1", {
        /**
         * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the first vertex point in the ItemsSource.
        */
        get: function () {
            return this.i.mi;
        },
        set: function (v) {
            this.i.mi = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath2", {
        /**
         * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the second vertex point in the ItemsSource.
        */
        get: function () {
            return this.i.mk;
        },
        set: function (v) {
            this.i.mk = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath3", {
        /**
         * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the third vertex point in the ItemsSource.
        */
        get: function () {
            return this.i.mm;
        },
        set: function (v) {
            this.i.mm = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxScatterTriangulationSeriesComponent.prototype, "isShape", {
        /**
         * Gets whether or not this series is a shape series
        */
        get: function () {
            return this.i.c5;
        },
        enumerable: true,
        configurable: true
    });
    /**
 * Determine if object can be used as YAxis

* @param axis  * The object to check
*/
    IgxScatterTriangulationSeriesComponent.prototype.canUseAsYAxis = function (axis) {
        var iv = this.i.ma(axis);
        return (iv);
    };
    /**
     * Determine if object can be used as XAxis
    
    * @param axis  * The object to check
    */
    IgxScatterTriangulationSeriesComponent.prototype.canUseAsXAxis = function (axis) {
        var iv = this.i.l9(axis);
        return (iv);
    };
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", Array),
        tslib_1.__metadata("design:paramtypes", [Array])
    ], IgxScatterTriangulationSeriesComponent.prototype, "trianglesSource", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", String),
        tslib_1.__metadata("design:paramtypes", [String])
    ], IgxScatterTriangulationSeriesComponent.prototype, "xMemberPath", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", String),
        tslib_1.__metadata("design:paramtypes", [String])
    ], IgxScatterTriangulationSeriesComponent.prototype, "yMemberPath", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", IgxNumericXAxisComponent),
        tslib_1.__metadata("design:paramtypes", [IgxNumericXAxisComponent])
    ], IgxScatterTriangulationSeriesComponent.prototype, "xAxis", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", IgxNumericYAxisComponent),
        tslib_1.__metadata("design:paramtypes", [IgxNumericYAxisComponent])
    ], IgxScatterTriangulationSeriesComponent.prototype, "yAxis", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", String),
        tslib_1.__metadata("design:paramtypes", [String])
    ], IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath1", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", String),
        tslib_1.__metadata("design:paramtypes", [String])
    ], IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath2", null);
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", String),
        tslib_1.__metadata("design:paramtypes", [String])
    ], IgxScatterTriangulationSeriesComponent.prototype, "triangleVertexMemberPath3", null);
    return IgxScatterTriangulationSeriesComponent;
}(IgxSeriesComponent));
export { IgxScatterTriangulationSeriesComponent };
//# sourceMappingURL=igx-scatter-triangulation-series-component.js.map