@pietrolubini/homebridge-ecoflow
Version:
Homebridge plugin for EcoFlow devices
58 lines (57 loc) • 2.22 kB
TypeScript
import { CoolModeType, TemperatureType } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
import { MqttQuotaMessage, MqttQuotaMessageWithParams, MqttSetMessage, MqttSetMessageWithParams, MqttSetReplyMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
import { EnableType } from '@ecoflow/characteristics/characteristicContracts';
export declare enum GlacierMqttSetModuleType {
Default = 1
}
export declare enum GlacierMqttMessageType {
PD = "pdStatus",
BMS = "bmsStatus",
EMS = "emsStatus"
}
export interface GlacierMqttQuotaMessage extends MqttQuotaMessage {
typeCode: GlacierMqttMessageType;
}
export interface GlacierMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithParams<TParams>, GlacierMqttQuotaMessage {
}
export declare enum GlacierMqttSetOperateType {
Temperature = "temp",
TemperatureUnit = "tmpUnit",
EcoMode = "ecoMode",
MakeIce = "iceMake",
DetachIce = "deIce"
}
export interface GlacierMqttSetMessage extends MqttSetMessage {
moduleType: GlacierMqttSetModuleType;
operateType: GlacierMqttSetOperateType;
}
export interface GlacierMqttSetMessageParams {
}
export interface GlacierMqttSetMessageWithParams<TParams extends GlacierMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, GlacierMqttSetMessage {
}
export interface GlacierMqttSetTemperatureMessageParams extends GlacierMqttSetMessageParams {
tmpR?: number;
tmpL?: number;
tmpM?: number;
}
export interface GlacierMqttSetTemperatureUnitMessageParams extends GlacierMqttSetMessageParams {
unit: TemperatureType;
}
export interface GlacierMqttSetEcoModeMessageParams extends GlacierMqttSetMessageParams {
mode: CoolModeType;
}
export declare enum IceCubeShapeType {
Small = 0,
Large = 1
}
export interface GlacierMqttSetMakeIceMessageParams extends GlacierMqttSetMessageParams {
enable: EnableType;
iceShape: IceCubeShapeType;
}
export interface GlacierMqttSetDetachIceMessageParams extends GlacierMqttSetMessageParams {
enable: EnableType;
}
export interface GlacierMqttSetReplyMessage extends MqttSetReplyMessage {
moduleType: GlacierMqttSetModuleType;
operateType: GlacierMqttSetOperateType;
}