/*
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 { CalendarFormatOptionsDescriptionMetadata } from "./CalendarFormatOptionsDescriptionMetadata";
import { WebCalendarResourceStringsDescriptionMetadata } from "./WebCalendarResourceStringsDescriptionMetadata";
import { WebComponentDataValueChangedEventArgsDescriptionMetadata } from "./WebComponentDataValueChangedEventArgsDescriptionMetadata";
import { WebCalendarBaseDescriptionMetadata } from "./WebCalendarBaseDescriptionMetadata";
import { WebCalendarDescription } from "./WebCalendarDescription";
/**
 * @hidden
 */
export let WebCalendarDescriptionMetadata = /*@__PURE__*/ (() => {
    class WebCalendarDescriptionMetadata extends Base {
        static b(a) {
            if (WebCalendarDescriptionMetadata.a == null) {
                WebCalendarDescriptionMetadata.a = new Dictionary$2(String_$type, String_$type, 0);
                WebCalendarDescriptionMetadata.c(WebCalendarDescriptionMetadata.a);
            }
            if (a.k(WebCalendarDescriptionMetadata.a)) {
                return;
            }
            a.aa(WebCalendarDescriptionMetadata.a);
            CalendarFormatOptionsDescriptionMetadata.d(a);
            WebCalendarResourceStringsDescriptionMetadata.d(a);
            WebComponentDataValueChangedEventArgsDescriptionMetadata.d(a);
        }
        static c(a) {
            WebCalendarBaseDescriptionMetadata.c(a);
            a.item("__qualifiedNameTS", "String:Calendar");
            a.item("__tagNameWC", "String:igc-calendar");
            a.item("__skipModuleRegisterWebComponents", "Boolean");
            a.item("__importTypesWebComponents", "String:igniteui-webcomponents");
            a.item("Value", "Date");
            a.item("Values", "Array:Date");
            a.item("ActiveDate", "Date");
            a.item("HideOutsideDays", "Boolean");
            a.item("HideHeader", "Boolean");
            a.item("HeaderOrientation", "ExportedType:string:CalendarHeaderOrientation");
            a.item("HeaderOrientation@stringUnion", "WebComponents;React");
            a.item("HeaderOrientation@names", "Vertical;Horizontal");
            a.item("Orientation", "ExportedType:string:CalendarOrientation");
            a.item("Orientation@stringUnion", "WebComponents;React");
            a.item("Orientation@names", "Vertical;Horizontal");
            a.item("VisibleMonths", "Number:double");
            a.item("ActiveView", "ExportedType:string:CalendarActiveView");
            a.item("ActiveView@stringUnion", "WebComponents;React");
            a.item("ActiveView@names", "Days;Months;Years");
            a.item("FormatOptions", "ExportedType:CalendarFormatOptions");
            a.item("ResourceStrings", "ExportedType:WebCalendarResourceStrings");
            a.item("Size", "ExportedType:string:SizableComponentSize");
            a.item("Size@names", "Large;Small;Medium");
            a.item("ChangeRef", "EventRef::change");
        }
        static d(a) {
            WebCalendarDescriptionMetadata.b(a);
            a.ac("WebCalendar", () => new WebCalendarDescription());
            a.ab("WebCalendar", WebCalendarDescriptionMetadata.a);
        }
    }
    WebCalendarDescriptionMetadata.$t = /*@__PURE__*/ markType(WebCalendarDescriptionMetadata, 'WebCalendarDescriptionMetadata');
    WebCalendarDescriptionMetadata.a = null;
    return WebCalendarDescriptionMetadata;
})();
