/*
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 { Base, typeCast, delegateCombine, delegateRemove, markType } from "igniteui-react-core";
import { IAnnotationLayerProxy_$type } from "./IAnnotationLayerProxy";
import { CrosshairLayer } from "./CrosshairLayer";
import { ValueLayer } from "./ValueLayer";
import { CalloutLayer } from "./CalloutLayer";
import { FinalValueLayer } from "./FinalValueLayer";
import { DataToolTipLayer } from "./DataToolTipLayer";
import { DoubleCollection } from "igniteui-react-core";
/**
 * @hidden
 */
export let AnnotationLayerProxy = /*@__PURE__*/ (() => {
    class AnnotationLayerProxy extends Base {
        constructor() {
            super(...arguments);
            this._container = null;
        }
        get container() {
            return this._container;
        }
        set container(a) {
            this._container = a;
        }
        matchesType(a) {
            if (!a.d6) {
                return false;
            }
            return true;
        }
        createCrosshairLayer() {
            let a = new CrosshairLayer();
            let b = this.container.getExternal(a, null, null);
            return a;
        }
        createValueLayer() {
            let a = new ValueLayer();
            let b = this.container.getExternal(a, null, null);
            return a;
        }
        createCalloutLayer() {
            let a = new CalloutLayer();
            let b = this.container.getExternal(a, null, null);
            return a;
        }
        createFinalValueLayer() {
            let a = new FinalValueLayer();
            let b = this.container.getExternal(a, null, null);
            return a;
        }
        setCrosshairHorizontalLineVisibility(a, b) {
            a.zr = b;
        }
        setCrosshairVerticalLineVisibility(a, b) {
            a.zs = b;
        }
        setCrosshairHorizontalLineStroke(a, b) {
            a.zf = b;
        }
        setCrosshairVerticalLineStroke(a, b) {
            a.zg = b;
        }
        setCrosshairXAxisForeground(a, b) {
            a.zj = b;
        }
        setCrosshairYAxisForeground(a, b) {
            a.zm = b;
        }
        setCrosshairXAxisBackground(a, b) {
            a.zh = b;
        }
        setCrosshairYAxisBackground(a, b) {
            a.zk = b;
        }
        setCrosshairYAxisPrecision(a, b) {
            a.xo = b;
        }
        setCrosshairXAxisPrecision(a, b) {
            a.xn = b;
        }
        setCrosshairOnAxesEnabled(a, b) {
            a.w6 = b;
        }
        setCrosshairUseInterpolation(a, b) {
            a.w8 = b;
        }
        setCrosshairThickness(a, b) {
            a.iu = b;
        }
        setFinalValuePrecision(a, b) {
            a.xd = b;
        }
        setFinalValueBackground(a, b) {
            a.x7 = b;
        }
        setFinalValueForeground(a, b) {
            a.x9 = b;
        }
        setContentMemberPath(a, b) {
            a.zg = b;
        }
        setCalloutsAllowedPositions(a, b) {
            a.xb = b;
        }
        setLabelMemberPath(a, b) {
            a.zq = b;
        }
        setXMemberPath(a, b) {
            a.z1 = b;
        }
        setYMemberPath(a, b) {
            a.z4 = b;
        }
        setTargetSeries(a, b) {
            a.xf = b;
        }
        setCollisionChannel(a, b) {
            a.zd = b;
        }
        setIsAutoCalloutBehaviorEnabled(a, b) {
            a.x3 = b;
        }
        setGreedyCollisionMode(a, b) {
            a.w6 = b ? 2 : 0;
        }
        setUseDedicatedLanes(a, b) {
            a.w4 = b ? 2 : 0;
        }
        isCalloutLayer(a) {
            if (typeCast(CalloutLayer.$, a) !== null) {
                return true;
            }
            return false;
        }
        isDataToolTipLayer(a) {
            if (typeCast(DataToolTipLayer.$, a) !== null) {
                return true;
            }
            return false;
        }
        addCalloutStyleUpdating(a, b) {
            let c = a;
            c.calloutStyleUpdating = delegateCombine(c.calloutStyleUpdating, b);
        }
        removeCalloutStyleUpdating(a, b) {
            let c = a;
            c.calloutStyleUpdating = delegateRemove(c.calloutStyleUpdating, b);
        }
        addCalloutRenderStyleUpdating(a, b) {
            let c = a;
            c.calloutRenderStyleUpdating = delegateCombine(c.calloutRenderStyleUpdating, b);
        }
        removeCalloutRenderStyleUpdating(a, b) {
            let c = a;
            c.calloutRenderStyleUpdating = delegateRemove(c.calloutRenderStyleUpdating, b);
        }
        setCalloutStyleUpdatingEventEnabled(a, b) {
            a.x6 = b;
        }
        setCalloutRenderStyleUpdatingEventEnabled(a, b) {
            a.x5 = b;
        }
        updateDataToolTipPropertyByName(a, b, c) {
            a.acd(b, c);
        }
        setValueMode(a, b) {
            a.w5 = b;
        }
        setValueAxisAnnotationEnabled(a, b) {
            a.w9 = b;
        }
        setBrush(a, b) {
            a.sw = b;
        }
        setDashArray(a, b) {
            let c = new DoubleCollection();
            for (let d = 0; d < b.length; d++) {
                c.add(b[d]);
            }
            a.s7 = c;
        }
    }
    AnnotationLayerProxy.$t = /*@__PURE__*/ markType(AnnotationLayerProxy, 'AnnotationLayerProxy', Base.$, [IAnnotationLayerProxy_$type]);
    return AnnotationLayerProxy;
})();
