use crate::config::Config;
use crate::polling::git::GitFetcher;
use crate::repository::SqliteRepository;
use sqlx::SqlitePool;
use std::sync::Arc;
use tokio_util::sync::CancellationToken;
#[derive(Clone)]
pub struct SharedContext {
pub config: Config,
pub repository: Arc<SqliteRepository>,
pub db_pool: SqlitePool,
pub token: CancellationToken,
pub git_fetcher: Arc<dyn GitFetcher>,
}