import { Tool } from './Tool';
import { ToolCallContext } from '../models/ToolCallContext';
import { ToolCallResult } from '../models/ToolCallResult';
import { BaseToolGptParameters } from '../models/BaseToolGptParameters';
/**
 * Parameters for the GoToGoogleMapsStreetViewTool
 */
export interface GoToGoogleMapsStreetViewToolCoreParameters {
    /**
     * The name of the business/entity to find.
     */
    entityName: string;
    /**
     * The address of the business/entity to find.
     */
    entityLocation: string;
}
export interface GoToGoogleMapsStreetViewToolGptParameters extends BaseToolGptParameters, GoToGoogleMapsStreetViewToolCoreParameters {
}
/**
 * Attempts to verify that the given business/entity exists at the given location by using a Google
 * Maps street view. If the business/entity is found, then a AggregateExtractedStreetviewDataTool
 * tool call is queued containing the results.
 */
export declare class GoToGoogleMapsStreetViewTool extends Tool<GoToGoogleMapsStreetViewToolCoreParameters, GoToGoogleMapsStreetViewToolGptParameters> {
    static readonly NAME = "goToGoogleMapsStreetView";
    constructor();
    call(context: ToolCallContext, parameters: GoToGoogleMapsStreetViewToolCoreParameters): Promise<ToolCallResult>;
    callFromGpt(context: ToolCallContext, parameters: GoToGoogleMapsStreetViewToolGptParameters): Promise<ToolCallResult>;
    private setStreetView;
    private setStreetViewUsingQuery;
    /**
     * Remove UI elements that can distract the GPT when performing an analysis. This is a fragile
     * script and will break depending on the device used and on the whims of Google.
     */
    private cleanupUiElements;
}
//# sourceMappingURL=GoToGoogleMapsStreetViewTool.d.ts.map