import { type RegisteredTool } from '../tools/registry.ts'; import { type ResolveBackend } from './util.ts'; /** * The authoring tools — navigate/inspect authored inline here; find/propose/ * replay live in their own files ({@link findTool}/{@link proposeTool}/ * {@link replayTool}) and are composed in below. Each is a plain `defineTool` * primitive, so there is one canonical `RegisteredTool` per tool and no * parallel tool shape. Every handler resolves its session backend via * `resolveBackend(args)`: the cloud passes `() => backend` (one backend per * run); the MCP passes an `args.captureId`-keyed resolver. Hosts that need * extra input schema (the MCP's `captureId` session handle + the * credential-aware `run_proof` contract) MAP these tools through `extendTool` * (see mcp/tools/agent/shared.ts) — the tools themselves stay plain, and args * parse loosely so the extra fields still reach the resolver/handler. */ export declare function authoringTools(resolveBackend: ResolveBackend): RegisteredTool[];