/*
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 { WebGridBaseDirectiveDescription } from "./WebGridBaseDirectiveDescription";
import { markType } from "./type";
/**
 * @hidden
 */
export let WebTreeGridDescription = /*@__PURE__*/ (() => {
    class WebTreeGridDescription extends WebGridBaseDirectiveDescription {
        constructor() {
            super();
            this.gr = null;
            this.gt = null;
            this.gu = null;
            this.gn = false;
            this.gv = null;
            this.gk = null;
            this.gj = null;
            this.gs = null;
            this.gp = 0;
            this.gw = null;
        }
        get_type() {
            return "WebTreeGrid";
        }
        get childDataKey() {
            return this.gr;
        }
        set childDataKey(a) {
            this.gr = a;
            this.g("ChildDataKey");
        }
        get foreignKey() {
            return this.gt;
        }
        set foreignKey(a) {
            this.gt = a;
            this.g("ForeignKey");
        }
        get hasChildrenKey() {
            return this.gu;
        }
        set hasChildrenKey(a) {
            this.gu = a;
            this.g("HasChildrenKey");
        }
        get cascadeOnDelete() {
            return this.gn;
        }
        set cascadeOnDelete(a) {
            this.gn = a;
            this.g("CascadeOnDelete");
        }
        get id() {
            return this.gv;
        }
        set id(a) {
            this.gv = a;
            this.g("Id");
        }
        get rootRecords() {
            return this.gk;
        }
        set rootRecords(a) {
            this.gk = a;
            this.g("RootRecords");
        }
        get processedRootRecords() {
            return this.gj;
        }
        set processedRootRecords(a) {
            this.gj = a;
            this.g("ProcessedRootRecords");
        }
        get dataRef() {
            return this.gs;
        }
        set dataRef(a) {
            this.gs = a;
            this.g("DataRef");
        }
        get expansionDepth() {
            return this.gp;
        }
        set expansionDepth(a) {
            this.gp = a;
            this.g("ExpansionDepth");
        }
        get rowLoadingIndicatorTemplateRef() {
            return this.gw;
        }
        set rowLoadingIndicatorTemplateRef(a) {
            this.gw = a;
            this.g("RowLoadingIndicatorTemplateRef");
        }
    }
    WebTreeGridDescription.$t = markType(WebTreeGridDescription, 'WebTreeGridDescription', WebGridBaseDirectiveDescription.$);
    return WebTreeGridDescription;
})();
