dt-common-device
Version:
A secure and robust device management library for IoT applications
40 lines (39 loc) • 2.51 kB
TypeScript
import { IDevice, IQueryDevice, IStatus, IStatusQuery } from "../interfaces";
import { Source } from "../../../../constants/Service";
import { IAuditProperties } from "../../../../audit/IAuditProperties";
export declare class LocalDeviceService {
private readonly eventHandler;
private readonly deviceRepository;
private readonly issueService;
private readonly localPropertyService;
private readonly monitoringRepository;
constructor();
createDevice(body: IDevice): Promise<IDevice>;
getDevice(deviceId: string, withHubDetails?: boolean): Promise<IDevice>;
getDevices(deviceIds: string[], withHubDetails?: boolean): Promise<IDevice[]>;
getPropertyDevices(propertyId: string, selectDeviceId?: boolean, type?: string, withHubDetails?: boolean): Promise<IDevice[]>;
updateDevice(deviceId: string, body: Partial<IDevice>, auditBody: IAuditProperties): Promise<any>;
updateDevices(query: any, updateData: any): Promise<any>;
deleteDevice(deviceId: string, auditBody: IAuditProperties): Promise<any>;
getState(deviceId: string): Promise<any>;
setState(deviceId: string, newState: any, auditProperties: IAuditProperties, eventType?: string): Promise<void>;
getStatus(deviceId: string): Promise<Record<string, any>>;
setStatus(deviceId: string, newStatus: IStatus, source: Source, auditBody: IAuditProperties, reason?: string): Promise<void>;
setStatusMany(query: IStatusQuery, newStatus: IStatus, source: Source, auditBody: IAuditProperties): Promise<void>;
private handleOfflineStatus;
private handleOnlineStatus;
private getDeviceBaseline;
getBatteryLevel(deviceId: string): Promise<Record<string, any>>;
setBatteryLevel(deviceId: string, batteryLevel: number, source: Source, auditBody: IAuditProperties): Promise<void>;
private shouldUpdateBatteryLevel;
updateBatteryState(deviceId: string, batteryState: any): Promise<void>;
private getPropertyBatteryThreshold;
getMetaData(deviceId: string): Promise<any>;
setMetaData(deviceId: string, metaData: Record<string, any>, auditBody: IAuditProperties): Promise<any>;
getDevicesByZone(zoneId: string): Promise<import("../interfaces").IDtDevice[]>;
getDevicesByAccessGroup(accessGroupId: string): Promise<import("../interfaces").IDtDevice[]>;
querySelect(query: any, fields: string[]): Promise<any>;
queryCount(query: any): Promise<number>;
deleteDevices(query: any): Promise<any>;
queryDevices(query: IQueryDevice): Promise<any>;
}