import { PixelCoordinate } from '@/web/types';
import { GroundingClient } from './types';
import { Image } from '@/memory/image';
interface GroundingServiceConfig {
    client?: GroundingClient;
}
export interface GroundingServiceInfo {
    provider: string;
    numCalls: number;
}
export declare const moondreamTargetingInstructions = "\nTargets descriptions must be carefully chosen to be accurately picked up by Moondream, a small vision model.\nBuild a \"minimal unique identifier\" - a description that is as brief as possible that uniquely identifies the target on the page.\nUse only the information needed, and prioritize in this order:\n- specific text\n- specific shapes and colors\n- positional information\n- high level information (Moondream cannot always understand high level concepts)\n";
export declare class GroundingService {
    /**
     * Small, fast, vision agent to translate high level web actions to precise, executable actions.
     * Uses Moondream for pixel precision pointing.
     */
    private config;
    private info;
    private logger;
    private moondream;
    constructor(config: GroundingServiceConfig);
    getInfo(): GroundingServiceInfo;
    locateTarget(screenshot: Image, target: string): Promise<PixelCoordinate>;
    _locateTarget(screenshot: Image, target: string): Promise<PixelCoordinate>;
}
export {};
