/** * VncBridge — TCP connection to a local VNC server. * * Handles RFB protocol version negotiation (3.3 / 3.7 / 3.8) and * security types: None (1), VNC auth/DES (2), VeNCrypt (19). * * Emits: * 'frame' (rect: VncRect) — one decoded framebuffer rectangle * 'error' (err: Error) — unrecoverable error (connection closed) * 'close' () — TCP connection closed */ import { EventEmitter } from 'events'; import type { VncInfo } from './types'; export declare class VncBridge extends EventEmitter { private _sock; private _width; private _height; private _bypp; private _recvBuf; private _closed; get width(): number; get height(): number; /** Connect to a VNC server at 127.0.0.1:port. Resolves once handshake is done. */ connect(port: number, password?: string, username?: string): Promise; /** Request a framebuffer update. */ requestUpdate(x?: number, y?: number, w?: number, h?: number, incremental?: number): void; /** Send a key event. */ sendKey(keysym: number, down: boolean): void; /** Send a ClientCutText message (push local clipboard to remote). */ sendClientCutText(text: string): void; /** Send a pointer (mouse) event. */ sendMouse(x: number, y: number, buttonMask: number): void; close(): void; private _handleVeNCrypt; private _runRunning; private _sendSetPixelFormat; private _sendSetEncodings; private _parseServerMessage; private _parseFBU; }