import type { AgentSessionLike } from "./engines/session-types.js";
/**
 * Automatically injects a desktop screenshot into the agent session
 * after Playwright MCP tool calls that mutate browser state.
 *
 * Computer-use tools already return screenshots in their tool output,
 * so only Playwright tools (which return text accessibility snapshots)
 * need this supplemental injection.
 */
export declare class ScreenshotInjector {
    private lastInjectMs;
    private injectCount;
    private inFlight;
    private readonly minIntervalMs;
    private readonly maxPerCycle;
    constructor(options?: {
        minIntervalMs?: number;
        maxPerCycle?: number;
    });
    /**
     * Called from the PostToolUse hook after each tool completes.
     * If the tool is a Playwright interaction and rate limits allow,
     * captures a screenshot and injects it into the active session.
     */
    onToolComplete(toolName: string, session: AgentSessionLike): Promise<void>;
    /** Reset counters at the start of each wake cycle. */
    reset(): void;
}
//# sourceMappingURL=screenshot-injector.d.ts.map