oli_tui/app/
models.rs

1use crate::models::ModelConfig;
2use anyhow::Result;
3use std::path::Path;
4use std::sync::mpsc;
5
6// Re-export from src/app/permissions.rs
7pub use super::permissions::ToolPermissionStatus;
8
9pub trait ModelManager {
10    fn current_model(&self) -> &ModelConfig;
11    fn select_next_model(&mut self);
12    fn select_prev_model(&mut self);
13    fn load_model(&mut self, model_path: &Path) -> Result<()>;
14    fn setup_models(&mut self, tx: mpsc::Sender<String>) -> Result<()>;
15    fn get_agent_model(&self) -> Option<String>;
16}