UNPKG

knxnetjs

Version:

A TypeScript library for KNXnet/IP communication

37 lines 1.5 kB
import { EventEmitter } from "events"; import * as HID from "node-hid"; import { KNXBusInterface, KNXUSBOptions } from "../types"; import { CEMIFrame } from "../frames"; export declare class KNXUSBImpl extends EventEmitter implements KNXBusInterface { private hidDevice?; private isConnected; private readonly options; private buffer; constructor(options?: KNXUSBOptions); open(): Promise<void>; send(frame: CEMIFrame): Promise<void>; close(): Promise<void>; writeProperty(interfaceObject: number, objectInstance: number, propertyId: number, numberOfElements: number, startIndex: number, data: Buffer): Promise<void>; readProperty(interfaceObject: number, objectInstance: number, propertyId: number, numberOfElements: number, startIndex: number): Promise<Buffer>; /** * Check if this connection is in busmonitor mode */ isBusmonitorMode(): boolean; /** * Get available KNX USB devices */ static getAvailableDevices(): HID.Device[]; on(event: "recv", listener: (frame: CEMIFrame) => void): this; on(event: "error", listener: (error: Error) => void): this; on(event: "close", listener: () => void): this; on(event: "reset", listener: () => void): this; private findKNXDevice; private initializeDevice; private handleIncomingData; private processBuffer; private handleFrame; private convertHIDToCEMI; private createHIDFrame; private padHIDFrame; } //# sourceMappingURL=usb.d.ts.map