dt-common-device
Version:
A secure and robust device management library for IoT applications
27 lines (26 loc) • 1.02 kB
TypeScript
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[]>;
}