lavva.exalushome.extalife
Version:
Library implementing communication and abstraction layers for ExtaLife API in ExalusHome system
25 lines (24 loc) • 1.99 kB
TypeScript
import { Status } from "lavva.exalushome/build/js/DataFrame";
import { IDevice } from "lavva.exalushome/build/js/Services/Devices/IDevice";
import { ResponseResult } from "lavva.exalushome/build/js/Services/FieldChangeResult";
import { ComfortPositionParameters, InputOutputBlindParameters, ManualCalibration, StateOfTurnOnBlindDeviceParameters } from "../Common/BlindConfigurations/BlindConfigParameters";
import { BlindConfigurationErrorCode } from "../Common/BlindConfigurations/BlindConfigService";
export interface ISrp22ConfigService {
GetServiceName(): string;
/**
* Helper for manual calibration.
* The steps must be executed in the correct order, otherwise the "step" function will return NoPermissionToPerformThisOperation.
* Promise<Status> returned by each calibration step does not mean that the step has been completed! The "OK" status only means that the controller confirms that the task has been scheduled.
*
* @param device
* @param channel
* @returns ManualCalibration - calibration functions as the next steps in the calibration activity.
*/
ManualCalibration(device: IDevice, channel: number): ManualCalibration | ResponseResult<BlindConfigurationErrorCode>;
GetComfortPositionsAsync(device: IDevice, channel: number): Promise<ComfortPositionParameters | ResponseResult<BlindConfigurationErrorCode>>;
SetComfortPositionAsync(device: IDevice, data: ComfortPositionParameters): Promise<Status>;
GetBlindInputOutputParamAsync(device: IDevice, channel: number): Promise<InputOutputBlindParameters | ResponseResult<BlindConfigurationErrorCode>>;
SetBlindInputOutputParamAsync(device: IDevice, params: InputOutputBlindParameters): Promise<Status>;
GetTurnOnBehaviourAsync(device: IDevice, channel: number): Promise<StateOfTurnOnBlindDeviceParameters | ResponseResult<BlindConfigurationErrorCode>>;
SetTurnOnBehaviourAsync(device: IDevice, params: StateOfTurnOnBlindDeviceParameters): Promise<Status>;
}