import { DataAbbreviationMode_$type } from "igniteui-react-core";
import { DataLegendStylingColumnEventArgs as DataLegendStylingColumnEventArgs_internal } from "./DataLegendStylingColumnEventArgs";
import { ensureEnum, brushToString, stringToBrush } from "igniteui-react-core";
/**
 * Represents styling event args for a column in data legend
*/
var IgrDataLegendStylingColumnEventArgs = /** @class */ /*@__PURE__*/ (function () {
    function IgrDataLegendStylingColumnEventArgs() {
        this.mounted = false;
        this._implementation = this.createImplementation();
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    }
    IgrDataLegendStylingColumnEventArgs.prototype.createImplementation = function () {
        return new DataLegendStylingColumnEventArgs_internal();
    };
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "i", {
        /**
         * @hidden
         */
        get: function () {
            return this._implementation;
        },
        enumerable: false,
        configurable: true
    });
    IgrDataLegendStylingColumnEventArgs.prototype.onImplementationCreated = function () {
    };
    IgrDataLegendStylingColumnEventArgs.prototype._provideImplementation = function (i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    };
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "columnIndex", {
        /**
         * Gets index of column
        */
        get: function () {
            return this.i.c;
        },
        set: function (v) {
            this.i.c = +v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "seriesIndex", {
        /**
         * Gets index of series
        */
        get: function () {
            return this.i.d;
        },
        set: function (v) {
            this.i.d = +v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "seriesTitle", {
        /**
         * Gets title of series
        */
        get: function () {
            return this.i.f;
        },
        set: function (v) {
            this.i.f = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueOriginal", {
        /**
         * Gets original value of series without any abbreviation or formatting
        */
        get: function () {
            return this.i.b;
        },
        set: function (v) {
            this.i.b = +v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueMemberPath", {
        /**
         * Gets name of data column that corresponds to the value, e.g. "OpenPrice"
        */
        get: function () {
            return this.i.i;
        },
        set: function (v) {
            this.i.i = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueMemberLabel", {
        /**
         * Gets label of data column that corresponds to the value, e.g. "Open"
        */
        get: function () {
            return this.i.h;
        },
        set: function (v) {
            this.i.h = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueAbbreviation", {
        /**
         * Gets a mode used to abbreviate original value to ValueText
        */
        get: function () {
            return this.i.a;
        },
        set: function (v) {
            this.i.a = ensureEnum(DataAbbreviationMode_$type, v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "labelText", {
        /**
         * Gets or sets label text displayed before value text in the column
        */
        get: function () {
            return this.i.e;
        },
        set: function (v) {
            this.i.e = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "unitsText", {
        /**
         * Gets or sets unit text displayed after value text in the column
        */
        get: function () {
            return this.i.g;
        },
        set: function (v) {
            this.i.g = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueText", {
        /**
         * Gets or sets value text displayed value text in the column
        */
        get: function () {
            return this.i.j;
        },
        set: function (v) {
            this.i.j = v;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "labelTextColor", {
        /**
         * Gets or sets color of label text
        */
        get: function () {
            return brushToString(this.i.k);
        },
        set: function (v) {
            this.i.k = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "unitsTextColor", {
        /**
         * Gets or sets color of value text
        */
        get: function () {
            return brushToString(this.i.l);
        },
        set: function (v) {
            this.i.l = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgrDataLegendStylingColumnEventArgs.prototype, "valueTextColor", {
        /**
         * Gets or sets color of unit text
        */
        get: function () {
            return brushToString(this.i.m);
        },
        set: function (v) {
            this.i.m = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    return IgrDataLegendStylingColumnEventArgs;
}());
export { IgrDataLegendStylingColumnEventArgs };
