pub trait PrereleaseInteractionProvider: Send + Sync {
// Required methods
fn select_prerelease_action(
&self,
) -> Result<MenuSelection<PrereleaseAction>>;
fn select_package_for_prerelease(
&self,
available: &[&PackageInfo],
) -> Result<MenuSelection<usize>>;
fn get_prerelease_tag(&self) -> Result<String>;
fn select_package_to_remove_prerelease(
&self,
items: &[(&str, &str)],
) -> Result<MenuSelection<usize>>;
}Expand description
Provides user interaction for prerelease management workflows.
All methods propagate interaction errors from the underlying implementation.
Required Methods§
fn select_prerelease_action(&self) -> Result<MenuSelection<PrereleaseAction>>
fn select_package_for_prerelease( &self, available: &[&PackageInfo], ) -> Result<MenuSelection<usize>>
fn get_prerelease_tag(&self) -> Result<String>
Sourcefn select_package_to_remove_prerelease(
&self,
items: &[(&str, &str)],
) -> Result<MenuSelection<usize>>
fn select_package_to_remove_prerelease( &self, items: &[(&str, &str)], ) -> Result<MenuSelection<usize>>
Presents the list of prerelease packages for removal selection.
Each item is a (package_name, prerelease_tag) pair; the
implementation decides how to display them.