use std::collections::HashSet;
#[derive(Clone, Debug)]
pub struct BranchToDeleteInfo {
pub name: String,
pub contained_in: HashSet<String>,
}
pub trait AppUi {
fn log_info(&self, msg: &str);
fn log_warning(&self, msg: &str);
fn log_error(&self, msg: &str);
fn select_branches_to_delete(
&self,
branch_infos: &[BranchToDeleteInfo],
) -> Vec<BranchToDeleteInfo>;
fn select_identical_branches_to_delete(&self, branches: &[String]) -> Vec<String>;
fn select_identical_branches_to_delete_keep_one(&self, branches: &[String]) -> Vec<String>;
fn select_default_branch(&self, branches: &[String]) -> Option<String>;
}