declare enum Action { NONE = 0, LOAD = 1, DISPLAY = 2, STOP = 3 } declare enum Mode { RGB = 0, BW = 1, INVERT = 2, BW_INVERT = 3, RGB_CHANNELS = 4, INVERT_CHANNELS = 5 } interface fdOutgoingPosition { x: number; y: number; w: number; h: number; } interface fdOutgoingMessage { action: Action; image: string; mode?: Mode; position?: fdOutgoingPosition; exposure?: number[]; } interface fdIncomingMessage { action: Action; data?: number; success: boolean; error?: string; } interface fdResult { action: Action; image: string; reported?: number; elapsed?: number; } export declare class FD { private bin; private width; private height; private host; private port; private env; private shell; private log; private client; private socketAvailable; private socketConnected; private waiting; private mock; constructor(bin: string, width: number, height: number, host: string, port: number, display?: string, mock?: boolean); private startDisplay; private startClient; private logstd; private logsterr; private send; private receive; load(image: string, x: number, y: number, w: number, h: number): Promise; display(image: string, exposure?: number[]): Promise; stop(image: string): Promise; isConnected(): boolean; private test; exit(): Promise; } export type { Action, Mode, fdOutgoingPosition, fdOutgoingMessage, fdIncomingMessage, fdResult };