lavva.exalushome
Version:
Library implementing communication and abstraction layers for ExalusHome system
30 lines (29 loc) • 3.04 kB
TypeScript
import { DeviceResponseType, IDevice } from "../Devices/IDevice";
import { ResponseResult } from "../FieldChangeResult";
import { IStatesHistoryService, StateHistoryErrorCode } from "./IStatesHistoryService";
import { AvailableState, AveragingStateValues, BrightnessHistory, DataRangeType, EnergyHistory, IAvailableStatePerChannel, StateDataResponse, StateInterval } from "./StatesHistory";
export declare class StatesHistoryService implements IStatesHistoryService {
static readonly ServiceName: string;
private DELIM;
private _connection;
constructor();
numToCsv(val: number | string): string;
quoteIfNeeded(field: string): string;
ExportPressureToCsv(device: IDevice, channel: number, data: StateDataResponse<AveragingStateValues>): void;
ExportBrightnessToCsv(device: IDevice, channel: number, data: StateDataResponse<BrightnessHistory>): void;
ExportHumidityToCsv(device: IDevice, channel: number, data: StateDataResponse<AveragingStateValues>): void;
ExportWindSpeedToCsv(device: IDevice, channel: number, data: StateDataResponse<AveragingStateValues>): void;
ExportTemperatureToCsv(device: IDevice, channel: number, data: StateDataResponse<AveragingStateValues>): void;
ExportAveragingStateValuesToCsv(device: IDevice, channel: number, data: StateDataResponse<AveragingStateValues>): string;
ExportEnergyToCsv(device: IDevice, channel: number, response: StateDataResponse<EnergyHistory>): void;
GetStatesByTimeRangeAsync<T>(deviceGuid: string, channel: number, responseType: DeviceResponseType, timeRange: DataRangeType, time: Date, limit: number, offset: number, orderByDesc?: boolean): Promise<StateDataResponse<T> | ResponseResult<StateHistoryErrorCode>>;
GetStatesByTimeRangeAsync<T>(dev: IDevice, channel: number, responseType: DeviceResponseType, timeRange: DataRangeType, time: Date, limit: number, offset: number, orderByDesc?: boolean): Promise<StateDataResponse<T> | ResponseResult<StateHistoryErrorCode>>;
GetServiceName(): string;
DoesSupportPreciseTimeFramesAsync(): Promise<boolean>;
GetStatesByIntervalAsync<T>(device: IDevice, channel: number, responseType: DeviceResponseType, stateFrom: StateInterval, limit: number, offset: number, orderByDesc?: boolean): Promise<StateDataResponse<T> | ResponseResult<StateHistoryErrorCode>>;
GetStatesByIntervalAsync<T>(deviceGuid: string, channel: number, responseType: DeviceResponseType, stateFrom: StateInterval, limit: number, offset: number, orderByDesc?: boolean): Promise<StateDataResponse<T> | ResponseResult<StateHistoryErrorCode>>;
GetAvailableStatesAsync(): Promise<ResponseResult<StateHistoryErrorCode> | AvailableState[]>;
IsFunctionalitySupportedAsync(): Promise<boolean>;
GetAvailableStatesPerChannelAsync(device: IDevice, channel: number): Promise<IAvailableStatePerChannel | ResponseResult<StateHistoryErrorCode>>;
GetAvailableStatesPerChannelAsync(deviceGuid: string, channel: number): Promise<IAvailableStatePerChannel | ResponseResult<StateHistoryErrorCode>>;
}