/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import * as tslib_1 from "tslib";
import { ColumnDescription } from "./ColumnDescription";
import { markType } from "./type";
/**
 * @hidden
 */
var NumericColumnDescription = /** @class */ /*@__PURE__*/ (function (_super) {
    tslib_1.__extends(NumericColumnDescription, _super);
    function NumericColumnDescription() {
        var _this = _super.call(this) || this;
        _this.fx = null;
        _this.fz = null;
        _this.fy = null;
        _this.f0 = null;
        _this.fl = 0;
        _this.fm = 0;
        _this.fn = 0;
        _this.fj = false;
        _this.fw = null;
        _this.fe = null;
        _this.fv = null;
        _this.ft = null;
        _this.fr = null;
        _this.fg = null;
        _this.fs = null;
        _this.fu = null;
        return _this;
    }
    NumericColumnDescription.prototype.get_type = function () {
        return "NumericColumn";
    };
    Object.defineProperty(NumericColumnDescription.prototype, "negativePrefix", {
        get: function () {
            return this.fx;
        },
        set: function (a) {
            this.fx = a;
            this.e("NegativePrefix");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "positivePrefix", {
        get: function () {
            return this.fz;
        },
        set: function (a) {
            this.fz = a;
            this.e("PositivePrefix");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "negativeSuffix", {
        get: function () {
            return this.fy;
        },
        set: function (a) {
            this.fy = a;
            this.e("NegativeSuffix");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "positiveSuffix", {
        get: function () {
            return this.f0;
        },
        set: function (a) {
            this.f0 = a;
            this.e("PositiveSuffix");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "maxFractionDigits", {
        get: function () {
            return this.fl;
        },
        set: function (a) {
            this.fl = a;
            this.e("MaxFractionDigits");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "minFractionDigits", {
        get: function () {
            return this.fm;
        },
        set: function (a) {
            this.fm = a;
            this.e("MinFractionDigits");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "minIntegerDigits", {
        get: function () {
            return this.fn;
        },
        set: function (a) {
            this.fn = a;
            this.e("MinIntegerDigits");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "showGroupingSeparator", {
        get: function () {
            return this.fj;
        },
        set: function (a) {
            this.fj = a;
            this.e("ShowGroupingSeparator");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "formatString", {
        get: function () {
            return this.fw;
        },
        set: function (a) {
            this.fw = a;
            this.e("FormatString");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "formatSpecifiers", {
        get: function () {
            return this.fe;
        },
        set: function (a) {
            this.fe = a;
            this.e("FormatSpecifiers");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "formatOverrideRef", {
        get: function () {
            return this.fv;
        },
        set: function (a) {
            this.fv = a;
            this.e("FormatOverrideRef");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "editorType", {
        get: function () {
            return this.ft;
        },
        set: function (a) {
            this.ft = a;
            this.e("EditorType");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "editorDataSourceRef", {
        get: function () {
            return this.fr;
        },
        set: function (a) {
            this.fr = a;
            this.e("EditorDataSourceRef");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "editorDataSource", {
        get: function () {
            return this.fg;
        },
        set: function (a) {
            this.fg = a;
            this.e("EditorDataSource");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "editorTextField", {
        get: function () {
            return this.fs;
        },
        set: function (a) {
            this.fs = a;
            this.e("EditorTextField");
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(NumericColumnDescription.prototype, "editorValueField", {
        get: function () {
            return this.fu;
        },
        set: function (a) {
            this.fu = a;
            this.e("EditorValueField");
        },
        enumerable: true,
        configurable: true
    });
    NumericColumnDescription.$t = markType(NumericColumnDescription, 'NumericColumnDescription', ColumnDescription.$);
    NumericColumnDescription.__canMarshalByValue1 = true;
    return NumericColumnDescription;
}(ColumnDescription));
export { NumericColumnDescription };
