lavva.exalushome.extalife
Version:
Library implementing communication and abstraction layers for ExtaLife API in ExalusHome system
46 lines (45 loc) • 3.42 kB
TypeScript
import { Status } from "lavva.exalushome/build/js/DataFrame";
import { IDevice } from "lavva.exalushome/build/js/Services/Devices/IDevice";
import { IDeviceConfigService } from "lavva.exalushome/build/js/Services/Devices/IDeviceConfigService";
import { ResponseResult } from "lavva.exalushome/build/js/Services/FieldChangeResult";
import { GlobalTimeParameters, IInputOutputSwitchParameters, InputModeSwitchParams, InputOutputSwitchParameters, ReactionToInputSwitchParams, StateOfTurnOnSwitchDeviceParameters } from "../Common/OnOffSwitchConfigurations/OnOffSwitchParameters";
import { SwitchConfigurationErrorCode } from "../Common/OnOffSwitchConfigurations/OnOffSwitchService";
import { LedControllersLightTransitionTime } from "./SlrConfigParameters";
export interface ISln22ConfigService extends IDeviceConfigService {
GetTurnOnBehaviourAsync(device: IDevice, channel: number): Promise<StateOfTurnOnSwitchDeviceParameters | ResponseResult<SwitchConfigurationErrorCode>>;
SetTurnOnBehaviourAsync(device: IDevice, params: StateOfTurnOnSwitchDeviceParameters): Promise<Status>;
GetDimmingAndBrighteningTimeAsync(device: IDevice, channel: number): Promise<ResponseResult<SwitchConfigurationErrorCode> | LedControllersLightTransitionTime>;
SetDimmingAndBrighteningTimeAsync(device: IDevice, channel: number, time: LedControllersLightTransitionTime): Promise<Status>;
GetTurnOnTimeAsync(device: IDevice, channel: number): Promise<GlobalTimeParameters | ResponseResult<SwitchConfigurationErrorCode>>;
/**
* Turn on time for SLR-22 coud be set in range between 0 and 4 minutes, when time is set below 240sec (4 minutes) method returns WrongData
* @param device
* @param params
*/
SetTurnOnTimeAsync(device: IDevice, params: GlobalTimeParameters): Promise<Status>;
GetTurnOffTimeAsync(device: IDevice, channel: number): Promise<GlobalTimeParameters | ResponseResult<SwitchConfigurationErrorCode>>;
/**
* Turn off time for SLR-22 coud be set in range between 0 and 4 minutes, when time is set below 240sec (4 minutes) method returns WrongData
* @param device
* @param params
*/
SetTurnOffTimeAsync(device: IDevice, params: GlobalTimeParameters): Promise<Status>;
GetSwitchInputOutputParamAsync(device: IDevice, channel: number): Promise<IInputOutputSwitchParameters[] | ResponseResult<SwitchConfigurationErrorCode>>;
GetTurnOnOffTimeActivationAsync(device: IDevice): Promise<boolean | ResponseResult<SwitchConfigurationErrorCode>>;
SetTurnOnOffTimeActivationAsync(device: IDevice, activation: boolean): Promise<Status>;
SetSwitchInputOutputParamAsync(device: IDevice, params: InputOutputSwitchParameters): Promise<Status>;
SetSwitchInputOutputInputModeParamAsync(device: IDevice, params: InputModeSwitchParams): Promise<Status>;
/**
* Reaction to input for SLR-22 - can be set to On, Off or OnOff
* @param device
* @param params
*/
SetSwitchInputOutputReactionToInputParamAsync(device: IDevice, params: ReactionToInputSwitchParams): Promise<Status>;
GetFloatingTimeAsync(device: IDevice, channel: number): Promise<GlobalTimeParameters | ResponseResult<SwitchConfigurationErrorCode>>;
/**
* Floating time - can be set in range of 1s to 18h.
* @param device
* @param params
*/
SetFloatingTimeAsync(device: IDevice, params: GlobalTimeParameters): Promise<Status>;
}