/*
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, String_$type, markType } from "./type";
import { Dictionary$2 } from "./Dictionary$2";
import { WebFilteringOperandDescriptionMetadata } from "./WebFilteringOperandDescriptionMetadata";
import { WebSortingStrategyDescriptionMetadata } from "./WebSortingStrategyDescriptionMetadata";
import { WebColumnPipeArgsDescriptionMetadata } from "./WebColumnPipeArgsDescriptionMetadata";
import { WebColumnDescription } from "./WebColumnDescription";
/**
 * @hidden
 */
export let WebColumnDescriptionMetadata = /*@__PURE__*/ (() => {
    class WebColumnDescriptionMetadata extends Base {
        static b(a) {
            if (WebColumnDescriptionMetadata.a == null) {
                WebColumnDescriptionMetadata.a = new Dictionary$2(String_$type, String_$type, 0);
                WebColumnDescriptionMetadata.c(WebColumnDescriptionMetadata.a);
            }
            if (a.k(WebColumnDescriptionMetadata.a)) {
                return;
            }
            a.ab(WebColumnDescriptionMetadata.a);
            WebFilteringOperandDescriptionMetadata.d(a);
            WebSortingStrategyDescriptionMetadata.d(a);
            WebColumnPipeArgsDescriptionMetadata.d(a);
            WebColumnDescriptionMetadata.d(a);
        }
        static c(a) {
            a.item("__qualifiedNameTS", "String:Column");
            a.item("__tagNameWC", "String:igc-column");
            a.item("__packageNameWC", "String:grids");
            a.item("__skipModuleRegisterWebComponents", "Boolean");
            a.item("__importOverrideWebComponents", "String:igniteui-webcomponents-grids/grids/combined");
            a.item("__importTypesWebComponents", "String:igniteui-webcomponents-grids/grids");
            a.item("__manageCollectionInMarkup", "Boolean");
            a.item("Field", "String");
            a.item("Header", "String");
            a.item("Title", "String");
            a.item("Sortable", "Boolean");
            a.item("Selectable", "Boolean");
            a.item("Groupable", "Boolean");
            a.item("Editable", "Boolean");
            a.item("Filterable", "Boolean");
            a.item("Resizable", "Boolean");
            a.item("AutosizeHeader", "Boolean");
            a.item("HasSummary", "Boolean");
            a.item("Hidden", "Boolean");
            a.item("Selected", "Boolean");
            a.item("DisableHiding", "Boolean");
            a.item("DisablePinning", "Boolean");
            a.item("Movable", "Boolean");
            a.item("Width", "String");
            a.item("MaxWidth", "String");
            a.item("HeaderClasses", "String");
            a.item("HeaderStyles", "Unknown");
            a.item("HeaderGroupClasses", "String");
            a.item("HeaderGroupStyles", "Unknown");
            a.item("CellClassesRef", "(w:CellClasses,wf:CellClasses)DataRef::object");
            a.item("CellStylesRef", "(w:CellStyles,wf:CellStyles)DataRef::object");
            a.item("FormatterRef", "(w:Formatter,wf:Formatter)MethodRef");
            a.item("SummaryFormatterRef", "(w:SummaryFormatter,wf:SummaryFormatter)MethodRef");
            a.item("FilteringIgnoreCase", "Boolean");
            a.item("SortingIgnoreCase", "Boolean");
            a.item("Searchable", "Boolean");
            a.item("DataType", "ExportedType:string:GridColumnDataType");
            a.item("DataType@stringUnion", "WebComponents;React");
            a.item("DataType@names", "String;Number;Boolean;Date;DateTime;Time;Currency;Percent;Image");
            a.item("RowEnd", "Number:double");
            a.item("ColEnd", "Number:double");
            a.item("RowStart", "Number:double");
            a.item("ColStart", "Number:double");
            a.item("AdditionalTemplateContext", "Unknown");
            a.item("MinWidth", "String");
            a.item("Pinned", "Boolean");
            a.item("SummariesRef", "(w:Summaries,wf:Summaries)DataRef::object");
            a.item("Filters", "ExportedType:WebFilteringOperand");
            a.item("SortStrategy", "ExportedType:WebSortingStrategy");
            a.item("SummaryTemplateRef", "(w:SummaryTemplate,wf:SummaryTemplate)TemplateRef::object");
            a.item("BodyTemplateRef", "(w:BodyTemplate,wf:BodyTemplate)TemplateRef::object");
            a.item("HeaderTemplateRef", "(w:HeaderTemplate,wf:HeaderTemplate)TemplateRef::object");
            a.item("InlineEditorTemplateRef", "(w:InlineEditorTemplate,wf:InlineEditorTemplate)TemplateRef::object");
            a.item("ErrorTemplateRef", "(w:ErrorTemplate,wf:ErrorTemplate)TemplateRef::object");
            a.item("FilterCellTemplateRef", "(w:FilterCellTemplate,wf:FilterCellTemplate)TemplateRef::object");
            a.item("VisibleWhenCollapsed", "Boolean");
            a.item("PipeArgs", "ExportedType:WebColumnPipeArgs");
            a.item("PipeArgs@mustSetInCode", "WebComponents;Blazor;React");
            a.item("ParentColumn", "(wc:Parent)Unknown");
            a.item("ColumnChildren", "Array:WebColumnDescription:Column");
            a.item("Name", "String");
            WebColumnDescriptionMetadata.e(a);
        }
        static d(a) {
            WebColumnDescriptionMetadata.b(a);
            a.ad("WebColumn", () => new WebColumnDescription());
            a.ac("WebColumn", WebColumnDescriptionMetadata.a);
        }
        static e(a) {
            a.item("__qualifiedNameNG", "String:Column");
            a.item("__tagNameWCSubstitutable", "String:igc-column-group,igc-column-layout");
        }
    }
    WebColumnDescriptionMetadata.$t = /*@__PURE__*/ markType(WebColumnDescriptionMetadata, 'WebColumnDescriptionMetadata');
    WebColumnDescriptionMetadata.a = null;
    return WebColumnDescriptionMetadata;
})();
