export interface WorktreeInfo {
    name: string;
    path: string;
    branch: string;
    isCurrent: boolean;
    hasChanges: boolean;
    unpushedCommits: number;
}
export interface WorktreeResult {
    success: boolean;
    worktree?: WorktreeInfo;
    worktrees?: WorktreeInfo[];
    previousCwd?: string;
    error?: string;
}
export interface WorktreeBackend {
    enterWorktree(name?: string): Promise<WorktreeResult>;
    exitWorktree(action: "keep" | "remove", discardChanges?: boolean): Promise<WorktreeResult>;
    listWorktrees(): Promise<WorktreeResult>;
    isInWorktree(): boolean;
    currentWorktree?(): WorktreeInfo | null;
}
