import { Logger } from 'homebridge';
export declare class TCPManager {
    private readonly host;
    private readonly port;
    private readonly log;
    private readonly onData;
    private readonly onConnect;
    private readonly onDisconnect;
    private socket;
    private reconnectTimer;
    private keepAliveTimer;
    private isConnecting;
    private isConnected;
    constructor(host: string, port: number, log: Logger, onData: (data: Buffer) => void, onConnect: () => void, onDisconnect: () => void);
    connect(): void;
    private scheduleReconnect;
    private startKeepAlive;
    private checkConnection;
    send(data: Buffer): boolean;
    disconnect(): void;
}
export declare class CRC16 {
    private static readonly POLYNOMIAL;
    static calculate(data: Buffer): number;
    static verify(data: Buffer): boolean;
    static appendCRC(data: Buffer): Buffer;
}
