import type { Point } from "../types.js"; export type Vendor = "anthropic-browser" | "anthropic-computer" | "gemini"; /** The image size the model sees and how it maps to page pixels: page = model / scale. */ export interface Frame { width: number; height: number; scale: number; } export declare function visualTokens(width: number, height: number): number; /** The largest frame no bigger than the page that the vendor accepts without resizing. */ export declare function fitFrame(viewport: { width: number; height: number; }, vendor: Vendor): Frame; /** Converts a point the model gave in frame pixels to page pixels, refusing points outside the frame. */ export declare function frameToPage(point: Point, frame: Frame): Point; export declare function pageToFrame(point: Point, frame: Frame): Point; /** Gemini sends positions on a 0-999 grid; values outside it are clamped. */ export declare function fromGeminiGrid(point: Point, viewport: { width: number; height: number; }): Point; /** A length on Gemini's 0-999 grid, as page pixels along one axis. */ export declare function geminiLength(value: number, size: number): number; //# sourceMappingURL=frame.d.ts.map