/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 *
 * Portions of this code are derived from opencode (https://github.com/sst/opencode)
 * Copyright (c) 2025 opencode
 * Licensed under the MIT License.
 */
import { BaseDeclarativeTool, type ToolInvocation, type ToolResult } from './tools.js';
import { Config } from '../config/config.js';
export interface ExaWebSearchToolParams {
    query: string;
    numResults?: number;
    livecrawl?: 'fallback' | 'preferred';
    type?: 'auto' | 'fast' | 'deep';
    contextMaxCharacters?: number;
}
export declare class ExaWebSearchTool extends BaseDeclarativeTool<ExaWebSearchToolParams, ToolResult> {
    private readonly config;
    static readonly Name = "exa_web_search";
    constructor(config: Config);
    protected createInvocation(params: ExaWebSearchToolParams): ToolInvocation<ExaWebSearchToolParams, ToolResult>;
}
