@pietrolubini/homebridge-ecoflow
Version:
Homebridge plugin for EcoFlow devices
33 lines (32 loc) • 2.01 kB
TypeScript
import { Delta2Configuration } from '@ecoflow/accessories/batteries/delta2/interfaces/delta2Configuration';
import { Delta2AllQuotaData } from '@ecoflow/accessories/batteries/delta2/interfaces/delta2HttpApiContracts';
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
import { EcoFlowHttpApiManager } from '@ecoflow/apis/ecoFlowHttpApiManager';
import { EcoFlowMqttApiManager } from '@ecoflow/apis/ecoFlowMqttApiManager';
import { MqttQuotaMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
import { DeviceConfig } from '@ecoflow/config';
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
import { EcoFlowHomebridgePlatform } from '@ecoflow/platform';
import { ServiceBase } from '@ecoflow/services/serviceBase';
import { Logging, PlatformAccessory } from 'homebridge';
export declare abstract class Delta2AccessoryBase extends EcoFlowAccessoryWithQuotaBase<Delta2AllQuotaData> {
private readonly batteryStatusService;
private readonly outletUsbService;
private readonly outletAcService;
private readonly outletCarService;
private readonly switchXboostService;
constructor(platform: EcoFlowHomebridgePlatform, accessory: PlatformAccessory, config: DeviceConfig, log: Logging, httpApiManager: EcoFlowHttpApiManager, mqttApiManager: EcoFlowMqttApiManager, batteryStatusProvider: BatteryStatusProvider, configuration: Delta2Configuration);
protected getServices(): ServiceBase[];
protected processQuotaMessage(message: MqttQuotaMessage): void;
protected initializeQuota(quota: Delta2AllQuotaData | null): Delta2AllQuotaData;
protected updateInitialValues(initialData: Delta2AllQuotaData): void;
private updateEmsInitialValues;
private updateInvInitialValues;
private updatePdInitialValues;
private updateMpptInitialValues;
private updateEmsValues;
private updateInvValues;
private updatePdValues;
private updateMpptValues;
private updateAcValues;
}