import { IDevice } from 'lavva.exalushome/build/js/Services/Devices/IDevice';
import { IDeviceConfigService } from 'lavva.exalushome/build/js/Services/Devices/IDeviceConfigService';
import { Status } from 'lavva.exalushome/build/js/DataFrame';
import { GetParamsErrorCode, SynchronizationTime } from '../../../ExtaLife';
import { FloodSensorAlertMode, Rcz21ConfigParams, RepeatTimeFrequency } from './Rcz21ConfigParams';
import { ResponseResult } from 'lavva.exalushome/build/js/Services/FieldChangeResult';
export interface IRcz21ConfigService extends IDeviceConfigService {
    GetAllParamsAsync(device: IDevice, channel: number): Promise<Rcz21ConfigParams | ResponseResult<GetParamsErrorCode>>;
    SetAllParamsAsync(params: Rcz21ConfigParams, channel: number): Promise<Status>;
    SetFloodAlertModeAsync(device: IDevice, channel: number, alarmMode: FloodSensorAlertMode): Promise<Status>;
    SetFloodEventRepetitionAsync(device: IDevice, channel: number, repeatEvent: boolean): Promise<Status>;
    SetFloodEventRepetitionTimeAsync(device: IDevice, channel: number, repeatTime: RepeatTimeFrequency): Promise<Status>;
    SetSynchronizationTimeAsync(device: IDevice, channel: number, syncTime: SynchronizationTime): Promise<Status>;
}
