import type { Tool, ToolCall } from '../../../types/tools.js';
import type { ToolRuntimeContext } from '../context.js';
import type { PhaseResult, ToolExecutionRecord } from '../types.js';
/**
 * prehook — Phase 2 of the tool execution pipeline.
 *
 * Fires `Pre:tool:<toolName>` hook via the HookDispatcher.
 * If the hook returns a `deny` decision, execution is aborted.
 * If the hook returns `updatedInput`, the record's args are updated
 * in-place so subsequent phases see the modified arguments.
 *
 * Hook failures (network, timeout, etc.) are treated as allow to avoid
 * blocking tool execution on non-critical infrastructure errors.
 */
export declare function prehookPhase(call: ToolCall, _tool: Tool, context: ToolRuntimeContext, record: ToolExecutionRecord): Promise<PhaseResult>;
//# sourceMappingURL=prehook.d.ts.map