/**
 * src/tools/executor.ts
 * Tool Executor — Safely executes tools with sandboxing
 */
import { type ToolResult } from './types.js';
export declare function executeTool(toolName: string, args: Record<string, unknown>, tenantId?: string, customerId?: string): Promise<ToolResult>;
/**
 * (Audit C7) Verify every tool in TOOLS has a dispatch case in this file.
 *
 * Implementation: source-parse the executor file and grep for `case 'name':`
 * lines. This is fast (one fs read), side-effect-free (no tool actually
 * runs), and accurate (catches the exact gap that existed before).
 *
 * The earlier probe-based version actually CALLED every tool with sentinel
 * args, which could trigger side effects in tools that proceed past
 * arg-validation with defaults. Reverted in favor of static source check.
 */
export declare function auditToolDispatch(): Promise<{
    covered: number;
    missing: string[];
    orphaned: string[];
}>;
export interface ToolLoopResult {
    finalResponse: string;
    toolsExecuted: Array<{
        name: string;
        success: boolean;
        output: string;
    }>;
    totalLatencyMs: number;
}
export declare function runToolLoop(initialPrompt: string, toolCalls: Array<{
    id: string;
    name: string;
    arguments: string;
}>, tenantId: string, customerId: string): Promise<ToolLoopResult>;
//# sourceMappingURL=executor.d.ts.map