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.
16 lines • 701 B
TypeScript
import { AnsiLogger } from 'matterbridge/logger';
import { CheckerT } from 'ts-interface-checker';
import { DysonMsg } from './dyson-types.js';
export type DysonMsgAny<T> = {
[K in keyof T]: T[K] extends DysonMsg ? T[K] : never;
}[keyof T];
export type DysonMsgTypeName<T> = Extract<keyof T, string>;
export type DysonMsgCheckers<T> = {
[K in DysonMsgTypeName<T>]: CheckerT<T[K]>;
};
export interface DysonMqttParserConfig<T> {
prefix: string;
checkers: DysonMsgCheckers<T>;
}
export declare function dysonMqttParse<T>(log: AnsiLogger, config: DysonMqttParserConfig<T>, topic: string, normalise: boolean, payload: Buffer): DysonMsgAny<T>;
//# sourceMappingURL=dyson-mqtt-parse.d.ts.map