/** * Hoisted tools that replace opencode's built-in tools (read, write, edit, apply_patch). * * When hoist_builtin_tools is enabled (default), these tools are registered with * the SAME names as opencode's built-in tools, effectively overriding them. * When disabled, they're registered with aft_ prefix (e.g., aft_read). * * All file operations go through AFT's Rust binary for better performance, * backup tracking, formatting, and inline diagnostics. */ import type { ToolDefinition } from "@opencode-ai/plugin"; import type { PluginContext } from "../types.js"; /** Test-only export. Production code uses buildUnifiedDiff directly. */ export declare const _buildUnifiedDiffForTest: (fp: string, before: string, after: string) => string; /** * Creates the simple read tool. Registers as "read" when hoisted, "aft_read" when not. */ export declare function createReadTool(ctx: PluginContext): ToolDefinition; /** * Returns hoisted tools keyed by opencode's built-in names. * Overrides: read, write, edit, apply_patch (always when hoisting is on). * * Bash hoisting follows the resolved `bash` config. When bash is enabled, the * primary `bash` tool is registered. Background control tools (`bash_status`, * `bash_write`, `bash_watch`, and `bash_kill`) are registered only when * `bash.background` resolves true. With `bash.background: false`, foreground * bash runs to completion inline and no background surface is exposed. */ export declare function hoistedTools(ctx: PluginContext): Record; /** * Returns the same tools with aft_ prefix (for when hoisting is disabled). */ export declare function aftPrefixedTools(ctx: PluginContext): Record; //# sourceMappingURL=hoisted.d.ts.map