import * as tslib_1 from "tslib";
import { IgrValueBrushScale } from "./igr-value-brush-scale";
import { IgrScatterTriangulationSeries } from "./igr-scatter-triangulation-series";
import { ScatterContourSeries } from "./ScatterContourSeries";
/**
 * Series class for rendering isarithmic contours based on a triangulation of X+Y+Value points in the ItemsSource.
*/
var IgrScatterContourSeries = /** @class */ (function (_super) {
    tslib_1.__extends(IgrScatterContourSeries, _super);
    function IgrScatterContourSeries(props) {
        return _super.call(this, props) || this;
    }
    IgrScatterContourSeries.prototype.createImplementation = function () {
        return new ScatterContourSeries();
    };
    Object.defineProperty(IgrScatterContourSeries.prototype, "i", {
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrScatterContourSeries.prototype, "valueMemberPath", {
        /**
         * Gets or set the name of the property from which to retrieve the numeric values from the ItemsSource items.
        */
        get: function () {
            return this.i.ni;
        },
        set: function (v) {
            this.i.ni = v;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrScatterContourSeries.prototype, "fillScale", {
        /**
         * Gets or sets the ValueBrushScale to use when determining Brushes for each contour line, based on the values found in ValueMemberPath.
        */
        get: function () {
            if (this.i.nd == null) {
                return null;
            }
            if (!this.i.nd.externalObject) {
                var e = new IgrValueBrushScale(null);
                e._implementation = this.i.nd;
                this.i.nd.externalObject = e;
            }
            return this.i.nd.externalObject;
        },
        set: function (v) {
            v == null ? this.i.nd = null : this.i.nd = v.i;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgrScatterContourSeries.prototype, "valueResolver", {
        /**
         * Gets or set the ContourValueResolver used to determine the numeric values of contours.
        */
        get: function () {
            if (this.i.nb == null) {
                return null;
            }
            return this.i.nb.externalObject;
        },
        set: function (v) {
            v == null ? this.i.nb = null : this.i.nb = v.i;
        },
        enumerable: true,
        configurable: true
    });
    return IgrScatterContourSeries;
}(IgrScatterTriangulationSeries));
export { IgrScatterContourSeries };
