matterbridge-dyson-robot
Version:
A Matterbridge plugin that connects Dyson robot vacuums and air treatment devices to the Matter smart home ecosystem via their local or cloud MQTT APIs.
128 lines • 4.41 kB
JavaScript
/**
* This module was automatically generated by `ts-interface-builder`
*/
import * as t from "ts-interface-checker";
// tslint:disable:object-literal-key-quotes
export const DysonAirMsgHello = t.iface(["DysonMsg"], {
"msg": t.lit('HELLO'),
"model": "string",
"version": "string",
"protocol": "string",
"serialNumber": "string",
"macAddress": "string",
"moduleHardware": "string",
"moduleBootloader": "string",
"moduleSoftware": "string",
"moduleNwp": "string",
"productHardware": "string",
"productBootloader": "string",
"productSoftware": "string",
"resetSource": "DysonAirResetSource",
});
export const DysonAirMsgGoneAway = t.iface(["DysonMsg"], {
"msg": t.lit('GONE-AWAY'),
});
export const DysonAirMsgGoodbye = t.iface(["DysonMsg"], {
"msg": t.lit('GOODBYE'),
"reason": t.lit('UNKNOWN'),
});
export const DysonAirMsgCurrentState = t.iface(["DysonMsg"], {
"msg": t.lit('CURRENT-STATE'),
"modeReason": "DysonModeReason",
"stateReason": "DysonStateReason",
"dial": t.opt("string"),
"rssi": t.opt("string"),
"channel": t.opt("string"),
"fghp": t.opt("string"),
"fqhp": t.opt("string"),
"productState": "DysonAirProductState",
"scheduler": "DysonAirScheduler",
});
export const DysonAirMsgStateChange = t.iface(["DysonMsg"], {
"msg": t.lit('STATE-CHANGE'),
"modeReason": "DysonModeReason",
"stateReason": "DysonStateReason",
"productState": "DysonAirProductStateChange",
"scheduler": "DysonAirScheduler",
});
export const DysonAirMsgEnvironmentalCurrentSensorData = t.iface(["DysonMsg"], {
"msg": t.lit('ENVIRONMENTAL-CURRENT-SENSOR-DATA'),
"data": "DysonAirCurrentSensorData",
});
export const DysonAirMsgEnvironmentalAndUsageData = t.iface(["DysonMsg"], {
"msg": t.lit('ENVIRONMENTAL-AND-USAGE-DATA'),
"data": "DysonAirEnvironmentalUsageData",
});
export const DysonAirMsgCurrentFaults = t.iface(["DysonMsg"], {
"msg": t.lit('CURRENT-FAULTS'),
"productErrors": t.iface([], {
[]: "DysonAirFaultStatus",
}),
"productWarnings": t.iface([], {
[]: "DysonAirFaultStatus",
}),
"moduleErrors": t.iface([], {
[]: "DysonAirFaultStatus",
}),
"moduleWarnings": t.iface([], {
[]: "DysonAirFaultStatus",
}),
});
export const DysonAirMsgFaultsChange = t.iface(["DysonMsg"], {
"msg": t.lit('FAULTS-CHANGE'),
"productErrors": t.iface([], {
[]: "DysonAirFaultChange",
}),
"productWarnings": t.iface([], {
[]: "DysonAirFaultChange",
}),
"moduleErrors": t.iface([], {
[]: "DysonAirFaultChange",
}),
"moduleWarnings": t.iface([], {
[]: "DysonAirFaultChange",
}),
});
export const DysonAirMsgRequestCurrentFaults = t.iface(["DysonMsg"], {
"msg": t.lit('REQUEST-CURRENT-FAULTS'),
"mode-reason": t.opt("DysonModeReason"),
});
export const DysonAirMsgRequestCurrentState = t.iface(["DysonMsg"], {
"msg": t.lit('REQUEST-CURRENT-STATE'),
"mode-reason": t.opt("DysonModeReason"),
});
export const DysonAirMsgRequestProductEnvironmentCurrentSensorData = t.iface(["DysonMsg"], {
"msg": t.lit('REQUEST-PRODUCT-ENVIRONMENT-CURRENT-SENSOR-DATA'),
"mode-reason": t.opt("DysonModeReason"),
});
export const DysonAirMsgStateSet = t.iface(["DysonMsg"], {
"msg": t.lit('STATE-SET'),
"mode-reason": t.opt("DysonModeReason"),
"data": t.intersection("DysonAirProductState", t.iface([], {
"rstf": t.opt("DysonAirResetFilterLife"),
"rhtf": t.opt("DysonAirResetHEPAFilterLife"),
"sltm": t.opt("DysonAirSleepTimer"),
})),
});
export const DysonAirMsgScheduleSet = t.iface(["DysonMsg"], {
"msg": t.lit('SCHEDULE-SET'),
"version": "string",
});
const exportedTypeSuite = {
DysonAirMsgHello,
DysonAirMsgGoneAway,
DysonAirMsgGoodbye,
DysonAirMsgCurrentState,
DysonAirMsgStateChange,
DysonAirMsgEnvironmentalCurrentSensorData,
DysonAirMsgEnvironmentalAndUsageData,
DysonAirMsgCurrentFaults,
DysonAirMsgFaultsChange,
DysonAirMsgRequestCurrentFaults,
DysonAirMsgRequestCurrentState,
DysonAirMsgRequestProductEnvironmentCurrentSensorData,
DysonAirMsgStateSet,
DysonAirMsgScheduleSet,
};
export default exportedTypeSuite;
//# sourceMappingURL=dyson-air-msg-types-ti.js.map