import { searchFailureDetails } from './search-error.js'; import type { ExternalToolExecutionContext, ExternalToolProvider, ExternalToolSearchHit, ExternalToolSource, VersionedExternalToolDescriptor } from './types.js'; export declare class ExternalToolService { private readonly providerBySource; private readonly ajv; constructor(providers: ExternalToolProvider[]); search(params: { query: string; sources?: ExternalToolSource[]; limit?: number; }): Promise<{ tools: ExternalToolSearchHit[]; unavailableSources: ExternalToolSource[]; sourceErrors?: Array & { source: ExternalToolSource; }>; }>; describe(toolRefs: string[]): Promise<{ tools: VersionedExternalToolDescriptor[]; notFound: string[]; }>; execute(params: { toolRef: string; revision: string; arguments?: Record; approvalId?: string; context: ExternalToolExecutionContext; }): Promise>>; private providerForRef; }