UNPKG

homebridge-aeg-robot

Version:

AEG RX9 / Electrolux Pure i9 robot vacuum plugin for Homebridge

192 lines 5.85 kB
/** * This module was automatically generated by `ts-interface-builder` */ import * as t from "ts-interface-checker"; // tslint:disable:object-literal-key-quotes export const WeekdayLC = t.union(t.lit('monday'), t.lit('tuesday'), t.lit('wednesday'), t.lit('thursday'), t.lit('friday'), t.lit('saturday'), t.lit('sunday')); export const RX92PowerMode = t.enumtype({ "Quiet": 1, "Smart": 2, "Power": 3, }); export const RX9BatteryStatus = t.enumtype({ "Dead": 1, "CriticalLow": 2, "Low": 3, "Medium": 4, "High": 5, "FullyCharged": 6, }); export const RX9RobotStatus = t.enumtype({ "Cleaning": 1, "PausedCleaning": 2, "SpotCleaning": 3, "PausedSpotCleaning": 4, "Return": 5, "PausedReturn": 6, "ReturnForPitstop": 7, "PausedReturnForPitstop": 8, "Charging": 9, "Sleeping": 10, "Error": 11, "Pitstop": 12, "ManualSteering": 13, "FirmwareUpgrade": 14, }); export const RX9Dustbin = t.enumtype({ "Unknown": "notConnected", "Present": "connected", "Missing": "empty", "Full": "full", }); export const RX9Capabilities = t.union(t.lit('EcoMode'), t.lit('PowerLevels'), t.lit('CustomPlay'), t.lit('FreezeMapOnDemand'), t.lit('InteractiveMap'), t.lit('MultipleScheduledCleaningsPerDay'), t.lit('PowerZones')); export const RX9CleaningCommand = t.union(t.lit('play'), t.lit('stop'), t.lit('pause'), t.lit('home')); export const RX92Zone = t.iface([], { "powerMode": "RX92PowerMode", }); export const RX92Task = t.iface([], { "enabled": "boolean", "start": t.iface([], { "weekDays": t.array("WeekdayLC"), "time": "string", "properties": t.iface([], { "zones": t.array("RX92Zone"), }), }), }); export const RX92Tasks = t.iface([], { [t.indexKey]: "RX92Task", }); export const RX9NoTriggers = t.iface([], { [t.indexKey]: "never", }); export const RX9ApplianceCapabilities = t.iface([], { "CleaningCommand": t.iface([], { "access": t.lit('readwrite'), "type": t.lit('string'), "values": t.iface([], { "play": "RX9NoTriggers", "stop": "RX9NoTriggers", "pause": "RX9NoTriggers", "home": "RX9NoTriggers", }), }), "robotStatus": t.iface([], { "access": t.lit('read'), "type": "string", "values": t.iface([], { "1": "RX9NoTriggers", "2": "RX9NoTriggers", "3": "RX9NoTriggers", "4": "RX9NoTriggers", "5": "RX9NoTriggers", "6": "RX9NoTriggers", "7": "RX9NoTriggers", "8": "RX9NoTriggers", "9": "RX9NoTriggers", "10": "RX9NoTriggers", "11": "RX9NoTriggers", "12": "RX9NoTriggers", "13": "RX9NoTriggers", "14": "RX9NoTriggers", }), }), "dustbinStatus": t.opt(t.iface([], { "access": t.lit('read'), "type": t.lit('string'), "values": t.iface([], { "NOTCONNECTED": "RX9NoTriggers", "CONNECTED": "RX9NoTriggers", "EMPTY": "RX9NoTriggers", "FULL": "RX9NoTriggers", }), })), "batteryStatus": t.opt(t.iface([], { "access": t.lit('read'), "type": t.lit('int'), "max": t.lit(6), "min": t.lit(1), })), "powerMode": t.opt(t.iface([], { "access": t.lit('read'), "type": t.lit('int'), "min": t.lit(1), "max": t.lit(3), })), }); export const RX9ApplianceInfo = t.iface([], { "applianceInfo": "ApplianceInfoDTO", "capabilities": "RX9ApplianceCapabilities", }); export const RX9Message = t.iface([], { "id": "number", "timestamp": "number", "type": "number", "userErrorID": t.opt("number"), "internalErrorID": t.opt("number"), "text": "string", }); export const RX9CapabilitiesObject = t.iface([], { [t.indexKey]: "object", }); export const RX9ApplianceStateReportedBase = t.iface([], { "availableLanguages": t.array("string"), "capabilities": "RX9CapabilitiesObject", "batteryStatus": "RX9BatteryStatus", "robotStatus": "RX9RobotStatus", "messageList": t.iface([], { "messages": t.array("RX9Message"), }), "dustbinStatus": "RX9Dustbin", "platform": "string", "applianceName": "string", "firmwareVersion": "string", "language": "string", "mute": "boolean", }); export const RX91ApplianceStateReported = t.iface(["RX9ApplianceStateReportedBase"], { "ecoMode": "boolean", }); export const RX92ApplianceStateReported = t.iface(["RX9ApplianceStateReportedBase"], { "powerMode": "RX92PowerMode", "tasks": t.opt("RX92Tasks"), }); export const RX9ApplianceStateReported = t.union("RX91ApplianceStateReported", "RX92ApplianceStateReported"); export const RX9ApplianceStateProperties = t.iface([], { "reported": "RX9ApplianceStateReported", }); export const RX9ApplianceState = t.iface([], { "applianceId": "ApplianceId", "connectionState": "ConnectionState", "status": "ApplianceStatus", "properties": "RX9ApplianceStateProperties", }); export const RX9Command = t.iface([], { "CleaningCommand": "RX9CleaningCommand", }); const exportedTypeSuite = { WeekdayLC, RX92PowerMode, RX9BatteryStatus, RX9RobotStatus, RX9Dustbin, RX9Capabilities, RX9CleaningCommand, RX92Zone, RX92Task, RX92Tasks, RX9NoTriggers, RX9ApplianceCapabilities, RX9ApplianceInfo, RX9Message, RX9CapabilitiesObject, RX9ApplianceStateReportedBase, RX91ApplianceStateReported, RX92ApplianceStateReported, RX9ApplianceStateReported, RX9ApplianceStateProperties, RX9ApplianceState, RX9Command, }; export default exportedTypeSuite; //# sourceMappingURL=aegapi-rx9-types-ti.js.map