UNPKG

@computer-use/provider-interfaces

Version:

Public provider interfaces for @computer-use/nut-js

54 lines (53 loc) 2.16 kB
import { Point, Region, Size } from "@computer-use/shared"; /** * A WindowActionProvider should provide access to a system's window system * * @interface WindowProviderInterface */ export interface WindowProviderInterface { /** * {@link getWindows} returns a list of window handles for further processing. * These window handles may serve as input to e.g. {@link getWindowTitle} * * @returns A list of window handles */ getWindows(): Promise<number[]>; /** * {@link getActiveWindow} returns the window handle of the currently active foreground window * * @returns The handle to the currently active foreground window */ getActiveWindow(): Promise<number>; /** * {@link getWindowTitle} returns the title of a window addressed via its window handle * * @returns A string representing the title of a window addressed via its window handle */ getWindowTitle(windowHandle: number): Promise<string>; /** * {@link getWindowRegion} returns a {@link Region} object representing the size and position of the window addressed via its window handle * * @returns The {@link Region} occupied by the window addressed via its window handle */ getWindowRegion(windowHandle: number): Promise<Region>; /** * {@link focusWindow} Focuses the window addressed via its window handle */ focusWindow(windowHandle: number): Promise<boolean>; /** * {@link moveWindow} Moves the window addressed via its window handle to a new origin given as {@link Point} */ moveWindow(windowHandle: number, newOrigin: Point): Promise<boolean>; /** * {@link resizeWindow} Resizes the window addressed via its window handle to a new {@link Size} */ resizeWindow(windowHandle: number, newSize: Size): Promise<boolean>; /** * {@link minimizeWindow} Minimizes the window addressed via its window handle */ minimizeWindow(windowHandle: number): Promise<boolean>; /** * {@link restoreWindow} Restores a window addressed via its window handle */ restoreWindow(windowHandle: number): Promise<boolean>; }