/** * Tool handlers for worktree operations. */ import { type WorktreeInfo, type CreateWorktreeResult, type RemoveWorktreeResult, type ListWorktreesResult } from '../worktree/index.js'; import type { ToolResponse } from './types.js'; /** * Interface for worktree manager operations (for testability). */ export interface IWorktreeManager { createWorktree(options: { shortName: string; issueId?: string; prefix?: 'feature' | 'fix' | 'refactor' | 'docs' | 'test'; baseBranch?: string; installDeps?: boolean; packageManager?: 'npm' | 'yarn' | 'pnpm' | 'bun'; }): Promise; listWorktrees(): Promise; removeWorktree(options: { name: string; deleteBranch?: boolean; force?: boolean; }): Promise; getWorktreeInfo(name: string): Promise; } /** * Context for worktree tools. */ export interface WorktreeToolContext { projectPath: string; toolGuidance: string; /** Optional worktree manager instance (for testing). */ worktreeManager?: IWorktreeManager; } /** * Arguments for create_worktree tool. */ export interface CreateWorktreeArgs { shortName: string; issueId?: string; prefix?: 'feature' | 'fix' | 'refactor' | 'docs' | 'test'; baseBranch?: string; installDeps?: boolean; packageManager?: 'npm' | 'yarn' | 'pnpm' | 'bun'; } /** * Parse and validate create_worktree arguments. */ export declare function parseCreateWorktreeArgs(args: Record | undefined): CreateWorktreeArgs; /** * Format worktree creation result. */ export declare function formatWorktreeCreationResult(result: CreateWorktreeResult): string; /** * Handle create_worktree tool. */ export declare function handleCreateWorktree(args: CreateWorktreeArgs, context: WorktreeToolContext): Promise; /** * Handle list_worktrees tool. */ export declare function handleListWorktrees(context: WorktreeToolContext): Promise; /** * Arguments for remove_worktree tool. */ export interface RemoveWorktreeArgs { name: string; deleteBranch?: boolean; force?: boolean; } /** * Parse and validate remove_worktree arguments. */ export declare function parseRemoveWorktreeArgs(args: Record | undefined): RemoveWorktreeArgs; /** * Format worktree removal result. */ export declare function formatWorktreeRemovalResult(name: string, result: RemoveWorktreeResult): string; /** * Handle remove_worktree tool. */ export declare function handleRemoveWorktree(args: RemoveWorktreeArgs, context: WorktreeToolContext): Promise; /** * Arguments for worktree_status tool. */ export interface WorktreeStatusArgs { name: string; } /** * Parse and validate worktree_status arguments. */ export declare function parseWorktreeStatusArgs(args: Record | undefined): WorktreeStatusArgs; /** * Handle worktree_status tool. */ export declare function handleWorktreeStatus(args: WorktreeStatusArgs, context: WorktreeToolContext): Promise; //# sourceMappingURL=worktree-handlers.d.ts.map