klf-200-api
Version:
This module provides a wrapper to the socket API of a Velux KLF-200 interface. You will need at least firmware 0.2.0.0.71 on your KLF interface for this library to work.
30 lines (29 loc) • 1.12 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
import { Socket } from "net";
import { Disposable, Listener } from "../utils/TypedEvent.js";
import { IGW_FRAME_RCV } from "./common.js";
export type FrameReceivedHandler = (frame: IGW_FRAME_RCV) => void;
export declare class KLF200SocketProtocol {
readonly socket: Socket;
private _onFrameReceived;
private _onDataSent;
private _onDataReceived;
private _onError;
private state;
private queue;
constructor(socket: Socket);
private processData;
private onSocketClose;
on(handler: Listener<IGW_FRAME_RCV>): Disposable;
off(handler: Listener<IGW_FRAME_RCV>): void;
once(handler: Listener<IGW_FRAME_RCV>): void;
onDataSent(handler: Listener<Buffer>): Disposable;
onDataReceived(handler: Listener<Buffer>): Disposable;
offDataSent(handler: Listener<Buffer>): void;
offDataReceived(handler: Listener<Buffer>): void;
onError(handler: Listener<Error>): Disposable;
offError(handler: Listener<Error>): void;
send(data: Buffer): Promise<void>;
write(data: Buffer): Promise<boolean>;
}