import { type Ref } from "./invoke.js"; import type { BrowserViewConstructorOptions, Rectangle } from "@todesktop/client-electron-types"; /** * Methods for interacting with ToDesktop browser views. * * @remarks * This package exposes a number of methods for interacting with ToDesktop * browser views, allowing you to partition a single window into several * independent WebViews, and provide messaging between them. * * Views are useful, for example, to create a tabbed interface for your app * split on the context your user wants to access. * * @experimental * @public * @packageDocumentation */ /** * Creates a new BrowserView. * * @param options - BrowserView constructor options. * @returns Identifier for the newly created BrowserView. * @public */ export declare function create(options: BrowserViewConstructorOptions): Promise; /** * Resizes and moves the BrowserView to the supplied bounds relative to the window. * * @param options - ref: Reference for the BrowserView; bounds: `x`, `y`, `width`, and `height` bounds for the BrowserView; * @public */ export declare function setBounds({ ref, bounds, }: { ref: Ref; bounds: Rectangle; }): Promise; export declare type SetAutoResizeOptions = { width: boolean; height: boolean; horizontal: boolean; vertical: boolean; }; /** * Resizes the BrowserView when its parent BrowserWindow dimensions change. * * @param options - ref: Reference for the BrowserView; dimensions: `x`, `y`, `width`, and `height` dimensions for the BrowserView; * @public */ export declare function setAutoResize({ ref, dimensions, }: { ref: Ref; dimensions: SetAutoResizeOptions; }): Promise; /** * Retrieves a BrowserView's WebContents. * * @param options - ref: Reference for the BrowserView; * @returns Identifier for the BrowserView's WebContents. * @public */ export declare function getWebContents({ ref }: { ref: Ref; }): Promise;