/*
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, markType } from "./type";
/**
 * @hidden
 */
export class SectionData extends Base {
    constructor() {
        super(...arguments);
        this.m = 0;
        this.n = 0;
        this.l = 0;
        this.c = null;
        this.d = null;
        this.e = null;
        this.h = 0;
        this.g = 0;
        this.k = 0;
        this.b = null;
        this.a = null;
    }
    get j() {
        return this.n + this.b.length - this.g;
    }
    get i() {
        return this.j + this.k - 1;
    }
    get f() {
        for (let a = 0; a < this.b.length; a++) {
            if (!this.b[a]) {
                return false;
            }
        }
        return true;
    }
    o(a, b) {
        this.p(a, b, this.c.length);
    }
    p(a, b, c) {
        switch (a) {
            case 0:
                this.b = new Array(1);
                this.a = new Array(1);
                break;
            case 1:
                this.b = new Array(c);
                this.a = new Array(c);
                break;
        }
        for (let d = 0; d < this.b.length; d++) {
            this.b[d] = b;
        }
    }
}
SectionData.$t = markType(SectionData, 'SectionData');
