@shadman-a/homebridge-my-ac
Version:
A Homebridge plugin for controlling/monitoring LG ThinQ devices via LG ThinQ platform.
51 lines (50 loc) • 2.18 kB
TypeScript
import { LGThinQHomebridgePlatform } from '../platform.js';
import { CharacteristicValue, Logger, PlatformAccessory, Service } from 'homebridge';
import { Device } from '../lib/Device.js';
import { AccessoryContext, BaseDevice } from '../baseDevice.js';
import { DeviceModel } from '../lib/DeviceModel.js';
export default class Refrigerator extends BaseDevice {
readonly platform: LGThinQHomebridgePlatform;
readonly accessory: PlatformAccessory<AccessoryContext>;
protected serviceFreezer: Service | undefined;
protected serviceFridge: Service | undefined;
protected serviceDoorOpened: Service | undefined;
protected serviceExpressMode: Service | undefined;
protected serviceExpressFridge: Service | undefined;
protected serviceEcoFriendly: Service | undefined;
protected serviceWaterFilter: Service | undefined;
constructor(platform: LGThinQHomebridgePlatform, accessory: PlatformAccessory<AccessoryContext>, logger: Logger);
get config(): {
ref_express_freezer: boolean;
ref_express_fridge: boolean;
ref_eco_friendly: boolean;
} & Record<string, any>;
get Status(): RefrigeratorStatus;
/**
* update accessory characteristic by device
*/
updateAccessoryCharacteristic(device: Device): void;
setExpressMode(value: CharacteristicValue): Promise<void>;
setExpressFridge(value: CharacteristicValue): Promise<void>;
setEcoFriendly(value: CharacteristicValue): Promise<void>;
tempUnit(): Promise<0 | 1>;
/**
* create a thermostat service
*/
protected createThermostat(name: string, key: string): Service | undefined;
setTemperature(key: string, temp: string): Promise<void>;
}
export declare class RefrigeratorStatus {
protected data: any;
protected deviceModel: DeviceModel;
constructor(data: any, deviceModel: DeviceModel);
get freezerTemperature(): number;
get fridgeTemperature(): number;
get isDoorClosed(): boolean;
get isExpressModeOn(): boolean;
get isExpressFridgeOn(): boolean;
get isEcoFriendlyOn(): boolean;
get tempUnit(): any;
get waterFilterRemain(): any;
hasFeature(key: string): boolean;
}