knxultimate
Version:
KNX IP protocol implementation for Node. This is the ENGINE of Node-Red KNX-Ultimate node.
39 lines (38 loc) • 1.12 kB
TypeScript
/// <reference types="node" />
type Range = [number, number] | [undefined];
interface DatapointSubtype {
scalar_range?: Range;
name: string;
use?: string;
desc?: string;
force_encoding?: string;
unit?: string;
enc?: Record<number, string>;
range?: Range;
}
export interface DatapointConfig {
id: string;
subtypeid?: string;
basetype: {
bitlength: number;
signedness?: string;
range?: Range;
valuetype: string;
desc?: string;
help?: string;
helplink?: string;
};
subtype?: DatapointSubtype;
subtypes?: Record<string, DatapointSubtype>;
formatAPDU?: (value: any) => Buffer | void;
fromBuffer?: (buf: Buffer) => any;
}
export declare const dpts: Record<string, DatapointConfig>;
export declare function resolve(dptid: string | number): DatapointConfig;
export type APDU = {
bitlength: number;
data: Buffer;
};
export declare function populateAPDU(value: any, apdu: APDU, dptid?: number | string): APDU;
export declare function fromBuffer(buf: Buffer, dpt: DatapointConfig): number;
export {};