/*
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, fromEnum, typeCast, String_$type, markType, getInstanceType } from "igniteui-angular-core";
import { ISupportSetProperty_$type } from "./ISupportSetProperty";
import { ST_OnOff } from "./ST_OnOff";
/**
 * @hidden
 */
export let CT_HeaderFooter_Chart = /*@__PURE__*/ (() => {
    class CT_HeaderFooter_Chart extends Base {
        constructor() {
            super();
            this.u = null;
            this.s = null;
            this.m = null;
            this.k = null;
            this.q = null;
            this.o = null;
            this.b = false;
            this.i = false;
            this.g = false;
        }
        get t() {
            return this.u;
        }
        set t(a) {
            this.u = a;
        }
        get r() {
            return this.s;
        }
        set r(a) {
            this.s = a;
        }
        get l() {
            return this.m;
        }
        set l(a) {
            this.m = a;
        }
        get j() {
            return this.k;
        }
        set j(a) {
            this.k = a;
        }
        get p() {
            return this.q;
        }
        set p(a) {
            this.q = a;
        }
        get n() {
            return this.o;
        }
        set n(a) {
            this.o = a;
        }
        get a() {
            return this.b;
        }
        set a(a) {
            this.b = a;
        }
        get h() {
            return this.i;
        }
        set h(a) {
            this.i = a;
        }
        get f() {
            return this.g;
        }
        set f(a) {
            this.g = a;
        }
        static w(a, b, c, d) {
            b = false;
            c = false;
            d = false;
            for (let e of fromEnum(a.ab.u)) {
                switch (e.a.e(a.d)) {
                    case "alignWithMargins":
                        b = ST_OnOff.e(e.d);
                        break;
                    case "differentOddEven":
                        c = ST_OnOff.e(e.d);
                        break;
                    case "differentFirst":
                        d = ST_OnOff.e(e.d);
                        break;
                    default: break;
                }
            }
            ;
            return {
                p1: b,
                p2: c,
                p3: d
            };
        }
        static x(a, b, c, d, e) {
            a.ad.p(b, "c");
            let f = null;
            let g = null;
            g = "alignWithMargins";
            f = ST_OnOff.g(c);
            a.ad.h(g, f);
            g = "differentFirst";
            f = ST_OnOff.g(d);
            a.ad.h(g, f);
            g = "differentOddEven";
            f = ST_OnOff.g(e);
            a.ad.h(g, f);
            ;
        }
        setProperty(a, b) {
            switch (a) {
                case 1118:
                    this.t = typeCast(String_$type, b);
                    break;
                case 1117:
                    this.r = typeCast(String_$type, b);
                    break;
                case 597:
                    this.l = typeCast(String_$type, b);
                    break;
                case 596:
                    this.j = typeCast(String_$type, b);
                    break;
                case 645:
                    this.p = typeCast(String_$type, b);
                    break;
                case 644:
                    this.n = typeCast(String_$type, b);
                    break;
                default: break;
            }
        }
        toString() {
            let a = getInstanceType(this);
            return a != null ? a.typeName : super.toString();
        }
    }
    CT_HeaderFooter_Chart.$t = markType(CT_HeaderFooter_Chart, 'CT_HeaderFooter_Chart', Base.$, [ISupportSetProperty_$type]);
    return CT_HeaderFooter_Chart;
})();
