@zwave-js/cc 15.1.0 → 15.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/cc/AlarmSensorCC.d.ts +7 -7
- package/build/cjs/cc/AlarmSensorCC.js +22 -23
- package/build/cjs/cc/AlarmSensorCC.js.map +3 -3
- package/build/cjs/cc/AssociationCC.d.ts +8 -9
- package/build/cjs/cc/AssociationCC.js +29 -29
- package/build/cjs/cc/AssociationCC.js.map +3 -3
- package/build/cjs/cc/AssociationGroupInfoCC.d.ts +7 -7
- package/build/cjs/cc/AssociationGroupInfoCC.js +31 -32
- package/build/cjs/cc/AssociationGroupInfoCC.js.map +3 -3
- package/build/cjs/cc/BarrierOperatorCC.d.ts +8 -8
- package/build/cjs/cc/BarrierOperatorCC.js +35 -36
- package/build/cjs/cc/BarrierOperatorCC.js.map +3 -3
- package/build/cjs/cc/BasicCC.d.ts +4 -4
- package/build/cjs/cc/BasicCC.js +23 -24
- package/build/cjs/cc/BasicCC.js.map +3 -3
- package/build/cjs/cc/BatteryCC.d.ts +6 -8
- package/build/cjs/cc/BatteryCC.js +24 -28
- package/build/cjs/cc/BatteryCC.js.map +3 -3
- package/build/cjs/cc/BinarySensorCC.d.ts +5 -5
- package/build/cjs/cc/BinarySensorCC.js +20 -21
- package/build/cjs/cc/BinarySensorCC.js.map +3 -3
- package/build/cjs/cc/BinarySwitchCC._validateArgs.js +2 -2
- package/build/cjs/cc/BinarySwitchCC.d.ts +6 -6
- package/build/cjs/cc/BinarySwitchCC.js +26 -26
- package/build/cjs/cc/BinarySwitchCC.js.map +3 -3
- package/build/cjs/cc/CRC16CC.d.ts +3 -3
- package/build/cjs/cc/CRC16CC.js +15 -15
- package/build/cjs/cc/CRC16CC.js.map +3 -3
- package/build/cjs/cc/CentralSceneCC.d.ts +8 -8
- package/build/cjs/cc/CentralSceneCC.js +23 -24
- package/build/cjs/cc/CentralSceneCC.js.map +3 -3
- package/build/cjs/cc/ClimateControlScheduleCC.d.ts +6 -6
- package/build/cjs/cc/ClimateControlScheduleCC.js +19 -20
- package/build/cjs/cc/ClimateControlScheduleCC.js.map +3 -3
- package/build/cjs/cc/ClockCC.d.ts +3 -4
- package/build/cjs/cc/ClockCC.js +13 -14
- package/build/cjs/cc/ClockCC.js.map +3 -3
- package/build/cjs/cc/ColorSwitchCC.d.ts +3 -4
- package/build/cjs/cc/ColorSwitchCC.js +22 -24
- package/build/cjs/cc/ColorSwitchCC.js.map +3 -3
- package/build/cjs/cc/ConfigurationCC.d.ts +3 -3
- package/build/cjs/cc/ConfigurationCC.js +114 -115
- package/build/cjs/cc/ConfigurationCC.js.map +3 -3
- package/build/cjs/cc/DeviceResetLocallyCC.d.ts +2 -2
- package/build/cjs/cc/DeviceResetLocallyCC.js +5 -5
- package/build/cjs/cc/DeviceResetLocallyCC.js.map +1 -1
- package/build/cjs/cc/DoorLockCC.d.ts +29 -29
- package/build/cjs/cc/DoorLockCC.js +39 -40
- package/build/cjs/cc/DoorLockCC.js.map +3 -3
- package/build/cjs/cc/DoorLockLoggingCC.d.ts +4 -4
- package/build/cjs/cc/DoorLockLoggingCC.js +13 -14
- package/build/cjs/cc/DoorLockLoggingCC.js.map +3 -3
- package/build/cjs/cc/EnergyProductionCC.d.ts +2 -3
- package/build/cjs/cc/EnergyProductionCC.js.map +2 -2
- package/build/cjs/cc/EntryControlCC.d.ts +8 -8
- package/build/cjs/cc/EntryControlCC.js +41 -42
- package/build/cjs/cc/EntryControlCC.js.map +3 -3
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.d.ts +9 -10
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +52 -53
- package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +3 -3
- package/build/cjs/cc/HailCC.js +2 -2
- package/build/cjs/cc/HailCC.js.map +1 -1
- package/build/cjs/cc/HumidityControlModeCC.d.ts +5 -5
- package/build/cjs/cc/HumidityControlModeCC.js +20 -21
- package/build/cjs/cc/HumidityControlModeCC.js.map +3 -3
- package/build/cjs/cc/HumidityControlOperatingStateCC.d.ts +3 -3
- package/build/cjs/cc/HumidityControlOperatingStateCC.js +9 -9
- package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +3 -3
- package/build/cjs/cc/HumidityControlSetpointCC.d.ts +6 -6
- package/build/cjs/cc/HumidityControlSetpointCC.js +43 -44
- package/build/cjs/cc/HumidityControlSetpointCC.js.map +3 -3
- package/build/cjs/cc/InclusionControllerCC.d.ts +2 -3
- package/build/cjs/cc/InclusionControllerCC.js.map +2 -2
- package/build/cjs/cc/IndicatorCC.d.ts +3 -3
- package/build/cjs/cc/IndicatorCC.js +50 -52
- package/build/cjs/cc/IndicatorCC.js.map +3 -3
- package/build/cjs/cc/IrrigationCC.d.ts +3 -3
- package/build/cjs/cc/IrrigationCC.js +74 -75
- package/build/cjs/cc/IrrigationCC.js.map +3 -3
- package/build/cjs/cc/LanguageCC.d.ts +5 -6
- package/build/cjs/cc/LanguageCC.js +14 -15
- package/build/cjs/cc/LanguageCC.js.map +3 -3
- package/build/cjs/cc/LockCC.d.ts +4 -4
- package/build/cjs/cc/LockCC.js +10 -10
- package/build/cjs/cc/LockCC.js.map +3 -3
- package/build/cjs/cc/ManufacturerProprietaryCC.d.ts +4 -3
- package/build/cjs/cc/ManufacturerProprietaryCC.js +14 -12
- package/build/cjs/cc/ManufacturerProprietaryCC.js.map +3 -3
- package/build/cjs/cc/ManufacturerSpecificCC.d.ts +7 -8
- package/build/cjs/cc/ManufacturerSpecificCC.js +20 -21
- package/build/cjs/cc/ManufacturerSpecificCC.js.map +3 -3
- package/build/cjs/cc/MeterCC.d.ts +4 -6
- package/build/cjs/cc/MeterCC.js +52 -54
- package/build/cjs/cc/MeterCC.js.map +3 -3
- package/build/cjs/cc/MultiChannelAssociationCC.d.ts +7 -8
- package/build/cjs/cc/MultiChannelAssociationCC.js +34 -35
- package/build/cjs/cc/MultiChannelAssociationCC.js.map +3 -3
- package/build/cjs/cc/MultiChannelCC.d.ts +13 -12
- package/build/cjs/cc/MultiChannelCC.js +104 -56
- package/build/cjs/cc/MultiChannelCC.js.map +3 -3
- package/build/cjs/cc/MultiCommandCC.d.ts +3 -3
- package/build/cjs/cc/MultiCommandCC.js +13 -13
- package/build/cjs/cc/MultiCommandCC.js.map +3 -3
- package/build/cjs/cc/MultilevelSensorCC.d.ts +4 -7
- package/build/cjs/cc/MultilevelSensorCC.js +26 -28
- package/build/cjs/cc/MultilevelSensorCC.js.map +3 -3
- package/build/cjs/cc/MultilevelSwitchCC._validateArgs.js +3 -3
- package/build/cjs/cc/MultilevelSwitchCC.d.ts +13 -13
- package/build/cjs/cc/MultilevelSwitchCC.js +36 -37
- package/build/cjs/cc/MultilevelSwitchCC.js.map +3 -3
- package/build/cjs/cc/NoOperationCC.js +4 -4
- package/build/cjs/cc/NoOperationCC.js.map +1 -1
- package/build/cjs/cc/NodeNamingCC.d.ts +5 -5
- package/build/cjs/cc/NodeNamingCC.js +20 -20
- package/build/cjs/cc/NodeNamingCC.js.map +3 -3
- package/build/cjs/cc/NotificationCC.d.ts +4 -5
- package/build/cjs/cc/NotificationCC.js +66 -68
- package/build/cjs/cc/NotificationCC.js.map +3 -3
- package/build/cjs/cc/PowerlevelCC.d.ts +3 -3
- package/build/cjs/cc/PowerlevelCC.js +25 -26
- package/build/cjs/cc/PowerlevelCC.js.map +3 -3
- package/build/cjs/cc/ProtectionCC._validateArgs.js +2 -2
- package/build/cjs/cc/ProtectionCC.d.ts +11 -11
- package/build/cjs/cc/ProtectionCC.js +35 -36
- package/build/cjs/cc/ProtectionCC.js.map +3 -3
- package/build/cjs/cc/SceneActivationCC._validateArgs.js +2 -2
- package/build/cjs/cc/SceneActivationCC.d.ts +5 -6
- package/build/cjs/cc/SceneActivationCC.js +10 -10
- package/build/cjs/cc/SceneActivationCC.js.map +3 -3
- package/build/cjs/cc/SceneActuatorConfigurationCC._validateArgs.js +2 -2
- package/build/cjs/cc/SceneActuatorConfigurationCC.d.ts +5 -5
- package/build/cjs/cc/SceneActuatorConfigurationCC.js +19 -20
- package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +3 -3
- package/build/cjs/cc/SceneControllerConfigurationCC._validateArgs.js +2 -2
- package/build/cjs/cc/SceneControllerConfigurationCC.d.ts +6 -6
- package/build/cjs/cc/SceneControllerConfigurationCC.js +25 -26
- package/build/cjs/cc/SceneControllerConfigurationCC.js.map +3 -3
- package/build/cjs/cc/ScheduleEntryLockCC.d.ts +2 -3
- package/build/cjs/cc/ScheduleEntryLockCC.js.map +2 -2
- package/build/cjs/cc/Security2CC.d.ts +3 -4
- package/build/cjs/cc/Security2CC.js +60 -62
- package/build/cjs/cc/Security2CC.js.map +3 -3
- package/build/cjs/cc/SecurityCC.d.ts +3 -4
- package/build/cjs/cc/SecurityCC.js +25 -26
- package/build/cjs/cc/SecurityCC.js.map +3 -3
- package/build/cjs/cc/SoundSwitchCC.d.ts +7 -7
- package/build/cjs/cc/SoundSwitchCC.js +28 -29
- package/build/cjs/cc/SoundSwitchCC.js.map +3 -3
- package/build/cjs/cc/SupervisionCC.d.ts +4 -4
- package/build/cjs/cc/SupervisionCC.js +28 -29
- package/build/cjs/cc/SupervisionCC.js.map +3 -3
- package/build/cjs/cc/ThermostatFanModeCC.d.ts +6 -6
- package/build/cjs/cc/ThermostatFanModeCC.js +21 -22
- package/build/cjs/cc/ThermostatFanModeCC.js.map +3 -3
- package/build/cjs/cc/ThermostatFanStateCC.d.ts +3 -3
- package/build/cjs/cc/ThermostatFanStateCC.js +9 -9
- package/build/cjs/cc/ThermostatFanStateCC.js.map +3 -3
- package/build/cjs/cc/ThermostatModeCC.d.ts +6 -6
- package/build/cjs/cc/ThermostatModeCC.js +30 -31
- package/build/cjs/cc/ThermostatModeCC.js.map +3 -3
- package/build/cjs/cc/ThermostatOperatingStateCC.d.ts +3 -4
- package/build/cjs/cc/ThermostatOperatingStateCC.js +9 -9
- package/build/cjs/cc/ThermostatOperatingStateCC.js.map +3 -3
- package/build/cjs/cc/ThermostatSetbackCC.d.ts +3 -3
- package/build/cjs/cc/ThermostatSetbackCC.js +14 -15
- package/build/cjs/cc/ThermostatSetbackCC.js.map +3 -3
- package/build/cjs/cc/ThermostatSetpointCC.d.ts +6 -6
- package/build/cjs/cc/ThermostatSetpointCC.js +48 -49
- package/build/cjs/cc/ThermostatSetpointCC.js.map +3 -3
- package/build/cjs/cc/TimeCC.d.ts +3 -4
- package/build/cjs/cc/TimeCC.js +9 -10
- package/build/cjs/cc/TimeCC.js.map +3 -3
- package/build/cjs/cc/TimeParametersCC.d.ts +3 -4
- package/build/cjs/cc/TimeParametersCC.js +2 -2
- package/build/cjs/cc/TimeParametersCC.js.map +2 -2
- package/build/cjs/cc/TransportServiceCC.d.ts +3 -3
- package/build/cjs/cc/TransportServiceCC.js +44 -45
- package/build/cjs/cc/TransportServiceCC.js.map +3 -3
- package/build/cjs/cc/UserCodeCC.d.ts +19 -19
- package/build/cjs/cc/UserCodeCC.js +102 -103
- package/build/cjs/cc/UserCodeCC.js.map +3 -3
- package/build/cjs/cc/VersionCC.d.ts +17 -17
- package/build/cjs/cc/VersionCC.js +46 -47
- package/build/cjs/cc/VersionCC.js.map +3 -3
- package/build/cjs/cc/WakeUpCC.d.ts +6 -6
- package/build/cjs/cc/WakeUpCC.js +16 -17
- package/build/cjs/cc/WakeUpCC.js.map +3 -3
- package/build/cjs/cc/WindowCoveringCC.d.ts +3 -4
- package/build/cjs/cc/WindowCoveringCC.js +17 -18
- package/build/cjs/cc/WindowCoveringCC.js.map +3 -3
- package/build/cjs/cc/ZWavePlusCC.d.ts +8 -8
- package/build/cjs/cc/ZWavePlusCC.js +15 -16
- package/build/cjs/cc/ZWavePlusCC.js.map +3 -3
- package/build/cjs/cc/ZWaveProtocolCC.d.ts +2 -2
- package/build/cjs/cc/ZWaveProtocolCC.js +35 -35
- package/build/cjs/cc/ZWaveProtocolCC.js.map +2 -2
- package/build/cjs/cc/_CCValues.generated.d.ts +2 -0
- package/build/cjs/cc/_CCValues.generated.js +28 -27
- package/build/cjs/cc/_CCValues.generated.js.map +3 -3
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.d.ts +3 -3
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.js +14 -14
- package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
- package/build/cjs/lib/API.d.ts +3 -3
- package/build/cjs/lib/API.js.map +2 -2
- package/build/cjs/lib/CommandClass.d.ts +5 -6
- package/build/cjs/lib/CommandClass.js +45 -45
- package/build/cjs/lib/CommandClass.js.map +3 -3
- package/build/cjs/lib/CommandClassDecorators.d.ts +2 -2
- package/build/cjs/lib/CommandClassDecorators.js +3 -3
- package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
- package/build/cjs/lib/Security2/Extension.d.ts +2 -2
- package/build/cjs/lib/Security2/Extension.js +17 -17
- package/build/cjs/lib/Security2/Extension.js.map +3 -3
- package/build/cjs/lib/SetValueResult.d.ts +1 -1
- package/build/cjs/lib/SetValueResult.js.map +1 -1
- package/build/cjs/lib/Values.d.ts +3 -3
- package/build/cjs/lib/Values.js +6 -6
- package/build/cjs/lib/Values.js.map +2 -2
- package/build/cjs/lib/_Types.d.ts +2 -2
- package/build/cjs/lib/_Types.js +3 -3
- package/build/cjs/lib/_Types.js.map +1 -1
- package/build/cjs/lib/serializers.d.ts +1 -1
- package/build/cjs/lib/serializers.js +5 -5
- package/build/cjs/lib/serializers.js.map +2 -2
- package/build/cjs/lib/traits.d.ts +2 -2
- package/build/cjs/lib/utils.d.ts +2 -2
- package/build/cjs/lib/utils.js +60 -60
- package/build/cjs/lib/utils.js.map +3 -3
- package/build/esm/cc/AlarmSensorCC.d.ts +7 -7
- package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
- package/build/esm/cc/AlarmSensorCC.js +2 -3
- package/build/esm/cc/AlarmSensorCC.js.map +1 -1
- package/build/esm/cc/AssociationCC.d.ts +8 -9
- package/build/esm/cc/AssociationCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationCC.js +2 -2
- package/build/esm/cc/AssociationCC.js.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.d.ts +7 -7
- package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
- package/build/esm/cc/AssociationGroupInfoCC.js +2 -3
- package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.d.ts +8 -8
- package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
- package/build/esm/cc/BarrierOperatorCC.js +2 -3
- package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
- package/build/esm/cc/BasicCC.d.ts +4 -4
- package/build/esm/cc/BasicCC.d.ts.map +1 -1
- package/build/esm/cc/BasicCC.js +2 -3
- package/build/esm/cc/BasicCC.js.map +1 -1
- package/build/esm/cc/BatteryCC.d.ts +6 -8
- package/build/esm/cc/BatteryCC.d.ts.map +1 -1
- package/build/esm/cc/BatteryCC.js +13 -15
- package/build/esm/cc/BatteryCC.js.map +1 -1
- package/build/esm/cc/BinarySensorCC.d.ts +5 -5
- package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySensorCC.js +2 -3
- package/build/esm/cc/BinarySensorCC.js.map +1 -1
- package/build/esm/cc/BinarySwitchCC._validateArgs.js +1 -1
- package/build/esm/cc/BinarySwitchCC._validateArgs.js.map +1 -1
- package/build/esm/cc/BinarySwitchCC.d.ts +6 -6
- package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
- package/build/esm/cc/BinarySwitchCC.js +2 -2
- package/build/esm/cc/BinarySwitchCC.js.map +1 -1
- package/build/esm/cc/CRC16CC.d.ts +3 -3
- package/build/esm/cc/CRC16CC.d.ts.map +1 -1
- package/build/esm/cc/CRC16CC.js +2 -2
- package/build/esm/cc/CRC16CC.js.map +1 -1
- package/build/esm/cc/CentralSceneCC.d.ts +8 -8
- package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
- package/build/esm/cc/CentralSceneCC.js +2 -3
- package/build/esm/cc/CentralSceneCC.js.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.d.ts +6 -6
- package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
- package/build/esm/cc/ClimateControlScheduleCC.js +2 -3
- package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
- package/build/esm/cc/ClockCC.d.ts +3 -4
- package/build/esm/cc/ClockCC.d.ts.map +1 -1
- package/build/esm/cc/ClockCC.js +2 -3
- package/build/esm/cc/ClockCC.js.map +1 -1
- package/build/esm/cc/ColorSwitchCC.d.ts +3 -4
- package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/ColorSwitchCC.js +2 -4
- package/build/esm/cc/ColorSwitchCC.js.map +1 -1
- package/build/esm/cc/ConfigurationCC.d.ts +3 -3
- package/build/esm/cc/ConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/ConfigurationCC.js +2 -3
- package/build/esm/cc/ConfigurationCC.js.map +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.d.ts +2 -2
- package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.js +1 -1
- package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
- package/build/esm/cc/DoorLockCC.d.ts +29 -29
- package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockCC.js +2 -3
- package/build/esm/cc/DoorLockCC.js.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.d.ts +4 -4
- package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
- package/build/esm/cc/DoorLockLoggingCC.js +2 -3
- package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
- package/build/esm/cc/EnergyProductionCC.d.ts +2 -3
- package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -1
- package/build/esm/cc/EnergyProductionCC.js.map +1 -1
- package/build/esm/cc/EntryControlCC.d.ts +8 -8
- package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
- package/build/esm/cc/EntryControlCC.js +2 -3
- package/build/esm/cc/EntryControlCC.js.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +9 -10
- package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js +2 -3
- package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
- package/build/esm/cc/HailCC.js +1 -1
- package/build/esm/cc/HailCC.js.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.d.ts +5 -5
- package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlModeCC.js +2 -3
- package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +3 -3
- package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlOperatingStateCC.js +2 -2
- package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.d.ts +6 -6
- package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/HumidityControlSetpointCC.js +2 -3
- package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
- package/build/esm/cc/InclusionControllerCC.d.ts +2 -3
- package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -1
- package/build/esm/cc/InclusionControllerCC.js.map +1 -1
- package/build/esm/cc/IndicatorCC.d.ts +3 -3
- package/build/esm/cc/IndicatorCC.d.ts.map +1 -1
- package/build/esm/cc/IndicatorCC.js +2 -4
- package/build/esm/cc/IndicatorCC.js.map +1 -1
- package/build/esm/cc/IrrigationCC.d.ts +3 -3
- package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
- package/build/esm/cc/IrrigationCC.js +2 -3
- package/build/esm/cc/IrrigationCC.js.map +1 -1
- package/build/esm/cc/LanguageCC.d.ts +5 -6
- package/build/esm/cc/LanguageCC.d.ts.map +1 -1
- package/build/esm/cc/LanguageCC.js +2 -3
- package/build/esm/cc/LanguageCC.js.map +1 -1
- package/build/esm/cc/LockCC.d.ts +4 -4
- package/build/esm/cc/LockCC.d.ts.map +1 -1
- package/build/esm/cc/LockCC.js +2 -2
- package/build/esm/cc/LockCC.js.map +1 -1
- package/build/esm/cc/ManufacturerProprietaryCC.d.ts +4 -3
- package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
- package/build/esm/cc/ManufacturerProprietaryCC.js +5 -3
- package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.d.ts +7 -8
- package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
- package/build/esm/cc/ManufacturerSpecificCC.js +2 -3
- package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
- package/build/esm/cc/MeterCC.d.ts +4 -6
- package/build/esm/cc/MeterCC.d.ts.map +1 -1
- package/build/esm/cc/MeterCC.js +2 -4
- package/build/esm/cc/MeterCC.js.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.d.ts +7 -8
- package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelAssociationCC.js +2 -3
- package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
- package/build/esm/cc/MultiChannelCC.d.ts +13 -12
- package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
- package/build/esm/cc/MultiChannelCC.js +65 -16
- package/build/esm/cc/MultiChannelCC.js.map +1 -1
- package/build/esm/cc/MultiCommandCC.d.ts +3 -3
- package/build/esm/cc/MultiCommandCC.d.ts.map +1 -1
- package/build/esm/cc/MultiCommandCC.js +2 -2
- package/build/esm/cc/MultiCommandCC.js.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.d.ts +4 -7
- package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSensorCC.js +2 -4
- package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC._validateArgs.js +1 -1
- package/build/esm/cc/MultilevelSwitchCC._validateArgs.js.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.d.ts +13 -13
- package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/MultilevelSwitchCC.js +2 -3
- package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
- package/build/esm/cc/NoOperationCC.js +1 -1
- package/build/esm/cc/NoOperationCC.js.map +1 -1
- package/build/esm/cc/NodeNamingCC.d.ts +5 -5
- package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
- package/build/esm/cc/NodeNamingCC.js +2 -2
- package/build/esm/cc/NodeNamingCC.js.map +1 -1
- package/build/esm/cc/NotificationCC.d.ts +4 -5
- package/build/esm/cc/NotificationCC.d.ts.map +1 -1
- package/build/esm/cc/NotificationCC.js +2 -4
- package/build/esm/cc/NotificationCC.js.map +1 -1
- package/build/esm/cc/PowerlevelCC.d.ts +3 -3
- package/build/esm/cc/PowerlevelCC.d.ts.map +1 -1
- package/build/esm/cc/PowerlevelCC.js +2 -3
- package/build/esm/cc/PowerlevelCC.js.map +1 -1
- package/build/esm/cc/ProtectionCC._validateArgs.js +1 -1
- package/build/esm/cc/ProtectionCC._validateArgs.js.map +1 -1
- package/build/esm/cc/ProtectionCC.d.ts +11 -11
- package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
- package/build/esm/cc/ProtectionCC.js +2 -3
- package/build/esm/cc/ProtectionCC.js.map +1 -1
- package/build/esm/cc/SceneActivationCC._validateArgs.js +1 -1
- package/build/esm/cc/SceneActivationCC._validateArgs.js.map +1 -1
- package/build/esm/cc/SceneActivationCC.d.ts +5 -6
- package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneActivationCC.js +2 -2
- package/build/esm/cc/SceneActivationCC.js.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC._validateArgs.js +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC._validateArgs.js.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +5 -5
- package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneActuatorConfigurationCC.js +2 -3
- package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC._validateArgs.js +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC._validateArgs.js.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC.d.ts +6 -6
- package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
- package/build/esm/cc/SceneControllerConfigurationCC.js +2 -3
- package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.d.ts +2 -3
- package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
- package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
- package/build/esm/cc/Security2CC.d.ts +3 -4
- package/build/esm/cc/Security2CC.d.ts.map +1 -1
- package/build/esm/cc/Security2CC.js +2 -4
- package/build/esm/cc/Security2CC.js.map +1 -1
- package/build/esm/cc/SecurityCC.d.ts +3 -4
- package/build/esm/cc/SecurityCC.d.ts.map +1 -1
- package/build/esm/cc/SecurityCC.js +1 -2
- package/build/esm/cc/SecurityCC.js.map +1 -1
- package/build/esm/cc/SoundSwitchCC.d.ts +7 -7
- package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
- package/build/esm/cc/SoundSwitchCC.js +2 -3
- package/build/esm/cc/SoundSwitchCC.js.map +1 -1
- package/build/esm/cc/SupervisionCC.d.ts +4 -4
- package/build/esm/cc/SupervisionCC.d.ts.map +1 -1
- package/build/esm/cc/SupervisionCC.js +2 -3
- package/build/esm/cc/SupervisionCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.d.ts +6 -6
- package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanModeCC.js +2 -3
- package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.d.ts +3 -3
- package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatFanStateCC.js +2 -2
- package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatModeCC.d.ts +6 -6
- package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatModeCC.js +2 -3
- package/build/esm/cc/ThermostatModeCC.js.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.d.ts +3 -4
- package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatOperatingStateCC.js +2 -2
- package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetbackCC.d.ts +3 -3
- package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatSetbackCC.js +2 -3
- package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.d.ts +6 -6
- package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
- package/build/esm/cc/ThermostatSetpointCC.js +2 -3
- package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
- package/build/esm/cc/TimeCC.d.ts +3 -4
- package/build/esm/cc/TimeCC.d.ts.map +1 -1
- package/build/esm/cc/TimeCC.js +1 -2
- package/build/esm/cc/TimeCC.js.map +1 -1
- package/build/esm/cc/TimeParametersCC.d.ts +3 -4
- package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
- package/build/esm/cc/TimeParametersCC.js +1 -1
- package/build/esm/cc/TimeParametersCC.js.map +1 -1
- package/build/esm/cc/TransportServiceCC.d.ts +3 -3
- package/build/esm/cc/TransportServiceCC.d.ts.map +1 -1
- package/build/esm/cc/TransportServiceCC.js +2 -3
- package/build/esm/cc/TransportServiceCC.js.map +1 -1
- package/build/esm/cc/UserCodeCC.d.ts +19 -19
- package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
- package/build/esm/cc/UserCodeCC.js +2 -3
- package/build/esm/cc/UserCodeCC.js.map +1 -1
- package/build/esm/cc/VersionCC.d.ts +17 -17
- package/build/esm/cc/VersionCC.d.ts.map +1 -1
- package/build/esm/cc/VersionCC.js +2 -3
- package/build/esm/cc/VersionCC.js.map +1 -1
- package/build/esm/cc/WakeUpCC.d.ts +6 -6
- package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
- package/build/esm/cc/WakeUpCC.js +2 -3
- package/build/esm/cc/WakeUpCC.js.map +1 -1
- package/build/esm/cc/WindowCoveringCC.d.ts +3 -4
- package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
- package/build/esm/cc/WindowCoveringCC.js +1 -2
- package/build/esm/cc/WindowCoveringCC.js.map +1 -1
- package/build/esm/cc/ZWavePlusCC.d.ts +8 -8
- package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
- package/build/esm/cc/ZWavePlusCC.js +2 -3
- package/build/esm/cc/ZWavePlusCC.js.map +1 -1
- package/build/esm/cc/ZWaveProtocolCC.d.ts +2 -2
- package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -1
- package/build/esm/cc/ZWaveProtocolCC.js +1 -1
- package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
- package/build/esm/cc/_CCValues.generated.d.ts +2 -0
- package/build/esm/cc/_CCValues.generated.d.ts.map +1 -1
- package/build/esm/cc/_CCValues.generated.js +5 -4
- package/build/esm/cc/_CCValues.generated.js.map +1 -1
- package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +3 -3
- package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -1
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js +1 -1
- package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
- package/build/esm/lib/API.d.ts +3 -3
- package/build/esm/lib/API.d.ts.map +1 -1
- package/build/esm/lib/API.js.map +1 -1
- package/build/esm/lib/CommandClass.d.ts +5 -6
- package/build/esm/lib/CommandClass.d.ts.map +1 -1
- package/build/esm/lib/CommandClass.js +2 -2
- package/build/esm/lib/CommandClass.js.map +1 -1
- package/build/esm/lib/CommandClassDecorators.d.ts +2 -2
- package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
- package/build/esm/lib/CommandClassDecorators.js +1 -1
- package/build/esm/lib/CommandClassDecorators.js.map +1 -1
- package/build/esm/lib/Security2/Extension.d.ts +2 -2
- package/build/esm/lib/Security2/Extension.d.ts.map +1 -1
- package/build/esm/lib/Security2/Extension.js +2 -2
- package/build/esm/lib/Security2/Extension.js.map +1 -1
- package/build/esm/lib/SetValueResult.d.ts +1 -1
- package/build/esm/lib/SetValueResult.d.ts.map +1 -1
- package/build/esm/lib/Values.d.ts +3 -3
- package/build/esm/lib/Values.d.ts.map +1 -1
- package/build/esm/lib/Values.js +1 -1
- package/build/esm/lib/Values.js.map +1 -1
- package/build/esm/lib/_Types.d.ts +2 -2
- package/build/esm/lib/_Types.d.ts.map +1 -1
- package/build/esm/lib/_Types.js +1 -1
- package/build/esm/lib/_Types.js.map +1 -1
- package/build/esm/lib/serializers.d.ts +1 -1
- package/build/esm/lib/serializers.d.ts.map +1 -1
- package/build/esm/lib/serializers.js +1 -1
- package/build/esm/lib/serializers.js.map +1 -1
- package/build/esm/lib/traits.d.ts +2 -2
- package/build/esm/lib/traits.d.ts.map +1 -1
- package/build/esm/lib/utils.d.ts +2 -2
- package/build/esm/lib/utils.d.ts.map +1 -1
- package/build/esm/lib/utils.js +2 -2
- package/build/esm/lib/utils.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/cc/ZWaveProtocolCC.ts"],
|
|
4
|
-
"sourcesContent": ["import { type CCEncodingContext, type CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\ttype BasicDeviceClass,\n\tCommandClasses,\n\ttype DataRate,\n\ttype FLiRS,\n\tMAX_NODES,\n\tMAX_REPEATERS,\n\ttype NodeInformationFrame,\n\ttype NodeProtocolInfoAndDeviceClass,\n\ttype NodeType,\n\ttype ProtocolVersion,\n\ttype WithAddress,\n\tZWaveDataRate,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tencodeBitMask,\n\tencodeNodeInformationFrame,\n\tencodeNodeProtocolInfoAndDeviceClass,\n\tparseBitMask,\n\tparseNodeInformationFrame,\n\tparseNodeProtocolInfoAndDeviceClass,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport { type CCRaw, CommandClass } from \"../lib/CommandClass.js\";\nimport {\n\tCCCommand,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\nimport {\n\ttype NetworkTransferStatus,\n\tWakeUpTime,\n\tZWaveProtocolCommand,\n\tparseWakeUpTime,\n} from \"../lib/_Types.js\";\n\nenum DataRateBitmask {\n\t\"9k6\" = 0b001,\n\t\"40k\" = 0b010,\n\t\"100k\" = 0b100,\n}\n\nfunction dataRate2Bitmask(dataRate: ZWaveDataRate): DataRateBitmask {\n\treturn dataRate === ZWaveDataRate[\"100k\"]\n\t\t? DataRateBitmask[\"100k\"]\n\t\t: dataRate === ZWaveDataRate[\"40k\"]\n\t\t? DataRateBitmask[\"40k\"]\n\t\t: DataRateBitmask[\"9k6\"];\n}\n\nfunction bitmask2DataRate(mask: DataRateBitmask): ZWaveDataRate {\n\treturn mask === DataRateBitmask[\"100k\"]\n\t\t? ZWaveDataRate[\"100k\"]\n\t\t: mask === DataRateBitmask[\"40k\"]\n\t\t? ZWaveDataRate[\"40k\"]\n\t\t: ZWaveDataRate[\"9k6\"];\n}\n\n@commandClass(CommandClasses[\"Z-Wave Protocol\"])\n@implementedVersion(1)\nexport class ZWaveProtocolCC extends CommandClass {\n\tdeclare ccCommand: ZWaveProtocolCommand;\n}\n\n// @publicAPI\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface ZWaveProtocolCCNodeInformationFrameOptions\n\textends NodeInformationFrame\n{}\n\n@CCCommand(ZWaveProtocolCommand.NodeInformationFrame)\nexport class ZWaveProtocolCCNodeInformationFrame extends ZWaveProtocolCC\n\timplements NodeInformationFrame\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodeInformationFrameOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t\tthis.supportedCCs = options.supportedCCs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodeInformationFrame {\n\t\tconst nif = parseNodeInformationFrame(raw.payload);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\t...nif,\n\t\t});\n\t}\n\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\tpublic supportedCCs: CommandClasses[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = encodeNodeInformationFrame(this);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.RequestNodeInformationFrame)\n@expectedCCResponse(ZWaveProtocolCCNodeInformationFrame)\nexport class ZWaveProtocolCCRequestNodeInformationFrame\n\textends ZWaveProtocolCC\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignIDsOptions {\n\tassignedNodeId: number;\n\thomeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignIDs)\nexport class ZWaveProtocolCCAssignIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.assignedNodeId = options.assignedNodeId;\n\t\tthis.homeId = options.homeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignIDs {\n\t\tvalidatePayload(raw.payload.length >= 5);\n\t\tconst assignedNodeId = raw.payload[0];\n\t\tconst homeId = raw.payload.readUInt32BE(1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tassignedNodeId,\n\t\t\thomeId,\n\t\t});\n\t}\n\n\tpublic assignedNodeId: number;\n\tpublic homeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = new Bytes(5);\n\t\tthis.payload[0] = this.assignedNodeId;\n\t\tthis.payload.writeUInt32BE(this.homeId, 1);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCFindNodesInRangeOptions {\n\tcandidateNodeIds: number[];\n\twakeUpTime: WakeUpTime;\n\tdataRate?: ZWaveDataRate;\n}\n\n@CCCommand(ZWaveProtocolCommand.FindNodesInRange)\nexport class ZWaveProtocolCCFindNodesInRange extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCFindNodesInRangeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.candidateNodeIds = options.candidateNodeIds;\n\t\tthis.wakeUpTime = options.wakeUpTime;\n\t\tthis.dataRate = options.dataRate ?? ZWaveDataRate[\"9k6\"];\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCFindNodesInRange {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst speedPresent = raw.payload[0] & 0b1000_0000;\n\t\tconst bitmaskLength = raw.payload[0] & 0b0001_1111;\n\n\t\tvalidatePayload(raw.payload.length >= 1 + bitmaskLength);\n\t\tconst candidateNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(1, 1 + bitmaskLength),\n\t\t);\n\t\tconst rest = raw.payload.subarray(1 + bitmaskLength);\n\n\t\tlet dataRate: ZWaveDataRate;\n\t\tlet wakeUpTime: WakeUpTime;\n\t\tif (speedPresent) {\n\t\t\tvalidatePayload(rest.length >= 1);\n\t\t\tif (rest.length === 1) {\n\t\t\t\tdataRate = rest[0] & 0b111;\n\t\t\t\twakeUpTime = WakeUpTime.None;\n\t\t\t} else if (rest.length === 2) {\n\t\t\t\twakeUpTime = parseWakeUpTime(rest[0]);\n\t\t\t\tdataRate = rest[1] & 0b111;\n\t\t\t} else {\n\t\t\t\tvalidatePayload.fail(\"Invalid payload length\");\n\t\t\t}\n\t\t} else if (rest.length >= 1) {\n\t\t\twakeUpTime = parseWakeUpTime(rest[0]);\n\t\t\tdataRate = ZWaveDataRate[\"9k6\"];\n\t\t} else {\n\t\t\twakeUpTime = WakeUpTime.None;\n\t\t\tdataRate = ZWaveDataRate[\"9k6\"];\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tcandidateNodeIds,\n\t\t\tdataRate,\n\t\t\twakeUpTime,\n\t\t});\n\t}\n\n\tpublic candidateNodeIds: number[];\n\tpublic wakeUpTime: WakeUpTime;\n\tpublic dataRate: ZWaveDataRate;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.candidateNodeIds, MAX_NODES);\n\t\tconst speedAndLength = 0b1000_0000 | nodesBitmask.length;\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([speedAndLength]),\n\t\t\tnodesBitmask,\n\t\t\tBytes.from([this.wakeUpTime, this.dataRate]),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCRangeInfoOptions {\n\tneighborNodeIds: number[];\n\twakeUpTime?: WakeUpTime;\n}\n\n@CCCommand(ZWaveProtocolCommand.RangeInfo)\nexport class ZWaveProtocolCCRangeInfo extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCRangeInfoOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t\tthis.wakeUpTime = options.wakeUpTime;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCRangeInfo {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst bitmaskLength = raw.payload[0] & 0b0001_1111;\n\n\t\tvalidatePayload(raw.payload.length >= 1 + bitmaskLength);\n\t\tconst neighborNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(1, 1 + bitmaskLength),\n\t\t);\n\n\t\tlet wakeUpTime: WakeUpTime | undefined;\n\t\tif (raw.payload.length >= 2 + bitmaskLength) {\n\t\t\twakeUpTime = parseWakeUpTime(\n\t\t\t\traw.payload[1 + bitmaskLength],\n\t\t\t);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tneighborNodeIds,\n\t\t\twakeUpTime,\n\t\t});\n\t}\n\n\tpublic neighborNodeIds: number[];\n\tpublic wakeUpTime?: WakeUpTime;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([nodesBitmask.length]),\n\t\t\tnodesBitmask,\n\t\t\tthis.wakeUpTime != undefined\n\t\t\t\t? Bytes.from([this.wakeUpTime])\n\t\t\t\t: new Bytes(),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.GetNodesInRange)\n@expectedCCResponse(ZWaveProtocolCCRangeInfo)\nexport class ZWaveProtocolCCGetNodesInRange extends ZWaveProtocolCC {}\n\n// @publicAPI\nexport interface ZWaveProtocolCCCommandCompleteOptions {\n\tsequenceNumber: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.CommandComplete)\nexport class ZWaveProtocolCCCommandComplete extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCCommandCompleteOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCCommandComplete {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst sequenceNumber = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.sequenceNumber]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferPresentationOptions {\n\tsupportsNWI: boolean;\n\tincludeNode: boolean;\n\texcludeNode: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferPresentation)\nexport class ZWaveProtocolCCTransferPresentation extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferPresentationOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.includeNode && options.excludeNode) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: the includeNode and excludeNode options cannot both be true`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.supportsNWI = options.supportsNWI;\n\t\tthis.includeNode = options.includeNode;\n\t\tthis.excludeNode = options.excludeNode;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferPresentation {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst option = raw.payload[0];\n\t\tconst supportsNWI = !!(option & 0b0001);\n\t\tconst excludeNode = !!(option & 0b0010);\n\t\tconst includeNode = !!(option & 0b0100);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsupportsNWI,\n\t\t\texcludeNode,\n\t\t\tincludeNode,\n\t\t});\n\t}\n\n\tpublic supportsNWI: boolean;\n\tpublic includeNode: boolean;\n\tpublic excludeNode: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\t(this.supportsNWI ? 0b0001 : 0)\n\t\t\t| (this.excludeNode ? 0b0010 : 0)\n\t\t\t| (this.includeNode ? 0b0100 : 0),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferNodeInformationOptions\n\textends NodeProtocolInfoAndDeviceClass\n{\n\tsequenceNumber: number;\n\tsourceNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferNodeInformation)\nexport class ZWaveProtocolCCTransferNodeInformation extends ZWaveProtocolCC\n\timplements NodeProtocolInfoAndDeviceClass\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferNodeInformationOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.sourceNodeId = options.sourceNodeId;\n\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferNodeInformation {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst sourceNodeId = raw.payload[1];\n\n\t\tconst { info } = parseNodeProtocolInfoAndDeviceClass(\n\t\t\traw.payload.subarray(2),\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\tsourceNodeId,\n\t\t\t...info,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\tpublic sourceNodeId: number;\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.sequenceNumber, this.sourceNodeId]),\n\t\t\tencodeNodeProtocolInfoAndDeviceClass(this),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferRangeInformationOptions {\n\tsequenceNumber: number;\n\ttestedNodeId: number;\n\tneighborNodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferRangeInformation)\nexport class ZWaveProtocolCCTransferRangeInformation extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferRangeInformationOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.testedNodeId = options.testedNodeId;\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferRangeInformation {\n\t\tvalidatePayload(raw.payload.length >= 3);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst testedNodeId = raw.payload[1];\n\t\tconst bitmaskLength = raw.payload[2];\n\n\t\tvalidatePayload(raw.payload.length >= 3 + bitmaskLength);\n\t\tconst neighborNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(3, 3 + bitmaskLength),\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\ttestedNodeId,\n\t\t\tneighborNodeIds,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\tpublic testedNodeId: number;\n\tpublic neighborNodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([\n\t\t\t\tthis.sequenceNumber,\n\t\t\t\tthis.testedNodeId,\n\t\t\t\tnodesBitmask.length,\n\t\t\t]),\n\t\t\tnodesBitmask,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferEndOptions {\n\tstatus: NetworkTransferStatus;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferEnd)\nexport class ZWaveProtocolCCTransferEnd extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferEndOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.status = options.status;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferEnd {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst status: NetworkTransferStatus = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tstatus,\n\t\t});\n\t}\n\n\tpublic status: NetworkTransferStatus;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.status]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignReturnRouteOptions {\n\tdestinationNodeId: number;\n\trouteIndex: number;\n\trepeaters: number[];\n\tdestinationWakeUp: WakeUpTime;\n\tdestinationSpeed: ZWaveDataRate;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignReturnRoute)\nexport class ZWaveProtocolCCAssignReturnRoute extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignReturnRouteOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.repeaters.length > MAX_REPEATERS) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: too many repeaters`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\n\t\tthis.destinationNodeId = options.destinationNodeId;\n\t\tthis.routeIndex = options.routeIndex;\n\t\tthis.repeaters = options.repeaters;\n\t\tthis.destinationWakeUp = options.destinationWakeUp;\n\t\tthis.destinationSpeed = options.destinationSpeed;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignReturnRoute {\n\t\tvalidatePayload(raw.payload.length >= 7);\n\t\tconst destinationNodeId = raw.payload[0];\n\t\tconst routeIndex = raw.payload[1] >>> 4;\n\t\tconst numRepeaters = raw.payload[1] & 0b1111;\n\t\tconst repeaters = [...raw.payload.subarray(2, 2 + numRepeaters)];\n\t\tconst speedAndWakeup = raw.payload[2 + numRepeaters];\n\t\tconst destinationSpeed = bitmask2DataRate(\n\t\t\t(speedAndWakeup >>> 3) & 0b111,\n\t\t);\n\t\tconst destinationWakeUp: WakeUpTime = (speedAndWakeup >>> 1) & 0b11;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tdestinationNodeId,\n\t\t\trouteIndex,\n\t\t\trepeaters,\n\t\t\tdestinationSpeed,\n\t\t\tdestinationWakeUp,\n\t\t});\n\t}\n\n\tpublic destinationNodeId: number;\n\tpublic routeIndex: number;\n\tpublic repeaters: number[];\n\tpublic destinationWakeUp: WakeUpTime;\n\tpublic destinationSpeed: ZWaveDataRate;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst routeByte = (this.routeIndex << 4) | this.repeaters.length;\n\t\tconst speedMask = dataRate2Bitmask(this.destinationSpeed);\n\t\tconst speedByte = (speedMask << 3) | (this.destinationWakeUp << 1);\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.destinationNodeId,\n\t\t\trouteByte,\n\t\t\t...this.repeaters,\n\t\t\tspeedByte,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNewNodeRegisteredOptions\n\textends NodeInformationFrame\n{\n\tnewNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.NewNodeRegistered)\nexport class ZWaveProtocolCCNewNodeRegistered extends ZWaveProtocolCC\n\timplements NodeInformationFrame\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNewNodeRegisteredOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.newNodeId = options.newNodeId;\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t\tthis.supportedCCs = options.supportedCCs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNewNodeRegistered {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst newNodeId = raw.payload[0];\n\n\t\tconst nif = parseNodeInformationFrame(raw.payload.subarray(1));\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnewNodeId,\n\t\t\t...nif,\n\t\t});\n\t}\n\n\tpublic newNodeId: number;\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\tpublic supportedCCs: CommandClasses[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.newNodeId]),\n\t\t\tencodeNodeInformationFrame(this),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNewRangeRegisteredOptions {\n\ttestedNodeId: number;\n\tneighborNodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.NewRangeRegistered)\nexport class ZWaveProtocolCCNewRangeRegistered extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNewRangeRegisteredOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.testedNodeId = options.testedNodeId;\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNewRangeRegistered {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst testedNodeId = raw.payload[0];\n\t\tconst numNeighbors = raw.payload[1];\n\t\tconst neighborNodeIds = [\n\t\t\t...raw.payload.subarray(2, 2 + numNeighbors),\n\t\t];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttestedNodeId,\n\t\t\tneighborNodeIds,\n\t\t});\n\t}\n\n\tpublic testedNodeId: number;\n\tpublic neighborNodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.testedNodeId, nodesBitmask.length]),\n\t\t\tnodesBitmask,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferNewPrimaryControllerCompleteOptions {\n\tgenericDeviceClass: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferNewPrimaryControllerComplete)\nexport class ZWaveProtocolCCTransferNewPrimaryControllerComplete\n\textends ZWaveProtocolCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tZWaveProtocolCCTransferNewPrimaryControllerCompleteOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferNewPrimaryControllerComplete {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst genericDeviceClass = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tgenericDeviceClass,\n\t\t});\n\t}\n\n\tpublic genericDeviceClass: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.genericDeviceClass]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AutomaticControllerUpdateStart)\nexport class ZWaveProtocolCCAutomaticControllerUpdateStart\n\textends ZWaveProtocolCC\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSUCNodeIDOptions {\n\tsucNodeId: number;\n\tisSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SUCNodeID)\nexport class ZWaveProtocolCCSUCNodeID extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSUCNodeIDOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sucNodeId = options.sucNodeId;\n\t\tthis.isSIS = options.isSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSUCNodeID {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst sucNodeId = raw.payload[0];\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst isSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsucNodeId,\n\t\t\tisSIS,\n\t\t});\n\t}\n\n\tpublic sucNodeId: number;\n\tpublic isSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.sucNodeId, this.isSIS ? 0b1 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetSUCOptions {\n\tenableSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetSUC)\nexport class ZWaveProtocolCCSetSUC extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetSUCOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.enableSIS = options.enableSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetSUC {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\t// Byte 0 must be 0x01 or ignored\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst enableSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tenableSIS,\n\t\t});\n\t}\n\n\tpublic enableSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([0x01, this.enableSIS ? 0b1 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetSUCAckOptions {\n\taccepted: boolean;\n\tisSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetSUCAck)\nexport class ZWaveProtocolCCSetSUCAck extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetSUCAckOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.accepted = options.accepted;\n\t\tthis.isSIS = options.isSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetSUCAck {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst accepted = raw.payload[0] === 0x01;\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst isSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\taccepted,\n\t\t\tisSIS,\n\t\t});\n\t}\n\n\tpublic accepted: boolean;\n\tpublic isSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.accepted ? 0x01 : 0x00,\n\t\t\tthis.isSIS ? 0b1 : 0,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignSUCReturnRoute)\nexport class ZWaveProtocolCCAssignSUCReturnRoute\n\textends ZWaveProtocolCCAssignReturnRoute\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCStaticRouteRequestOptions {\n\tnodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.StaticRouteRequest)\nexport class ZWaveProtocolCCStaticRouteRequest extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCStaticRouteRequestOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.nodeIds.some((n) => n < 1 || n > MAX_NODES)) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`All node IDs must be between 1 and ${MAX_NODES}!`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.nodeIds = options.nodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCStaticRouteRequest {\n\t\tvalidatePayload(raw.payload.length >= 5);\n\t\tconst nodeIds = [...raw.payload.subarray(0, 5)].filter(\n\t\t\t(id) => id > 0 && id <= MAX_NODES,\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeIds,\n\t\t});\n\t}\n\n\tpublic nodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.alloc(5, 0);\n\t\tfor (let i = 0; i < this.nodeIds.length && i < 5; i++) {\n\t\t\tthis.payload[i] = this.nodeIds[i];\n\t\t}\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCLostOptions {\n\tlostNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.Lost)\nexport class ZWaveProtocolCCLost extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCLostOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.lostNodeId = options.lostNodeId;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): ZWaveProtocolCCLost {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst lostNodeId = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tlostNodeId,\n\t\t});\n\t}\n\n\tpublic lostNodeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.lostNodeId]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAcceptLostOptions {\n\taccepted: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.AcceptLost)\nexport class ZWaveProtocolCCAcceptLost extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAcceptLostOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.accepted = options.accepted;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAcceptLost {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tvalidatePayload(\n\t\t\traw.payload[0] === 0x04 || raw.payload[0] === 0x05,\n\t\t);\n\t\tconst accepted = raw.payload[0] === 0x05;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\taccepted,\n\t\t});\n\t}\n\n\tpublic accepted: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.accepted ? 0x05 : 0x04]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNOPPowerOptions {\n\tpowerDampening: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.NOPPower)\nexport class ZWaveProtocolCCNOPPower extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNOPPowerOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.powerDampening < 0 || options.powerDampening > 14) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: power dampening must be between 0 and 14 dBm!`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.powerDampening = options.powerDampening;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNOPPower {\n\t\tlet powerDampening;\n\n\t\tif (raw.payload.length >= 2) {\n\t\t\t// Ignore byte 0\n\t\t\tpowerDampening = raw.payload[1];\n\t\t} else if (raw.payload.length === 1) {\n\t\t\tpowerDampening = [\n\t\t\t\t0xf0,\n\t\t\t\t0xc8,\n\t\t\t\t0xa7,\n\t\t\t\t0x91,\n\t\t\t\t0x77,\n\t\t\t\t0x67,\n\t\t\t\t0x60,\n\t\t\t\t0x46,\n\t\t\t\t0x38,\n\t\t\t\t0x35,\n\t\t\t\t0x32,\n\t\t\t\t0x30,\n\t\t\t\t0x24,\n\t\t\t\t0x22,\n\t\t\t\t0x20,\n\t\t\t].indexOf(raw.payload[0]);\n\t\t\tif (powerDampening === -1) powerDampening = 0;\n\t\t} else {\n\t\t\tvalidatePayload.fail(\"Invalid payload length!\");\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tpowerDampening,\n\t\t});\n\t}\n\n\t// Power dampening in (negative) dBm. A value of 2 means -2 dBm.\n\tpublic powerDampening: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([0, this.powerDampening]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCReservedIDsOptions {\n\treservedNodeIDs: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.ReservedIDs)\nexport class ZWaveProtocolCCReservedIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCReservedIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.reservedNodeIDs = options.reservedNodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCReservedIDs {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst numNodeIDs = raw.payload[0];\n\t\tvalidatePayload(raw.payload.length >= 1 + numNodeIDs);\n\t\tconst reservedNodeIDs = [\n\t\t\t...raw.payload.subarray(1, 1 + numNodeIDs),\n\t\t];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\treservedNodeIDs,\n\t\t});\n\t}\n\n\tpublic reservedNodeIDs: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.reservedNodeIDs.length,\n\t\t\t...this.reservedNodeIDs,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCReserveNodeIDsOptions {\n\tnumNodeIDs: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.ReserveNodeIDs)\n@expectedCCResponse(ZWaveProtocolCCReservedIDs)\nexport class ZWaveProtocolCCReserveNodeIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCReserveNodeIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.numNodeIDs = options.numNodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCReserveNodeIDs {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst numNodeIDs = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnumNodeIDs,\n\t\t});\n\t}\n\n\tpublic numNodeIDs: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.numNodeIDs]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNodesExistReplyOptions {\n\tnodeMaskType: number;\n\tnodeListUpdated: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.NodesExistReply)\nexport class ZWaveProtocolCCNodesExistReply extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodesExistReplyOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.nodeMaskType = options.nodeMaskType;\n\t\tthis.nodeListUpdated = options.nodeListUpdated;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodesExistReply {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst nodeMaskType = raw.payload[0];\n\t\tconst nodeListUpdated = raw.payload[1] === 0x01;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeMaskType,\n\t\t\tnodeListUpdated,\n\t\t});\n\t}\n\n\tpublic nodeMaskType: number;\n\tpublic nodeListUpdated: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.nodeMaskType,\n\t\t\tthis.nodeListUpdated ? 0x01 : 0x00,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\nfunction testResponseForZWaveProtocolNodesExist(\n\tsent: ZWaveProtocolCCNodesExist,\n\treceived: ZWaveProtocolCCNodesExistReply,\n) {\n\treturn received.nodeMaskType === sent.nodeMaskType;\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNodesExistOptions {\n\tnodeMaskType: number;\n\tnodeIDs: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.NodesExist)\n@expectedCCResponse(\n\tZWaveProtocolCCNodesExistReply,\n\ttestResponseForZWaveProtocolNodesExist,\n)\nexport class ZWaveProtocolCCNodesExist extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodesExistOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.nodeMaskType = options.nodeMaskType;\n\t\tthis.nodeIDs = options.nodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodesExist {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst nodeMaskType = raw.payload[0];\n\t\tconst numNodeIDs = raw.payload[1];\n\t\tvalidatePayload(raw.payload.length >= 2 + numNodeIDs);\n\t\tconst nodeIDs = [...raw.payload.subarray(2, 2 + numNodeIDs)];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeMaskType,\n\t\t\tnodeIDs,\n\t\t});\n\t}\n\n\tpublic nodeMaskType: number;\n\tpublic nodeIDs: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.nodeMaskType,\n\t\t\tthis.nodeIDs.length,\n\t\t\t...this.nodeIDs,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetNWIModeOptions {\n\tenabled: boolean;\n\ttimeoutMinutes?: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetNWIMode)\nexport class ZWaveProtocolCCSetNWIMode extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetNWIModeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.enabled = options.enabled;\n\t\tthis.timeoutMinutes = options.timeoutMinutes;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetNWIMode {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst enabled = raw.payload[0] === 0x01;\n\t\tconst timeoutMinutes: number | undefined = raw.payload[1] || undefined;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tenabled,\n\t\t\ttimeoutMinutes,\n\t\t});\n\t}\n\n\tpublic enabled: boolean;\n\tpublic timeoutMinutes?: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.enabled ? 0x01 : 0x00,\n\t\t\tthis.timeoutMinutes ?? 0x00,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.ExcludeRequest)\nexport class ZWaveProtocolCCExcludeRequest\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignReturnRoutePriorityOptions {\n\ttargetNodeId: number;\n\trouteNumber: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignReturnRoutePriority)\nexport class ZWaveProtocolCCAssignReturnRoutePriority extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignReturnRoutePriorityOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.targetNodeId = options.targetNodeId;\n\t\tthis.routeNumber = options.routeNumber;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignReturnRoutePriority {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst targetNodeId = raw.payload[0];\n\t\tconst routeNumber = raw.payload[1];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttargetNodeId,\n\t\t\trouteNumber,\n\t\t});\n\t}\n\n\tpublic targetNodeId: number;\n\tpublic routeNumber: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.targetNodeId, this.routeNumber]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignSUCReturnRoutePriority)\nexport class ZWaveProtocolCCAssignSUCReturnRoutePriority\n\textends ZWaveProtocolCCAssignReturnRoutePriority\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSmartStartIncludedNodeInformationOptions {\n\tnwiHomeId: Uint8Array;\n}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartIncludedNodeInformation)\nexport class ZWaveProtocolCCSmartStartIncludedNodeInformation\n\textends ZWaveProtocolCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tZWaveProtocolCCSmartStartIncludedNodeInformationOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.nwiHomeId.length !== 4) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`nwiHomeId must have length 4`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.nwiHomeId = options.nwiHomeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSmartStartIncludedNodeInformation {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst nwiHomeId = raw.payload.subarray(0, 4);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnwiHomeId,\n\t\t});\n\t}\n\n\tpublic nwiHomeId: Uint8Array;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from(this.nwiHomeId);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartPrime)\nexport class ZWaveProtocolCCSmartStartPrime\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartInclusionRequest)\nexport class ZWaveProtocolCCSmartStartInclusionRequest\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import type { CCEncodingContext, CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\ttype BasicDeviceClass,\n\tCommandClasses,\n\ttype DataRate,\n\ttype FLiRS,\n\tMAX_NODES,\n\tMAX_REPEATERS,\n\ttype NodeInformationFrame,\n\ttype NodeProtocolInfoAndDeviceClass,\n\ttype NodeType,\n\ttype ProtocolVersion,\n\ttype WithAddress,\n\tZWaveDataRate,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tencodeBitMask,\n\tencodeNodeInformationFrame,\n\tencodeNodeProtocolInfoAndDeviceClass,\n\tparseBitMask,\n\tparseNodeInformationFrame,\n\tparseNodeProtocolInfoAndDeviceClass,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes } from \"@zwave-js/shared\";\nimport { type CCRaw, CommandClass } from \"../lib/CommandClass.js\";\nimport {\n\tCCCommand,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\nimport {\n\ttype NetworkTransferStatus,\n\tWakeUpTime,\n\tZWaveProtocolCommand,\n\tparseWakeUpTime,\n} from \"../lib/_Types.js\";\n\nenum DataRateBitmask {\n\t\"9k6\" = 0b001,\n\t\"40k\" = 0b010,\n\t\"100k\" = 0b100,\n}\n\nfunction dataRate2Bitmask(dataRate: ZWaveDataRate): DataRateBitmask {\n\treturn dataRate === ZWaveDataRate[\"100k\"]\n\t\t? DataRateBitmask[\"100k\"]\n\t\t: dataRate === ZWaveDataRate[\"40k\"]\n\t\t? DataRateBitmask[\"40k\"]\n\t\t: DataRateBitmask[\"9k6\"];\n}\n\nfunction bitmask2DataRate(mask: DataRateBitmask): ZWaveDataRate {\n\treturn mask === DataRateBitmask[\"100k\"]\n\t\t? ZWaveDataRate[\"100k\"]\n\t\t: mask === DataRateBitmask[\"40k\"]\n\t\t? ZWaveDataRate[\"40k\"]\n\t\t: ZWaveDataRate[\"9k6\"];\n}\n\n@commandClass(CommandClasses[\"Z-Wave Protocol\"])\n@implementedVersion(1)\nexport class ZWaveProtocolCC extends CommandClass {\n\tdeclare ccCommand: ZWaveProtocolCommand;\n}\n\n// @publicAPI\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type\nexport interface ZWaveProtocolCCNodeInformationFrameOptions\n\textends NodeInformationFrame\n{}\n\n@CCCommand(ZWaveProtocolCommand.NodeInformationFrame)\nexport class ZWaveProtocolCCNodeInformationFrame extends ZWaveProtocolCC\n\timplements NodeInformationFrame\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodeInformationFrameOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t\tthis.supportedCCs = options.supportedCCs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodeInformationFrame {\n\t\tconst nif = parseNodeInformationFrame(raw.payload);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\t...nif,\n\t\t});\n\t}\n\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\tpublic supportedCCs: CommandClasses[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = encodeNodeInformationFrame(this);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.RequestNodeInformationFrame)\n@expectedCCResponse(ZWaveProtocolCCNodeInformationFrame)\nexport class ZWaveProtocolCCRequestNodeInformationFrame\n\textends ZWaveProtocolCC\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignIDsOptions {\n\tassignedNodeId: number;\n\thomeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignIDs)\nexport class ZWaveProtocolCCAssignIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.assignedNodeId = options.assignedNodeId;\n\t\tthis.homeId = options.homeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignIDs {\n\t\tvalidatePayload(raw.payload.length >= 5);\n\t\tconst assignedNodeId = raw.payload[0];\n\t\tconst homeId = raw.payload.readUInt32BE(1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tassignedNodeId,\n\t\t\thomeId,\n\t\t});\n\t}\n\n\tpublic assignedNodeId: number;\n\tpublic homeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = new Bytes(5);\n\t\tthis.payload[0] = this.assignedNodeId;\n\t\tthis.payload.writeUInt32BE(this.homeId, 1);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCFindNodesInRangeOptions {\n\tcandidateNodeIds: number[];\n\twakeUpTime: WakeUpTime;\n\tdataRate?: ZWaveDataRate;\n}\n\n@CCCommand(ZWaveProtocolCommand.FindNodesInRange)\nexport class ZWaveProtocolCCFindNodesInRange extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCFindNodesInRangeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.candidateNodeIds = options.candidateNodeIds;\n\t\tthis.wakeUpTime = options.wakeUpTime;\n\t\tthis.dataRate = options.dataRate ?? ZWaveDataRate[\"9k6\"];\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCFindNodesInRange {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst speedPresent = raw.payload[0] & 0b1000_0000;\n\t\tconst bitmaskLength = raw.payload[0] & 0b0001_1111;\n\n\t\tvalidatePayload(raw.payload.length >= 1 + bitmaskLength);\n\t\tconst candidateNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(1, 1 + bitmaskLength),\n\t\t);\n\t\tconst rest = raw.payload.subarray(1 + bitmaskLength);\n\n\t\tlet dataRate: ZWaveDataRate;\n\t\tlet wakeUpTime: WakeUpTime;\n\t\tif (speedPresent) {\n\t\t\tvalidatePayload(rest.length >= 1);\n\t\t\tif (rest.length === 1) {\n\t\t\t\tdataRate = rest[0] & 0b111;\n\t\t\t\twakeUpTime = WakeUpTime.None;\n\t\t\t} else if (rest.length === 2) {\n\t\t\t\twakeUpTime = parseWakeUpTime(rest[0]);\n\t\t\t\tdataRate = rest[1] & 0b111;\n\t\t\t} else {\n\t\t\t\tvalidatePayload.fail(\"Invalid payload length\");\n\t\t\t}\n\t\t} else if (rest.length >= 1) {\n\t\t\twakeUpTime = parseWakeUpTime(rest[0]);\n\t\t\tdataRate = ZWaveDataRate[\"9k6\"];\n\t\t} else {\n\t\t\twakeUpTime = WakeUpTime.None;\n\t\t\tdataRate = ZWaveDataRate[\"9k6\"];\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tcandidateNodeIds,\n\t\t\tdataRate,\n\t\t\twakeUpTime,\n\t\t});\n\t}\n\n\tpublic candidateNodeIds: number[];\n\tpublic wakeUpTime: WakeUpTime;\n\tpublic dataRate: ZWaveDataRate;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.candidateNodeIds, MAX_NODES);\n\t\tconst speedAndLength = 0b1000_0000 | nodesBitmask.length;\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([speedAndLength]),\n\t\t\tnodesBitmask,\n\t\t\tBytes.from([this.wakeUpTime, this.dataRate]),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCRangeInfoOptions {\n\tneighborNodeIds: number[];\n\twakeUpTime?: WakeUpTime;\n}\n\n@CCCommand(ZWaveProtocolCommand.RangeInfo)\nexport class ZWaveProtocolCCRangeInfo extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCRangeInfoOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t\tthis.wakeUpTime = options.wakeUpTime;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCRangeInfo {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst bitmaskLength = raw.payload[0] & 0b0001_1111;\n\n\t\tvalidatePayload(raw.payload.length >= 1 + bitmaskLength);\n\t\tconst neighborNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(1, 1 + bitmaskLength),\n\t\t);\n\n\t\tlet wakeUpTime: WakeUpTime | undefined;\n\t\tif (raw.payload.length >= 2 + bitmaskLength) {\n\t\t\twakeUpTime = parseWakeUpTime(\n\t\t\t\traw.payload[1 + bitmaskLength],\n\t\t\t);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tneighborNodeIds,\n\t\t\twakeUpTime,\n\t\t});\n\t}\n\n\tpublic neighborNodeIds: number[];\n\tpublic wakeUpTime?: WakeUpTime;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([nodesBitmask.length]),\n\t\t\tnodesBitmask,\n\t\t\tthis.wakeUpTime != undefined\n\t\t\t\t? Bytes.from([this.wakeUpTime])\n\t\t\t\t: new Bytes(),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.GetNodesInRange)\n@expectedCCResponse(ZWaveProtocolCCRangeInfo)\nexport class ZWaveProtocolCCGetNodesInRange extends ZWaveProtocolCC {}\n\n// @publicAPI\nexport interface ZWaveProtocolCCCommandCompleteOptions {\n\tsequenceNumber: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.CommandComplete)\nexport class ZWaveProtocolCCCommandComplete extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCCommandCompleteOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCCommandComplete {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst sequenceNumber = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.sequenceNumber]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferPresentationOptions {\n\tsupportsNWI: boolean;\n\tincludeNode: boolean;\n\texcludeNode: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferPresentation)\nexport class ZWaveProtocolCCTransferPresentation extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferPresentationOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.includeNode && options.excludeNode) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: the includeNode and excludeNode options cannot both be true`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.supportsNWI = options.supportsNWI;\n\t\tthis.includeNode = options.includeNode;\n\t\tthis.excludeNode = options.excludeNode;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferPresentation {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst option = raw.payload[0];\n\t\tconst supportsNWI = !!(option & 0b0001);\n\t\tconst excludeNode = !!(option & 0b0010);\n\t\tconst includeNode = !!(option & 0b0100);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsupportsNWI,\n\t\t\texcludeNode,\n\t\t\tincludeNode,\n\t\t});\n\t}\n\n\tpublic supportsNWI: boolean;\n\tpublic includeNode: boolean;\n\tpublic excludeNode: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\t(this.supportsNWI ? 0b0001 : 0)\n\t\t\t| (this.excludeNode ? 0b0010 : 0)\n\t\t\t| (this.includeNode ? 0b0100 : 0),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferNodeInformationOptions\n\textends NodeProtocolInfoAndDeviceClass\n{\n\tsequenceNumber: number;\n\tsourceNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferNodeInformation)\nexport class ZWaveProtocolCCTransferNodeInformation extends ZWaveProtocolCC\n\timplements NodeProtocolInfoAndDeviceClass\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferNodeInformationOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.sourceNodeId = options.sourceNodeId;\n\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferNodeInformation {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst sourceNodeId = raw.payload[1];\n\n\t\tconst { info } = parseNodeProtocolInfoAndDeviceClass(\n\t\t\traw.payload.subarray(2),\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\tsourceNodeId,\n\t\t\t...info,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\tpublic sourceNodeId: number;\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.sequenceNumber, this.sourceNodeId]),\n\t\t\tencodeNodeProtocolInfoAndDeviceClass(this),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferRangeInformationOptions {\n\tsequenceNumber: number;\n\ttestedNodeId: number;\n\tneighborNodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferRangeInformation)\nexport class ZWaveProtocolCCTransferRangeInformation extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferRangeInformationOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.testedNodeId = options.testedNodeId;\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferRangeInformation {\n\t\tvalidatePayload(raw.payload.length >= 3);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst testedNodeId = raw.payload[1];\n\t\tconst bitmaskLength = raw.payload[2];\n\n\t\tvalidatePayload(raw.payload.length >= 3 + bitmaskLength);\n\t\tconst neighborNodeIds = parseBitMask(\n\t\t\traw.payload.subarray(3, 3 + bitmaskLength),\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\ttestedNodeId,\n\t\t\tneighborNodeIds,\n\t\t});\n\t}\n\n\tpublic sequenceNumber: number;\n\tpublic testedNodeId: number;\n\tpublic neighborNodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([\n\t\t\t\tthis.sequenceNumber,\n\t\t\t\tthis.testedNodeId,\n\t\t\t\tnodesBitmask.length,\n\t\t\t]),\n\t\t\tnodesBitmask,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferEndOptions {\n\tstatus: NetworkTransferStatus;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferEnd)\nexport class ZWaveProtocolCCTransferEnd extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCTransferEndOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.status = options.status;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferEnd {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst status: NetworkTransferStatus = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tstatus,\n\t\t});\n\t}\n\n\tpublic status: NetworkTransferStatus;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.status]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignReturnRouteOptions {\n\tdestinationNodeId: number;\n\trouteIndex: number;\n\trepeaters: number[];\n\tdestinationWakeUp: WakeUpTime;\n\tdestinationSpeed: ZWaveDataRate;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignReturnRoute)\nexport class ZWaveProtocolCCAssignReturnRoute extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignReturnRouteOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.repeaters.length > MAX_REPEATERS) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: too many repeaters`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\n\t\tthis.destinationNodeId = options.destinationNodeId;\n\t\tthis.routeIndex = options.routeIndex;\n\t\tthis.repeaters = options.repeaters;\n\t\tthis.destinationWakeUp = options.destinationWakeUp;\n\t\tthis.destinationSpeed = options.destinationSpeed;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignReturnRoute {\n\t\tvalidatePayload(raw.payload.length >= 7);\n\t\tconst destinationNodeId = raw.payload[0];\n\t\tconst routeIndex = raw.payload[1] >>> 4;\n\t\tconst numRepeaters = raw.payload[1] & 0b1111;\n\t\tconst repeaters = [...raw.payload.subarray(2, 2 + numRepeaters)];\n\t\tconst speedAndWakeup = raw.payload[2 + numRepeaters];\n\t\tconst destinationSpeed = bitmask2DataRate(\n\t\t\t(speedAndWakeup >>> 3) & 0b111,\n\t\t);\n\t\tconst destinationWakeUp: WakeUpTime = (speedAndWakeup >>> 1) & 0b11;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tdestinationNodeId,\n\t\t\trouteIndex,\n\t\t\trepeaters,\n\t\t\tdestinationSpeed,\n\t\t\tdestinationWakeUp,\n\t\t});\n\t}\n\n\tpublic destinationNodeId: number;\n\tpublic routeIndex: number;\n\tpublic repeaters: number[];\n\tpublic destinationWakeUp: WakeUpTime;\n\tpublic destinationSpeed: ZWaveDataRate;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst routeByte = (this.routeIndex << 4) | this.repeaters.length;\n\t\tconst speedMask = dataRate2Bitmask(this.destinationSpeed);\n\t\tconst speedByte = (speedMask << 3) | (this.destinationWakeUp << 1);\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.destinationNodeId,\n\t\t\trouteByte,\n\t\t\t...this.repeaters,\n\t\t\tspeedByte,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNewNodeRegisteredOptions\n\textends NodeInformationFrame\n{\n\tnewNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.NewNodeRegistered)\nexport class ZWaveProtocolCCNewNodeRegistered extends ZWaveProtocolCC\n\timplements NodeInformationFrame\n{\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNewNodeRegisteredOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\tthis.newNodeId = options.newNodeId;\n\t\tthis.basicDeviceClass = options.basicDeviceClass;\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t\tthis.specificDeviceClass = options.specificDeviceClass;\n\t\tthis.isListening = options.isListening;\n\t\tthis.isFrequentListening = options.isFrequentListening;\n\t\tthis.isRouting = options.isRouting;\n\t\tthis.supportedDataRates = options.supportedDataRates;\n\t\tthis.protocolVersion = options.protocolVersion;\n\t\tthis.optionalFunctionality = options.optionalFunctionality;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.supportsSecurity = options.supportsSecurity;\n\t\tthis.supportsBeaming = options.supportsBeaming;\n\t\tthis.supportedCCs = options.supportedCCs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNewNodeRegistered {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst newNodeId = raw.payload[0];\n\n\t\tconst nif = parseNodeInformationFrame(raw.payload.subarray(1));\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnewNodeId,\n\t\t\t...nif,\n\t\t});\n\t}\n\n\tpublic newNodeId: number;\n\tpublic basicDeviceClass: BasicDeviceClass;\n\tpublic genericDeviceClass: number;\n\tpublic specificDeviceClass: number;\n\tpublic isListening: boolean;\n\tpublic isFrequentListening: FLiRS;\n\tpublic isRouting: boolean;\n\tpublic supportedDataRates: DataRate[];\n\tpublic protocolVersion: ProtocolVersion;\n\tpublic optionalFunctionality: boolean;\n\tpublic nodeType: NodeType;\n\tpublic supportsSecurity: boolean;\n\tpublic supportsBeaming: boolean;\n\tpublic supportedCCs: CommandClasses[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.newNodeId]),\n\t\t\tencodeNodeInformationFrame(this),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNewRangeRegisteredOptions {\n\ttestedNodeId: number;\n\tneighborNodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.NewRangeRegistered)\nexport class ZWaveProtocolCCNewRangeRegistered extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNewRangeRegisteredOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.testedNodeId = options.testedNodeId;\n\t\tthis.neighborNodeIds = options.neighborNodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNewRangeRegistered {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst testedNodeId = raw.payload[0];\n\t\tconst numNeighbors = raw.payload[1];\n\t\tconst neighborNodeIds = [\n\t\t\t...raw.payload.subarray(2, 2 + numNeighbors),\n\t\t];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttestedNodeId,\n\t\t\tneighborNodeIds,\n\t\t});\n\t}\n\n\tpublic testedNodeId: number;\n\tpublic neighborNodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst nodesBitmask = encodeBitMask(this.neighborNodeIds, MAX_NODES);\n\t\tthis.payload = Bytes.concat([\n\t\t\tBytes.from([this.testedNodeId, nodesBitmask.length]),\n\t\t\tnodesBitmask,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCTransferNewPrimaryControllerCompleteOptions {\n\tgenericDeviceClass: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.TransferNewPrimaryControllerComplete)\nexport class ZWaveProtocolCCTransferNewPrimaryControllerComplete\n\textends ZWaveProtocolCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tZWaveProtocolCCTransferNewPrimaryControllerCompleteOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\t\tthis.genericDeviceClass = options.genericDeviceClass;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCTransferNewPrimaryControllerComplete {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst genericDeviceClass = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tgenericDeviceClass,\n\t\t});\n\t}\n\n\tpublic genericDeviceClass: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.genericDeviceClass]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AutomaticControllerUpdateStart)\nexport class ZWaveProtocolCCAutomaticControllerUpdateStart\n\textends ZWaveProtocolCC\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSUCNodeIDOptions {\n\tsucNodeId: number;\n\tisSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SUCNodeID)\nexport class ZWaveProtocolCCSUCNodeID extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSUCNodeIDOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.sucNodeId = options.sucNodeId;\n\t\tthis.isSIS = options.isSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSUCNodeID {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst sucNodeId = raw.payload[0];\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst isSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsucNodeId,\n\t\t\tisSIS,\n\t\t});\n\t}\n\n\tpublic sucNodeId: number;\n\tpublic isSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.sucNodeId, this.isSIS ? 0b1 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetSUCOptions {\n\tenableSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetSUC)\nexport class ZWaveProtocolCCSetSUC extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetSUCOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.enableSIS = options.enableSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetSUC {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\t// Byte 0 must be 0x01 or ignored\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst enableSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tenableSIS,\n\t\t});\n\t}\n\n\tpublic enableSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([0x01, this.enableSIS ? 0b1 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetSUCAckOptions {\n\taccepted: boolean;\n\tisSIS: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetSUCAck)\nexport class ZWaveProtocolCCSetSUCAck extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetSUCAckOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.accepted = options.accepted;\n\t\tthis.isSIS = options.isSIS;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetSUCAck {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst accepted = raw.payload[0] === 0x01;\n\t\tconst capabilities = raw.payload[1] ?? 0;\n\t\tconst isSIS = !!(capabilities & 0b1);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\taccepted,\n\t\t\tisSIS,\n\t\t});\n\t}\n\n\tpublic accepted: boolean;\n\tpublic isSIS: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.accepted ? 0x01 : 0x00,\n\t\t\tthis.isSIS ? 0b1 : 0,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignSUCReturnRoute)\nexport class ZWaveProtocolCCAssignSUCReturnRoute\n\textends ZWaveProtocolCCAssignReturnRoute\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCStaticRouteRequestOptions {\n\tnodeIds: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.StaticRouteRequest)\nexport class ZWaveProtocolCCStaticRouteRequest extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCStaticRouteRequestOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.nodeIds.some((n) => n < 1 || n > MAX_NODES)) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`All node IDs must be between 1 and ${MAX_NODES}!`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.nodeIds = options.nodeIds;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCStaticRouteRequest {\n\t\tvalidatePayload(raw.payload.length >= 5);\n\t\tconst nodeIds = [...raw.payload.subarray(0, 5)].filter(\n\t\t\t(id) => id > 0 && id <= MAX_NODES,\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeIds,\n\t\t});\n\t}\n\n\tpublic nodeIds: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.alloc(5, 0);\n\t\tfor (let i = 0; i < this.nodeIds.length && i < 5; i++) {\n\t\t\tthis.payload[i] = this.nodeIds[i];\n\t\t}\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCLostOptions {\n\tlostNodeId: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.Lost)\nexport class ZWaveProtocolCCLost extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCLostOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.lostNodeId = options.lostNodeId;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): ZWaveProtocolCCLost {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst lostNodeId = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tlostNodeId,\n\t\t});\n\t}\n\n\tpublic lostNodeId: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.lostNodeId]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAcceptLostOptions {\n\taccepted: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.AcceptLost)\nexport class ZWaveProtocolCCAcceptLost extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAcceptLostOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.accepted = options.accepted;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAcceptLost {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tvalidatePayload(\n\t\t\traw.payload[0] === 0x04 || raw.payload[0] === 0x05,\n\t\t);\n\t\tconst accepted = raw.payload[0] === 0x05;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\taccepted,\n\t\t});\n\t}\n\n\tpublic accepted: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.accepted ? 0x05 : 0x04]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNOPPowerOptions {\n\tpowerDampening: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.NOPPower)\nexport class ZWaveProtocolCCNOPPower extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNOPPowerOptions>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.powerDampening < 0 || options.powerDampening > 14) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`${this.constructor.name}: power dampening must be between 0 and 14 dBm!`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.powerDampening = options.powerDampening;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNOPPower {\n\t\tlet powerDampening;\n\n\t\tif (raw.payload.length >= 2) {\n\t\t\t// Ignore byte 0\n\t\t\tpowerDampening = raw.payload[1];\n\t\t} else if (raw.payload.length === 1) {\n\t\t\tpowerDampening = [\n\t\t\t\t0xf0,\n\t\t\t\t0xc8,\n\t\t\t\t0xa7,\n\t\t\t\t0x91,\n\t\t\t\t0x77,\n\t\t\t\t0x67,\n\t\t\t\t0x60,\n\t\t\t\t0x46,\n\t\t\t\t0x38,\n\t\t\t\t0x35,\n\t\t\t\t0x32,\n\t\t\t\t0x30,\n\t\t\t\t0x24,\n\t\t\t\t0x22,\n\t\t\t\t0x20,\n\t\t\t].indexOf(raw.payload[0]);\n\t\t\tif (powerDampening === -1) powerDampening = 0;\n\t\t} else {\n\t\t\tvalidatePayload.fail(\"Invalid payload length!\");\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tpowerDampening,\n\t\t});\n\t}\n\n\t// Power dampening in (negative) dBm. A value of 2 means -2 dBm.\n\tpublic powerDampening: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([0, this.powerDampening]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCReservedIDsOptions {\n\treservedNodeIDs: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.ReservedIDs)\nexport class ZWaveProtocolCCReservedIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCReservedIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.reservedNodeIDs = options.reservedNodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCReservedIDs {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst numNodeIDs = raw.payload[0];\n\t\tvalidatePayload(raw.payload.length >= 1 + numNodeIDs);\n\t\tconst reservedNodeIDs = [\n\t\t\t...raw.payload.subarray(1, 1 + numNodeIDs),\n\t\t];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\treservedNodeIDs,\n\t\t});\n\t}\n\n\tpublic reservedNodeIDs: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.reservedNodeIDs.length,\n\t\t\t...this.reservedNodeIDs,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCReserveNodeIDsOptions {\n\tnumNodeIDs: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.ReserveNodeIDs)\n@expectedCCResponse(ZWaveProtocolCCReservedIDs)\nexport class ZWaveProtocolCCReserveNodeIDs extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCReserveNodeIDsOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.numNodeIDs = options.numNodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCReserveNodeIDs {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst numNodeIDs = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnumNodeIDs,\n\t\t});\n\t}\n\n\tpublic numNodeIDs: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.numNodeIDs]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNodesExistReplyOptions {\n\tnodeMaskType: number;\n\tnodeListUpdated: boolean;\n}\n\n@CCCommand(ZWaveProtocolCommand.NodesExistReply)\nexport class ZWaveProtocolCCNodesExistReply extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodesExistReplyOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.nodeMaskType = options.nodeMaskType;\n\t\tthis.nodeListUpdated = options.nodeListUpdated;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodesExistReply {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst nodeMaskType = raw.payload[0];\n\t\tconst nodeListUpdated = raw.payload[1] === 0x01;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeMaskType,\n\t\t\tnodeListUpdated,\n\t\t});\n\t}\n\n\tpublic nodeMaskType: number;\n\tpublic nodeListUpdated: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.nodeMaskType,\n\t\t\tthis.nodeListUpdated ? 0x01 : 0x00,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\nfunction testResponseForZWaveProtocolNodesExist(\n\tsent: ZWaveProtocolCCNodesExist,\n\treceived: ZWaveProtocolCCNodesExistReply,\n) {\n\treturn received.nodeMaskType === sent.nodeMaskType;\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCNodesExistOptions {\n\tnodeMaskType: number;\n\tnodeIDs: number[];\n}\n\n@CCCommand(ZWaveProtocolCommand.NodesExist)\n@expectedCCResponse(\n\tZWaveProtocolCCNodesExistReply,\n\ttestResponseForZWaveProtocolNodesExist,\n)\nexport class ZWaveProtocolCCNodesExist extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCNodesExistOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.nodeMaskType = options.nodeMaskType;\n\t\tthis.nodeIDs = options.nodeIDs;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCNodesExist {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst nodeMaskType = raw.payload[0];\n\t\tconst numNodeIDs = raw.payload[1];\n\t\tvalidatePayload(raw.payload.length >= 2 + numNodeIDs);\n\t\tconst nodeIDs = [...raw.payload.subarray(2, 2 + numNodeIDs)];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnodeMaskType,\n\t\t\tnodeIDs,\n\t\t});\n\t}\n\n\tpublic nodeMaskType: number;\n\tpublic nodeIDs: number[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.nodeMaskType,\n\t\t\tthis.nodeIDs.length,\n\t\t\t...this.nodeIDs,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSetNWIModeOptions {\n\tenabled: boolean;\n\ttimeoutMinutes?: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.SetNWIMode)\nexport class ZWaveProtocolCCSetNWIMode extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCSetNWIModeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.enabled = options.enabled;\n\t\tthis.timeoutMinutes = options.timeoutMinutes;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSetNWIMode {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst enabled = raw.payload[0] === 0x01;\n\t\tconst timeoutMinutes: number | undefined = raw.payload[1] || undefined;\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tenabled,\n\t\t\ttimeoutMinutes,\n\t\t});\n\t}\n\n\tpublic enabled: boolean;\n\tpublic timeoutMinutes?: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.enabled ? 0x01 : 0x00,\n\t\t\tthis.timeoutMinutes ?? 0x00,\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.ExcludeRequest)\nexport class ZWaveProtocolCCExcludeRequest\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCAssignReturnRoutePriorityOptions {\n\ttargetNodeId: number;\n\trouteNumber: number;\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignReturnRoutePriority)\nexport class ZWaveProtocolCCAssignReturnRoutePriority extends ZWaveProtocolCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWaveProtocolCCAssignReturnRoutePriorityOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.targetNodeId = options.targetNodeId;\n\t\tthis.routeNumber = options.routeNumber;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCAssignReturnRoutePriority {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst targetNodeId = raw.payload[0];\n\t\tconst routeNumber = raw.payload[1];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttargetNodeId,\n\t\t\trouteNumber,\n\t\t});\n\t}\n\n\tpublic targetNodeId: number;\n\tpublic routeNumber: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.targetNodeId, this.routeNumber]);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.AssignSUCReturnRoutePriority)\nexport class ZWaveProtocolCCAssignSUCReturnRoutePriority\n\textends ZWaveProtocolCCAssignReturnRoutePriority\n{}\n\n// @publicAPI\nexport interface ZWaveProtocolCCSmartStartIncludedNodeInformationOptions {\n\tnwiHomeId: Uint8Array;\n}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartIncludedNodeInformation)\nexport class ZWaveProtocolCCSmartStartIncludedNodeInformation\n\textends ZWaveProtocolCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tZWaveProtocolCCSmartStartIncludedNodeInformationOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\t\tif (options.nwiHomeId.length !== 4) {\n\t\t\tthrow new ZWaveError(\n\t\t\t\t`nwiHomeId must have length 4`,\n\t\t\t\tZWaveErrorCodes.Argument_Invalid,\n\t\t\t);\n\t\t}\n\t\tthis.nwiHomeId = options.nwiHomeId;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): ZWaveProtocolCCSmartStartIncludedNodeInformation {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst nwiHomeId = raw.payload.subarray(0, 4);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tnwiHomeId,\n\t\t});\n\t}\n\n\tpublic nwiHomeId: Uint8Array;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from(this.nwiHomeId);\n\t\treturn super.serialize(ctx);\n\t}\n}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartPrime)\nexport class ZWaveProtocolCCSmartStartPrime\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n\n@CCCommand(ZWaveProtocolCommand.SmartStartInclusionRequest)\nexport class ZWaveProtocolCCSmartStartInclusionRequest\n\textends ZWaveProtocolCCNodeInformationFrame\n{}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["DataRateBitmask"]
|
|
7
7
|
}
|
|
@@ -733,6 +733,7 @@ export declare const BatteryCCValues: Readonly<{
|
|
|
733
733
|
is: (valueId: ValueID) => boolean;
|
|
734
734
|
readonly meta: {
|
|
735
735
|
readonly label: "Temperature";
|
|
736
|
+
readonly unit: "°C";
|
|
736
737
|
readonly writeable: false;
|
|
737
738
|
readonly min: -128;
|
|
738
739
|
readonly max: 127;
|
|
@@ -8642,6 +8643,7 @@ export declare const CCValues: {
|
|
|
8642
8643
|
is: (valueId: ValueID) => boolean;
|
|
8643
8644
|
readonly meta: {
|
|
8644
8645
|
readonly label: "Temperature";
|
|
8646
|
+
readonly unit: "°C";
|
|
8645
8647
|
readonly writeable: false;
|
|
8646
8648
|
readonly min: -128;
|
|
8647
8649
|
readonly max: 127;
|
|
@@ -73,9 +73,7 @@ __export(CCValues_generated_exports, {
|
|
|
73
73
|
});
|
|
74
74
|
module.exports = __toCommonJS(CCValues_generated_exports);
|
|
75
75
|
var import_core = require("@zwave-js/core");
|
|
76
|
-
var import_safe = require("@zwave-js/core/safe");
|
|
77
76
|
var import_shared = require("@zwave-js/shared");
|
|
78
|
-
var import_safe2 = require("@zwave-js/shared/safe");
|
|
79
77
|
var import_CCValueUtils = require("../lib/CCValueUtils.js");
|
|
80
78
|
var import_Types = require("../lib/_Types.js");
|
|
81
79
|
const AlarmSensorCCValues = Object.freeze({
|
|
@@ -534,7 +532,7 @@ const BarrierOperatorCCValues = Object.freeze({
|
|
|
534
532
|
return {
|
|
535
533
|
...import_core.ValueMetadata.UInt8,
|
|
536
534
|
label: "Target Barrier State",
|
|
537
|
-
states: (0,
|
|
535
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.BarrierState, [
|
|
538
536
|
import_Types.BarrierState.Open,
|
|
539
537
|
import_Types.BarrierState.Closed
|
|
540
538
|
])
|
|
@@ -566,7 +564,7 @@ const BarrierOperatorCCValues = Object.freeze({
|
|
|
566
564
|
return {
|
|
567
565
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
568
566
|
label: "Current Barrier State",
|
|
569
|
-
states: (0,
|
|
567
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.BarrierState)
|
|
570
568
|
};
|
|
571
569
|
},
|
|
572
570
|
options: {
|
|
@@ -597,7 +595,7 @@ const BarrierOperatorCCValues = Object.freeze({
|
|
|
597
595
|
return {
|
|
598
596
|
...import_core.ValueMetadata.UInt8,
|
|
599
597
|
label: `Signaling State (${(0, import_shared.getEnumMemberName)(import_Types.SubsystemType, subsystemType)})`,
|
|
600
|
-
states: (0,
|
|
598
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.SubsystemState)
|
|
601
599
|
};
|
|
602
600
|
}
|
|
603
601
|
};
|
|
@@ -865,7 +863,10 @@ const BatteryCCValues = Object.freeze({
|
|
|
865
863
|
get meta() {
|
|
866
864
|
return {
|
|
867
865
|
...import_core.ValueMetadata.ReadOnlyInt8,
|
|
868
|
-
label: "Temperature"
|
|
866
|
+
label: "Temperature",
|
|
867
|
+
// For now, only °C is specified as a valid unit
|
|
868
|
+
// If this ever changes, update the unit in persistValues on the fly
|
|
869
|
+
unit: "\xB0C"
|
|
869
870
|
};
|
|
870
871
|
},
|
|
871
872
|
options: {
|
|
@@ -894,7 +895,7 @@ const BatteryCCValues = Object.freeze({
|
|
|
894
895
|
return {
|
|
895
896
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
896
897
|
label: "Charging status",
|
|
897
|
-
states: (0,
|
|
898
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.BatteryChargingStatus)
|
|
898
899
|
};
|
|
899
900
|
},
|
|
900
901
|
options: {
|
|
@@ -1035,7 +1036,7 @@ const BatteryCCValues = Object.freeze({
|
|
|
1035
1036
|
return {
|
|
1036
1037
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
1037
1038
|
label: "Recharge or replace",
|
|
1038
|
-
states: (0,
|
|
1039
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.BatteryReplacementStatus)
|
|
1039
1040
|
};
|
|
1040
1041
|
},
|
|
1041
1042
|
options: {
|
|
@@ -1410,7 +1411,7 @@ const ClimateControlScheduleCCValues = Object.freeze({
|
|
|
1410
1411
|
return {
|
|
1411
1412
|
...import_core.ValueMetadata.Number,
|
|
1412
1413
|
label: "Override type",
|
|
1413
|
-
states: (0,
|
|
1414
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.ScheduleOverrideType)
|
|
1414
1415
|
};
|
|
1415
1416
|
},
|
|
1416
1417
|
options: {
|
|
@@ -1809,7 +1810,7 @@ const DoorLockCCValues = Object.freeze({
|
|
|
1809
1810
|
return {
|
|
1810
1811
|
...import_core.ValueMetadata.UInt8,
|
|
1811
1812
|
label: "Target lock mode",
|
|
1812
|
-
states: (0,
|
|
1813
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.DoorLockMode)
|
|
1813
1814
|
};
|
|
1814
1815
|
},
|
|
1815
1816
|
options: {
|
|
@@ -1838,7 +1839,7 @@ const DoorLockCCValues = Object.freeze({
|
|
|
1838
1839
|
return {
|
|
1839
1840
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
1840
1841
|
label: "Current lock mode",
|
|
1841
|
-
states: (0,
|
|
1842
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.DoorLockMode)
|
|
1842
1843
|
};
|
|
1843
1844
|
},
|
|
1844
1845
|
options: {
|
|
@@ -2057,7 +2058,7 @@ const DoorLockCCValues = Object.freeze({
|
|
|
2057
2058
|
return {
|
|
2058
2059
|
...import_core.ValueMetadata.UInt8,
|
|
2059
2060
|
label: "Lock operation type",
|
|
2060
|
-
states: (0,
|
|
2061
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.DoorLockOperationType)
|
|
2061
2062
|
};
|
|
2062
2063
|
},
|
|
2063
2064
|
options: {
|
|
@@ -2920,7 +2921,7 @@ const HumidityControlModeCCValues = Object.freeze({
|
|
|
2920
2921
|
get meta() {
|
|
2921
2922
|
return {
|
|
2922
2923
|
...import_core.ValueMetadata.UInt8,
|
|
2923
|
-
states: (0,
|
|
2924
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.HumidityControlMode),
|
|
2924
2925
|
label: "Humidity control mode"
|
|
2925
2926
|
};
|
|
2926
2927
|
},
|
|
@@ -2976,7 +2977,7 @@ const HumidityControlOperatingStateCCValues = Object.freeze({
|
|
|
2976
2977
|
get meta() {
|
|
2977
2978
|
return {
|
|
2978
2979
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
2979
|
-
states: (0,
|
|
2980
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.HumidityControlOperatingState),
|
|
2980
2981
|
label: "Humidity control operating state"
|
|
2981
2982
|
};
|
|
2982
2983
|
},
|
|
@@ -3568,7 +3569,7 @@ const IrrigationCCValues = Object.freeze({
|
|
|
3568
3569
|
label: "Rain sensor polarity",
|
|
3569
3570
|
min: 0,
|
|
3570
3571
|
max: 1,
|
|
3571
|
-
states: (0,
|
|
3572
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.IrrigationSensorPolarity)
|
|
3572
3573
|
};
|
|
3573
3574
|
},
|
|
3574
3575
|
options: {
|
|
@@ -3627,7 +3628,7 @@ const IrrigationCCValues = Object.freeze({
|
|
|
3627
3628
|
label: "Moisture sensor polarity",
|
|
3628
3629
|
min: 0,
|
|
3629
3630
|
max: 1,
|
|
3630
|
-
states: (0,
|
|
3631
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.IrrigationSensorPolarity)
|
|
3631
3632
|
};
|
|
3632
3633
|
},
|
|
3633
3634
|
options: {
|
|
@@ -4991,7 +4992,7 @@ const MeterCCValues = Object.freeze({
|
|
|
4991
4992
|
...import_core.ValueMetadata.WriteOnlyBoolean,
|
|
4992
4993
|
// This is only a placeholder label. A config manager is needed to
|
|
4993
4994
|
// determine the actual label.
|
|
4994
|
-
label: `Reset (${rateType === import_Types.RateType.Consumed ? "Consumption, " : rateType === import_Types.RateType.Produced ? "Production, " : ""}${(0,
|
|
4995
|
+
label: `Reset (${rateType === import_Types.RateType.Consumed ? "Consumption, " : rateType === import_Types.RateType.Produced ? "Production, " : ""}${(0, import_shared.num2hex)(scale)})`,
|
|
4995
4996
|
states: {
|
|
4996
4997
|
true: "Reset"
|
|
4997
4998
|
},
|
|
@@ -6105,7 +6106,7 @@ const NotificationCCValues = Object.freeze({
|
|
|
6105
6106
|
}
|
|
6106
6107
|
}),
|
|
6107
6108
|
unknownNotificationType: Object.assign((notificationType) => {
|
|
6108
|
-
const property = `UNKNOWN_${(0,
|
|
6109
|
+
const property = `UNKNOWN_${(0, import_shared.num2hex)(notificationType)}`;
|
|
6109
6110
|
return {
|
|
6110
6111
|
id: {
|
|
6111
6112
|
commandClass: import_core.CommandClasses.Notification,
|
|
@@ -6119,7 +6120,7 @@ const NotificationCCValues = Object.freeze({
|
|
|
6119
6120
|
get meta() {
|
|
6120
6121
|
return {
|
|
6121
6122
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
6122
|
-
label: `Unknown notification (${(0,
|
|
6123
|
+
label: `Unknown notification (${(0, import_shared.num2hex)(notificationType)})`,
|
|
6123
6124
|
ccSpecific: { notificationType }
|
|
6124
6125
|
};
|
|
6125
6126
|
}
|
|
@@ -6243,7 +6244,7 @@ const ProtectionCCValues = Object.freeze({
|
|
|
6243
6244
|
return {
|
|
6244
6245
|
...import_core.ValueMetadata.UInt8,
|
|
6245
6246
|
min: 1,
|
|
6246
|
-
max:
|
|
6247
|
+
max: import_core.MAX_NODES,
|
|
6247
6248
|
label: "Node ID with exclusive control"
|
|
6248
6249
|
};
|
|
6249
6250
|
},
|
|
@@ -6273,7 +6274,7 @@ const ProtectionCCValues = Object.freeze({
|
|
|
6273
6274
|
return {
|
|
6274
6275
|
...import_core.ValueMetadata.Number,
|
|
6275
6276
|
label: "Local protection state",
|
|
6276
|
-
states: (0,
|
|
6277
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.LocalProtectionState)
|
|
6277
6278
|
};
|
|
6278
6279
|
},
|
|
6279
6280
|
options: {
|
|
@@ -6302,7 +6303,7 @@ const ProtectionCCValues = Object.freeze({
|
|
|
6302
6303
|
return {
|
|
6303
6304
|
...import_core.ValueMetadata.Number,
|
|
6304
6305
|
label: "RF protection state",
|
|
6305
|
-
states: (0,
|
|
6306
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.RFProtectionState)
|
|
6306
6307
|
};
|
|
6307
6308
|
},
|
|
6308
6309
|
options: {
|
|
@@ -7029,7 +7030,7 @@ const ThermostatFanModeCCValues = Object.freeze({
|
|
|
7029
7030
|
get meta() {
|
|
7030
7031
|
return {
|
|
7031
7032
|
...import_core.ValueMetadata.UInt8,
|
|
7032
|
-
states: (0,
|
|
7033
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.ThermostatFanMode),
|
|
7033
7034
|
label: "Thermostat fan mode"
|
|
7034
7035
|
};
|
|
7035
7036
|
},
|
|
@@ -7085,7 +7086,7 @@ const ThermostatFanStateCCValues = Object.freeze({
|
|
|
7085
7086
|
get meta() {
|
|
7086
7087
|
return {
|
|
7087
7088
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
7088
|
-
states: (0,
|
|
7089
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.ThermostatFanState),
|
|
7089
7090
|
label: "Thermostat fan state"
|
|
7090
7091
|
};
|
|
7091
7092
|
},
|
|
@@ -7116,7 +7117,7 @@ const ThermostatModeCCValues = Object.freeze({
|
|
|
7116
7117
|
get meta() {
|
|
7117
7118
|
return {
|
|
7118
7119
|
...import_core.ValueMetadata.UInt8,
|
|
7119
|
-
states: (0,
|
|
7120
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.ThermostatMode),
|
|
7120
7121
|
label: "Thermostat mode"
|
|
7121
7122
|
};
|
|
7122
7123
|
},
|
|
@@ -7201,7 +7202,7 @@ const ThermostatOperatingStateCCValues = Object.freeze({
|
|
|
7201
7202
|
return {
|
|
7202
7203
|
...import_core.ValueMetadata.ReadOnlyUInt8,
|
|
7203
7204
|
label: "Operating state",
|
|
7204
|
-
states: (0,
|
|
7205
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_Types.ThermostatOperatingState)
|
|
7205
7206
|
};
|
|
7206
7207
|
},
|
|
7207
7208
|
options: {
|
|
@@ -7815,7 +7816,7 @@ const VersionCCValues = Object.freeze({
|
|
|
7815
7816
|
return {
|
|
7816
7817
|
...import_core.ValueMetadata.ReadOnlyNumber,
|
|
7817
7818
|
label: "Library type",
|
|
7818
|
-
states: (0,
|
|
7819
|
+
states: (0, import_core.enumValuesToMetadataStates)(import_core.ZWaveLibraryTypes)
|
|
7819
7820
|
};
|
|
7820
7821
|
},
|
|
7821
7822
|
options: {
|