pub mod device_flow;
pub mod endpoints;
pub mod runner;
pub mod session;
pub use runner::{start_sync, SyncFailureReason, SyncHandle};
pub use session::SyncSession;
use tokio_util::sync::CancellationToken;
#[derive(Clone)]
pub struct PendingDeviceFlow {
pub user_code: String,
pub verification_uri: String,
pub verification_uri_complete: String,
pub expires_at: std::time::Instant,
pub cancel: CancellationToken,
}
pub fn sync_db_path() -> anyhow::Result<String> {
Ok(cookcli_core::global_config_path("sync.db")?.to_string())
}