//! Public session-lifecycle abstractions for tail-fin.
//!
//! This crate defines the stable API surface that downstream consumers
//! (Flock A2A agents, external platforms) import. Site adapter implementations
//! (`tail-fin-twitter`, `tail-fin-sa`, …) consume these types.
//!
//! Internal utilities (cookies parsing, CDP helpers, HTML scraping) live in
//! `tail-fin-common` — they are not part of the stable API.
//!
//! See `docs/superpowers/plans/2026-04-17-site-trait-phase-1.md` for the
//! architectural rationale.

pub mod error;
pub mod session;
pub mod site;

pub use error::{AuthFailureKind, SiteError};
pub use session::SessionManager;
pub use site::{Credentials, FailureIndicators, SessionStatus, Site};

// Re-export the type Site implementations depend on.
pub use night_fury_core::BrowserSession;
