type SendFn = (msg: Record) => void; interface WorktreeEntry { path: string; branch: string | null; name: string; } export declare function resolveGitDir(msg: { worktreePath?: string; [key: string]: unknown; }, workDir: string): string; export declare function parseWorktreeListPorcelain(output: string, workDir: string, options?: { includeCurrent?: boolean; }): WorktreeEntry[]; export declare function resolveToRepoRoot(msg: { worktreePath?: string; [key: string]: unknown; }, workDir: string): Promise; export declare function handleGitWorktreeList(_msg: { type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitStatus(_msg: { type: string; worktreePath?: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitDiff(msg: { filePath: string; staged?: boolean; untracked?: boolean; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitStage(msg: { files: string[]; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitUnstage(msg: { files: string[]; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitDiscard(msg: { files: string[]; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitCommit(msg: { message: string; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitStash(msg: { action: string; message?: string; index?: number; files?: string[]; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitDeleteFile(msg: { files: string[]; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitPull(msg: { rebase?: boolean; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export declare function handleGitPush(msg: { setUpstream?: boolean; force?: boolean; worktreePath?: string; type: string; [key: string]: unknown; }, workDir: string, send: SendFn): Promise; export {};