zigbee-herdsman-zigate
Version:
An open source ZigBee gateway solution with node.js.
46 lines • 1.47 kB
TypeScript
/// <reference types="node" />
import { EventEmitter } from 'events';
import { SerialPortOptions } from "../../tstype";
import { ZiGateCommandCode, ZiGateObjectPayload } from "./constants";
import ZiGateObject from "./ziGateObject";
import { ZiGateResponseMatcher } from "./commandType";
declare type WaitressMatcher = {
ziGateObject: ZiGateObject;
rules: ZiGateResponseMatcher;
};
export default class ZiGate extends EventEmitter {
private path;
private baudRate;
private rtscts;
private initialized;
private parser;
private serialPort;
private seqNumber;
private portType;
private socketPort;
private queue;
portWrite: any;
private waitress;
constructor(path: string, serialPortOptions: SerialPortOptions);
static isValidPath(path: string): Promise<boolean>;
static autoDetectPath(): Promise<string>;
open(): Promise<void>;
close(): Promise<boolean>;
sendCommand(code: ZiGateCommandCode, payload?: ZiGateObjectPayload): Promise<void | ZiGateObject>;
waitFor(matcher: WaitressMatcher, timeout?: number): {
start: () => {
promise: Promise<ZiGateObject>;
ID: number;
};
ID: number;
};
private openSerialPort;
private openSocketPort;
private onSerialError;
private onPortClose;
private onSerialData;
private waitressTimeoutFormatter;
private waitressValidator;
}
export {};
//# sourceMappingURL=zigate.d.ts.map