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.
103 lines • 2.86 kB
TypeScript
export type DysonSupportedMarketResponse = string[];
export declare enum DysonAppPlatform {
iOS = "ios",
Android = "Android"
}
export type DysonVersionResponse = string;
export interface DysonEmailUserStatusRequest {
email: string;
}
export declare enum DysonAccountStatus {
Unregistered = "UNREGISTERED",
Active = "ACTIVE"
}
export interface DysonEmailUserStatusResponse {
accountStatus: DysonAccountStatus;
authenticationMethod: 'EMAIL_PWD_2FA';
}
export interface DysonEmailAuthRequest {
email: string;
}
export interface DysonEmailAuthResponse {
challengeId: string;
}
export interface DysonEmailVerifyRequest {
challengeId: string;
email: string;
otpCode: string;
password: string;
}
export interface DysonEmailVerifyResponse {
account: string;
token: string;
tokenType: 'Bearer';
}
export declare enum DysonManifestCategory {
AirTreatment = "ec",
FloorCare = "flrc",
HairCare = "hc",
Light = "light",
RobotVacuum = "robot",
Wearable = "wearable"
}
export declare enum DysonManifestCapability {
AdvanceOscillation = "AdvanceOscillationDay1",
ChangeWiFi = "ChangeWifi",
EnvironmentalData = "EnvironmentalData",
ExtendedAQ = "ExtendedAQ",
Scheduling = "Scheduling",
MidCleanConfiguration = "MidCleanConfiguration"
}
export interface DysonManifestFirmware {
autoUpdateEnabled: boolean;
newVersionAvailable: boolean;
minimumAppVersion: string | null;
capabilities: DysonManifestCapability[] | null;
version: string;
}
export interface DysonManifestMQTT {
localBrokerCredentials: string;
mqttRootTopicLevel: string;
remoteBrokerType: 'wss';
}
export interface DysonManifestConnectedConfiguration {
firmware: DysonManifestFirmware;
mqtt: DysonManifestMQTT;
}
export declare enum DysonManifestConnectionCategory {
BTWiFi = "lecAndWifi",
BT = "lecOnly",
NotConnected = "nonConnected",
WiFi = "wifiOnly"
}
export interface DysonManifestDevice {
category: DysonManifestCategory;
connectedConfiguration: DysonManifestConnectedConfiguration;
connectionCategory: DysonManifestConnectionCategory;
model: string;
name: string;
productName: string;
serialNumber: string;
type: string;
variant: string | null;
}
export type DysonManifestResponse = DysonManifestDevice[];
export interface DysonLocalBrokerCredentials {
serial: string;
apPasswordHash: string;
}
export interface DysonIoTCredentialsRequest {
Serial: string;
}
export interface DysonIoTCredentials {
ClientId: string;
CustomAuthorizerName: string;
TokenKey: 'token';
TokenSignature: string;
TokenValue: string;
}
export interface DysonIoTCredentialsResponse {
Endpoint: string;
IoTCredentials: DysonIoTCredentials;
}
//# sourceMappingURL=dyson-cloud-types.d.ts.map