import { IDeviceState, IDeviceStateData } from './IDeviceState'; import { DeviceTaskExecutionResult } from './TaskExecutionResult'; import { IDeviceTask } from './IDeviceTask'; import { IDevice, IDeviceResponseTypeInfo, IDeviceTaskTypeInfo } from './IDevice'; import { ITypedEvent } from '../../TypedEvent'; import { FieldChangeResult } from '../FieldChangeResult'; export interface IDeviceChannel { get ChannelId(): string; get Number(): number; set Number(value: number); get Name(): string; set Name(value: string); get IconName(): string; set IconName(value: string); get States(): IDeviceState[]; get Mode(): ChannelConfigurations; get ChannelGroups(): string[]; get CustomData(): Record; get Roles(): Roles[]; get IsHidden(): boolean; get Configurations(): Record; get AvailableTaskTypes(): IDeviceTaskTypeInfo[]; get AvailableResponseTypes(): IDeviceResponseTypeInfo[]; IsCustomDataAndRolesSupported(): boolean; SetCustomDataAsync(dataId: string, data: string): Promise; SetCustomDataAsync(data: Array<{ dataId: string; data: string; }>): Promise; RemoveCustomDataAsync(dataId: string): Promise; GetDevice(): IDevice; HideAsync(): Promise; ShowAsync(): Promise; ChangeNameAsync(name: string): Promise; ChangeIconNameAsync(name: string): Promise; ChangeGroupsAsync(groups: string[]): Promise; ExecuteTaskAsync(task: IDeviceTask): Promise; OnTasksExecutionChangeEvent(): ITypedEvent; OnChannelStateChangedEvent(): ITypedEvent>; OnChannelStateRefreshedOrChangedEvent(): ITypedEvent>; } export declare enum TaskExecution { NoTasksExecuting = 0, ExecutingTasks = 1 } export declare enum ChannelConfigurations { Default = 0, Monostable = 1, Bistable = 2, Gate = 3, Gateway = 4 } export declare enum Roles { None = 0, OnOff = 1, OnOffLights = 2, OnOffWithDelay = 3, GateSwitchState = 4, GatePulse = 5, GateOpenClose = 6, GatewayOpenClose = 7, GatewayPulse = 8, Monostable = 9, Dimmer = 10, Blind = 11, Roller = 12, TemperatureSensor = 13, BrightnessSensor = 14, HumiditySensor = 15, PowerMeter = 16, RGBLight = 17, RGBWLight = 18, LightsWarmth = 19, TemperatureControl = 20, BlindsWithPrecisePosition = 21, MovementSensor = 21, SimpleRemote = 22, BlindsRemote = 23, DistanceSensor = 24, Multisensor = 25, IOTransmitter = 26, DoorOpenClose = 27, WindSensor = 28, BatterySensor = 29, PressureSensor = 30 }