import * as ai from 'ai';
import { LanguageModel } from 'ai';
import { ExploreSubagentConfig, ExploreSession, ExploreEvent, ExploreResult } from './types.js';
import '../types-CtkD4o1_.js';
import '../tools/warp_grep/providers/types.js';
import '../tools/utils/resilience.js';

/** Config for Vercel AI SDK Explore subagent */
interface VercelExploreConfig extends ExploreSubagentConfig {
    /** Vercel AI SDK model instance */
    model: LanguageModel;
}
/**
 * Create an Explore subagent using Vercel AI SDK
 */
declare function createExploreSubagent(config: VercelExploreConfig): {
    /** Vercel AI SDK tool for use as a tool in parent agents */
    tool: ai.Tool<{
        searchRequest: string;
    }, {
        success: boolean;
        summary: string;
        searchCount: number;
        error: string | undefined;
    }>;
    /** Run exploration with messaging support */
    run(prompt: string): ExploreSession;
    /** Stream exploration events as an async generator */
    stream(prompt: string): AsyncGenerator<ExploreEvent, ExploreResult, undefined>;
};

export { type VercelExploreConfig, createExploreSubagent };
