UNPKG

dt-common-device

Version:

A secure and robust device management library for IoT applications

27 lines (26 loc) 1.02 kB
import { ILogger } from "../config/config.types"; import { DeviceEvent } from "./interfaces/DeviceEvent"; import { IEventTransformer } from "./interfaces/IEventTransformer"; export declare abstract class BaseEventTransformer implements IEventTransformer { protected readonly deviceType: string; protected rawData: any; protected readonly logger: ILogger; constructor(deviceType: string, rawData: any); parseData(rawData: any): any; /** * Transform parsed data into DeviceEvent format - to be implemented by device-specific transformers */ abstract transform(parsedData: any): Promise<DeviceEvent | DeviceEvent[]>; /** * Validate transformed event - default implementation, can be overridden */ validate(transformedEvent: DeviceEvent): boolean; /** * Get the device type this transformer handles */ getDeviceType(): string; /** * Execute the full transformation pipeline */ executeTransformation(): Promise<DeviceEvent[]>; }