import type { Tool, ToolCall } from '../../../types/tools.js';
import type { ToolRuntimeContext } from '../context.js';
import type { PhaseResult, ToolExecutionRecord } from '../types.js';
/**
 * validate — Phase 1 of the tool execution pipeline.
 *
 * Performs lightweight pre-flight checks:
 * - The call has a non-empty id
 * - The call has a non-empty tool name
 * - Args is a plain object (not null)
 * - The tool object is present
 *
 * Heavy schema validation (JSON Schema against parameters) is intentionally
 * left to a future tier — this phase acts as a guard against programmer
 * errors and malformed LLM payloads.
 */
export declare function validatePhase(call: ToolCall, tool: Tool, _context: ToolRuntimeContext, _record: ToolExecutionRecord): Promise<PhaseResult>;
//# sourceMappingURL=validate.d.ts.map