/**
 * screenshot.capture — standalone headless screenshot tool.
 *
 * Captures a PNG of any URL or local HTML file using Playwright (the same
 * optional dependency the browser surface uses) and returns the saved PNG
 * path. Because the result payload contains an image `path`, the web UI
 * renders it inline as an image (via the existing screenshot body-kind
 * logic) instead of a generic toolcard.
 */
import type { ToolDefinition } from "./contracts.js";
interface ScreenshotCaptureInput {
    /** URL (http/https), "dev" (frontend dev url), or a local HTML file path. */
    target: string;
    /** Output file path. Default: .jait/shots/screenshot-<timestamp>.png */
    path?: string;
    /** Viewport width. Default 1280. */
    width?: number;
    /** Viewport height. Default 800. */
    height?: number;
    /** Emulate a Pixel-5-ish mobile viewport (393x851, DPR 3). */
    mobile?: boolean;
    /** Emulate prefers-color-scheme: dark. */
    dark?: boolean;
    /** Capture the full scrollable page. Default true. */
    fullPage?: boolean;
    /** Crop to the first element matching this CSS selector. */
    selector?: string;
    /** Extra settle delay (ms) after load. Default 500. */
    waitMs?: number;
    /** Wait for a selector to be visible before capturing. */
    waitForSelector?: string;
    /** Click an element before capturing (repeatable). */
    click?: string[];
    /** Fill `selector:text` pairs before capturing (repeatable). */
    fill?: string[];
}
export declare function createScreenshotCaptureTool(): ToolDefinition<ScreenshotCaptureInput>;
export {};
//# sourceMappingURL=screenshot-tools.d.ts.map