use crate::error::Result;
use crate::history::HistoryEntry;
pub trait HistoryProvider {
#[must_use = "Query results should be used"]
fn get_entries(&self) -> Result<Vec<HistoryEntry>>;
#[must_use = "Query results should be used"]
fn get_recent(&self, count: usize) -> Result<Vec<HistoryEntry>>;
#[must_use = "Search results should be used"]
fn search(&self, query: &str) -> Result<Vec<HistoryEntry>>;
fn log_command(&mut self, command: &str) -> Result<()>;
fn clear(&mut self) -> Result<()>;
fn delete_entries(&mut self, indices: &[usize]) -> Result<usize>;
}