lavva.exalushome
Version:
Library implementing communication and abstraction layers for ExalusHome system
81 lines (80 loc) • 3.44 kB
TypeScript
import { ITypedEvent } from '../../TypedEvent';
import { FieldChangeResult } from '../FieldChangeResult';
import { CommunicationWay, DeviceState, DeviceType, IconType, IDevice, IDeviceResponseTypeInfo, IDeviceTaskTypeInfo } from './IDevice';
import { IDeviceChannel } from './IDeviceChannel';
import { IDeviceState, IDeviceStateData } from './IDeviceState';
import { IDeviceTask } from './IDeviceTask';
import { DeviceTaskExecutionResult } from './TaskExecutionResult';
export declare class Device implements IDevice {
private static _devicesService;
private _onDeviceStateChangedEvent;
private _onDeviceStateRefreshedOrChangedEvent;
private _onDeviceTasksExecutionChangedOnChannelsEvent;
private _onDeviceFirmwareVersionChangedEvent;
private _guid?;
private _name?;
private _iconType;
private _channelsAmount?;
private _serialNumber;
private _model;
private _modelGuid;
private _manufacturerGuid;
private _isVirtual;
private _isEnabled;
private _deviceState;
private _deviceType;
private _communicationWay;
private _availableTasksTypes;
private _availableResponseTypes;
private _channels;
private _protocolGuid;
private _softwareVersion;
constructor();
OnDeviceFirmwareVersionChangedEvent(): ITypedEvent<{
FirmwareVersion: string;
}>;
OnDeviceStateRefreshedOrChangedEvent(): ITypedEvent<IDeviceState<IDeviceStateData>>;
get ShouldChannelsBeGrouped(): boolean;
get States(): IDeviceState<IDeviceStateData>[];
RemoveDeviceAsync(): Promise<DeviceTaskExecutionResult>;
ExecuteDeviceTaskAsync(task: IDeviceTask): Promise<DeviceTaskExecutionResult>;
OnDeviceTasksExecutionChangedOnChannelsEvent(): ITypedEvent<number[]>;
OnDeviceStateChangedEvent(): ITypedEvent<IDeviceState<any>>;
get Guid(): string;
set Guid(guid: string);
get IconType(): IconType;
set IconType(iconType: IconType);
get Name(): string;
set Name(name: string);
set SoftwareVersion(version: string | null);
get SoftwareVersion(): string | null;
get ChannelsAmount(): number;
set ChannelsAmount(amount: number);
get SerialNumber(): string | null;
set SerialNumber(serialNumber: string | null);
get Model(): string | null;
set Model(model: string | null);
get ModelGuid(): string | null;
set ModelGuid(model: string | null);
get ManufacturerGuid(): string | null;
set ManufacturerGuid(manufacturerGuid: string | null);
get IsVirtual(): boolean;
set IsVirtual(isVirtual: boolean);
get IsEnabled(): boolean;
set IsEnabled(isEnabled: boolean);
get DeviceState(): DeviceState;
set DeviceState(deviceState: DeviceState);
get DeviceType(): DeviceType;
set DeviceType(deviceType: DeviceType);
get CommunicationWay(): CommunicationWay;
set CommunicationWay(communicationWay: CommunicationWay);
get AvailableTaskTypes(): IDeviceTaskTypeInfo[];
set AvailableTaskTypes(availableTasksTypes: IDeviceTaskTypeInfo[]);
get AvailableResponseTypes(): IDeviceResponseTypeInfo[];
set AvailableResponseTypes(availableResponseTypes: IDeviceResponseTypeInfo[]);
get Channels(): IDeviceChannel[];
get ProtocolGuid(): string | null;
set ProtocolGuid(value: string | null);
ChangeDeviceNameAsync(name: string): Promise<FieldChangeResult>;
ExecuteTaskAsync(task: IDeviceTask): Promise<DeviceTaskExecutionResult>;
}