"use strict";
/**
 * This file was automatically generated by scripts/zap-update-types.ts. Do NOT edit manually.
 *
 * ZCL data type definitions.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.Status = exports.ACAlarmsShiftRight = exports.ACAlarmsMask = exports.DCOverloadAlarmsShiftRight = exports.DCOverloadAlarmsMask = exports.MeasurementTypeShiftRight = exports.MeasurementTypeMask = exports.OccupancySensorTypeBitmapShiftRight = exports.OccupancySensorTypeBitmapMask = exports.OccupancySensorType = exports.OccupancyMask = exports.LevelStatus = exports.LightSensorType = exports.TimeStatusShiftRight = exports.TimeStatusMask = exports.MoveStepMode = exports.LevelOptionsShiftRight = exports.LevelOptionsMask = exports.OnOffControlMask = exports.StartUpOnOff = exports.ModeMask = exports.NameSupportShiftRight = exports.NameSupportMask = exports.EffectVariant = exports.EffectIdentifier = exports.DeviceTempAlarmShiftRight = exports.DeviceTempAlarmMask = exports.MainsAlarmShiftRight = exports.MainsAlarmMask = exports.BatteryAlarmStateShiftRight = exports.BatteryAlarmStateMask = exports.BatteryAlarmShiftRight = exports.BatteryAlarmMask = exports.BatterySize = exports.DisableLocalConfigShiftRight = exports.DisableLocalConfigMask = exports.AlarmShiftRight = exports.AlarmMask = exports.PhysicalEnvironment = exports.GenericDeviceType = exports.GenericDeviceClass = exports.PowerSource = exports.ReportingRole = exports.IasZoneStatusShiftRight = exports.IasZoneStatusMask = exports.IasZoneType = exports.ProfileIntervalPeriod = exports.ZclStatus = exports.AttributeReportingStatus = exports.ZclType = void 0;
exports.DehumidificationLockout = exports.RelativeHumidityMode = exports.FanModeSequence = exports.FanMode = exports.ACCapacityFormat = exports.ACLouverPosition = exports.ACErrorCodeShiftRight = exports.ACErrorCodeMask = exports.ACCompressorType = exports.ACRefrigerantType = exports.ACType = exports.SetpointChangeSource = exports.ThermostatRunningStateShiftRight = exports.ThermostatRunningStateMask = exports.ThermostatProgrammingOperationModeShiftRight = exports.ThermostatProgrammingOperationModeMask = exports.TemperatureSetpointHold = exports.StartOfWeek = exports.ThermostatRunningMode = exports.SystemMode = exports.ControlSequenceOfOperation = exports.RemoteSensingShiftRight = exports.RemoteSensingMask = exports.HVACSystemTypeConfigurationShiftRight = exports.HVACSystemTypeConfigurationMask = exports.TstatScheduleModeShiftRight = exports.TstatScheduleModeMask = exports.TstatScheduleDOWShiftRight = exports.TstatScheduleDOWMask = exports.PumpStatusShiftRight = exports.PumpStatusMask = exports.PumpControlMode = exports.PumpOperationMode = exports.LampAlarmModeMask = exports.BallastStatusShiftRight = exports.BallastStatusMask = exports.Action = exports.UpdateFlagsShiftRight = exports.UpdateFlagsMask = exports.ColorCapabilitiesShiftRight = exports.ColorCapabilitiesMask = exports.ColorLoopActive = exports.EnhancedColorMode = exports.ColorMode = exports.DriftCompensation = exports.ColorControlColorLoopDirection = exports.ColorControlStepMode = exports.ColorControlMoveMode = exports.ColorControlDirection = exports.CCColorOptionsMask = void 0;
exports.ZoneState = exports.CapabilitiesMask = exports.SafetyStatusShiftRight = exports.SafetyStatusMask = exports.MovingState = exports.ConfigOrStatusShiftRight = exports.ConfigOrStatusMask = exports.WindowCoveringType = exports.ProgramEventCode = exports.ProgramEventSource = exports.OperationEventCode = exports.EventType = exports.RFIDProgrammingEventShiftRight = exports.RFIDProgrammingEventMask = exports.RFProgrammingEventShiftRight = exports.RFProgrammingEventMask = exports.KeypadProgrammingEventShiftRight = exports.KeypadProgrammingEventMask = exports.RFIDOperationEventShiftRight = exports.RFIDOperationEventMask = exports.ManualOperationEventShiftRight = exports.ManualOperationEventMask = exports.RFOperationEventShiftRight = exports.RFOperationEventMask = exports.KeypadOperationEventShiftRight = exports.KeypadOperationEventMask = exports.SecurityLevel = exports.DefaultConfigurationRegisterShiftRight = exports.DefaultConfigurationRegisterMask = exports.SupportedOperatingModesShiftRight = exports.SupportedOperatingModesMask = exports.SoundVolume = exports.LEDSettings = exports.DoorState = exports.LockType = exports.LockState = exports.DrlkOperEventSource = exports.DrlkSetCodeStatus = exports.DrlkPassFailStatus = exports.DrlkDaysShiftRight = exports.DrlkDaysMask = exports.DrlkOperMode = exports.DrlkUserType = exports.DrlkSettableUserStatus = exports.DrlkUserStatus = exports.SHDCFGDirection = exports.ScheduleProgrammingVisibility = exports.KeypadLockout = exports.TemperatureDisplayMode = exports.RelativeHumidityDisplay = void 0;
exports.ZCL_TYPE_INVALID_BY_TYPE = exports.ZCL_TYPE_INVALID_BY_TYPE_NAME = exports.PayloadType = exports.UpgradeTimeoutPolicy = exports.UpgradeActivationPolicy = exports.ImageUpgradeStatus = exports.FieldControlMask = exports.OTADeviceSpecificImageType = exports.KeyBitmaskShiftRight = exports.KeyBitmaskMask = exports.TLStatus = exports.TLVersionMask = exports.TLTouchlinkInformationShiftRight = exports.TLTouchlinkInformationMask = exports.TLZigbeeInformationShiftRight = exports.TLZigbeeInformationMask = exports.TLKeyIndex = exports.OptionsShiftRight = exports.OptionsMask = exports.NetworkKeyType = exports.StartupControl = exports.StackProfile = exports.ProtocolVersion = exports.SquawkConfigurationShiftRight = exports.SquawkConfigurationMask = exports.SirenConfigurationShiftRight = exports.SirenConfigurationMask = exports.IaswdLevel = exports.ZoneIDBypassResult = exports.ArmNotification = exports.ArmMode = exports.IasacPanelStatus = exports.IasaceAlarmStatus = exports.IasaceAudibleNotification = exports.EnrollResponseCode = void 0;
/**
 * @type enum8
 */
var ZclType;
(function (ZclType) {
    ZclType[ZclType["Nodata"] = 0] = "Nodata";
    ZclType[ZclType["Data8"] = 8] = "Data8";
    ZclType[ZclType["Data16"] = 9] = "Data16";
    ZclType[ZclType["Data24"] = 10] = "Data24";
    ZclType[ZclType["Data32"] = 11] = "Data32";
    ZclType[ZclType["Data40"] = 12] = "Data40";
    ZclType[ZclType["Data48"] = 13] = "Data48";
    ZclType[ZclType["Data56"] = 14] = "Data56";
    ZclType[ZclType["Data64"] = 15] = "Data64";
    ZclType[ZclType["Bool"] = 16] = "Bool";
    ZclType[ZclType["Map8"] = 24] = "Map8";
    ZclType[ZclType["Map16"] = 25] = "Map16";
    ZclType[ZclType["Map24"] = 26] = "Map24";
    ZclType[ZclType["Map32"] = 27] = "Map32";
    ZclType[ZclType["Map40"] = 28] = "Map40";
    ZclType[ZclType["Map48"] = 29] = "Map48";
    ZclType[ZclType["Map56"] = 30] = "Map56";
    ZclType[ZclType["Map64"] = 31] = "Map64";
    ZclType[ZclType["Uint8"] = 32] = "Uint8";
    ZclType[ZclType["Uint16"] = 33] = "Uint16";
    ZclType[ZclType["Uint24"] = 34] = "Uint24";
    ZclType[ZclType["Uint32"] = 35] = "Uint32";
    ZclType[ZclType["Uint40"] = 36] = "Uint40";
    ZclType[ZclType["Uint48"] = 37] = "Uint48";
    ZclType[ZclType["Uint56"] = 38] = "Uint56";
    ZclType[ZclType["Uint64"] = 39] = "Uint64";
    ZclType[ZclType["Int8"] = 40] = "Int8";
    ZclType[ZclType["Int16"] = 41] = "Int16";
    ZclType[ZclType["Int24"] = 42] = "Int24";
    ZclType[ZclType["Int32"] = 43] = "Int32";
    ZclType[ZclType["Int40"] = 44] = "Int40";
    ZclType[ZclType["Int48"] = 45] = "Int48";
    ZclType[ZclType["Int56"] = 46] = "Int56";
    ZclType[ZclType["Int64"] = 47] = "Int64";
    ZclType[ZclType["Enum8"] = 48] = "Enum8";
    ZclType[ZclType["Enum16"] = 49] = "Enum16";
    ZclType[ZclType["Semi"] = 56] = "Semi";
    ZclType[ZclType["Single"] = 57] = "Single";
    ZclType[ZclType["Double"] = 58] = "Double";
    ZclType[ZclType["Octstr"] = 65] = "Octstr";
    ZclType[ZclType["String"] = 66] = "String";
    ZclType[ZclType["Octstr16"] = 67] = "Octstr16";
    ZclType[ZclType["String16"] = 68] = "String16";
    ZclType[ZclType["Array"] = 72] = "Array";
    ZclType[ZclType["Struct"] = 76] = "Struct";
    ZclType[ZclType["Set"] = 80] = "Set";
    ZclType[ZclType["Bag"] = 81] = "Bag";
    ZclType[ZclType["ToD"] = 224] = "ToD";
    ZclType[ZclType["Date"] = 225] = "Date";
    ZclType[ZclType["Utc"] = 226] = "Utc";
    ZclType[ZclType["ClusterId"] = 232] = "ClusterId";
    ZclType[ZclType["AttribId"] = 233] = "AttribId";
    ZclType[ZclType["BacOid"] = 234] = "BacOid";
    ZclType[ZclType["Eui64"] = 240] = "Eui64";
    ZclType[ZclType["Key128"] = 241] = "Key128";
    ZclType[ZclType["Unk"] = 255] = "Unk";
})(ZclType || (exports.ZclType = ZclType = {}));
/**
 * @type enum8
 */
var AttributeReportingStatus;
(function (AttributeReportingStatus) {
    AttributeReportingStatus[AttributeReportingStatus["Pending"] = 0] = "Pending";
    AttributeReportingStatus[AttributeReportingStatus["Complete"] = 1] = "Complete";
})(AttributeReportingStatus || (exports.AttributeReportingStatus = AttributeReportingStatus = {}));
/**
 * @type enum8
 */
var ZclStatus;
(function (ZclStatus) {
    ZclStatus[ZclStatus["Success"] = 0] = "Success";
    ZclStatus[ZclStatus["Failure"] = 1] = "Failure";
    ZclStatus[ZclStatus["NotAuthorized"] = 126] = "NotAuthorized";
    ZclStatus[ZclStatus["MalformedCommand"] = 128] = "MalformedCommand";
    ZclStatus[ZclStatus["UnsupClusterCommand"] = 129] = "UnsupClusterCommand";
    ZclStatus[ZclStatus["UnsupGeneralCommand"] = 130] = "UnsupGeneralCommand";
    ZclStatus[ZclStatus["UnsupManufClusterCommand"] = 131] = "UnsupManufClusterCommand";
    ZclStatus[ZclStatus["UnsupManufGeneralCommand"] = 132] = "UnsupManufGeneralCommand";
    ZclStatus[ZclStatus["InvalidField"] = 133] = "InvalidField";
    ZclStatus[ZclStatus["UnsupportedAttribute"] = 134] = "UnsupportedAttribute";
    ZclStatus[ZclStatus["InvalidValue"] = 135] = "InvalidValue";
    ZclStatus[ZclStatus["ReadOnly"] = 136] = "ReadOnly";
    ZclStatus[ZclStatus["InsufficientSpace"] = 137] = "InsufficientSpace";
    ZclStatus[ZclStatus["DuplicateExists"] = 138] = "DuplicateExists";
    ZclStatus[ZclStatus["NotFound"] = 139] = "NotFound";
    ZclStatus[ZclStatus["UnreportableAttribute"] = 140] = "UnreportableAttribute";
    ZclStatus[ZclStatus["InvalidDataType"] = 141] = "InvalidDataType";
    ZclStatus[ZclStatus["InvalidSelector"] = 142] = "InvalidSelector";
    ZclStatus[ZclStatus["WriteOnly"] = 143] = "WriteOnly";
    ZclStatus[ZclStatus["InconsistentStartupState"] = 144] = "InconsistentStartupState";
    ZclStatus[ZclStatus["DefinedOutOfBand"] = 145] = "DefinedOutOfBand";
    ZclStatus[ZclStatus["Inconsistent"] = 146] = "Inconsistent";
    ZclStatus[ZclStatus["ActionDenied"] = 147] = "ActionDenied";
    ZclStatus[ZclStatus["Timeout"] = 148] = "Timeout";
    ZclStatus[ZclStatus["Abort"] = 149] = "Abort";
    ZclStatus[ZclStatus["InvalidImage"] = 150] = "InvalidImage";
    ZclStatus[ZclStatus["WaitForData"] = 151] = "WaitForData";
    ZclStatus[ZclStatus["NoImageAvailable"] = 152] = "NoImageAvailable";
    ZclStatus[ZclStatus["RequireMoreImage"] = 153] = "RequireMoreImage";
    ZclStatus[ZclStatus["NotificationPending"] = 154] = "NotificationPending";
    ZclStatus[ZclStatus["HardwareFailure"] = 192] = "HardwareFailure";
    ZclStatus[ZclStatus["SoftwareFailure"] = 193] = "SoftwareFailure";
    ZclStatus[ZclStatus["CalibrationError"] = 194] = "CalibrationError";
    ZclStatus[ZclStatus["UnsupportedCluster"] = 195] = "UnsupportedCluster";
    ZclStatus[ZclStatus["LimitReached"] = 196] = "LimitReached";
})(ZclStatus || (exports.ZclStatus = ZclStatus = {}));
/**
 * @type enum8
 */
var ProfileIntervalPeriod;
(function (ProfileIntervalPeriod) {
    ProfileIntervalPeriod[ProfileIntervalPeriod["Daily"] = 0] = "Daily";
    ProfileIntervalPeriod[ProfileIntervalPeriod["Six0minutes"] = 1] = "Six0minutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["Three0minutes"] = 2] = "Three0minutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["One5minutes"] = 3] = "One5minutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["One0minutes"] = 4] = "One0minutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["Sevendot5minutes"] = 5] = "Sevendot5minutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["Fiveminutes"] = 6] = "Fiveminutes";
    ProfileIntervalPeriod[ProfileIntervalPeriod["Twodot5minutes"] = 7] = "Twodot5minutes";
})(ProfileIntervalPeriod || (exports.ProfileIntervalPeriod = ProfileIntervalPeriod = {}));
/**
 * @type enum16
 */
var IasZoneType;
(function (IasZoneType) {
    IasZoneType[IasZoneType["StandardCie"] = 0] = "StandardCie";
    IasZoneType[IasZoneType["MotionSensor"] = 13] = "MotionSensor";
    IasZoneType[IasZoneType["ContactSwitch"] = 21] = "ContactSwitch";
    IasZoneType[IasZoneType["DoorOrWindowHandle"] = 22] = "DoorOrWindowHandle";
    IasZoneType[IasZoneType["FireSensor"] = 40] = "FireSensor";
    IasZoneType[IasZoneType["WaterSensor"] = 42] = "WaterSensor";
    IasZoneType[IasZoneType["CarbonMonoxideSensor"] = 43] = "CarbonMonoxideSensor";
    IasZoneType[IasZoneType["PersonalEmergencyDevice"] = 44] = "PersonalEmergencyDevice";
    IasZoneType[IasZoneType["VibrationOrMovementSensor"] = 45] = "VibrationOrMovementSensor";
    IasZoneType[IasZoneType["RemoteControl"] = 271] = "RemoteControl";
    IasZoneType[IasZoneType["KeyFob"] = 277] = "KeyFob";
    IasZoneType[IasZoneType["Keypad"] = 541] = "Keypad";
    IasZoneType[IasZoneType["StandardWarningDevice"] = 549] = "StandardWarningDevice";
    IasZoneType[IasZoneType["GlassBreakSensor"] = 550] = "GlassBreakSensor";
    IasZoneType[IasZoneType["SecurityRepeater"] = 553] = "SecurityRepeater";
    IasZoneType[IasZoneType["Invalid"] = 65535] = "Invalid";
})(IasZoneType || (exports.IasZoneType = IasZoneType = {}));
/**
 * @type map16
 */
var IasZoneStatusMask;
(function (IasZoneStatusMask) {
    IasZoneStatusMask[IasZoneStatusMask["Alarm1"] = 1] = "Alarm1";
    IasZoneStatusMask[IasZoneStatusMask["Alarm2"] = 2] = "Alarm2";
    IasZoneStatusMask[IasZoneStatusMask["Tamper"] = 4] = "Tamper";
    IasZoneStatusMask[IasZoneStatusMask["BatteryLow"] = 8] = "BatteryLow";
    IasZoneStatusMask[IasZoneStatusMask["SupervisionNotify"] = 16] = "SupervisionNotify";
    IasZoneStatusMask[IasZoneStatusMask["RestoreNotify"] = 32] = "RestoreNotify";
    IasZoneStatusMask[IasZoneStatusMask["Trouble"] = 64] = "Trouble";
    IasZoneStatusMask[IasZoneStatusMask["AcmainsFault"] = 128] = "AcmainsFault";
    IasZoneStatusMask[IasZoneStatusMask["Test"] = 256] = "Test";
    IasZoneStatusMask[IasZoneStatusMask["BatteryDefect"] = 512] = "BatteryDefect";
})(IasZoneStatusMask || (exports.IasZoneStatusMask = IasZoneStatusMask = {}));
var IasZoneStatusShiftRight;
(function (IasZoneStatusShiftRight) {
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["Alarm1"] = 0] = "Alarm1";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["Alarm2"] = 1] = "Alarm2";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["Tamper"] = 2] = "Tamper";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["BatteryLow"] = 3] = "BatteryLow";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["SupervisionNotify"] = 4] = "SupervisionNotify";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["RestoreNotify"] = 5] = "RestoreNotify";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["Trouble"] = 6] = "Trouble";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["AcmainsFault"] = 7] = "AcmainsFault";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["Test"] = 8] = "Test";
    IasZoneStatusShiftRight[IasZoneStatusShiftRight["BatteryDefect"] = 9] = "BatteryDefect";
})(IasZoneStatusShiftRight || (exports.IasZoneStatusShiftRight = IasZoneStatusShiftRight = {}));
/**
 * @type enum8
 */
var ReportingRole;
(function (ReportingRole) {
    ReportingRole[ReportingRole["Generator"] = 0] = "Generator";
    ReportingRole[ReportingRole["Recipient"] = 1] = "Recipient";
})(ReportingRole || (exports.ReportingRole = ReportingRole = {}));
/**
 * @cluster Basic
 * @type enum8
 */
var PowerSource;
(function (PowerSource) {
    PowerSource[PowerSource["Unknown"] = 0] = "Unknown";
    PowerSource[PowerSource["SinglePhaseMains"] = 1] = "SinglePhaseMains";
    PowerSource[PowerSource["ThreePhaseMains"] = 2] = "ThreePhaseMains";
    PowerSource[PowerSource["Battery"] = 3] = "Battery";
    PowerSource[PowerSource["Dcsource"] = 4] = "Dcsource";
    PowerSource[PowerSource["EmergencyMainsConstantlyPowered"] = 5] = "EmergencyMainsConstantlyPowered";
    PowerSource[PowerSource["EmergencyMainsAndTransferSwitch"] = 6] = "EmergencyMainsAndTransferSwitch";
    PowerSource[PowerSource["UnknownWithBatteryBackup"] = 128] = "UnknownWithBatteryBackup";
    PowerSource[PowerSource["SinglePhaseMainsWithBatteryBackup"] = 129] = "SinglePhaseMainsWithBatteryBackup";
    PowerSource[PowerSource["ThreePhaseMainsWithBatteryBackup"] = 130] = "ThreePhaseMainsWithBatteryBackup";
    PowerSource[PowerSource["BatteryWithBatteryBackup"] = 131] = "BatteryWithBatteryBackup";
    PowerSource[PowerSource["DcsourceWithBatteryBackup"] = 132] = "DcsourceWithBatteryBackup";
    PowerSource[PowerSource["EmergencyMainsConstantlyPoweredWithBatteryBackup"] = 133] = "EmergencyMainsConstantlyPoweredWithBatteryBackup";
    PowerSource[PowerSource["EmergencyMainsAndTransferSwitchWithBatteryBackup"] = 134] = "EmergencyMainsAndTransferSwitchWithBatteryBackup";
})(PowerSource || (exports.PowerSource = PowerSource = {}));
/**
 * @cluster Basic
 * @type enum8
 */
var GenericDeviceClass;
(function (GenericDeviceClass) {
    GenericDeviceClass[GenericDeviceClass["Lighting"] = 0] = "Lighting";
})(GenericDeviceClass || (exports.GenericDeviceClass = GenericDeviceClass = {}));
/**
 * @cluster Basic
 * @type enum8
 */
var GenericDeviceType;
(function (GenericDeviceType) {
    GenericDeviceType[GenericDeviceType["Incandescent"] = 0] = "Incandescent";
    GenericDeviceType[GenericDeviceType["SpotlightHalogen"] = 1] = "SpotlightHalogen";
    GenericDeviceType[GenericDeviceType["HalogenBulb"] = 2] = "HalogenBulb";
    GenericDeviceType[GenericDeviceType["Cfl"] = 3] = "Cfl";
    GenericDeviceType[GenericDeviceType["LinearFluorescent"] = 4] = "LinearFluorescent";
    GenericDeviceType[GenericDeviceType["Ledbulb"] = 5] = "Ledbulb";
    GenericDeviceType[GenericDeviceType["SpotlightLed"] = 6] = "SpotlightLed";
    GenericDeviceType[GenericDeviceType["Ledstrip"] = 7] = "Ledstrip";
    GenericDeviceType[GenericDeviceType["Ledtube"] = 8] = "Ledtube";
    GenericDeviceType[GenericDeviceType["GenericIndoorLuminaireOrLightFixture"] = 9] = "GenericIndoorLuminaireOrLightFixture";
    GenericDeviceType[GenericDeviceType["GenericOutdoorLuminaireOrLightFixture"] = 10] = "GenericOutdoorLuminaireOrLightFixture";
    GenericDeviceType[GenericDeviceType["PendantLuminaireOrLightFixture"] = 11] = "PendantLuminaireOrLightFixture";
    GenericDeviceType[GenericDeviceType["FloorStandingLuminaireOrLightFixture"] = 12] = "FloorStandingLuminaireOrLightFixture";
    GenericDeviceType[GenericDeviceType["GenericController"] = 224] = "GenericController";
    GenericDeviceType[GenericDeviceType["WallSwitch"] = 225] = "WallSwitch";
    GenericDeviceType[GenericDeviceType["PortableRemoteController"] = 226] = "PortableRemoteController";
    GenericDeviceType[GenericDeviceType["MotionSensorOrLightSensor"] = 227] = "MotionSensorOrLightSensor";
    GenericDeviceType[GenericDeviceType["GenericActuator"] = 240] = "GenericActuator";
    GenericDeviceType[GenericDeviceType["WallSocket"] = 241] = "WallSocket";
    GenericDeviceType[GenericDeviceType["GatewayOrBridge"] = 242] = "GatewayOrBridge";
    GenericDeviceType[GenericDeviceType["PlugInUnit"] = 243] = "PlugInUnit";
    GenericDeviceType[GenericDeviceType["RetrofitActuator"] = 244] = "RetrofitActuator";
    GenericDeviceType[GenericDeviceType["Unspecified"] = 255] = "Unspecified";
})(GenericDeviceType || (exports.GenericDeviceType = GenericDeviceType = {}));
/**
 * @cluster Basic
 * @type enum8
 */
var PhysicalEnvironment;
(function (PhysicalEnvironment) {
    PhysicalEnvironment[PhysicalEnvironment["UnspecifiedEnvironment"] = 0] = "UnspecifiedEnvironment";
    PhysicalEnvironment[PhysicalEnvironment["Deprecated"] = 1] = "Deprecated";
    PhysicalEnvironment[PhysicalEnvironment["Bar"] = 2] = "Bar";
    PhysicalEnvironment[PhysicalEnvironment["Courtyard"] = 3] = "Courtyard";
    PhysicalEnvironment[PhysicalEnvironment["Bathroom"] = 4] = "Bathroom";
    PhysicalEnvironment[PhysicalEnvironment["Bedroom"] = 5] = "Bedroom";
    PhysicalEnvironment[PhysicalEnvironment["BilliardRoom"] = 6] = "BilliardRoom";
    PhysicalEnvironment[PhysicalEnvironment["UtilityRoom"] = 7] = "UtilityRoom";
    PhysicalEnvironment[PhysicalEnvironment["Cellar"] = 8] = "Cellar";
    PhysicalEnvironment[PhysicalEnvironment["StorageCloset"] = 9] = "StorageCloset";
    PhysicalEnvironment[PhysicalEnvironment["Theater"] = 10] = "Theater";
    PhysicalEnvironment[PhysicalEnvironment["Office"] = 11] = "Office";
    PhysicalEnvironment[PhysicalEnvironment["Deck"] = 12] = "Deck";
    PhysicalEnvironment[PhysicalEnvironment["Den"] = 13] = "Den";
    PhysicalEnvironment[PhysicalEnvironment["DiningRoom"] = 14] = "DiningRoom";
    PhysicalEnvironment[PhysicalEnvironment["ElectricalRoom"] = 15] = "ElectricalRoom";
    PhysicalEnvironment[PhysicalEnvironment["Elevator"] = 16] = "Elevator";
    PhysicalEnvironment[PhysicalEnvironment["Entry"] = 17] = "Entry";
    PhysicalEnvironment[PhysicalEnvironment["FamilyRoom"] = 18] = "FamilyRoom";
    PhysicalEnvironment[PhysicalEnvironment["MainFloor"] = 19] = "MainFloor";
    PhysicalEnvironment[PhysicalEnvironment["Upstairs"] = 20] = "Upstairs";
    PhysicalEnvironment[PhysicalEnvironment["Downstairs"] = 21] = "Downstairs";
    PhysicalEnvironment[PhysicalEnvironment["BasementLowerLevel"] = 22] = "BasementLowerLevel";
    PhysicalEnvironment[PhysicalEnvironment["Gallery"] = 23] = "Gallery";
    PhysicalEnvironment[PhysicalEnvironment["GameRoom"] = 24] = "GameRoom";
    PhysicalEnvironment[PhysicalEnvironment["Garage"] = 25] = "Garage";
    PhysicalEnvironment[PhysicalEnvironment["Gym"] = 26] = "Gym";
    PhysicalEnvironment[PhysicalEnvironment["Hallway"] = 27] = "Hallway";
    PhysicalEnvironment[PhysicalEnvironment["House"] = 28] = "House";
    PhysicalEnvironment[PhysicalEnvironment["Kitchen"] = 29] = "Kitchen";
    PhysicalEnvironment[PhysicalEnvironment["LaundryRoom"] = 30] = "LaundryRoom";
    PhysicalEnvironment[PhysicalEnvironment["Library"] = 31] = "Library";
    PhysicalEnvironment[PhysicalEnvironment["MasterBedroom"] = 32] = "MasterBedroom";
    PhysicalEnvironment[PhysicalEnvironment["MudRoom"] = 33] = "MudRoom";
    PhysicalEnvironment[PhysicalEnvironment["Nursery"] = 34] = "Nursery";
    PhysicalEnvironment[PhysicalEnvironment["Pantry"] = 35] = "Pantry";
    PhysicalEnvironment[PhysicalEnvironment["Office2"] = 36] = "Office2";
    PhysicalEnvironment[PhysicalEnvironment["Outside"] = 37] = "Outside";
    PhysicalEnvironment[PhysicalEnvironment["Pool"] = 38] = "Pool";
    PhysicalEnvironment[PhysicalEnvironment["Porch"] = 39] = "Porch";
    PhysicalEnvironment[PhysicalEnvironment["SewingRoom"] = 40] = "SewingRoom";
    PhysicalEnvironment[PhysicalEnvironment["SittingRoom"] = 41] = "SittingRoom";
    PhysicalEnvironment[PhysicalEnvironment["Stairway"] = 42] = "Stairway";
    PhysicalEnvironment[PhysicalEnvironment["Yard"] = 43] = "Yard";
    PhysicalEnvironment[PhysicalEnvironment["Attic"] = 44] = "Attic";
    PhysicalEnvironment[PhysicalEnvironment["HotTub"] = 45] = "HotTub";
    PhysicalEnvironment[PhysicalEnvironment["LivingRoom"] = 46] = "LivingRoom";
    PhysicalEnvironment[PhysicalEnvironment["Sauna"] = 47] = "Sauna";
    PhysicalEnvironment[PhysicalEnvironment["ShopOrWorkshop"] = 48] = "ShopOrWorkshop";
    PhysicalEnvironment[PhysicalEnvironment["GuestBedroom"] = 49] = "GuestBedroom";
    PhysicalEnvironment[PhysicalEnvironment["GuestBath"] = 50] = "GuestBath";
    PhysicalEnvironment[PhysicalEnvironment["PowderRoom"] = 51] = "PowderRoom";
    PhysicalEnvironment[PhysicalEnvironment["BackYard"] = 52] = "BackYard";
    PhysicalEnvironment[PhysicalEnvironment["FrontYard"] = 53] = "FrontYard";
    PhysicalEnvironment[PhysicalEnvironment["Patio"] = 54] = "Patio";
    PhysicalEnvironment[PhysicalEnvironment["Driveway"] = 55] = "Driveway";
    PhysicalEnvironment[PhysicalEnvironment["SunRoom"] = 56] = "SunRoom";
    PhysicalEnvironment[PhysicalEnvironment["LivingRoom2"] = 57] = "LivingRoom2";
    PhysicalEnvironment[PhysicalEnvironment["Spa"] = 58] = "Spa";
    PhysicalEnvironment[PhysicalEnvironment["Whirlpool"] = 59] = "Whirlpool";
    PhysicalEnvironment[PhysicalEnvironment["Shed"] = 60] = "Shed";
    PhysicalEnvironment[PhysicalEnvironment["EquipmentStorage"] = 61] = "EquipmentStorage";
    PhysicalEnvironment[PhysicalEnvironment["HobbyOrCraftRoom"] = 62] = "HobbyOrCraftRoom";
    PhysicalEnvironment[PhysicalEnvironment["Fountain"] = 63] = "Fountain";
    PhysicalEnvironment[PhysicalEnvironment["Pond"] = 64] = "Pond";
    PhysicalEnvironment[PhysicalEnvironment["ReceptionRoom"] = 65] = "ReceptionRoom";
    PhysicalEnvironment[PhysicalEnvironment["BreakfastRoom"] = 66] = "BreakfastRoom";
    PhysicalEnvironment[PhysicalEnvironment["Nook"] = 67] = "Nook";
    PhysicalEnvironment[PhysicalEnvironment["Garden"] = 68] = "Garden";
    PhysicalEnvironment[PhysicalEnvironment["Balcony"] = 69] = "Balcony";
    PhysicalEnvironment[PhysicalEnvironment["PanicRoom"] = 70] = "PanicRoom";
    PhysicalEnvironment[PhysicalEnvironment["Terrace"] = 71] = "Terrace";
    PhysicalEnvironment[PhysicalEnvironment["Roof"] = 72] = "Roof";
    PhysicalEnvironment[PhysicalEnvironment["Toilet"] = 73] = "Toilet";
    PhysicalEnvironment[PhysicalEnvironment["ToiletMain"] = 74] = "ToiletMain";
    PhysicalEnvironment[PhysicalEnvironment["OutsideToilet"] = 75] = "OutsideToilet";
    PhysicalEnvironment[PhysicalEnvironment["ShowerRoom"] = 76] = "ShowerRoom";
    PhysicalEnvironment[PhysicalEnvironment["Study"] = 77] = "Study";
    PhysicalEnvironment[PhysicalEnvironment["FrontGarden"] = 78] = "FrontGarden";
    PhysicalEnvironment[PhysicalEnvironment["BackGarden"] = 79] = "BackGarden";
    PhysicalEnvironment[PhysicalEnvironment["Kettle"] = 80] = "Kettle";
    PhysicalEnvironment[PhysicalEnvironment["Television"] = 81] = "Television";
    PhysicalEnvironment[PhysicalEnvironment["Stove"] = 82] = "Stove";
    PhysicalEnvironment[PhysicalEnvironment["Microwave"] = 83] = "Microwave";
    PhysicalEnvironment[PhysicalEnvironment["Toaster"] = 84] = "Toaster";
    PhysicalEnvironment[PhysicalEnvironment["Vacuum"] = 85] = "Vacuum";
    PhysicalEnvironment[PhysicalEnvironment["Appliance"] = 86] = "Appliance";
    PhysicalEnvironment[PhysicalEnvironment["FrontDoor"] = 87] = "FrontDoor";
    PhysicalEnvironment[PhysicalEnvironment["BackDoor"] = 88] = "BackDoor";
    PhysicalEnvironment[PhysicalEnvironment["FridgeDoor"] = 89] = "FridgeDoor";
    PhysicalEnvironment[PhysicalEnvironment["MedicationCabinetDoor"] = 96] = "MedicationCabinetDoor";
    PhysicalEnvironment[PhysicalEnvironment["WardrobeDoor"] = 97] = "WardrobeDoor";
    PhysicalEnvironment[PhysicalEnvironment["FrontCupboardDoor"] = 98] = "FrontCupboardDoor";
    PhysicalEnvironment[PhysicalEnvironment["OtherDoor"] = 99] = "OtherDoor";
    PhysicalEnvironment[PhysicalEnvironment["WaitingRoom"] = 100] = "WaitingRoom";
    PhysicalEnvironment[PhysicalEnvironment["TriageRoom"] = 101] = "TriageRoom";
    PhysicalEnvironment[PhysicalEnvironment["DoctorsOffice"] = 102] = "DoctorsOffice";
    PhysicalEnvironment[PhysicalEnvironment["PatientsPrivateRoom"] = 103] = "PatientsPrivateRoom";
    PhysicalEnvironment[PhysicalEnvironment["ConsultationRoom"] = 104] = "ConsultationRoom";
    PhysicalEnvironment[PhysicalEnvironment["NurseStation"] = 105] = "NurseStation";
    PhysicalEnvironment[PhysicalEnvironment["Ward"] = 106] = "Ward";
    PhysicalEnvironment[PhysicalEnvironment["Corridor"] = 107] = "Corridor";
    PhysicalEnvironment[PhysicalEnvironment["OperatingTheatre"] = 108] = "OperatingTheatre";
    PhysicalEnvironment[PhysicalEnvironment["DentalSurgeryRoom"] = 109] = "DentalSurgeryRoom";
    PhysicalEnvironment[PhysicalEnvironment["MedicalImagingRoom"] = 110] = "MedicalImagingRoom";
    PhysicalEnvironment[PhysicalEnvironment["DecontaminationRoom"] = 111] = "DecontaminationRoom";
    PhysicalEnvironment[PhysicalEnvironment["Atrium"] = 112] = "Atrium";
    PhysicalEnvironment[PhysicalEnvironment["Mirror"] = 113] = "Mirror";
    PhysicalEnvironment[PhysicalEnvironment["UnknownEnvironment"] = 255] = "UnknownEnvironment";
})(PhysicalEnvironment || (exports.PhysicalEnvironment = PhysicalEnvironment = {}));
/**
 * @cluster Basic
 * @type map8
 */
var AlarmMask;
(function (AlarmMask) {
    AlarmMask[AlarmMask["GeneralHardwareFault"] = 1] = "GeneralHardwareFault";
    AlarmMask[AlarmMask["GeneralSoftwareFault"] = 2] = "GeneralSoftwareFault";
})(AlarmMask || (exports.AlarmMask = AlarmMask = {}));
/**
 * @cluster Basic
 */
var AlarmShiftRight;
(function (AlarmShiftRight) {
    AlarmShiftRight[AlarmShiftRight["GeneralSoftwareFault"] = 1] = "GeneralSoftwareFault";
})(AlarmShiftRight || (exports.AlarmShiftRight = AlarmShiftRight = {}));
/**
 * @cluster Basic
 * @type map8
 */
var DisableLocalConfigMask;
(function (DisableLocalConfigMask) {
    DisableLocalConfigMask[DisableLocalConfigMask["DisableResetToFactoryDefaults"] = 1] = "DisableResetToFactoryDefaults";
    DisableLocalConfigMask[DisableLocalConfigMask["DisableDeviceConfiguration"] = 2] = "DisableDeviceConfiguration";
})(DisableLocalConfigMask || (exports.DisableLocalConfigMask = DisableLocalConfigMask = {}));
/**
 * @cluster Basic
 */
var DisableLocalConfigShiftRight;
(function (DisableLocalConfigShiftRight) {
    DisableLocalConfigShiftRight[DisableLocalConfigShiftRight["DisableDeviceConfiguration"] = 1] = "DisableDeviceConfiguration";
})(DisableLocalConfigShiftRight || (exports.DisableLocalConfigShiftRight = DisableLocalConfigShiftRight = {}));
/**
 * @cluster PowerConfiguration
 * @type enum8
 */
var BatterySize;
(function (BatterySize) {
    BatterySize[BatterySize["NoBattery"] = 0] = "NoBattery";
    BatterySize[BatterySize["BuiltIn"] = 1] = "BuiltIn";
    BatterySize[BatterySize["Other"] = 2] = "Other";
    BatterySize[BatterySize["Aa"] = 3] = "Aa";
    BatterySize[BatterySize["Aaa"] = 4] = "Aaa";
    BatterySize[BatterySize["C"] = 5] = "C";
    BatterySize[BatterySize["D"] = 6] = "D";
    BatterySize[BatterySize["Cr2"] = 7] = "Cr2";
    BatterySize[BatterySize["Cr123a"] = 8] = "Cr123a";
    BatterySize[BatterySize["Unknown"] = 255] = "Unknown";
})(BatterySize || (exports.BatterySize = BatterySize = {}));
/**
 * @cluster PowerConfiguration
 * @type map8
 */
var BatteryAlarmMask;
(function (BatteryAlarmMask) {
    BatteryAlarmMask[BatteryAlarmMask["BatteryVoltageTooLow"] = 1] = "BatteryVoltageTooLow";
    BatteryAlarmMask[BatteryAlarmMask["BatteryAlarm1"] = 2] = "BatteryAlarm1";
    BatteryAlarmMask[BatteryAlarmMask["BatteryAlarm2"] = 4] = "BatteryAlarm2";
    BatteryAlarmMask[BatteryAlarmMask["BatteryAlarm3"] = 8] = "BatteryAlarm3";
})(BatteryAlarmMask || (exports.BatteryAlarmMask = BatteryAlarmMask = {}));
/**
 * @cluster PowerConfiguration
 */
var BatteryAlarmShiftRight;
(function (BatteryAlarmShiftRight) {
    BatteryAlarmShiftRight[BatteryAlarmShiftRight["BatteryAlarm1"] = 1] = "BatteryAlarm1";
    BatteryAlarmShiftRight[BatteryAlarmShiftRight["BatteryAlarm2"] = 2] = "BatteryAlarm2";
    BatteryAlarmShiftRight[BatteryAlarmShiftRight["BatteryAlarm3"] = 3] = "BatteryAlarm3";
})(BatteryAlarmShiftRight || (exports.BatteryAlarmShiftRight = BatteryAlarmShiftRight = {}));
/**
 * @cluster PowerConfiguration
 * @type map32
 */
var BatteryAlarmStateMask;
(function (BatteryAlarmStateMask) {
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery1minThreshold"] = 1] = "Battery1minThreshold";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery1threshold1"] = 2] = "Battery1threshold1";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery1threshold2"] = 4] = "Battery1threshold2";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery1threshold3"] = 8] = "Battery1threshold3";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery2minThreshold"] = 1024] = "Battery2minThreshold";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery2threshold1"] = 2048] = "Battery2threshold1";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery2threshold2"] = 4096] = "Battery2threshold2";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery2threshold3"] = 8192] = "Battery2threshold3";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery3minThreshold"] = 1048576] = "Battery3minThreshold";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery3threshold1"] = 2097152] = "Battery3threshold1";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery3threshold2"] = 4194304] = "Battery3threshold2";
    BatteryAlarmStateMask[BatteryAlarmStateMask["Battery3threshold3"] = 8388608] = "Battery3threshold3";
    BatteryAlarmStateMask[BatteryAlarmStateMask["MainsPowerSupplyLost"] = 1073741824] = "MainsPowerSupplyLost";
})(BatteryAlarmStateMask || (exports.BatteryAlarmStateMask = BatteryAlarmStateMask = {}));
/**
 * @cluster PowerConfiguration
 */
var BatteryAlarmStateShiftRight;
(function (BatteryAlarmStateShiftRight) {
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery1threshold1"] = 1] = "Battery1threshold1";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery1threshold2"] = 2] = "Battery1threshold2";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery1threshold3"] = 3] = "Battery1threshold3";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery2minThreshold"] = 16] = "Battery2minThreshold";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery2threshold1"] = 17] = "Battery2threshold1";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery2threshold2"] = 18] = "Battery2threshold2";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery2threshold3"] = 19] = "Battery2threshold3";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery3minThreshold"] = 32] = "Battery3minThreshold";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery3threshold1"] = 33] = "Battery3threshold1";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery3threshold2"] = 34] = "Battery3threshold2";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["Battery3threshold3"] = 35] = "Battery3threshold3";
    BatteryAlarmStateShiftRight[BatteryAlarmStateShiftRight["MainsPowerSupplyLost"] = 48] = "MainsPowerSupplyLost";
})(BatteryAlarmStateShiftRight || (exports.BatteryAlarmStateShiftRight = BatteryAlarmStateShiftRight = {}));
/**
 * @cluster PowerConfiguration
 * @type map8
 */
var MainsAlarmMask;
(function (MainsAlarmMask) {
    MainsAlarmMask[MainsAlarmMask["MainsVoltageTooLow"] = 1] = "MainsVoltageTooLow";
    MainsAlarmMask[MainsAlarmMask["MainsVoltageTooHigh"] = 2] = "MainsVoltageTooHigh";
    MainsAlarmMask[MainsAlarmMask["MainsPowerSupplyLost"] = 4] = "MainsPowerSupplyLost";
})(MainsAlarmMask || (exports.MainsAlarmMask = MainsAlarmMask = {}));
/**
 * @cluster PowerConfiguration
 */
var MainsAlarmShiftRight;
(function (MainsAlarmShiftRight) {
    MainsAlarmShiftRight[MainsAlarmShiftRight["MainsVoltageTooHigh"] = 1] = "MainsVoltageTooHigh";
    MainsAlarmShiftRight[MainsAlarmShiftRight["MainsPowerSupplyLost"] = 2] = "MainsPowerSupplyLost";
})(MainsAlarmShiftRight || (exports.MainsAlarmShiftRight = MainsAlarmShiftRight = {}));
/**
 * @cluster DeviceTemperatureConfiguration
 * @type map8
 */
var DeviceTempAlarmMask;
(function (DeviceTempAlarmMask) {
    DeviceTempAlarmMask[DeviceTempAlarmMask["DeviceTemperatureTooLow"] = 1] = "DeviceTemperatureTooLow";
    DeviceTempAlarmMask[DeviceTempAlarmMask["DeviceTemperatureTooHigh"] = 2] = "DeviceTemperatureTooHigh";
})(DeviceTempAlarmMask || (exports.DeviceTempAlarmMask = DeviceTempAlarmMask = {}));
/**
 * @cluster DeviceTemperatureConfiguration
 */
var DeviceTempAlarmShiftRight;
(function (DeviceTempAlarmShiftRight) {
    DeviceTempAlarmShiftRight[DeviceTempAlarmShiftRight["DeviceTemperatureTooHigh"] = 1] = "DeviceTemperatureTooHigh";
})(DeviceTempAlarmShiftRight || (exports.DeviceTempAlarmShiftRight = DeviceTempAlarmShiftRight = {}));
/**
 * @cluster Identify
 * @type uint8
 */
var EffectIdentifier;
(function (EffectIdentifier) {
    EffectIdentifier[EffectIdentifier["Blink"] = 0] = "Blink";
    EffectIdentifier[EffectIdentifier["Breathe"] = 1] = "Breathe";
    EffectIdentifier[EffectIdentifier["Okay"] = 2] = "Okay";
    EffectIdentifier[EffectIdentifier["ChannelChange"] = 11] = "ChannelChange";
    EffectIdentifier[EffectIdentifier["FinishEffect"] = 254] = "FinishEffect";
    EffectIdentifier[EffectIdentifier["StopEffect"] = 255] = "StopEffect";
})(EffectIdentifier || (exports.EffectIdentifier = EffectIdentifier = {}));
/**
 * @cluster Identify
 * @type uint8
 */
var EffectVariant;
(function (EffectVariant) {
    EffectVariant[EffectVariant["Default"] = 0] = "Default";
})(EffectVariant || (exports.EffectVariant = EffectVariant = {}));
/**
 * @cluster Groups
 * @type map8
 */
var NameSupportMask;
(function (NameSupportMask) {
    NameSupportMask[NameSupportMask["Supported"] = 128] = "Supported";
})(NameSupportMask || (exports.NameSupportMask = NameSupportMask = {}));
/**
 * @cluster Groups
 */
var NameSupportShiftRight;
(function (NameSupportShiftRight) {
    NameSupportShiftRight[NameSupportShiftRight["Supported"] = 7] = "Supported";
})(NameSupportShiftRight || (exports.NameSupportShiftRight = NameSupportShiftRight = {}));
/**
 * @cluster Scenes
 * @type uint8
 */
var ModeMask;
(function (ModeMask) {
    ModeMask[ModeMask["CopyAllScenes"] = 1] = "CopyAllScenes";
})(ModeMask || (exports.ModeMask = ModeMask = {}));
/**
 * @cluster OnOff
 * @type enum8
 */
var StartUpOnOff;
(function (StartUpOnOff) {
    StartUpOnOff[StartUpOnOff["SetOnOffTo0"] = 0] = "SetOnOffTo0";
    StartUpOnOff[StartUpOnOff["SetOnOffTo1"] = 1] = "SetOnOffTo1";
    StartUpOnOff[StartUpOnOff["TogglePreviousOnOff"] = 2] = "TogglePreviousOnOff";
    StartUpOnOff[StartUpOnOff["SetPreviousOnOff"] = 255] = "SetPreviousOnOff";
})(StartUpOnOff || (exports.StartUpOnOff = StartUpOnOff = {}));
/**
 * @cluster OnOff
 * @type uint8
 */
var OnOffControlMask;
(function (OnOffControlMask) {
    OnOffControlMask[OnOffControlMask["AcceptOnlyWhenOn"] = 1] = "AcceptOnlyWhenOn";
})(OnOffControlMask || (exports.OnOffControlMask = OnOffControlMask = {}));
/**
 * @cluster Level
 * @type map8
 */
var LevelOptionsMask;
(function (LevelOptionsMask) {
    LevelOptionsMask[LevelOptionsMask["ExecuteIfOff"] = 1] = "ExecuteIfOff";
    LevelOptionsMask[LevelOptionsMask["CoupleColorTempToLevel"] = 2] = "CoupleColorTempToLevel";
})(LevelOptionsMask || (exports.LevelOptionsMask = LevelOptionsMask = {}));
/**
 * @cluster Level
 */
var LevelOptionsShiftRight;
(function (LevelOptionsShiftRight) {
    LevelOptionsShiftRight[LevelOptionsShiftRight["CoupleColorTempToLevel"] = 1] = "CoupleColorTempToLevel";
})(LevelOptionsShiftRight || (exports.LevelOptionsShiftRight = LevelOptionsShiftRight = {}));
/**
 * @cluster Level
 * @type enum8
 */
var MoveStepMode;
(function (MoveStepMode) {
    MoveStepMode[MoveStepMode["Up"] = 0] = "Up";
    MoveStepMode[MoveStepMode["Down"] = 1] = "Down";
})(MoveStepMode || (exports.MoveStepMode = MoveStepMode = {}));
/**
 * @cluster Time
 * @type map8
 */
var TimeStatusMask;
(function (TimeStatusMask) {
    TimeStatusMask[TimeStatusMask["Master"] = 1] = "Master";
    TimeStatusMask[TimeStatusMask["Synchronized"] = 2] = "Synchronized";
    TimeStatusMask[TimeStatusMask["MasterZoneDst"] = 4] = "MasterZoneDst";
    TimeStatusMask[TimeStatusMask["Superseding"] = 8] = "Superseding";
})(TimeStatusMask || (exports.TimeStatusMask = TimeStatusMask = {}));
/**
 * @cluster Time
 */
var TimeStatusShiftRight;
(function (TimeStatusShiftRight) {
    TimeStatusShiftRight[TimeStatusShiftRight["Synchronized"] = 1] = "Synchronized";
    TimeStatusShiftRight[TimeStatusShiftRight["MasterZoneDst"] = 2] = "MasterZoneDst";
    TimeStatusShiftRight[TimeStatusShiftRight["Superseding"] = 3] = "Superseding";
})(TimeStatusShiftRight || (exports.TimeStatusShiftRight = TimeStatusShiftRight = {}));
/**
 * @cluster IlluminanceMeasurement
 * @type enum8
 */
var LightSensorType;
(function (LightSensorType) {
    LightSensorType[LightSensorType["Photodiode"] = 0] = "Photodiode";
    LightSensorType[LightSensorType["Cmos"] = 1] = "Cmos";
    LightSensorType[LightSensorType["Unknown"] = 255] = "Unknown";
})(LightSensorType || (exports.LightSensorType = LightSensorType = {}));
/**
 * @cluster IlluminanceLevelSensing
 * @type enum8
 */
var LevelStatus;
(function (LevelStatus) {
    LevelStatus[LevelStatus["IlluminanceOnTarget"] = 0] = "IlluminanceOnTarget";
    LevelStatus[LevelStatus["IlluminanceBelowTarget"] = 1] = "IlluminanceBelowTarget";
    LevelStatus[LevelStatus["IlluminanceAboveTarget"] = 2] = "IlluminanceAboveTarget";
})(LevelStatus || (exports.LevelStatus = LevelStatus = {}));
/**
 * @cluster OccupancySensing
 * @type map8
 */
var OccupancyMask;
(function (OccupancyMask) {
    OccupancyMask[OccupancyMask["SensedOccupancy"] = 1] = "SensedOccupancy";
})(OccupancyMask || (exports.OccupancyMask = OccupancyMask = {}));
/**
 * @cluster OccupancySensing
 * @type enum8
 */
var OccupancySensorType;
(function (OccupancySensorType) {
    OccupancySensorType[OccupancySensorType["Pir"] = 0] = "Pir";
    OccupancySensorType[OccupancySensorType["Ultrasonic"] = 1] = "Ultrasonic";
    OccupancySensorType[OccupancySensorType["PirandUltrasonic"] = 2] = "PirandUltrasonic";
    OccupancySensorType[OccupancySensorType["PhysicalContact"] = 3] = "PhysicalContact";
})(OccupancySensorType || (exports.OccupancySensorType = OccupancySensorType = {}));
/**
 * @cluster OccupancySensing
 * @type map8
 */
var OccupancySensorTypeBitmapMask;
(function (OccupancySensorTypeBitmapMask) {
    OccupancySensorTypeBitmapMask[OccupancySensorTypeBitmapMask["Pir"] = 1] = "Pir";
    OccupancySensorTypeBitmapMask[OccupancySensorTypeBitmapMask["Ultrasonic"] = 2] = "Ultrasonic";
    OccupancySensorTypeBitmapMask[OccupancySensorTypeBitmapMask["PhysicalContact"] = 4] = "PhysicalContact";
})(OccupancySensorTypeBitmapMask || (exports.OccupancySensorTypeBitmapMask = OccupancySensorTypeBitmapMask = {}));
/**
 * @cluster OccupancySensing
 */
var OccupancySensorTypeBitmapShiftRight;
(function (OccupancySensorTypeBitmapShiftRight) {
    OccupancySensorTypeBitmapShiftRight[OccupancySensorTypeBitmapShiftRight["Ultrasonic"] = 1] = "Ultrasonic";
    OccupancySensorTypeBitmapShiftRight[OccupancySensorTypeBitmapShiftRight["PhysicalContact"] = 2] = "PhysicalContact";
})(OccupancySensorTypeBitmapShiftRight || (exports.OccupancySensorTypeBitmapShiftRight = OccupancySensorTypeBitmapShiftRight = {}));
/**
 * @cluster ElectricalMeasurement
 * @type map32
 */
var MeasurementTypeMask;
(function (MeasurementTypeMask) {
    MeasurementTypeMask[MeasurementTypeMask["ActiveMeasurementAc"] = 1] = "ActiveMeasurementAc";
    MeasurementTypeMask[MeasurementTypeMask["ReactiveMeasurementAc"] = 2] = "ReactiveMeasurementAc";
    MeasurementTypeMask[MeasurementTypeMask["ApparentMeasurementAc"] = 4] = "ApparentMeasurementAc";
    MeasurementTypeMask[MeasurementTypeMask["PhaseAmeasurement"] = 8] = "PhaseAmeasurement";
    MeasurementTypeMask[MeasurementTypeMask["PhaseBmeasurement"] = 16] = "PhaseBmeasurement";
    MeasurementTypeMask[MeasurementTypeMask["PhaseCmeasurement"] = 32] = "PhaseCmeasurement";
    MeasurementTypeMask[MeasurementTypeMask["Dcmeasurement"] = 64] = "Dcmeasurement";
    MeasurementTypeMask[MeasurementTypeMask["HarmonicsMeasurement"] = 128] = "HarmonicsMeasurement";
    MeasurementTypeMask[MeasurementTypeMask["PowerQualityMeasurement"] = 256] = "PowerQualityMeasurement";
})(MeasurementTypeMask || (exports.MeasurementTypeMask = MeasurementTypeMask = {}));
/**
 * @cluster ElectricalMeasurement
 */
var MeasurementTypeShiftRight;
(function (MeasurementTypeShiftRight) {
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["ReactiveMeasurementAc"] = 1] = "ReactiveMeasurementAc";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["ApparentMeasurementAc"] = 2] = "ApparentMeasurementAc";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["PhaseAmeasurement"] = 3] = "PhaseAmeasurement";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["PhaseBmeasurement"] = 4] = "PhaseBmeasurement";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["PhaseCmeasurement"] = 5] = "PhaseCmeasurement";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["Dcmeasurement"] = 6] = "Dcmeasurement";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["HarmonicsMeasurement"] = 7] = "HarmonicsMeasurement";
    MeasurementTypeShiftRight[MeasurementTypeShiftRight["PowerQualityMeasurement"] = 8] = "PowerQualityMeasurement";
})(MeasurementTypeShiftRight || (exports.MeasurementTypeShiftRight = MeasurementTypeShiftRight = {}));
/**
 * @cluster ElectricalMeasurement
 * @type map8
 */
var DCOverloadAlarmsMask;
(function (DCOverloadAlarmsMask) {
    DCOverloadAlarmsMask[DCOverloadAlarmsMask["VoltageOverload"] = 1] = "VoltageOverload";
    DCOverloadAlarmsMask[DCOverloadAlarmsMask["CurrentOverload"] = 2] = "CurrentOverload";
})(DCOverloadAlarmsMask || (exports.DCOverloadAlarmsMask = DCOverloadAlarmsMask = {}));
/**
 * @cluster ElectricalMeasurement
 */
var DCOverloadAlarmsShiftRight;
(function (DCOverloadAlarmsShiftRight) {
    DCOverloadAlarmsShiftRight[DCOverloadAlarmsShiftRight["CurrentOverload"] = 1] = "CurrentOverload";
})(DCOverloadAlarmsShiftRight || (exports.DCOverloadAlarmsShiftRight = DCOverloadAlarmsShiftRight = {}));
/**
 * @cluster ElectricalMeasurement
 * @type map16
 */
var ACAlarmsMask;
(function (ACAlarmsMask) {
    ACAlarmsMask[ACAlarmsMask["VoltageOverload"] = 1] = "VoltageOverload";
    ACAlarmsMask[ACAlarmsMask["CurrentOverload"] = 2] = "CurrentOverload";
    ACAlarmsMask[ACAlarmsMask["ActivePowerOverload"] = 4] = "ActivePowerOverload";
    ACAlarmsMask[ACAlarmsMask["ReactivePowerOverload"] = 8] = "ReactivePowerOverload";
    ACAlarmsMask[ACAlarmsMask["AverageRmsoverVoltage"] = 16] = "AverageRmsoverVoltage";
    ACAlarmsMask[ACAlarmsMask["AverageRmsunderVoltage"] = 32] = "AverageRmsunderVoltage";
    ACAlarmsMask[ACAlarmsMask["RmsextremeOverVoltage"] = 64] = "RmsextremeOverVoltage";
    ACAlarmsMask[ACAlarmsMask["RmsextremeUnderVoltage"] = 128] = "RmsextremeUnderVoltage";
    ACAlarmsMask[ACAlarmsMask["RmsvoltageSag"] = 256] = "RmsvoltageSag";
    ACAlarmsMask[ACAlarmsMask["RmsvoltageSwell"] = 512] = "RmsvoltageSwell";
})(ACAlarmsMask || (exports.ACAlarmsMask = ACAlarmsMask = {}));
/**
 * @cluster ElectricalMeasurement
 */
var ACAlarmsShiftRight;
(function (ACAlarmsShiftRight) {
    ACAlarmsShiftRight[ACAlarmsShiftRight["CurrentOverload"] = 1] = "CurrentOverload";
    ACAlarmsShiftRight[ACAlarmsShiftRight["ActivePowerOverload"] = 2] = "ActivePowerOverload";
    ACAlarmsShiftRight[ACAlarmsShiftRight["ReactivePowerOverload"] = 3] = "ReactivePowerOverload";
    ACAlarmsShiftRight[ACAlarmsShiftRight["AverageRmsoverVoltage"] = 4] = "AverageRmsoverVoltage";
    ACAlarmsShiftRight[ACAlarmsShiftRight["AverageRmsunderVoltage"] = 5] = "AverageRmsunderVoltage";
    ACAlarmsShiftRight[ACAlarmsShiftRight["RmsextremeOverVoltage"] = 6] = "RmsextremeOverVoltage";
    ACAlarmsShiftRight[ACAlarmsShiftRight["RmsextremeUnderVoltage"] = 7] = "RmsextremeUnderVoltage";
    ACAlarmsShiftRight[ACAlarmsShiftRight["RmsvoltageSag"] = 8] = "RmsvoltageSag";
    ACAlarmsShiftRight[ACAlarmsShiftRight["RmsvoltageSwell"] = 9] = "RmsvoltageSwell";
})(ACAlarmsShiftRight || (exports.ACAlarmsShiftRight = ACAlarmsShiftRight = {}));
/**
 * @cluster ElectricalMeasurement
 * @type enum8
 */
var Status;
(function (Status) {
    Status[Status["Success"] = 0] = "Success";
    Status[Status["AttributeProfileNotSupported"] = 1] = "AttributeProfileNotSupported";
    Status[Status["InvalidStartTime"] = 2] = "InvalidStartTime";
    Status[Status["MoreIntervalsRequestedThanCanBeReturned"] = 3] = "MoreIntervalsRequestedThanCanBeReturned";
    Status[Status["NoIntervalsAvailableForTheRequestedTime"] = 4] = "NoIntervalsAvailableForTheRequestedTime";
})(Status || (exports.Status = Status = {}));
/**
 * @cluster ColorControl
 * @type map8
 */
var CCColorOptionsMask;
(function (CCColorOptionsMask) {
    CCColorOptionsMask[CCColorOptionsMask["ExecuteIfOff"] = 1] = "ExecuteIfOff";
})(CCColorOptionsMask || (exports.CCColorOptionsMask = CCColorOptionsMask = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var ColorControlDirection;
(function (ColorControlDirection) {
    ColorControlDirection[ColorControlDirection["ShortestDistance"] = 0] = "ShortestDistance";
    ColorControlDirection[ColorControlDirection["LongestDistance"] = 1] = "LongestDistance";
    ColorControlDirection[ColorControlDirection["Up"] = 2] = "Up";
    ColorControlDirection[ColorControlDirection["Down"] = 3] = "Down";
})(ColorControlDirection || (exports.ColorControlDirection = ColorControlDirection = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var ColorControlMoveMode;
(function (ColorControlMoveMode) {
    ColorControlMoveMode[ColorControlMoveMode["Stop"] = 0] = "Stop";
    ColorControlMoveMode[ColorControlMoveMode["Up"] = 1] = "Up";
    ColorControlMoveMode[ColorControlMoveMode["Down"] = 3] = "Down";
})(ColorControlMoveMode || (exports.ColorControlMoveMode = ColorControlMoveMode = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var ColorControlStepMode;
(function (ColorControlStepMode) {
    ColorControlStepMode[ColorControlStepMode["Up"] = 1] = "Up";
    ColorControlStepMode[ColorControlStepMode["Down"] = 3] = "Down";
})(ColorControlStepMode || (exports.ColorControlStepMode = ColorControlStepMode = {}));
/**
 * @cluster ColorControl
 * @type uint8
 */
var ColorControlColorLoopDirection;
(function (ColorControlColorLoopDirection) {
    ColorControlColorLoopDirection[ColorControlColorLoopDirection["DecrementEnhancedCurrentHue"] = 0] = "DecrementEnhancedCurrentHue";
    ColorControlColorLoopDirection[ColorControlColorLoopDirection["IncrementEnhancedCurrentHue"] = 1] = "IncrementEnhancedCurrentHue";
})(ColorControlColorLoopDirection || (exports.ColorControlColorLoopDirection = ColorControlColorLoopDirection = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var DriftCompensation;
(function (DriftCompensation) {
    DriftCompensation[DriftCompensation["None"] = 0] = "None";
    DriftCompensation[DriftCompensation["OtherOrUnknown"] = 1] = "OtherOrUnknown";
    DriftCompensation[DriftCompensation["TemperatureMonitoring"] = 2] = "TemperatureMonitoring";
    DriftCompensation[DriftCompensation["OpticalLuminanceMonitoringAndFeedback"] = 3] = "OpticalLuminanceMonitoringAndFeedback";
    DriftCompensation[DriftCompensation["OpticalColorMonitoringAndFeedback"] = 4] = "OpticalColorMonitoringAndFeedback";
})(DriftCompensation || (exports.DriftCompensation = DriftCompensation = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var ColorMode;
(function (ColorMode) {
    ColorMode[ColorMode["CurrentHueAndCurrentSaturation"] = 0] = "CurrentHueAndCurrentSaturation";
    ColorMode[ColorMode["CurrentXandCurrentY"] = 1] = "CurrentXandCurrentY";
    ColorMode[ColorMode["ColorTemperatureMireds"] = 2] = "ColorTemperatureMireds";
})(ColorMode || (exports.ColorMode = ColorMode = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var EnhancedColorMode;
(function (EnhancedColorMode) {
    EnhancedColorMode[EnhancedColorMode["CurrentHueAndCurrentSaturation"] = 0] = "CurrentHueAndCurrentSaturation";
    EnhancedColorMode[EnhancedColorMode["CurrentXandCurrentY"] = 1] = "CurrentXandCurrentY";
    EnhancedColorMode[EnhancedColorMode["ColorTemperatureMireds"] = 2] = "ColorTemperatureMireds";
    EnhancedColorMode[EnhancedColorMode["EnhancedCurrentHueAndCurrentSaturation"] = 3] = "EnhancedCurrentHueAndCurrentSaturation";
})(EnhancedColorMode || (exports.EnhancedColorMode = EnhancedColorMode = {}));
/**
 * @cluster ColorControl
 * @type uint8
 */
var ColorLoopActive;
(function (ColorLoopActive) {
    ColorLoopActive[ColorLoopActive["ColorLoopInactive"] = 0] = "ColorLoopInactive";
    ColorLoopActive[ColorLoopActive["ColorLoopActive"] = 1] = "ColorLoopActive";
})(ColorLoopActive || (exports.ColorLoopActive = ColorLoopActive = {}));
/**
 * @cluster ColorControl
 * @type map16
 */
var ColorCapabilitiesMask;
(function (ColorCapabilitiesMask) {
    ColorCapabilitiesMask[ColorCapabilitiesMask["HueSaturationSupported"] = 1] = "HueSaturationSupported";
    ColorCapabilitiesMask[ColorCapabilitiesMask["EnhancedHueSupported"] = 2] = "EnhancedHueSupported";
    ColorCapabilitiesMask[ColorCapabilitiesMask["ColorLoopSupported"] = 4] = "ColorLoopSupported";
    ColorCapabilitiesMask[ColorCapabilitiesMask["Xysupported"] = 8] = "Xysupported";
    ColorCapabilitiesMask[ColorCapabilitiesMask["ColorTemperatureSupported"] = 16] = "ColorTemperatureSupported";
})(ColorCapabilitiesMask || (exports.ColorCapabilitiesMask = ColorCapabilitiesMask = {}));
/**
 * @cluster ColorControl
 */
var ColorCapabilitiesShiftRight;
(function (ColorCapabilitiesShiftRight) {
    ColorCapabilitiesShiftRight[ColorCapabilitiesShiftRight["EnhancedHueSupported"] = 1] = "EnhancedHueSupported";
    ColorCapabilitiesShiftRight[ColorCapabilitiesShiftRight["ColorLoopSupported"] = 2] = "ColorLoopSupported";
    ColorCapabilitiesShiftRight[ColorCapabilitiesShiftRight["Xysupported"] = 3] = "Xysupported";
    ColorCapabilitiesShiftRight[ColorCapabilitiesShiftRight["ColorTemperatureSupported"] = 4] = "ColorTemperatureSupported";
})(ColorCapabilitiesShiftRight || (exports.ColorCapabilitiesShiftRight = ColorCapabilitiesShiftRight = {}));
/**
 * @cluster ColorControl
 * @type map8
 */
var UpdateFlagsMask;
(function (UpdateFlagsMask) {
    UpdateFlagsMask[UpdateFlagsMask["UpdateAction"] = 1] = "UpdateAction";
    UpdateFlagsMask[UpdateFlagsMask["UpdateDirection"] = 2] = "UpdateDirection";
    UpdateFlagsMask[UpdateFlagsMask["UpdateTime"] = 4] = "UpdateTime";
    UpdateFlagsMask[UpdateFlagsMask["UpdateStartHue"] = 8] = "UpdateStartHue";
})(UpdateFlagsMask || (exports.UpdateFlagsMask = UpdateFlagsMask = {}));
/**
 * @cluster ColorControl
 */
var UpdateFlagsShiftRight;
(function (UpdateFlagsShiftRight) {
    UpdateFlagsShiftRight[UpdateFlagsShiftRight["UpdateDirection"] = 1] = "UpdateDirection";
    UpdateFlagsShiftRight[UpdateFlagsShiftRight["UpdateTime"] = 2] = "UpdateTime";
    UpdateFlagsShiftRight[UpdateFlagsShiftRight["UpdateStartHue"] = 3] = "UpdateStartHue";
})(UpdateFlagsShiftRight || (exports.UpdateFlagsShiftRight = UpdateFlagsShiftRight = {}));
/**
 * @cluster ColorControl
 * @type enum8
 */
var Action;
(function (Action) {
    Action[Action["DeactivateColorLoop"] = 0] = "DeactivateColorLoop";
    Action[Action["ActivateColorLoopFromColorLoopStartEnhancedHue"] = 1] = "ActivateColorLoopFromColorLoopStartEnhancedHue";
    Action[Action["ActivateColorLoopFromEnhancedCurrentHue"] = 2] = "ActivateColorLoopFromEnhancedCurrentHue";
})(Action || (exports.Action = Action = {}));
/**
 * @cluster BallastConfiguration
 * @type map8
 */
var BallastStatusMask;
(function (BallastStatusMask) {
    BallastStatusMask[BallastStatusMask["BallastNonOperational"] = 1] = "BallastNonOperational";
    BallastStatusMask[BallastStatusMask["LampFailure"] = 2] = "LampFailure";
})(BallastStatusMask || (exports.BallastStatusMask = BallastStatusMask = {}));
/**
 * @cluster BallastConfiguration
 */
var BallastStatusShiftRight;
(function (BallastStatusShiftRight) {
    BallastStatusShiftRight[BallastStatusShiftRight["LampFailure"] = 1] = "LampFailure";
})(BallastStatusShiftRight || (exports.BallastStatusShiftRight = BallastStatusShiftRight = {}));
/**
 * @cluster BallastConfiguration
 * @type map8
 */
var LampAlarmModeMask;
(function (LampAlarmModeMask) {
    LampAlarmModeMask[LampAlarmModeMask["LampBurnHours"] = 1] = "LampBurnHours";
})(LampAlarmModeMask || (exports.LampAlarmModeMask = LampAlarmModeMask = {}));
/**
 * @cluster PumpConfigurationAndControl
 * @type enum8
 */
var PumpOperationMode;
(function (PumpOperationMode) {
    PumpOperationMode[PumpOperationMode["Normal"] = 0] = "Normal";
    PumpOperationMode[PumpOperationMode["Minimum"] = 1] = "Minimum";
    PumpOperationMode[PumpOperationMode["Maximum"] = 2] = "Maximum";
    PumpOperationMode[PumpOperationMode["Local"] = 3] = "Local";
})(PumpOperationMode || (exports.PumpOperationMode = PumpOperationMode = {}));
/**
 * @cluster PumpConfigurationAndControl
 * @type enum8
 */
var PumpControlMode;
(function (PumpControlMode) {
    PumpControlMode[PumpControlMode["ConstantSpeed"] = 0] = "ConstantSpeed";
    PumpControlMode[PumpControlMode["ConstantPressure"] = 1] = "ConstantPressure";
    PumpControlMode[PumpControlMode["ProportionalPressure"] = 2] = "ProportionalPressure";
    PumpControlMode[PumpControlMode["ConstantFlow"] = 3] = "ConstantFlow";
    PumpControlMode[PumpControlMode["ConstantTemperature"] = 5] = "ConstantTemperature";
    PumpControlMode[PumpControlMode["Automatic"] = 7] = "Automatic";
})(PumpControlMode || (exports.PumpControlMode = PumpControlMode = {}));
/**
 * @cluster PumpConfigurationAndControl
 * @type map16
 */
var PumpStatusMask;
(function (PumpStatusMask) {
    PumpStatusMask[PumpStatusMask["DeviceFault"] = 1] = "DeviceFault";
    PumpStatusMask[PumpStatusMask["SupplyFault"] = 2] = "SupplyFault";
    PumpStatusMask[PumpStatusMask["SpeedLow"] = 4] = "SpeedLow";
    PumpStatusMask[PumpStatusMask["SpeedHigh"] = 8] = "SpeedHigh";
    PumpStatusMask[PumpStatusMask["LocalOverride"] = 16] = "LocalOverride";
    PumpStatusMask[PumpStatusMask["Running"] = 32] = "Running";
    PumpStatusMask[PumpStatusMask["RemotePressure"] = 64] = "RemotePressure";
    PumpStatusMask[PumpStatusMask["RemoteFlow"] = 128] = "RemoteFlow";
    PumpStatusMask[PumpStatusMask["RemoteTemperature"] = 256] = "RemoteTemperature";
})(PumpStatusMask || (exports.PumpStatusMask = PumpStatusMask = {}));
/**
 * @cluster PumpConfigurationAndControl
 */
var PumpStatusShiftRight;
(function (PumpStatusShiftRight) {
    PumpStatusShiftRight[PumpStatusShiftRight["SupplyFault"] = 1] = "SupplyFault";
    PumpStatusShiftRight[PumpStatusShiftRight["SpeedLow"] = 2] = "SpeedLow";
    PumpStatusShiftRight[PumpStatusShiftRight["SpeedHigh"] = 3] = "SpeedHigh";
    PumpStatusShiftRight[PumpStatusShiftRight["LocalOverride"] = 4] = "LocalOverride";
    PumpStatusShiftRight[PumpStatusShiftRight["Running"] = 5] = "Running";
    PumpStatusShiftRight[PumpStatusShiftRight["RemotePressure"] = 6] = "RemotePressure";
    PumpStatusShiftRight[PumpStatusShiftRight["RemoteFlow"] = 7] = "RemoteFlow";
    PumpStatusShiftRight[PumpStatusShiftRight["RemoteTemperature"] = 8] = "RemoteTemperature";
})(PumpStatusShiftRight || (exports.PumpStatusShiftRight = PumpStatusShiftRight = {}));
/**
 * @cluster Thermostat
 * @type map8
 */
var TstatScheduleDOWMask;
(function (TstatScheduleDOWMask) {
    TstatScheduleDOWMask[TstatScheduleDOWMask["Sunday"] = 1] = "Sunday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Monday"] = 2] = "Monday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Tuesday"] = 4] = "Tuesday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Wednesday"] = 8] = "Wednesday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Thursday"] = 16] = "Thursday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Friday"] = 32] = "Friday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["Saturday"] = 64] = "Saturday";
    TstatScheduleDOWMask[TstatScheduleDOWMask["AwayOrVacation"] = 128] = "AwayOrVacation";
})(TstatScheduleDOWMask || (exports.TstatScheduleDOWMask = TstatScheduleDOWMask = {}));
/**
 * @cluster Thermostat
 */
var TstatScheduleDOWShiftRight;
(function (TstatScheduleDOWShiftRight) {
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Monday"] = 1] = "Monday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Tuesday"] = 2] = "Tuesday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Wednesday"] = 3] = "Wednesday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Thursday"] = 4] = "Thursday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Friday"] = 5] = "Friday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["Saturday"] = 6] = "Saturday";
    TstatScheduleDOWShiftRight[TstatScheduleDOWShiftRight["AwayOrVacation"] = 7] = "AwayOrVacation";
})(TstatScheduleDOWShiftRight || (exports.TstatScheduleDOWShiftRight = TstatScheduleDOWShiftRight = {}));
/**
 * @cluster Thermostat
 * @type map8
 */
var TstatScheduleModeMask;
(function (TstatScheduleModeMask) {
    TstatScheduleModeMask[TstatScheduleModeMask["Heat"] = 1] = "Heat";
    TstatScheduleModeMask[TstatScheduleModeMask["Cool"] = 2] = "Cool";
})(TstatScheduleModeMask || (exports.TstatScheduleModeMask = TstatScheduleModeMask = {}));
/**
 * @cluster Thermostat
 */
var TstatScheduleModeShiftRight;
(function (TstatScheduleModeShiftRight) {
    TstatScheduleModeShiftRight[TstatScheduleModeShiftRight["Cool"] = 1] = "Cool";
})(TstatScheduleModeShiftRight || (exports.TstatScheduleModeShiftRight = TstatScheduleModeShiftRight = {}));
/**
 * @cluster Thermostat
 * @type map8
 */
var HVACSystemTypeConfigurationMask;
(function (HVACSystemTypeConfigurationMask) {
    HVACSystemTypeConfigurationMask[HVACSystemTypeConfigurationMask["CoolingSystemStage"] = 3] = "CoolingSystemStage";
    HVACSystemTypeConfigurationMask[HVACSystemTypeConfigurationMask["HeatingSystemStage"] = 12] = "HeatingSystemStage";
    HVACSystemTypeConfigurationMask[HVACSystemTypeConfigurationMask["HeatingSystemType"] = 16] = "HeatingSystemType";
    HVACSystemTypeConfigurationMask[HVACSystemTypeConfigurationMask["HeatingFuelSource"] = 32] = "HeatingFuelSource";
})(HVACSystemTypeConfigurationMask || (exports.HVACSystemTypeConfigurationMask = HVACSystemTypeConfigurationMask = {}));
/**
 * @cluster Thermostat
 */
var HVACSystemTypeConfigurationShiftRight;
(function (HVACSystemTypeConfigurationShiftRight) {
    HVACSystemTypeConfigurationShiftRight[HVACSystemTypeConfigurationShiftRight["HeatingSystemStage"] = 2] = "HeatingSystemStage";
    HVACSystemTypeConfigurationShiftRight[HVACSystemTypeConfigurationShiftRight["HeatingSystemType"] = 4] = "HeatingSystemType";
    HVACSystemTypeConfigurationShiftRight[HVACSystemTypeConfigurationShiftRight["HeatingFuelSource"] = 5] = "HeatingFuelSource";
})(HVACSystemTypeConfigurationShiftRight || (exports.HVACSystemTypeConfigurationShiftRight = HVACSystemTypeConfigurationShiftRight = {}));
/**
 * @cluster Thermostat
 * @type map8
 */
var RemoteSensingMask;
(function (RemoteSensingMask) {
    RemoteSensingMask[RemoteSensingMask["LocalTemperatureRemote"] = 1] = "LocalTemperatureRemote";
    RemoteSensingMask[RemoteSensingMask["OutdoorTemperatureRemote"] = 2] = "OutdoorTemperatureRemote";
    RemoteSensingMask[RemoteSensingMask["OccupancyRemote"] = 4] = "OccupancyRemote";
})(RemoteSensingMask || (exports.RemoteSensingMask = RemoteSensingMask = {}));
/**
 * @cluster Thermostat
 */
var RemoteSensingShiftRight;
(function (RemoteSensingShiftRight) {
    RemoteSensingShiftRight[RemoteSensingShiftRight["OutdoorTemperatureRemote"] = 1] = "OutdoorTemperatureRemote";
    RemoteSensingShiftRight[RemoteSensingShiftRight["OccupancyRemote"] = 2] = "OccupancyRemote";
})(RemoteSensingShiftRight || (exports.RemoteSensingShiftRight = RemoteSensingShiftRight = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ControlSequenceOfOperation;
(function (ControlSequenceOfOperation) {
    ControlSequenceOfOperation[ControlSequenceOfOperation["CoolingOnly"] = 0] = "CoolingOnly";
    ControlSequenceOfOperation[ControlSequenceOfOperation["CoolingWithReheat"] = 1] = "CoolingWithReheat";
    ControlSequenceOfOperation[ControlSequenceOfOperation["HeatingOnly"] = 2] = "HeatingOnly";
    ControlSequenceOfOperation[ControlSequenceOfOperation["HeatingWithReheat"] = 3] = "HeatingWithReheat";
    ControlSequenceOfOperation[ControlSequenceOfOperation["CoolingAndHeating4pipes"] = 4] = "CoolingAndHeating4pipes";
    ControlSequenceOfOperation[ControlSequenceOfOperation["CoolingAndHeating4pipesWithReheat"] = 5] = "CoolingAndHeating4pipesWithReheat";
})(ControlSequenceOfOperation || (exports.ControlSequenceOfOperation = ControlSequenceOfOperation = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var SystemMode;
(function (SystemMode) {
    SystemMode[SystemMode["Off"] = 0] = "Off";
    SystemMode[SystemMode["Auto"] = 1] = "Auto";
    SystemMode[SystemMode["Cool"] = 3] = "Cool";
    SystemMode[SystemMode["Heat"] = 4] = "Heat";
    SystemMode[SystemMode["EmergencyHeating"] = 5] = "EmergencyHeating";
    SystemMode[SystemMode["Precooling"] = 6] = "Precooling";
    SystemMode[SystemMode["FanOnly"] = 7] = "FanOnly";
    SystemMode[SystemMode["Dry"] = 8] = "Dry";
    SystemMode[SystemMode["Sleep"] = 9] = "Sleep";
})(SystemMode || (exports.SystemMode = SystemMode = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ThermostatRunningMode;
(function (ThermostatRunningMode) {
    ThermostatRunningMode[ThermostatRunningMode["Off"] = 0] = "Off";
    ThermostatRunningMode[ThermostatRunningMode["Cool"] = 3] = "Cool";
    ThermostatRunningMode[ThermostatRunningMode["Heat"] = 4] = "Heat";
})(ThermostatRunningMode || (exports.ThermostatRunningMode = ThermostatRunningMode = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var StartOfWeek;
(function (StartOfWeek) {
    StartOfWeek[StartOfWeek["Sunday"] = 0] = "Sunday";
    StartOfWeek[StartOfWeek["Monday"] = 1] = "Monday";
    StartOfWeek[StartOfWeek["Tuesday"] = 2] = "Tuesday";
    StartOfWeek[StartOfWeek["Wednesday"] = 3] = "Wednesday";
    StartOfWeek[StartOfWeek["Thursday"] = 4] = "Thursday";
    StartOfWeek[StartOfWeek["Friday"] = 5] = "Friday";
    StartOfWeek[StartOfWeek["Sunday2"] = 6] = "Sunday2";
})(StartOfWeek || (exports.StartOfWeek = StartOfWeek = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var TemperatureSetpointHold;
(function (TemperatureSetpointHold) {
    TemperatureSetpointHold[TemperatureSetpointHold["SetpointHoldOff"] = 0] = "SetpointHoldOff";
    TemperatureSetpointHold[TemperatureSetpointHold["SetpointHoldOn"] = 1] = "SetpointHoldOn";
})(TemperatureSetpointHold || (exports.TemperatureSetpointHold = TemperatureSetpointHold = {}));
/**
 * @cluster Thermostat
 * @type map8
 */
var ThermostatProgrammingOperationModeMask;
(function (ThermostatProgrammingOperationModeMask) {
    ThermostatProgrammingOperationModeMask[ThermostatProgrammingOperationModeMask["ProgrammingMode"] = 1] = "ProgrammingMode";
    ThermostatProgrammingOperationModeMask[ThermostatProgrammingOperationModeMask["AutoOrRecovery"] = 2] = "AutoOrRecovery";
    ThermostatProgrammingOperationModeMask[ThermostatProgrammingOperationModeMask["EconomyOrEnergyStar"] = 4] = "EconomyOrEnergyStar";
})(ThermostatProgrammingOperationModeMask || (exports.ThermostatProgrammingOperationModeMask = ThermostatProgrammingOperationModeMask = {}));
/**
 * @cluster Thermostat
 */
var ThermostatProgrammingOperationModeShiftRight;
(function (ThermostatProgrammingOperationModeShiftRight) {
    ThermostatProgrammingOperationModeShiftRight[ThermostatProgrammingOperationModeShiftRight["AutoOrRecovery"] = 1] = "AutoOrRecovery";
    ThermostatProgrammingOperationModeShiftRight[ThermostatProgrammingOperationModeShiftRight["EconomyOrEnergyStar"] = 2] = "EconomyOrEnergyStar";
})(ThermostatProgrammingOperationModeShiftRight || (exports.ThermostatProgrammingOperationModeShiftRight = ThermostatProgrammingOperationModeShiftRight = {}));
/**
 * @cluster Thermostat
 * @type map16
 */
var ThermostatRunningStateMask;
(function (ThermostatRunningStateMask) {
    ThermostatRunningStateMask[ThermostatRunningStateMask["HeatOn"] = 1] = "HeatOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["CoolOn"] = 2] = "CoolOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["FanOn"] = 4] = "FanOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["HeatSecondStageOn"] = 8] = "HeatSecondStageOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["CoolSecondStageOn"] = 16] = "CoolSecondStageOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["FanSecondStageOn"] = 32] = "FanSecondStageOn";
    ThermostatRunningStateMask[ThermostatRunningStateMask["FanThirdStageOn"] = 64] = "FanThirdStageOn";
})(ThermostatRunningStateMask || (exports.ThermostatRunningStateMask = ThermostatRunningStateMask = {}));
/**
 * @cluster Thermostat
 */
var ThermostatRunningStateShiftRight;
(function (ThermostatRunningStateShiftRight) {
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["CoolOn"] = 1] = "CoolOn";
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["FanOn"] = 2] = "FanOn";
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["HeatSecondStageOn"] = 3] = "HeatSecondStageOn";
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["CoolSecondStageOn"] = 4] = "CoolSecondStageOn";
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["FanSecondStageOn"] = 5] = "FanSecondStageOn";
    ThermostatRunningStateShiftRight[ThermostatRunningStateShiftRight["FanThirdStageOn"] = 6] = "FanThirdStageOn";
})(ThermostatRunningStateShiftRight || (exports.ThermostatRunningStateShiftRight = ThermostatRunningStateShiftRight = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var SetpointChangeSource;
(function (SetpointChangeSource) {
    SetpointChangeSource[SetpointChangeSource["Manual"] = 0] = "Manual";
    SetpointChangeSource[SetpointChangeSource["ScheduleOrInternalProgramming"] = 1] = "ScheduleOrInternalProgramming";
    SetpointChangeSource[SetpointChangeSource["External"] = 2] = "External";
})(SetpointChangeSource || (exports.SetpointChangeSource = SetpointChangeSource = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ACType;
(function (ACType) {
    ACType[ACType["CoolingAndFixedSpeed"] = 1] = "CoolingAndFixedSpeed";
    ACType[ACType["HeatPumpAndFixedSpeed"] = 2] = "HeatPumpAndFixedSpeed";
    ACType[ACType["CoolingAndInverter"] = 3] = "CoolingAndInverter";
    ACType[ACType["HeatPumpAndInverter"] = 4] = "HeatPumpAndInverter";
})(ACType || (exports.ACType = ACType = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ACRefrigerantType;
(function (ACRefrigerantType) {
    ACRefrigerantType[ACRefrigerantType["R22"] = 1] = "R22";
    ACRefrigerantType[ACRefrigerantType["R410a"] = 2] = "R410a";
    ACRefrigerantType[ACRefrigerantType["R407c"] = 3] = "R407c";
})(ACRefrigerantType || (exports.ACRefrigerantType = ACRefrigerantType = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ACCompressorType;
(function (ACCompressorType) {
    ACCompressorType[ACCompressorType["T1"] = 1] = "T1";
    ACCompressorType[ACCompressorType["T2"] = 2] = "T2";
    ACCompressorType[ACCompressorType["T3"] = 3] = "T3";
})(ACCompressorType || (exports.ACCompressorType = ACCompressorType = {}));
/**
 * @cluster Thermostat
 * @type map32
 */
var ACErrorCodeMask;
(function (ACErrorCodeMask) {
    ACErrorCodeMask[ACErrorCodeMask["CompressorFailureOrRefrigerantLeakage"] = 1] = "CompressorFailureOrRefrigerantLeakage";
    ACErrorCodeMask[ACErrorCodeMask["RoomTemperatureSensorFailure"] = 2] = "RoomTemperatureSensorFailure";
    ACErrorCodeMask[ACErrorCodeMask["OutdoorTemperatureSensorFailure"] = 4] = "OutdoorTemperatureSensorFailure";
    ACErrorCodeMask[ACErrorCodeMask["IndoorCoilTemperatureSensorFailure"] = 8] = "IndoorCoilTemperatureSensorFailure";
    ACErrorCodeMask[ACErrorCodeMask["FanFailure"] = 16] = "FanFailure";
})(ACErrorCodeMask || (exports.ACErrorCodeMask = ACErrorCodeMask = {}));
/**
 * @cluster Thermostat
 */
var ACErrorCodeShiftRight;
(function (ACErrorCodeShiftRight) {
    ACErrorCodeShiftRight[ACErrorCodeShiftRight["RoomTemperatureSensorFailure"] = 1] = "RoomTemperatureSensorFailure";
    ACErrorCodeShiftRight[ACErrorCodeShiftRight["OutdoorTemperatureSensorFailure"] = 2] = "OutdoorTemperatureSensorFailure";
    ACErrorCodeShiftRight[ACErrorCodeShiftRight["IndoorCoilTemperatureSensorFailure"] = 3] = "IndoorCoilTemperatureSensorFailure";
    ACErrorCodeShiftRight[ACErrorCodeShiftRight["FanFailure"] = 4] = "FanFailure";
})(ACErrorCodeShiftRight || (exports.ACErrorCodeShiftRight = ACErrorCodeShiftRight = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ACLouverPosition;
(function (ACLouverPosition) {
    ACLouverPosition[ACLouverPosition["FullyClosed"] = 1] = "FullyClosed";
    ACLouverPosition[ACLouverPosition["FullyOpen"] = 2] = "FullyOpen";
    ACLouverPosition[ACLouverPosition["QuarterOpen"] = 3] = "QuarterOpen";
    ACLouverPosition[ACLouverPosition["HalfOpen"] = 4] = "HalfOpen";
    ACLouverPosition[ACLouverPosition["ThreeQuartersOpen"] = 5] = "ThreeQuartersOpen";
})(ACLouverPosition || (exports.ACLouverPosition = ACLouverPosition = {}));
/**
 * @cluster Thermostat
 * @type enum8
 */
var ACCapacityFormat;
(function (ACCapacityFormat) {
    ACCapacityFormat[ACCapacityFormat["Btuh"] = 0] = "Btuh";
})(ACCapacityFormat || (exports.ACCapacityFormat = ACCapacityFormat = {}));
/**
 * @cluster FanControl
 * @type enum8
 */
var FanMode;
(function (FanMode) {
    FanMode[FanMode["Off"] = 0] = "Off";
    FanMode[FanMode["Low"] = 1] = "Low";
    FanMode[FanMode["Medium"] = 2] = "Medium";
    FanMode[FanMode["High"] = 3] = "High";
    FanMode[FanMode["On"] = 4] = "On";
    FanMode[FanMode["Auto"] = 5] = "Auto";
    FanMode[FanMode["Smart"] = 6] = "Smart";
})(FanMode || (exports.FanMode = FanMode = {}));
/**
 * @cluster FanControl
 * @type enum8
 */
var FanModeSequence;
(function (FanModeSequence) {
    FanModeSequence[FanModeSequence["LowMedHigh"] = 0] = "LowMedHigh";
    FanModeSequence[FanModeSequence["LowHigh"] = 1] = "LowHigh";
    FanModeSequence[FanModeSequence["LowMedHighAuto"] = 2] = "LowMedHighAuto";
    FanModeSequence[FanModeSequence["LowHighAuto"] = 3] = "LowHighAuto";
    FanModeSequence[FanModeSequence["OnAuto"] = 4] = "OnAuto";
})(FanModeSequence || (exports.FanModeSequence = FanModeSequence = {}));
/**
 * @cluster DehumidificationControl
 * @type enum8
 */
var RelativeHumidityMode;
(function (RelativeHumidityMode) {
    RelativeHumidityMode[RelativeHumidityMode["MeasuredLocally"] = 0] = "MeasuredLocally";
    RelativeHumidityMode[RelativeHumidityMode["UpdatedOverTheNetwork"] = 1] = "UpdatedOverTheNetwork";
})(RelativeHumidityMode || (exports.RelativeHumidityMode = RelativeHumidityMode = {}));
/**
 * @cluster DehumidificationControl
 * @type enum8
 */
var DehumidificationLockout;
(function (DehumidificationLockout) {
    DehumidificationLockout[DehumidificationLockout["DehumidificationNotAllowed"] = 0] = "DehumidificationNotAllowed";
    DehumidificationLockout[DehumidificationLockout["DehumidificationAllowed"] = 1] = "DehumidificationAllowed";
})(DehumidificationLockout || (exports.DehumidificationLockout = DehumidificationLockout = {}));
/**
 * @cluster DehumidificationControl
 * @type enum8
 */
var RelativeHumidityDisplay;
(function (RelativeHumidityDisplay) {
    RelativeHumidityDisplay[RelativeHumidityDisplay["NotDisplayed"] = 0] = "NotDisplayed";
    RelativeHumidityDisplay[RelativeHumidityDisplay["Displayed"] = 1] = "Displayed";
})(RelativeHumidityDisplay || (exports.RelativeHumidityDisplay = RelativeHumidityDisplay = {}));
/**
 * @cluster ThermostatUserInterfaceConfiguration
 * @type enum8
 */
var TemperatureDisplayMode;
(function (TemperatureDisplayMode) {
    TemperatureDisplayMode[TemperatureDisplayMode["Celsius"] = 0] = "Celsius";
    TemperatureDisplayMode[TemperatureDisplayMode["Fahrenheit"] = 1] = "Fahrenheit";
})(TemperatureDisplayMode || (exports.TemperatureDisplayMode = TemperatureDisplayMode = {}));
/**
 * @cluster ThermostatUserInterfaceConfiguration
 * @type enum8
 */
var KeypadLockout;
(function (KeypadLockout) {
    KeypadLockout[KeypadLockout["None"] = 0] = "None";
    KeypadLockout[KeypadLockout["Level1"] = 1] = "Level1";
    KeypadLockout[KeypadLockout["Level2"] = 2] = "Level2";
    KeypadLockout[KeypadLockout["Level3"] = 3] = "Level3";
    KeypadLockout[KeypadLockout["Level4"] = 4] = "Level4";
    KeypadLockout[KeypadLockout["Level5"] = 5] = "Level5";
})(KeypadLockout || (exports.KeypadLockout = KeypadLockout = {}));
/**
 * @cluster ThermostatUserInterfaceConfiguration
 * @type enum8
 */
var ScheduleProgrammingVisibility;
(function (ScheduleProgrammingVisibility) {
    ScheduleProgrammingVisibility[ScheduleProgrammingVisibility["LocalEnabled"] = 0] = "LocalEnabled";
    ScheduleProgrammingVisibility[ScheduleProgrammingVisibility["LocalDisabled"] = 1] = "LocalDisabled";
})(ScheduleProgrammingVisibility || (exports.ScheduleProgrammingVisibility = ScheduleProgrammingVisibility = {}));
/**
 * @cluster ShadeConfiguration
 * @type enum8
 */
var SHDCFGDirection;
(function (SHDCFGDirection) {
    SHDCFGDirection[SHDCFGDirection["Closing"] = 0] = "Closing";
    SHDCFGDirection[SHDCFGDirection["Opening"] = 1] = "Opening";
})(SHDCFGDirection || (exports.SHDCFGDirection = SHDCFGDirection = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var DrlkUserStatus;
(function (DrlkUserStatus) {
    DrlkUserStatus[DrlkUserStatus["Available"] = 0] = "Available";
    DrlkUserStatus[DrlkUserStatus["OccupiedEnabled"] = 1] = "OccupiedEnabled";
    DrlkUserStatus[DrlkUserStatus["OccupiedDisabled"] = 3] = "OccupiedDisabled";
    DrlkUserStatus[DrlkUserStatus["NotSupported"] = 255] = "NotSupported";
})(DrlkUserStatus || (exports.DrlkUserStatus = DrlkUserStatus = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var DrlkSettableUserStatus;
(function (DrlkSettableUserStatus) {
    DrlkSettableUserStatus[DrlkSettableUserStatus["OccupiedEnabled"] = 1] = "OccupiedEnabled";
    DrlkSettableUserStatus[DrlkSettableUserStatus["OccupiedDisabled"] = 3] = "OccupiedDisabled";
})(DrlkSettableUserStatus || (exports.DrlkSettableUserStatus = DrlkSettableUserStatus = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var DrlkUserType;
(function (DrlkUserType) {
    DrlkUserType[DrlkUserType["UnrestrictedUser"] = 0] = "UnrestrictedUser";
    DrlkUserType[DrlkUserType["YearDayScheduleUser"] = 1] = "YearDayScheduleUser";
    DrlkUserType[DrlkUserType["WeekDayScheduleUser"] = 2] = "WeekDayScheduleUser";
    DrlkUserType[DrlkUserType["MasterUser"] = 3] = "MasterUser";
    DrlkUserType[DrlkUserType["NonAccessUser"] = 4] = "NonAccessUser";
    DrlkUserType[DrlkUserType["NotSupported"] = 255] = "NotSupported";
})(DrlkUserType || (exports.DrlkUserType = DrlkUserType = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var DrlkOperMode;
(function (DrlkOperMode) {
    DrlkOperMode[DrlkOperMode["Normal"] = 0] = "Normal";
    DrlkOperMode[DrlkOperMode["Vacation"] = 1] = "Vacation";
    DrlkOperMode[DrlkOperMode["Privacy"] = 2] = "Privacy";
    DrlkOperMode[DrlkOperMode["NoRflockOrUnlock"] = 3] = "NoRflockOrUnlock";
    DrlkOperMode[DrlkOperMode["Passage"] = 4] = "Passage";
})(DrlkOperMode || (exports.DrlkOperMode = DrlkOperMode = {}));
/**
 * @cluster DoorLock
 * @type map8
 */
var DrlkDaysMask;
(function (DrlkDaysMask) {
    DrlkDaysMask[DrlkDaysMask["Sun"] = 1] = "Sun";
    DrlkDaysMask[DrlkDaysMask["Mon"] = 2] = "Mon";
    DrlkDaysMask[DrlkDaysMask["Tue"] = 4] = "Tue";
    DrlkDaysMask[DrlkDaysMask["Wed"] = 8] = "Wed";
    DrlkDaysMask[DrlkDaysMask["Thu"] = 16] = "Thu";
    DrlkDaysMask[DrlkDaysMask["Fri"] = 32] = "Fri";
    DrlkDaysMask[DrlkDaysMask["Sat"] = 64] = "Sat";
    DrlkDaysMask[DrlkDaysMask["Enable"] = 128] = "Enable";
})(DrlkDaysMask || (exports.DrlkDaysMask = DrlkDaysMask = {}));
/**
 * @cluster DoorLock
 */
var DrlkDaysShiftRight;
(function (DrlkDaysShiftRight) {
    DrlkDaysShiftRight[DrlkDaysShiftRight["Mon"] = 1] = "Mon";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Tue"] = 2] = "Tue";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Wed"] = 3] = "Wed";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Thu"] = 4] = "Thu";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Fri"] = 5] = "Fri";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Sat"] = 6] = "Sat";
    DrlkDaysShiftRight[DrlkDaysShiftRight["Enable"] = 7] = "Enable";
})(DrlkDaysShiftRight || (exports.DrlkDaysShiftRight = DrlkDaysShiftRight = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var DrlkPassFailStatus;
(function (DrlkPassFailStatus) {
    DrlkPassFailStatus[DrlkPassFailStatus["Pass"] = 0] = "Pass";
    DrlkPassFailStatus[DrlkPassFailStatus["Fail"] = 1] = "Fail";
})(DrlkPassFailStatus || (exports.DrlkPassFailStatus = DrlkPassFailStatus = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var DrlkSetCodeStatus;
(function (DrlkSetCodeStatus) {
    DrlkSetCodeStatus[DrlkSetCodeStatus["Success"] = 0] = "Success";
    DrlkSetCodeStatus[DrlkSetCodeStatus["GeneralFailure"] = 1] = "GeneralFailure";
    DrlkSetCodeStatus[DrlkSetCodeStatus["MemoryFull"] = 2] = "MemoryFull";
    DrlkSetCodeStatus[DrlkSetCodeStatus["DuplicateCode"] = 3] = "DuplicateCode";
})(DrlkSetCodeStatus || (exports.DrlkSetCodeStatus = DrlkSetCodeStatus = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var DrlkOperEventSource;
(function (DrlkOperEventSource) {
    DrlkOperEventSource[DrlkOperEventSource["Keypad"] = 0] = "Keypad";
    DrlkOperEventSource[DrlkOperEventSource["Rf"] = 1] = "Rf";
    DrlkOperEventSource[DrlkOperEventSource["Manual"] = 2] = "Manual";
    DrlkOperEventSource[DrlkOperEventSource["Rfid"] = 3] = "Rfid";
    DrlkOperEventSource[DrlkOperEventSource["Indeterminate"] = 255] = "Indeterminate";
})(DrlkOperEventSource || (exports.DrlkOperEventSource = DrlkOperEventSource = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var LockState;
(function (LockState) {
    LockState[LockState["NotFullyLocked"] = 0] = "NotFullyLocked";
    LockState[LockState["Locked"] = 1] = "Locked";
    LockState[LockState["Unlocked"] = 2] = "Unlocked";
    LockState[LockState["Undefined"] = 255] = "Undefined";
})(LockState || (exports.LockState = LockState = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var LockType;
(function (LockType) {
    LockType[LockType["DeadBolt"] = 0] = "DeadBolt";
    LockType[LockType["Magnetic"] = 1] = "Magnetic";
    LockType[LockType["Other"] = 2] = "Other";
    LockType[LockType["Mortise"] = 3] = "Mortise";
    LockType[LockType["Rim"] = 4] = "Rim";
    LockType[LockType["LatchBolt"] = 5] = "LatchBolt";
    LockType[LockType["CylindricalLock"] = 6] = "CylindricalLock";
    LockType[LockType["TubularLock"] = 7] = "TubularLock";
    LockType[LockType["InterconnectedLock"] = 8] = "InterconnectedLock";
    LockType[LockType["DeadLatch"] = 9] = "DeadLatch";
    LockType[LockType["DoorFurniture"] = 10] = "DoorFurniture";
})(LockType || (exports.LockType = LockType = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var DoorState;
(function (DoorState) {
    DoorState[DoorState["Open"] = 0] = "Open";
    DoorState[DoorState["Closed"] = 1] = "Closed";
    DoorState[DoorState["ErrorJammed"] = 2] = "ErrorJammed";
    DoorState[DoorState["ErrorForcedOpen"] = 3] = "ErrorForcedOpen";
    DoorState[DoorState["ErrorUnspecified"] = 4] = "ErrorUnspecified";
    DoorState[DoorState["Undefined"] = 255] = "Undefined";
})(DoorState || (exports.DoorState = DoorState = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var LEDSettings;
(function (LEDSettings) {
    LEDSettings[LEDSettings["NeverUseLed"] = 0] = "NeverUseLed";
    LEDSettings[LEDSettings["UseLedexceptForAccessAllowed"] = 1] = "UseLedexceptForAccessAllowed";
    LEDSettings[LEDSettings["UseLedforAllEvents"] = 2] = "UseLedforAllEvents";
})(LEDSettings || (exports.LEDSettings = LEDSettings = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var SoundVolume;
(function (SoundVolume) {
    SoundVolume[SoundVolume["SilentMode"] = 0] = "SilentMode";
    SoundVolume[SoundVolume["LowVolume"] = 1] = "LowVolume";
    SoundVolume[SoundVolume["HighVolume"] = 2] = "HighVolume";
})(SoundVolume || (exports.SoundVolume = SoundVolume = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var SupportedOperatingModesMask;
(function (SupportedOperatingModesMask) {
    SupportedOperatingModesMask[SupportedOperatingModesMask["NormalModeSupported"] = 1] = "NormalModeSupported";
    SupportedOperatingModesMask[SupportedOperatingModesMask["VacationModeSupported"] = 2] = "VacationModeSupported";
    SupportedOperatingModesMask[SupportedOperatingModesMask["PrivacyModeSupported"] = 4] = "PrivacyModeSupported";
    SupportedOperatingModesMask[SupportedOperatingModesMask["NoRflockOrUnlockModeSupported"] = 8] = "NoRflockOrUnlockModeSupported";
    SupportedOperatingModesMask[SupportedOperatingModesMask["PassageModeSupported"] = 16] = "PassageModeSupported";
})(SupportedOperatingModesMask || (exports.SupportedOperatingModesMask = SupportedOperatingModesMask = {}));
/**
 * @cluster DoorLock
 */
var SupportedOperatingModesShiftRight;
(function (SupportedOperatingModesShiftRight) {
    SupportedOperatingModesShiftRight[SupportedOperatingModesShiftRight["VacationModeSupported"] = 1] = "VacationModeSupported";
    SupportedOperatingModesShiftRight[SupportedOperatingModesShiftRight["PrivacyModeSupported"] = 2] = "PrivacyModeSupported";
    SupportedOperatingModesShiftRight[SupportedOperatingModesShiftRight["NoRflockOrUnlockModeSupported"] = 3] = "NoRflockOrUnlockModeSupported";
    SupportedOperatingModesShiftRight[SupportedOperatingModesShiftRight["PassageModeSupported"] = 4] = "PassageModeSupported";
})(SupportedOperatingModesShiftRight || (exports.SupportedOperatingModesShiftRight = SupportedOperatingModesShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var DefaultConfigurationRegisterMask;
(function (DefaultConfigurationRegisterMask) {
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultEnableLocalProgrammingAttributeIsEnabled"] = 1] = "DefaultEnableLocalProgrammingAttributeIsEnabled";
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultKeypadInterfaceIsEnabled"] = 2] = "DefaultKeypadInterfaceIsEnabled";
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultRfinterfaceIsEnabled"] = 4] = "DefaultRfinterfaceIsEnabled";
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultSoundVolumeIsEnabled"] = 32] = "DefaultSoundVolumeIsEnabled";
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultAutoRelockTimeIsEnabled"] = 64] = "DefaultAutoRelockTimeIsEnabled";
    DefaultConfigurationRegisterMask[DefaultConfigurationRegisterMask["DefaultLedsettingsIsEnabled"] = 128] = "DefaultLedsettingsIsEnabled";
})(DefaultConfigurationRegisterMask || (exports.DefaultConfigurationRegisterMask = DefaultConfigurationRegisterMask = {}));
/**
 * @cluster DoorLock
 */
var DefaultConfigurationRegisterShiftRight;
(function (DefaultConfigurationRegisterShiftRight) {
    DefaultConfigurationRegisterShiftRight[DefaultConfigurationRegisterShiftRight["DefaultKeypadInterfaceIsEnabled"] = 1] = "DefaultKeypadInterfaceIsEnabled";
    DefaultConfigurationRegisterShiftRight[DefaultConfigurationRegisterShiftRight["DefaultRfinterfaceIsEnabled"] = 2] = "DefaultRfinterfaceIsEnabled";
    DefaultConfigurationRegisterShiftRight[DefaultConfigurationRegisterShiftRight["DefaultSoundVolumeIsEnabled"] = 5] = "DefaultSoundVolumeIsEnabled";
    DefaultConfigurationRegisterShiftRight[DefaultConfigurationRegisterShiftRight["DefaultAutoRelockTimeIsEnabled"] = 6] = "DefaultAutoRelockTimeIsEnabled";
    DefaultConfigurationRegisterShiftRight[DefaultConfigurationRegisterShiftRight["DefaultLedsettingsIsEnabled"] = 7] = "DefaultLedsettingsIsEnabled";
})(DefaultConfigurationRegisterShiftRight || (exports.DefaultConfigurationRegisterShiftRight = DefaultConfigurationRegisterShiftRight = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var SecurityLevel;
(function (SecurityLevel) {
    SecurityLevel[SecurityLevel["Network"] = 0] = "Network";
    SecurityLevel[SecurityLevel["Aps"] = 1] = "Aps";
})(SecurityLevel || (exports.SecurityLevel = SecurityLevel = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var KeypadOperationEventMask;
(function (KeypadOperationEventMask) {
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpUnknownOrMs"] = 1] = "KeypadOpUnknownOrMs";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpLock"] = 2] = "KeypadOpLock";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpUnlock"] = 4] = "KeypadOpUnlock";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpLockErrorInvalidPin"] = 8] = "KeypadOpLockErrorInvalidPin";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpLockErrorInvalidSchedule"] = 16] = "KeypadOpLockErrorInvalidSchedule";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpUnlockInvalidPin"] = 32] = "KeypadOpUnlockInvalidPin";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpUnlockInvalidSchedule"] = 64] = "KeypadOpUnlockInvalidSchedule";
    KeypadOperationEventMask[KeypadOperationEventMask["KeypadOpNonAccessUser"] = 128] = "KeypadOpNonAccessUser";
})(KeypadOperationEventMask || (exports.KeypadOperationEventMask = KeypadOperationEventMask = {}));
/**
 * @cluster DoorLock
 */
var KeypadOperationEventShiftRight;
(function (KeypadOperationEventShiftRight) {
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpLock"] = 1] = "KeypadOpLock";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpUnlock"] = 2] = "KeypadOpUnlock";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpLockErrorInvalidPin"] = 3] = "KeypadOpLockErrorInvalidPin";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpLockErrorInvalidSchedule"] = 4] = "KeypadOpLockErrorInvalidSchedule";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpUnlockInvalidPin"] = 5] = "KeypadOpUnlockInvalidPin";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpUnlockInvalidSchedule"] = 6] = "KeypadOpUnlockInvalidSchedule";
    KeypadOperationEventShiftRight[KeypadOperationEventShiftRight["KeypadOpNonAccessUser"] = 7] = "KeypadOpNonAccessUser";
})(KeypadOperationEventShiftRight || (exports.KeypadOperationEventShiftRight = KeypadOperationEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var RFOperationEventMask;
(function (RFOperationEventMask) {
    RFOperationEventMask[RFOperationEventMask["RfopUnknownOrMs"] = 1] = "RfopUnknownOrMs";
    RFOperationEventMask[RFOperationEventMask["RfopLock"] = 2] = "RfopLock";
    RFOperationEventMask[RFOperationEventMask["RfopUnlock"] = 4] = "RfopUnlock";
    RFOperationEventMask[RFOperationEventMask["RfopLockErrorInvalidCode"] = 8] = "RfopLockErrorInvalidCode";
    RFOperationEventMask[RFOperationEventMask["RfopLockErrorInvalidSchedule"] = 16] = "RfopLockErrorInvalidSchedule";
    RFOperationEventMask[RFOperationEventMask["RfopUnlockInvalidCode"] = 32] = "RfopUnlockInvalidCode";
    RFOperationEventMask[RFOperationEventMask["RfopUnlockInvalidSchedule"] = 64] = "RfopUnlockInvalidSchedule";
})(RFOperationEventMask || (exports.RFOperationEventMask = RFOperationEventMask = {}));
/**
 * @cluster DoorLock
 */
var RFOperationEventShiftRight;
(function (RFOperationEventShiftRight) {
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopLock"] = 1] = "RfopLock";
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopUnlock"] = 2] = "RfopUnlock";
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopLockErrorInvalidCode"] = 3] = "RfopLockErrorInvalidCode";
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopLockErrorInvalidSchedule"] = 4] = "RfopLockErrorInvalidSchedule";
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopUnlockInvalidCode"] = 5] = "RfopUnlockInvalidCode";
    RFOperationEventShiftRight[RFOperationEventShiftRight["RfopUnlockInvalidSchedule"] = 6] = "RfopUnlockInvalidSchedule";
})(RFOperationEventShiftRight || (exports.RFOperationEventShiftRight = RFOperationEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var ManualOperationEventMask;
(function (ManualOperationEventMask) {
    ManualOperationEventMask[ManualOperationEventMask["ManualOpUnknownOrMs"] = 1] = "ManualOpUnknownOrMs";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpThumbturnLock"] = 2] = "ManualOpThumbturnLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpThumbturnUnlock"] = 4] = "ManualOpThumbturnUnlock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpOneTouchLock"] = 8] = "ManualOpOneTouchLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpKeyLock"] = 16] = "ManualOpKeyLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpKeyUnlock"] = 32] = "ManualOpKeyUnlock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpAutoLock"] = 64] = "ManualOpAutoLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpScheduleLock"] = 128] = "ManualOpScheduleLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpScheduleUnlock"] = 256] = "ManualOpScheduleUnlock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpLock"] = 512] = "ManualOpLock";
    ManualOperationEventMask[ManualOperationEventMask["ManualOpUnlock"] = 1024] = "ManualOpUnlock";
})(ManualOperationEventMask || (exports.ManualOperationEventMask = ManualOperationEventMask = {}));
/**
 * @cluster DoorLock
 */
var ManualOperationEventShiftRight;
(function (ManualOperationEventShiftRight) {
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpThumbturnLock"] = 1] = "ManualOpThumbturnLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpThumbturnUnlock"] = 2] = "ManualOpThumbturnUnlock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpOneTouchLock"] = 3] = "ManualOpOneTouchLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpKeyLock"] = 4] = "ManualOpKeyLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpKeyUnlock"] = 5] = "ManualOpKeyUnlock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpAutoLock"] = 6] = "ManualOpAutoLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpScheduleLock"] = 7] = "ManualOpScheduleLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpScheduleUnlock"] = 8] = "ManualOpScheduleUnlock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpLock"] = 9] = "ManualOpLock";
    ManualOperationEventShiftRight[ManualOperationEventShiftRight["ManualOpUnlock"] = 16] = "ManualOpUnlock";
})(ManualOperationEventShiftRight || (exports.ManualOperationEventShiftRight = ManualOperationEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var RFIDOperationEventMask;
(function (RFIDOperationEventMask) {
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopUnknownOrMs"] = 1] = "RfidopUnknownOrMs";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopLock"] = 2] = "RfidopLock";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopUnlock"] = 4] = "RfidopUnlock";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopLockErrorInvalidRfid"] = 8] = "RfidopLockErrorInvalidRfid";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopLockErrorInvalidSchedule"] = 16] = "RfidopLockErrorInvalidSchedule";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopUnlockErrorInvalidRfid"] = 32] = "RfidopUnlockErrorInvalidRfid";
    RFIDOperationEventMask[RFIDOperationEventMask["RfidopUnlockErrorInvalidSchedule"] = 64] = "RfidopUnlockErrorInvalidSchedule";
})(RFIDOperationEventMask || (exports.RFIDOperationEventMask = RFIDOperationEventMask = {}));
/**
 * @cluster DoorLock
 */
var RFIDOperationEventShiftRight;
(function (RFIDOperationEventShiftRight) {
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopLock"] = 1] = "RfidopLock";
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopUnlock"] = 2] = "RfidopUnlock";
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopLockErrorInvalidRfid"] = 3] = "RfidopLockErrorInvalidRfid";
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopLockErrorInvalidSchedule"] = 4] = "RfidopLockErrorInvalidSchedule";
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopUnlockErrorInvalidRfid"] = 5] = "RfidopUnlockErrorInvalidRfid";
    RFIDOperationEventShiftRight[RFIDOperationEventShiftRight["RfidopUnlockErrorInvalidSchedule"] = 6] = "RfidopUnlockErrorInvalidSchedule";
})(RFIDOperationEventShiftRight || (exports.RFIDOperationEventShiftRight = RFIDOperationEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var KeypadProgrammingEventMask;
(function (KeypadProgrammingEventMask) {
    KeypadProgrammingEventMask[KeypadProgrammingEventMask["KeypadProgUnknownOrMs"] = 1] = "KeypadProgUnknownOrMs";
    KeypadProgrammingEventMask[KeypadProgrammingEventMask["KeypadProgMasterCodeChanged"] = 2] = "KeypadProgMasterCodeChanged";
    KeypadProgrammingEventMask[KeypadProgrammingEventMask["KeypadProgPinadded"] = 4] = "KeypadProgPinadded";
    KeypadProgrammingEventMask[KeypadProgrammingEventMask["KeypadProgPindeleted"] = 8] = "KeypadProgPindeleted";
    KeypadProgrammingEventMask[KeypadProgrammingEventMask["KeypadProgPinchanged"] = 16] = "KeypadProgPinchanged";
})(KeypadProgrammingEventMask || (exports.KeypadProgrammingEventMask = KeypadProgrammingEventMask = {}));
/**
 * @cluster DoorLock
 */
var KeypadProgrammingEventShiftRight;
(function (KeypadProgrammingEventShiftRight) {
    KeypadProgrammingEventShiftRight[KeypadProgrammingEventShiftRight["KeypadProgMasterCodeChanged"] = 1] = "KeypadProgMasterCodeChanged";
    KeypadProgrammingEventShiftRight[KeypadProgrammingEventShiftRight["KeypadProgPinadded"] = 2] = "KeypadProgPinadded";
    KeypadProgrammingEventShiftRight[KeypadProgrammingEventShiftRight["KeypadProgPindeleted"] = 3] = "KeypadProgPindeleted";
    KeypadProgrammingEventShiftRight[KeypadProgrammingEventShiftRight["KeypadProgPinchanged"] = 4] = "KeypadProgPinchanged";
})(KeypadProgrammingEventShiftRight || (exports.KeypadProgrammingEventShiftRight = KeypadProgrammingEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var RFProgrammingEventMask;
(function (RFProgrammingEventMask) {
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogUnknownOrMs"] = 1] = "RfprogUnknownOrMs";
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogPinadded"] = 4] = "RfprogPinadded";
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogPindeleted"] = 8] = "RfprogPindeleted";
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogPinchanged"] = 16] = "RfprogPinchanged";
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogRfidadded"] = 32] = "RfprogRfidadded";
    RFProgrammingEventMask[RFProgrammingEventMask["RfprogRfiddeleted"] = 64] = "RfprogRfiddeleted";
})(RFProgrammingEventMask || (exports.RFProgrammingEventMask = RFProgrammingEventMask = {}));
/**
 * @cluster DoorLock
 */
var RFProgrammingEventShiftRight;
(function (RFProgrammingEventShiftRight) {
    RFProgrammingEventShiftRight[RFProgrammingEventShiftRight["RfprogPinadded"] = 2] = "RfprogPinadded";
    RFProgrammingEventShiftRight[RFProgrammingEventShiftRight["RfprogPindeleted"] = 3] = "RfprogPindeleted";
    RFProgrammingEventShiftRight[RFProgrammingEventShiftRight["RfprogPinchanged"] = 4] = "RfprogPinchanged";
    RFProgrammingEventShiftRight[RFProgrammingEventShiftRight["RfprogRfidadded"] = 5] = "RfprogRfidadded";
    RFProgrammingEventShiftRight[RFProgrammingEventShiftRight["RfprogRfiddeleted"] = 6] = "RfprogRfiddeleted";
})(RFProgrammingEventShiftRight || (exports.RFProgrammingEventShiftRight = RFProgrammingEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type map16
 */
var RFIDProgrammingEventMask;
(function (RFIDProgrammingEventMask) {
    RFIDProgrammingEventMask[RFIDProgrammingEventMask["RfidprogUnknownOrMs"] = 1] = "RfidprogUnknownOrMs";
    RFIDProgrammingEventMask[RFIDProgrammingEventMask["RfidprogRfidadded"] = 32] = "RfidprogRfidadded";
    RFIDProgrammingEventMask[RFIDProgrammingEventMask["RfidprogRfiddeleted"] = 64] = "RfidprogRfiddeleted";
})(RFIDProgrammingEventMask || (exports.RFIDProgrammingEventMask = RFIDProgrammingEventMask = {}));
/**
 * @cluster DoorLock
 */
var RFIDProgrammingEventShiftRight;
(function (RFIDProgrammingEventShiftRight) {
    RFIDProgrammingEventShiftRight[RFIDProgrammingEventShiftRight["RfidprogRfidadded"] = 5] = "RfidprogRfidadded";
    RFIDProgrammingEventShiftRight[RFIDProgrammingEventShiftRight["RfidprogRfiddeleted"] = 6] = "RfidprogRfiddeleted";
})(RFIDProgrammingEventShiftRight || (exports.RFIDProgrammingEventShiftRight = RFIDProgrammingEventShiftRight = {}));
/**
 * @cluster DoorLock
 * @type enum8
 */
var EventType;
(function (EventType) {
    EventType[EventType["Operation"] = 0] = "Operation";
    EventType[EventType["Programming"] = 1] = "Programming";
    EventType[EventType["Alarm"] = 2] = "Alarm";
})(EventType || (exports.EventType = EventType = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var OperationEventCode;
(function (OperationEventCode) {
    OperationEventCode[OperationEventCode["UnknownOrMs"] = 0] = "UnknownOrMs";
    OperationEventCode[OperationEventCode["Lock"] = 1] = "Lock";
    OperationEventCode[OperationEventCode["Unlock"] = 2] = "Unlock";
    OperationEventCode[OperationEventCode["LockFailureInvalidPinorId"] = 3] = "LockFailureInvalidPinorId";
    OperationEventCode[OperationEventCode["LockFailureInvalidSchedule"] = 4] = "LockFailureInvalidSchedule";
    OperationEventCode[OperationEventCode["UnlockFailureInvalidPinorId"] = 5] = "UnlockFailureInvalidPinorId";
    OperationEventCode[OperationEventCode["UnlockFailureInvalidSchedule"] = 6] = "UnlockFailureInvalidSchedule";
    OperationEventCode[OperationEventCode["OneTouchLock"] = 7] = "OneTouchLock";
    OperationEventCode[OperationEventCode["KeyLock"] = 8] = "KeyLock";
    OperationEventCode[OperationEventCode["KeyUnlock"] = 9] = "KeyUnlock";
    OperationEventCode[OperationEventCode["AutoLock"] = 10] = "AutoLock";
    OperationEventCode[OperationEventCode["ScheduleLock"] = 11] = "ScheduleLock";
    OperationEventCode[OperationEventCode["ScheduleUnlock"] = 12] = "ScheduleUnlock";
    OperationEventCode[OperationEventCode["ManualLock"] = 13] = "ManualLock";
    OperationEventCode[OperationEventCode["ManualUnlock"] = 14] = "ManualUnlock";
    OperationEventCode[OperationEventCode["NonAccessUserOperationalEvent"] = 14] = "NonAccessUserOperationalEvent";
})(OperationEventCode || (exports.OperationEventCode = OperationEventCode = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var ProgramEventSource;
(function (ProgramEventSource) {
    ProgramEventSource[ProgramEventSource["Keypad"] = 0] = "Keypad";
    ProgramEventSource[ProgramEventSource["Rf"] = 1] = "Rf";
    ProgramEventSource[ProgramEventSource["Rfid"] = 3] = "Rfid";
    ProgramEventSource[ProgramEventSource["Indeterminate"] = 255] = "Indeterminate";
})(ProgramEventSource || (exports.ProgramEventSource = ProgramEventSource = {}));
/**
 * @cluster DoorLock
 * @type uint8
 */
var ProgramEventCode;
(function (ProgramEventCode) {
    ProgramEventCode[ProgramEventCode["UnknownOrMs"] = 0] = "UnknownOrMs";
    ProgramEventCode[ProgramEventCode["MasterCodeChanged"] = 1] = "MasterCodeChanged";
    ProgramEventCode[ProgramEventCode["PincodeAdded"] = 2] = "PincodeAdded";
    ProgramEventCode[ProgramEventCode["PincodeDeleted"] = 3] = "PincodeDeleted";
    ProgramEventCode[ProgramEventCode["PincodeChanged"] = 4] = "PincodeChanged";
    ProgramEventCode[ProgramEventCode["RfidcodeAdded"] = 5] = "RfidcodeAdded";
    ProgramEventCode[ProgramEventCode["RfidcodeDeleted"] = 6] = "RfidcodeDeleted";
})(ProgramEventCode || (exports.ProgramEventCode = ProgramEventCode = {}));
/**
 * @cluster WindowCovering
 * @type enum8
 */
var WindowCoveringType;
(function (WindowCoveringType) {
    WindowCoveringType[WindowCoveringType["Rollershade"] = 0] = "Rollershade";
    WindowCoveringType[WindowCoveringType["Rollershade2motor"] = 1] = "Rollershade2motor";
    WindowCoveringType[WindowCoveringType["RollershadeExterior"] = 2] = "RollershadeExterior";
    WindowCoveringType[WindowCoveringType["RollershadeExterior2motor"] = 3] = "RollershadeExterior2motor";
    WindowCoveringType[WindowCoveringType["Drapery"] = 4] = "Drapery";
    WindowCoveringType[WindowCoveringType["Awning"] = 5] = "Awning";
    WindowCoveringType[WindowCoveringType["Shutter"] = 6] = "Shutter";
    WindowCoveringType[WindowCoveringType["TiltBlindTiltOnly"] = 7] = "TiltBlindTiltOnly";
    WindowCoveringType[WindowCoveringType["TiltBlindLiftAndTilt"] = 8] = "TiltBlindLiftAndTilt";
    WindowCoveringType[WindowCoveringType["ProjectorScreen"] = 9] = "ProjectorScreen";
})(WindowCoveringType || (exports.WindowCoveringType = WindowCoveringType = {}));
/**
 * @cluster WindowCovering
 * @type map8
 */
var ConfigOrStatusMask;
(function (ConfigOrStatusMask) {
    ConfigOrStatusMask[ConfigOrStatusMask["Operational"] = 1] = "Operational";
    ConfigOrStatusMask[ConfigOrStatusMask["Online"] = 2] = "Online";
    ConfigOrStatusMask[ConfigOrStatusMask["OpenAndUpCommandsReversed"] = 4] = "OpenAndUpCommandsReversed";
    ConfigOrStatusMask[ConfigOrStatusMask["LiftClosedLoop"] = 8] = "LiftClosedLoop";
    ConfigOrStatusMask[ConfigOrStatusMask["TiltClosedLoop"] = 16] = "TiltClosedLoop";
    ConfigOrStatusMask[ConfigOrStatusMask["LiftEncoderControlled"] = 32] = "LiftEncoderControlled";
    ConfigOrStatusMask[ConfigOrStatusMask["TiltEncoderControlled"] = 64] = "TiltEncoderControlled";
})(ConfigOrStatusMask || (exports.ConfigOrStatusMask = ConfigOrStatusMask = {}));
/**
 * @cluster WindowCovering
 */
var ConfigOrStatusShiftRight;
(function (ConfigOrStatusShiftRight) {
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["Online"] = 1] = "Online";
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["OpenAndUpCommandsReversed"] = 2] = "OpenAndUpCommandsReversed";
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["LiftClosedLoop"] = 3] = "LiftClosedLoop";
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["TiltClosedLoop"] = 4] = "TiltClosedLoop";
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["LiftEncoderControlled"] = 5] = "LiftEncoderControlled";
    ConfigOrStatusShiftRight[ConfigOrStatusShiftRight["TiltEncoderControlled"] = 6] = "TiltEncoderControlled";
})(ConfigOrStatusShiftRight || (exports.ConfigOrStatusShiftRight = ConfigOrStatusShiftRight = {}));
/**
 * @cluster BarrierControl
 * @type enum8
 */
var MovingState;
(function (MovingState) {
    MovingState[MovingState["Stopped"] = 0] = "Stopped";
    MovingState[MovingState["Closing"] = 1] = "Closing";
    MovingState[MovingState["Opening"] = 2] = "Opening";
})(MovingState || (exports.MovingState = MovingState = {}));
/**
 * @cluster BarrierControl
 * @type map16
 */
var SafetyStatusMask;
(function (SafetyStatusMask) {
    SafetyStatusMask[SafetyStatusMask["RemoteLockout"] = 1] = "RemoteLockout";
    SafetyStatusMask[SafetyStatusMask["TamperDetected"] = 2] = "TamperDetected";
    SafetyStatusMask[SafetyStatusMask["FailedCommunication"] = 4] = "FailedCommunication";
    SafetyStatusMask[SafetyStatusMask["PositionFailure"] = 8] = "PositionFailure";
})(SafetyStatusMask || (exports.SafetyStatusMask = SafetyStatusMask = {}));
/**
 * @cluster BarrierControl
 */
var SafetyStatusShiftRight;
(function (SafetyStatusShiftRight) {
    SafetyStatusShiftRight[SafetyStatusShiftRight["TamperDetected"] = 1] = "TamperDetected";
    SafetyStatusShiftRight[SafetyStatusShiftRight["FailedCommunication"] = 2] = "FailedCommunication";
    SafetyStatusShiftRight[SafetyStatusShiftRight["PositionFailure"] = 3] = "PositionFailure";
})(SafetyStatusShiftRight || (exports.SafetyStatusShiftRight = SafetyStatusShiftRight = {}));
/**
 * @cluster BarrierControl
 * @type map8
 */
var CapabilitiesMask;
(function (CapabilitiesMask) {
    CapabilitiesMask[CapabilitiesMask["PartialBarrier"] = 1] = "PartialBarrier";
})(CapabilitiesMask || (exports.CapabilitiesMask = CapabilitiesMask = {}));
/**
 * @cluster IASZone
 * @type enum8
 */
var ZoneState;
(function (ZoneState) {
    ZoneState[ZoneState["NotEnrolled"] = 0] = "NotEnrolled";
    ZoneState[ZoneState["Enrolled"] = 1] = "Enrolled";
})(ZoneState || (exports.ZoneState = ZoneState = {}));
/**
 * @cluster IASZone
 * @type enum8
 */
var EnrollResponseCode;
(function (EnrollResponseCode) {
    EnrollResponseCode[EnrollResponseCode["Success"] = 0] = "Success";
    EnrollResponseCode[EnrollResponseCode["NotSupported"] = 1] = "NotSupported";
    EnrollResponseCode[EnrollResponseCode["NoEnrollPermit"] = 2] = "NoEnrollPermit";
    EnrollResponseCode[EnrollResponseCode["TooManyZones"] = 3] = "TooManyZones";
})(EnrollResponseCode || (exports.EnrollResponseCode = EnrollResponseCode = {}));
/**
 * @cluster IASACE
 * @type enum8
 */
var IasaceAudibleNotification;
(function (IasaceAudibleNotification) {
    IasaceAudibleNotification[IasaceAudibleNotification["Mute"] = 0] = "Mute";
    IasaceAudibleNotification[IasaceAudibleNotification["DefaultSound"] = 1] = "DefaultSound";
})(IasaceAudibleNotification || (exports.IasaceAudibleNotification = IasaceAudibleNotification = {}));
/**
 * @cluster IASACE
 * @type enum8
 */
var IasaceAlarmStatus;
(function (IasaceAlarmStatus) {
    IasaceAlarmStatus[IasaceAlarmStatus["NoAlarm"] = 0] = "NoAlarm";
    IasaceAlarmStatus[IasaceAlarmStatus["Burgler"] = 1] = "Burgler";
    IasaceAlarmStatus[IasaceAlarmStatus["Fire"] = 2] = "Fire";
    IasaceAlarmStatus[IasaceAlarmStatus["Emergency"] = 3] = "Emergency";
    IasaceAlarmStatus[IasaceAlarmStatus["PolicePanic"] = 4] = "PolicePanic";
    IasaceAlarmStatus[IasaceAlarmStatus["FirePanic"] = 5] = "FirePanic";
    IasaceAlarmStatus[IasaceAlarmStatus["EmergencyPanic"] = 6] = "EmergencyPanic";
})(IasaceAlarmStatus || (exports.IasaceAlarmStatus = IasaceAlarmStatus = {}));
/**
 * @cluster IASACE
 * @type enum8
 */
var IasacPanelStatus;
(function (IasacPanelStatus) {
    IasacPanelStatus[IasacPanelStatus["PanelDisarmedReadyToArm"] = 0] = "PanelDisarmedReadyToArm";
    IasacPanelStatus[IasacPanelStatus["ArmedStay"] = 1] = "ArmedStay";
    IasacPanelStatus[IasacPanelStatus["ArmedNight"] = 2] = "ArmedNight";
    IasacPanelStatus[IasacPanelStatus["ArmedAway"] = 3] = "ArmedAway";
    IasacPanelStatus[IasacPanelStatus["ExitDelay"] = 4] = "ExitDelay";
    IasacPanelStatus[IasacPanelStatus["EntryDelay"] = 5] = "EntryDelay";
    IasacPanelStatus[IasacPanelStatus["NotReadyToArm"] = 6] = "NotReadyToArm";
    IasacPanelStatus[IasacPanelStatus["InAlarm"] = 7] = "InAlarm";
    IasacPanelStatus[IasacPanelStatus["ArmingStay"] = 8] = "ArmingStay";
    IasacPanelStatus[IasacPanelStatus["ArmingNight"] = 9] = "ArmingNight";
    IasacPanelStatus[IasacPanelStatus["ArmingAway"] = 10] = "ArmingAway";
})(IasacPanelStatus || (exports.IasacPanelStatus = IasacPanelStatus = {}));
/**
 * @cluster IASACE
 * @type enum8
 */
var ArmMode;
(function (ArmMode) {
    ArmMode[ArmMode["Disarm"] = 0] = "Disarm";
    ArmMode[ArmMode["ArmDayHomeZonesOnly"] = 1] = "ArmDayHomeZonesOnly";
    ArmMode[ArmMode["ArmNightSleepZonesOnly"] = 2] = "ArmNightSleepZonesOnly";
    ArmMode[ArmMode["ArmAllZones"] = 3] = "ArmAllZones";
})(ArmMode || (exports.ArmMode = ArmMode = {}));
/**
 * @cluster IASACE
 * @type enum8
 */
var ArmNotification;
(function (ArmNotification) {
    ArmNotification[ArmNotification["AllZonesDisarmed"] = 0] = "AllZonesDisarmed";
    ArmNotification[ArmNotification["OnlyDayHomeZonesArmed"] = 1] = "OnlyDayHomeZonesArmed";
    ArmNotification[ArmNotification["OnlyNightSleepZonesArmed"] = 2] = "OnlyNightSleepZonesArmed";
    ArmNotification[ArmNotification["AllZonesArmed"] = 3] = "AllZonesArmed";
    ArmNotification[ArmNotification["InvalidArmDisarmCode"] = 4] = "InvalidArmDisarmCode";
    ArmNotification[ArmNotification["NotReadyToArm"] = 5] = "NotReadyToArm";
    ArmNotification[ArmNotification["AlreadyDisarmed"] = 6] = "AlreadyDisarmed";
})(ArmNotification || (exports.ArmNotification = ArmNotification = {}));
/**
 * @cluster IASACE
 * @type uint8
 */
var ZoneIDBypassResult;
(function (ZoneIDBypassResult) {
    ZoneIDBypassResult[ZoneIDBypassResult["ZoneBypassed"] = 0] = "ZoneBypassed";
    ZoneIDBypassResult[ZoneIDBypassResult["ZoneNotBypassed"] = 1] = "ZoneNotBypassed";
    ZoneIDBypassResult[ZoneIDBypassResult["NotAllowed"] = 2] = "NotAllowed";
    ZoneIDBypassResult[ZoneIDBypassResult["InvalidZoneId"] = 3] = "InvalidZoneId";
    ZoneIDBypassResult[ZoneIDBypassResult["UnknownZoneId"] = 4] = "UnknownZoneId";
    ZoneIDBypassResult[ZoneIDBypassResult["InvalidArmDisarmCode"] = 5] = "InvalidArmDisarmCode";
})(ZoneIDBypassResult || (exports.ZoneIDBypassResult = ZoneIDBypassResult = {}));
/**
 * @cluster IASWD
 * @type enum8
 */
var IaswdLevel;
(function (IaswdLevel) {
    IaswdLevel[IaswdLevel["LowLevel"] = 0] = "LowLevel";
    IaswdLevel[IaswdLevel["MediumLevel"] = 1] = "MediumLevel";
    IaswdLevel[IaswdLevel["HighLevel"] = 2] = "HighLevel";
    IaswdLevel[IaswdLevel["VeryHighLevel"] = 3] = "VeryHighLevel";
})(IaswdLevel || (exports.IaswdLevel = IaswdLevel = {}));
/**
 * @cluster IASWD
 * @type map8
 */
var SirenConfigurationMask;
(function (SirenConfigurationMask) {
    SirenConfigurationMask[SirenConfigurationMask["SirenLevel"] = 3] = "SirenLevel";
    SirenConfigurationMask[SirenConfigurationMask["Strobe"] = 12] = "Strobe";
    SirenConfigurationMask[SirenConfigurationMask["WarningMode"] = 240] = "WarningMode";
})(SirenConfigurationMask || (exports.SirenConfigurationMask = SirenConfigurationMask = {}));
/**
 * @cluster IASWD
 */
var SirenConfigurationShiftRight;
(function (SirenConfigurationShiftRight) {
    SirenConfigurationShiftRight[SirenConfigurationShiftRight["SirenLevel"] = 0] = "SirenLevel";
    SirenConfigurationShiftRight[SirenConfigurationShiftRight["Strobe"] = 2] = "Strobe";
    SirenConfigurationShiftRight[SirenConfigurationShiftRight["WarningMode"] = 4] = "WarningMode";
})(SirenConfigurationShiftRight || (exports.SirenConfigurationShiftRight = SirenConfigurationShiftRight = {}));
/**
 * @cluster IASWD
 * @type map8
 */
var SquawkConfigurationMask;
(function (SquawkConfigurationMask) {
    SquawkConfigurationMask[SquawkConfigurationMask["SquawkLevel"] = 3] = "SquawkLevel";
    SquawkConfigurationMask[SquawkConfigurationMask["SquawkStrobeActive"] = 8] = "SquawkStrobeActive";
    SquawkConfigurationMask[SquawkConfigurationMask["SquawkMode"] = 240] = "SquawkMode";
})(SquawkConfigurationMask || (exports.SquawkConfigurationMask = SquawkConfigurationMask = {}));
/**
 * @cluster IASWD
 */
var SquawkConfigurationShiftRight;
(function (SquawkConfigurationShiftRight) {
    SquawkConfigurationShiftRight[SquawkConfigurationShiftRight["SquawkLevel"] = 0] = "SquawkLevel";
    SquawkConfigurationShiftRight[SquawkConfigurationShiftRight["SquawkStrobeActive"] = 3] = "SquawkStrobeActive";
    SquawkConfigurationShiftRight[SquawkConfigurationShiftRight["SquawkMode"] = 4] = "SquawkMode";
})(SquawkConfigurationShiftRight || (exports.SquawkConfigurationShiftRight = SquawkConfigurationShiftRight = {}));
/**
 * @cluster Commissioning
 * @type uint8
 */
var ProtocolVersion;
(function (ProtocolVersion) {
    ProtocolVersion[ProtocolVersion["Zigbee2006orLater"] = 2] = "Zigbee2006orLater";
})(ProtocolVersion || (exports.ProtocolVersion = ProtocolVersion = {}));
/**
 * @cluster Commissioning
 * @type uint8
 */
var StackProfile;
(function (StackProfile) {
    StackProfile[StackProfile["ZigbeeStackProfile"] = 1] = "ZigbeeStackProfile";
    StackProfile[StackProfile["ZigbeeProStackProfile"] = 2] = "ZigbeeProStackProfile";
})(StackProfile || (exports.StackProfile = StackProfile = {}));
/**
 * @cluster Commissioning
 * @type enum8
 */
var StartupControl;
(function (StartupControl) {
    StartupControl[StartupControl["OnAnetwork"] = 0] = "OnAnetwork";
    StartupControl[StartupControl["FormNetwork"] = 1] = "FormNetwork";
    StartupControl[StartupControl["RejoinNetwork"] = 2] = "RejoinNetwork";
    StartupControl[StartupControl["JoinUsingMacassociation"] = 3] = "JoinUsingMacassociation";
})(StartupControl || (exports.StartupControl = StartupControl = {}));
/**
 * @cluster Commissioning
 * @type enum8
 */
var NetworkKeyType;
(function (NetworkKeyType) {
    NetworkKeyType[NetworkKeyType["StandardKey"] = 1] = "StandardKey";
})(NetworkKeyType || (exports.NetworkKeyType = NetworkKeyType = {}));
/**
 * @cluster Commissioning
 * @type map8
 */
var OptionsMask;
(function (OptionsMask) {
    OptionsMask[OptionsMask["StartupMode"] = 7] = "StartupMode";
    OptionsMask[OptionsMask["Immediate"] = 8] = "Immediate";
})(OptionsMask || (exports.OptionsMask = OptionsMask = {}));
/**
 * @cluster Commissioning
 */
var OptionsShiftRight;
(function (OptionsShiftRight) {
    OptionsShiftRight[OptionsShiftRight["Immediate"] = 3] = "Immediate";
})(OptionsShiftRight || (exports.OptionsShiftRight = OptionsShiftRight = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type uint8
 */
var TLKeyIndex;
(function (TLKeyIndex) {
    TLKeyIndex[TLKeyIndex["DevelopmentKey"] = 0] = "DevelopmentKey";
    TLKeyIndex[TLKeyIndex["MasterKey"] = 4] = "MasterKey";
    TLKeyIndex[TLKeyIndex["CertificationKey"] = 15] = "CertificationKey";
})(TLKeyIndex || (exports.TLKeyIndex = TLKeyIndex = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type map8
 */
var TLZigbeeInformationMask;
(function (TLZigbeeInformationMask) {
    TLZigbeeInformationMask[TLZigbeeInformationMask["LogicalType"] = 3] = "LogicalType";
    TLZigbeeInformationMask[TLZigbeeInformationMask["RxOnWhenIdle"] = 4] = "RxOnWhenIdle";
})(TLZigbeeInformationMask || (exports.TLZigbeeInformationMask = TLZigbeeInformationMask = {}));
/**
 * @cluster TouchlinkCommissioning
 */
var TLZigbeeInformationShiftRight;
(function (TLZigbeeInformationShiftRight) {
    TLZigbeeInformationShiftRight[TLZigbeeInformationShiftRight["RxOnWhenIdle"] = 2] = "RxOnWhenIdle";
})(TLZigbeeInformationShiftRight || (exports.TLZigbeeInformationShiftRight = TLZigbeeInformationShiftRight = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type map8
 */
var TLTouchlinkInformationMask;
(function (TLTouchlinkInformationMask) {
    TLTouchlinkInformationMask[TLTouchlinkInformationMask["FactoryNew"] = 1] = "FactoryNew";
    TLTouchlinkInformationMask[TLTouchlinkInformationMask["AddressAssignment"] = 2] = "AddressAssignment";
    TLTouchlinkInformationMask[TLTouchlinkInformationMask["LinkInitiator"] = 16] = "LinkInitiator";
    TLTouchlinkInformationMask[TLTouchlinkInformationMask["TouchlinkPriorityRequest"] = 32] = "TouchlinkPriorityRequest";
    TLTouchlinkInformationMask[TLTouchlinkInformationMask["ProfileInterop"] = 128] = "ProfileInterop";
})(TLTouchlinkInformationMask || (exports.TLTouchlinkInformationMask = TLTouchlinkInformationMask = {}));
/**
 * @cluster TouchlinkCommissioning
 */
var TLTouchlinkInformationShiftRight;
(function (TLTouchlinkInformationShiftRight) {
    TLTouchlinkInformationShiftRight[TLTouchlinkInformationShiftRight["AddressAssignment"] = 1] = "AddressAssignment";
    TLTouchlinkInformationShiftRight[TLTouchlinkInformationShiftRight["LinkInitiator"] = 4] = "LinkInitiator";
    TLTouchlinkInformationShiftRight[TLTouchlinkInformationShiftRight["TouchlinkPriorityRequest"] = 5] = "TouchlinkPriorityRequest";
    TLTouchlinkInformationShiftRight[TLTouchlinkInformationShiftRight["ProfileInterop"] = 7] = "ProfileInterop";
})(TLTouchlinkInformationShiftRight || (exports.TLTouchlinkInformationShiftRight = TLTouchlinkInformationShiftRight = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type uint8
 */
var TLVersionMask;
(function (TLVersionMask) {
    TLVersionMask[TLVersionMask["ApplicationDeviceVersion"] = 15] = "ApplicationDeviceVersion";
})(TLVersionMask || (exports.TLVersionMask = TLVersionMask = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type uint8
 */
var TLStatus;
(function (TLStatus) {
    TLStatus[TLStatus["Success"] = 0] = "Success";
    TLStatus[TLStatus["Failure"] = 1] = "Failure";
})(TLStatus || (exports.TLStatus = TLStatus = {}));
/**
 * @cluster TouchlinkCommissioning
 * @type map16
 */
var KeyBitmaskMask;
(function (KeyBitmaskMask) {
    KeyBitmaskMask[KeyBitmaskMask["DevelopmentKey"] = 1] = "DevelopmentKey";
    KeyBitmaskMask[KeyBitmaskMask["MasterKey"] = 16] = "MasterKey";
    KeyBitmaskMask[KeyBitmaskMask["CertificationKey"] = 32768] = "CertificationKey";
})(KeyBitmaskMask || (exports.KeyBitmaskMask = KeyBitmaskMask = {}));
/**
 * @cluster TouchlinkCommissioning
 */
var KeyBitmaskShiftRight;
(function (KeyBitmaskShiftRight) {
    KeyBitmaskShiftRight[KeyBitmaskShiftRight["MasterKey"] = 4] = "MasterKey";
    KeyBitmaskShiftRight[KeyBitmaskShiftRight["CertificationKey"] = 21] = "CertificationKey";
})(KeyBitmaskShiftRight || (exports.KeyBitmaskShiftRight = KeyBitmaskShiftRight = {}));
/**
 * @cluster OTAUpgrade
 * @type uint16
 */
var OTADeviceSpecificImageType;
(function (OTADeviceSpecificImageType) {
    OTADeviceSpecificImageType[OTADeviceSpecificImageType["ClientSecurityCredentials"] = 65472] = "ClientSecurityCredentials";
    OTADeviceSpecificImageType[OTADeviceSpecificImageType["ClientConfiguration"] = 65473] = "ClientConfiguration";
    OTADeviceSpecificImageType[OTADeviceSpecificImageType["ServerLog"] = 65474] = "ServerLog";
    OTADeviceSpecificImageType[OTADeviceSpecificImageType["Picture"] = 65475] = "Picture";
})(OTADeviceSpecificImageType || (exports.OTADeviceSpecificImageType = OTADeviceSpecificImageType = {}));
/**
 * @cluster OTAUpgrade
 * @type map8
 */
var FieldControlMask;
(function (FieldControlMask) {
    FieldControlMask[FieldControlMask["HardwareVersionPresent"] = 1] = "HardwareVersionPresent";
})(FieldControlMask || (exports.FieldControlMask = FieldControlMask = {}));
/**
 * @cluster OTAUpgrade
 * @type enum8
 */
var ImageUpgradeStatus;
(function (ImageUpgradeStatus) {
    ImageUpgradeStatus[ImageUpgradeStatus["Normal"] = 0] = "Normal";
    ImageUpgradeStatus[ImageUpgradeStatus["DownloadInProgress"] = 1] = "DownloadInProgress";
    ImageUpgradeStatus[ImageUpgradeStatus["DownloadComplete"] = 2] = "DownloadComplete";
    ImageUpgradeStatus[ImageUpgradeStatus["WaitingToUpgrade"] = 3] = "WaitingToUpgrade";
    ImageUpgradeStatus[ImageUpgradeStatus["CountDown"] = 4] = "CountDown";
    ImageUpgradeStatus[ImageUpgradeStatus["WaitForMore"] = 5] = "WaitForMore";
    ImageUpgradeStatus[ImageUpgradeStatus["WaitingToUpgradeViaExternalEvent"] = 6] = "WaitingToUpgradeViaExternalEvent";
})(ImageUpgradeStatus || (exports.ImageUpgradeStatus = ImageUpgradeStatus = {}));
/**
 * @cluster OTAUpgrade
 * @type enum8
 */
var UpgradeActivationPolicy;
(function (UpgradeActivationPolicy) {
    UpgradeActivationPolicy[UpgradeActivationPolicy["OtaserverActivationAllowed"] = 0] = "OtaserverActivationAllowed";
    UpgradeActivationPolicy[UpgradeActivationPolicy["OutOfBandActivationOnly"] = 1] = "OutOfBandActivationOnly";
})(UpgradeActivationPolicy || (exports.UpgradeActivationPolicy = UpgradeActivationPolicy = {}));
/**
 * @cluster OTAUpgrade
 * @type enum8
 */
var UpgradeTimeoutPolicy;
(function (UpgradeTimeoutPolicy) {
    UpgradeTimeoutPolicy[UpgradeTimeoutPolicy["ApplyUpgradeAfterTimeout"] = 0] = "ApplyUpgradeAfterTimeout";
    UpgradeTimeoutPolicy[UpgradeTimeoutPolicy["DoNotApplyUpgradeAfterTimeout"] = 1] = "DoNotApplyUpgradeAfterTimeout";
})(UpgradeTimeoutPolicy || (exports.UpgradeTimeoutPolicy = UpgradeTimeoutPolicy = {}));
/**
 * @cluster OTAUpgrade
 * @type enum8
 */
var PayloadType;
(function (PayloadType) {
    PayloadType[PayloadType["QueryJitter"] = 0] = "QueryJitter";
    PayloadType[PayloadType["QueryJitterAndManufacturerCode"] = 1] = "QueryJitterAndManufacturerCode";
    PayloadType[PayloadType["QueryJitterManufacturerCodeAndImageType"] = 2] = "QueryJitterManufacturerCodeAndImageType";
    PayloadType[PayloadType["QueryJitterManufacturerCodeImageTypeAndNewFileVersion"] = 3] = "QueryJitterManufacturerCodeImageTypeAndNewFileVersion";
})(PayloadType || (exports.PayloadType = PayloadType = {}));
/** ZCL non-values by type name (key of `ZclType`). */
exports.ZCL_TYPE_INVALID_BY_TYPE_NAME = {
    Bool: 255,
    Uint8: 255,
    Uint16: 65535,
    Uint24: 16777215,
    Uint32: 4294967295,
    Uint40: 1099511627775,
    Uint48: 281474976710655,
    Uint56: 72057594037927935n,
    Uint64: 18446744073709551615n,
    Int8: -128,
    Int16: -32768,
    Int24: -8388608,
    Int32: -2147483648,
    Int40: -549755813888,
    Int48: -140737488355328,
    Int56: -36028797018963968n,
    Int64: -9223372036854775808n,
    Enum8: 255,
    Enum16: 65535,
    ToD: 4294967295,
    Date: 4294967295,
    Utc: 4294967295,
    ClusterId: 65535,
    AttribId: 65535,
    BacOid: 4294967295,
};
/** ZCL non-values by type ID (value of `ZclType`). */
exports.ZCL_TYPE_INVALID_BY_TYPE = {
    /** Bool */
    16: 255,
    /** Uint8 */
    32: 255,
    /** Uint16 */
    33: 65535,
    /** Uint24 */
    34: 16777215,
    /** Uint32 */
    35: 4294967295,
    /** Uint40 */
    36: 1099511627775,
    /** Uint48 */
    37: 281474976710655,
    /** Uint56 */
    38: 72057594037927935n,
    /** Uint64 */
    39: 18446744073709551615n,
    /** Int8 */
    40: -128,
    /** Int16 */
    41: -32768,
    /** Int24 */
    42: -8388608,
    /** Int32 */
    43: -2147483648,
    /** Int40 */
    44: -549755813888,
    /** Int48 */
    45: -140737488355328,
    /** Int56 */
    46: -36028797018963968n,
    /** Int64 */
    47: -9223372036854775808n,
    /** Enum8 */
    48: 255,
    /** Enum16 */
    49: 65535,
    /** ToD */
    224: 4294967295,
    /** Date */
    225: 4294967295,
    /** Utc */
    226: 4294967295,
    /** ClusterId */
    232: 65535,
    /** AttribId */
    233: 65535,
    /** BacOid */
    234: 4294967295,
};
//# sourceMappingURL=datatypes.js.map