use crate::option::commit::ListOptions;
use crate::types::commit::{CommitInfo, CommitListInfo};
use crate::types::repo::RepoPath;
use async_trait::async_trait;
#[async_trait]
pub trait Commit: Send + Sync {
async fn info(&self, repo_path: RepoPath<'_>, sha: Option<&str>) -> crate::Result<CommitInfo>;
async fn list(
&self,
repo_path: RepoPath<'_>,
option: Option<ListOptions>,
) -> crate::Result<Vec<CommitListInfo>>;
}