import type { ToolCall, ToolResult } from "../types.js"; import { type ToolRunOptions, type ToolHandler } from "./tool-types.js"; export type { ToolRunOptions, ToolHandler }; export { parseBatchFailPolicy, compileBatchFailMode, evaluateCancelTargets, formatBatchCancelReason, } from "./batch-fail-policy.js"; export interface ScanResourceEstimate { profile: "standard" | "deep" | "full"; estimatedSeconds: number; timeoutMs: number; durableRecommended: boolean; } export declare function estimateScanResources(argv: readonly string[]): ScanResourceEstimate; /** nmap argv for pentest.recon — ports configurable (default top-100). */ export declare function buildPentestReconNmapArgv(args: Record, host: string): string[]; export declare const toolRegistry: Record; export declare function availableToolNames(): string[]; export declare function knownToolNames(): string[]; export declare function unknownToolErrorMessage(name: string): string; export declare function normalizeToolCall(call: ToolCall): ToolCall; /** * Pull the result URLs out of a web.search success output. The output is a * one-line summary followed by a JSON `{ results: [{url, ...}] }` block; we * parse from the first brace. Falls back to a regex scan if JSON parsing * fails so a slightly different shape still yields fetchable URLs. */ export declare function extractResultUrls(output: string): string[]; export declare function normalizeToolResult(name: string, result: ToolResult): ToolResult; export declare function runToolCall(call: ToolCall, options?: ToolRunOptions): Promise; /** * Tools that may run **in parallel** inside `tool.batch` without racing * mutates. Anything outside this set is still allowed in a batch but is * forced serial (and may require confirmation — see {@link runToolBatch}). * * Kept for tests and call-sites that want the parallel-safe set. */ export declare const BATCH_SAFE_TOOLS: Set; /** * Normalize a batch child tool name: wire forms (`tool_check`, `fs_read`) * and dotted names both resolve to the registry canonical name. */ export declare function normalizeBatchToolName(raw: string): string;