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.
35 lines • 1.83 kB
TypeScript
import { PowerSource, RvcOperationalState } from 'matterbridge/matter/clusters';
import { AnsiLogger } from 'matterbridge/logger';
import { Config } from './config-types.js';
import { BatteryPowerSourceOptions, RvcCleanModeOptions } from './endpoint-360-rvc.js';
import { EndpointBase, EndpointOptionsBase } from './endpoint-base.js';
import { BehaviorDevice360, EndpointCommands360, RvcCleanMode360, RvcRunMode360 } from './endpoint-360-behavior.js';
export interface EndpointOptions360 extends EndpointOptionsBase {
powerSource: BatteryPowerSourceOptions;
rvcCleanMode: RvcCleanModeOptions;
}
export interface UpdatePowerSource360 {
activeBatChargeFaults: PowerSource.BatChargeFault[];
activeBatFaults: PowerSource.BatFault[];
batChargeLevel: PowerSource.BatChargeLevel;
batChargeState: PowerSource.BatChargeState;
batPercentRemaining: number;
status: PowerSource.PowerSourceStatus;
}
export interface UpdateRvcOperationalState360 {
isActive: boolean;
operationalError: RvcOperationalState.ErrorStateStruct;
operationalState: RvcOperationalState.OperationalState;
}
export declare class Endpoint360 extends EndpointBase {
readonly options: EndpointOptions360;
readonly behaviorDevice360: BehaviorDevice360;
startActive: number;
constructor(log: AnsiLogger, config: Config, options: EndpointOptions360);
setCommandHandler360<Command extends keyof EndpointCommands360>(command: Command, handler: EndpointCommands360[Command]): this;
updatePowerSource(attributes: UpdatePowerSource360): Promise<void>;
updateRvcRunMode(runMode: RvcRunMode360): Promise<void>;
updateRvcCleanMode(cleanMode: RvcCleanMode360): Promise<void>;
updateRvcOperationalState(attributes: UpdateRvcOperationalState360): Promise<void>;
}
//# sourceMappingURL=endpoint-360.d.ts.map