import { JSONObject } from "kuzzle-sdk"; import { DecodedMeasurement } from "../measure"; import { Decoder } from "./Decoder"; /** * Class containing the decoded measures. */ export declare class DecodedPayload { decoder: TDecoder; /** * Measurements per device. * * Record */ private measurementsByDevice; /** * Metadata per device. */ private metadataByDevice; constructor(decoder: TDecoder); get references(): string[]; /** * Add a new measure into the decoded payload * * @param deviceReference Device reference * @param measureName Name of the decoded measure * @param measurement Measurement object */ addMeasurement(deviceReference: string, measureName: TDecoder["measures"][number]["name"], measurement: Omit, "measureName">): void; /** * Add metadata values for a Device. * * Metadata should have been declared on the plugin to be used. * * @param deviceReference Device reference * @param metadata Object containing metadata values */ addMetadata(deviceReference: string, metadata: JSONObject): void; /** * Gets the measurements decoded for a device */ getMeasurements(deviceReference: string): DecodedMeasurement[]; /** * Get the metadata for a device */ getMetadata(deviceReference: string): JSONObject; private validateMeasurement; }