/**
 * OwlCoda Native EnterWorktree Tool
 *
 * Creates an isolated git worktree and switches the session into it.
 * This allows working on branches without disturbing the main checkout.
 *
 * Upstream parity notes:
 * - Upstream uses createWorktreeForSession with slug validation
 * - Mutates CWD, originalCwd, clears system prompt caches
 * - Our version: straightforward `git worktree add` + process.chdir
 */
import type { EnterWorktreeInput, NativeToolDef } from './types.js';
/** Shared worktree session state. */
export interface WorktreeState {
    /** Whether we're currently in a worktree session. */
    inWorktree: boolean;
    /** Path to the worktree directory. */
    worktreePath?: string;
    /** Branch name in the worktree. */
    worktreeBranch?: string;
    /** Original CWD before entering worktree. */
    originalCwd?: string;
}
export declare function createEnterWorktreeTool(state: WorktreeState): NativeToolDef<EnterWorktreeInput>;
