UNPKG

knxnetjs

Version:

A TypeScript library for KNXnet/IP communication

52 lines 1.96 kB
import { KNXInterfaceType, KNXBusInterface, KNXInterfaceInformation } from "./types"; export declare class KNXInterfaceInformationImpl implements KNXInterfaceInformation { readonly type: KNXInterfaceType; readonly name: string; readonly description?: string; readonly address?: string; readonly port?: number; readonly capabilities?: number; readonly knxAddress?: string; readonly macAddress?: string; readonly serialNumber?: string; readonly friendlyName?: string; readonly devicePath?: string; readonly vendorId?: number; readonly productId?: number; readonly manufacturer?: string; readonly product?: string; constructor(info: Omit<KNXInterfaceInformation, 'supportsTunneling' | 'supportsRouting' | 'supportsBusmonitor' | 'toString'>); /** * Check if this interface supports tunneling */ supportsTunneling(): boolean; /** * Check if this interface supports routing */ supportsRouting(): boolean; /** * Check if this interface supports busmonitor mode */ supportsBusmonitor(): boolean; /** * Get a human-readable description of the interface */ toString(): string; } /** * Discover available KNX interfaces (network and USB) * @param callback Function called for each discovered interface * @param options Discovery options */ export declare function discoverInterfaces(callback: (interfaceInfo: KNXInterfaceInformationImpl) => void, options?: { timeout?: number; includeUSB?: boolean; }): Promise<void>; /** * Create a KNX interface based on interface information * @param interfaceInfo The interface information * @param busmonitorMode Whether to enable busmonitor mode (read-only) * @returns A KNXBusInterface instance */ export declare function createInterface(interfaceInfo: KNXInterfaceInformationImpl, busmonitorMode?: boolean): KNXBusInterface; //# sourceMappingURL=interface-discovery.d.ts.map