/**
 * Worktree information
 */
export interface WorktreeInfo {
  path: string;
  branch: string;
  commit: string;
}

/**
 * Options for creating a worktree
 */
export interface CreateWorktreeOptions {
  repoPath: string;
  agentId: string;
  taskId: string;
  baseBranch?: string;
}

/**
 * Worktree error types
 */
export class WorktreeError extends Error {
  constructor(
    message: string,
    public readonly operation: string,
    public readonly cause?: Error
  ) {
    super(message);
    this.name = "WorktreeError";
  }
}
