import type { InputBackend } from "./input-backends/interface.js"; import type { ScreenInfo } from "./types.js"; export declare class SystemBackend implements InputBackend { private platform; private screenSize; private activeScreen; private win32Api; constructor(platformOverride?: "windows" | "macos" | "linux"); private static readonly WIN32_INIT_TYPES; private psProcess; private psReady; private psReadyPromise; private psBuffer; private cliclickProcess; private xdotoolProcess; startPersistentProcess(): void; private startPowerShellProcess; private ensurePowerShell; stopPersistentProcess(): void; private psCmd; moveMouse(x: number, y: number): Promise; moveMouseRelative(dx: number, dy: number): Promise; centerMouse(): Promise; click(x: number, y: number, button: 'left' | 'right'): Promise; doubleClick(x: number, y: number): Promise; mouseDown(button: 'left' | 'right'): Promise; mouseUp(button: 'left' | 'right'): Promise; scroll(direction: 'up' | 'down' | 'left' | 'right', amount: number): Promise; type(text: string): Promise; keyPress(keys: string[]): Promise; keyDown(key: string): Promise; keyUp(key: string): Promise; getScreenSize(): { width: number; height: number; }; setScreenSize(width: number, height: number): void; setActiveScreen(screen: ScreenInfo): void; getMousePos(): Promise<{ x: number; y: number; }>; isInputFocused(): boolean; private warnInputErr; private getVirtualKeyCode; }