import { DataAnnotationInfo as DataAnnotationInfo_internal } from "./DataAnnotationInfo";
import { brushToString, stringToBrush } from "igniteui-angular-core";
/**
 * Represents data annotation
*/
export class IgxDataAnnotationInfo {
    constructor() {
        this._implementation = this.createImplementation();
        this._implementation.externalObject = this;
        this.onImplementationCreated();
        if (this._initializeAdapters) {
            this._initializeAdapters();
        }
    }
    createImplementation() {
        return new DataAnnotationInfo_internal();
    }
    /**
     * @hidden
     */
    get i() {
        return this._implementation;
    }
    onImplementationCreated() {
    }
    _provideImplementation(i) {
        this._implementation = i;
        this._implementation.externalObject = this;
        this.onImplementationCreated();
    }
    get xAxisPixel() {
        return this.i.xAxisPixel;
    }
    set xAxisPixel(v) {
        this.i.xAxisPixel = +v;
    }
    get yAxisPixel() {
        return this.i.yAxisPixel;
    }
    set yAxisPixel(v) {
        this.i.yAxisPixel = +v;
    }
    get xAxisWindow() {
        return this.i.xAxisWindow;
    }
    set xAxisWindow(v) {
        this.i.xAxisWindow = +v;
    }
    get yAxisWindow() {
        return this.i.yAxisWindow;
    }
    set yAxisWindow(v) {
        this.i.yAxisWindow = +v;
    }
    get xAxisValue() {
        return this.i.xAxisValue;
    }
    set xAxisValue(v) {
        this.i.xAxisValue = +v;
    }
    get yAxisValue() {
        return this.i.yAxisValue;
    }
    set yAxisValue(v) {
        this.i.yAxisValue = +v;
    }
    get dataIndex() {
        return this.i.dataIndex;
    }
    set dataIndex(v) {
        this.i.dataIndex = +v;
    }
    get dataValueX() {
        return this.i.dataValueX;
    }
    set dataValueX(v) {
        this.i.dataValueX = +v;
    }
    get dataValueY() {
        return this.i.dataValueY;
    }
    set dataValueY(v) {
        this.i.dataValueY = +v;
    }
    get dataLabelX() {
        return this.i.dataLabelX;
    }
    set dataLabelX(v) {
        this.i.dataLabelX = v;
    }
    get dataLabelY() {
        return this.i.dataLabelY;
    }
    set dataLabelY(v) {
        this.i.dataLabelY = v;
    }
    get xAxisLabel() {
        return this.i.xAxisLabel;
    }
    set xAxisLabel(v) {
        this.i.xAxisLabel = v;
    }
    get yAxisLabel() {
        return this.i.yAxisLabel;
    }
    set yAxisLabel(v) {
        this.i.yAxisLabel = v;
    }
    get textColor() {
        return brushToString(this.i.textColor);
    }
    set textColor(v) {
        this.i.textColor = stringToBrush(v);
    }
    get background() {
        return brushToString(this.i.background);
    }
    set background(v) {
        this.i.background = stringToBrush(v);
    }
    get borderColor() {
        return brushToString(this.i.borderColor);
    }
    set borderColor(v) {
        this.i.borderColor = stringToBrush(v);
    }
    get borderRadius() {
        return this.i.borderRadius;
    }
    set borderRadius(v) {
        this.i.borderRadius = +v;
    }
    get borderThickness() {
        return this.i.borderThickness;
    }
    set borderThickness(v) {
        this.i.borderThickness = +v;
    }
    findByName(name) {
        if (this.findEphemera) {
            if (name && name.indexOf("@@e:") == 0) {
                return this.findEphemera(name);
            }
        }
        return null;
    }
}
