/*
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 { ToolCommandEventArgsDescriptionMetadata } from "./ToolCommandEventArgsDescriptionMetadata";
import { ToolActionDescription } from "./ToolActionDescription";
import { ToolActionEventDetailDescription } from "./ToolActionEventDetailDescription";
import { ToolActionPerformedEventArgsDescription } from "./ToolActionPerformedEventArgsDescription";
/**
 * @hidden
 */
export let ToolActionDescriptionMetadata = /*@__PURE__*/ (() => {
    class ToolActionDescriptionMetadata extends Base {
        static b(a) {
            if (ToolActionDescriptionMetadata.a == null) {
                ToolActionDescriptionMetadata.a = new Dictionary$2(String_$type, String_$type, 0);
                ToolActionDescriptionMetadata.c(ToolActionDescriptionMetadata.a);
            }
            if (a.k(ToolActionDescriptionMetadata.a)) {
                return;
            }
            a.aa(ToolActionDescriptionMetadata.a);
            ToolCommandEventArgsDescriptionMetadata.d(a);
            ToolActionPerformedEventArgsDescriptionMetadata.d(a);
        }
        static c(a) {
            a.item("ParentId", "String");
            a.item("CommandId", "String");
            a.item("CommandArgument", "String");
            a.item("CommandArgumentValue", "Unknown");
            a.item("PaddingLeft", "Number:double");
            a.item("PaddingRight", "Number:double");
            a.item("PaddingBottom", "Number:double");
            a.item("PaddingTop", "Number:double");
            a.item("Name", "String");
            a.item("Label", "String");
            a.item("IconName", "String");
            a.item("IconCollectionName", "String");
            a.item("OnCommandRef", "EventRef::onCommand");
            a.item("PerformedRef", "EventRef::performed");
        }
        static d(a) {
            ToolActionDescriptionMetadata.b(a);
            a.ac("ToolAction", () => new ToolActionDescription());
            a.ab("ToolAction", ToolActionDescriptionMetadata.a);
        }
    }
    ToolActionDescriptionMetadata.$t = /*@__PURE__*/ markType(ToolActionDescriptionMetadata, 'ToolActionDescriptionMetadata');
    ToolActionDescriptionMetadata.a = null;
    return ToolActionDescriptionMetadata;
})();
/**
 * @hidden
 */
export let ToolActionEventDetailDescriptionMetadata = /*@__PURE__*/ (() => {
    class ToolActionEventDetailDescriptionMetadata extends Base {
        static b(a) {
            if (ToolActionEventDetailDescriptionMetadata.a == null) {
                ToolActionEventDetailDescriptionMetadata.a = new Dictionary$2(String_$type, String_$type, 0);
                ToolActionEventDetailDescriptionMetadata.c(ToolActionEventDetailDescriptionMetadata.a);
            }
            if (a.k(ToolActionEventDetailDescriptionMetadata.a)) {
                return;
            }
            a.aa(ToolActionEventDetailDescriptionMetadata.a);
            ToolActionDescriptionMetadata.d(a);
        }
        static c(a) {
            a.item("Action", "ExportedType:ToolAction");
            a.item("ActionType", "ExportedType:string:ToolActionType");
            a.item("ActionType@names", "Unknown;GroupHeader;Checkbox;IconButton;Label;NumberInput;Radio;Separator;IconMenu;Button");
            a.item("IsModified", "Boolean");
            a.item("BoolValue", "Boolean");
            a.item("NumberValue", "Number:double");
            a.item("DateTimeValue", "Date");
            a.item("UntypedValueRef", "(w:UntypedValue,wf:UntypedValue)DataRef");
        }
        static d(a) {
            ToolActionEventDetailDescriptionMetadata.b(a);
            a.ac("ToolActionEventDetail", () => new ToolActionEventDetailDescription());
            a.ab("ToolActionEventDetail", ToolActionEventDetailDescriptionMetadata.a);
        }
    }
    ToolActionEventDetailDescriptionMetadata.$t = /*@__PURE__*/ markType(ToolActionEventDetailDescriptionMetadata, 'ToolActionEventDetailDescriptionMetadata');
    ToolActionEventDetailDescriptionMetadata.a = null;
    return ToolActionEventDetailDescriptionMetadata;
})();
/**
 * @hidden
 */
export let ToolActionPerformedEventArgsDescriptionMetadata = /*@__PURE__*/ (() => {
    class ToolActionPerformedEventArgsDescriptionMetadata extends Base {
        static b(a) {
            if (ToolActionPerformedEventArgsDescriptionMetadata.a == null) {
                ToolActionPerformedEventArgsDescriptionMetadata.a = new Dictionary$2(String_$type, String_$type, 0);
                ToolActionPerformedEventArgsDescriptionMetadata.c(ToolActionPerformedEventArgsDescriptionMetadata.a);
            }
            if (a.k(ToolActionPerformedEventArgsDescriptionMetadata.a)) {
                return;
            }
            a.aa(ToolActionPerformedEventArgsDescriptionMetadata.a);
            ToolActionEventDetailDescriptionMetadata.d(a);
        }
        static c(a) {
            a.item("IsAggregate", "Boolean");
            a.item("Detail", "ExportedType:ToolActionEventDetail");
            a.item("DetailCollection", "Collection:ToolActionEventDetail:ToolActionEventDetailCollection:ToolActionEventDetail");
        }
        static d(a) {
            ToolActionPerformedEventArgsDescriptionMetadata.b(a);
            a.ac("ToolActionPerformedEventArgs", () => new ToolActionPerformedEventArgsDescription());
            a.ab("ToolActionPerformedEventArgs", ToolActionPerformedEventArgsDescriptionMetadata.a);
        }
    }
    ToolActionPerformedEventArgsDescriptionMetadata.$t = /*@__PURE__*/ markType(ToolActionPerformedEventArgsDescriptionMetadata, 'ToolActionPerformedEventArgsDescriptionMetadata');
    ToolActionPerformedEventArgsDescriptionMetadata.a = null;
    return ToolActionPerformedEventArgsDescriptionMetadata;
})();
