import { __extends } from "tslib";
import { Component, Input } from '@angular/core';
import { IgxDataAnnotationShapeLayerComponent } from "./igx-data-annotation-shape-layer-component";
import { brushToString, stringToBrush } from "igniteui-angular-core";
import * as i0 from "@angular/core";
/**
 * Represents a base of annotation layers that render from start/end range
*/
var IgxDataAnnotationRangeLayerComponent = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(IgxDataAnnotationRangeLayerComponent, _super);
    function IgxDataAnnotationRangeLayerComponent() {
        return _super.call(this) || this;
    }
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "i", {
        /**
                                     * @hidden
                                     */
        get: function () {
            return this._implementation;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "startLabelTextColor", {
        /**
         * Gets or sets the text color used for displaying the start annotation label.
        */
        get: function () {
            return brushToString(this.i.age);
        },
        set: function (v) {
            this.i.age = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "startLabelBackground", {
        /**
         * Gets or sets the background used for displaying the start annotation label.
        */
        get: function () {
            return brushToString(this.i.agc);
        },
        set: function (v) {
            this.i.agc = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "startLabelBorderColor", {
        /**
         * Gets or sets the border color used for displaying Start annotation label.
        */
        get: function () {
            return brushToString(this.i.agd);
        },
        set: function (v) {
            this.i.agd = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "endLabelTextColor", {
        /**
         * Gets or sets the text color used for displaying the end annotation label.
        */
        get: function () {
            return brushToString(this.i.agb);
        },
        set: function (v) {
            this.i.agb = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "endLabelBackground", {
        /**
         * Gets or sets the background used for displaying the end annotation label.
        */
        get: function () {
            return brushToString(this.i.af9);
        },
        set: function (v) {
            this.i.af9 = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "endLabelBorderColor", {
        /**
         * Gets or sets the border used for displaying the end annotation label.
        */
        get: function () {
            return brushToString(this.i.aga);
        },
        set: function (v) {
            this.i.aga = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "centerLabelTextColor", {
        /**
         * Gets or sets the text color used for displaying the center annotation label.
        */
        get: function () {
            return brushToString(this.i.af8);
        },
        set: function (v) {
            this.i.af8 = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "centerLabelBackground", {
        /**
         * Gets or sets the background used for displaying the center annotation label.
        */
        get: function () {
            return brushToString(this.i.af6);
        },
        set: function (v) {
            this.i.af6 = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxDataAnnotationRangeLayerComponent.prototype, "centerLabelBorderColor", {
        /**
         * Gets or sets the border color used for displaying the center annotation label.
        */
        get: function () {
            return brushToString(this.i.af7);
        },
        set: function (v) {
            this.i.af7 = stringToBrush(v);
        },
        enumerable: false,
        configurable: true
    });
    IgxDataAnnotationRangeLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxDataAnnotationRangeLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
    IgxDataAnnotationRangeLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxDataAnnotationRangeLayerComponent, selector: "ng-component", inputs: { startLabelTextColor: "startLabelTextColor", startLabelBackground: "startLabelBackground", startLabelBorderColor: "startLabelBorderColor", endLabelTextColor: "endLabelTextColor", endLabelBackground: "endLabelBackground", endLabelBorderColor: "endLabelBorderColor", centerLabelTextColor: "centerLabelTextColor", centerLabelBackground: "centerLabelBackground", centerLabelBorderColor: "centerLabelBorderColor" }, usesInheritance: true, ngImport: i0, template: "", isInline: true });
    return IgxDataAnnotationRangeLayerComponent;
}(IgxDataAnnotationShapeLayerComponent));
export { IgxDataAnnotationRangeLayerComponent };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxDataAnnotationRangeLayerComponent, decorators: [{
            type: Component,
            args: [{
                    template: "",
                }]
        }], ctorParameters: function () { return []; }, propDecorators: { startLabelTextColor: [{
                type: Input
            }], startLabelBackground: [{
                type: Input
            }], startLabelBorderColor: [{
                type: Input
            }], endLabelTextColor: [{
                type: Input
            }], endLabelBackground: [{
                type: Input
            }], endLabelBorderColor: [{
                type: Input
            }], centerLabelTextColor: [{
                type: Input
            }], centerLabelBackground: [{
                type: Input
            }], centerLabelBorderColor: [{
                type: Input
            }] } });
