//! Browsing: Web browser automation via Chrome DevTools Protocol
//!
//! This library provides standalone browser control via `Browser`, `Page`, `Element`.
//! No AI or LLM services required.

pub mod actor;
pub mod agent;
pub mod browser;
pub mod config;
pub mod dom;
pub mod error;
pub mod logging;
pub mod metrics;
pub mod observability;
pub mod perception;
pub mod tools;
pub mod traits;
pub mod utils;
pub mod views;

pub use error::{BrowsingError, Result};

// Re-export core browser automation types
pub use actor::{Element, Mouse, Page};
pub use browser::Browser;
pub use config::Config;
pub use traits::{BrowserClient, DOMProcessor};

/// Initialize the library (sets up logging, etc.)
pub fn init() {
    logging::setup_logging();
}
