//! Synor RPC SDK
//!
//! Query blocks, transactions, and chain state with WebSocket subscription support.
//!
//! # Quick Start
//!
//! ```rust,no_run
//! use synor_compute::rpc::{SynorRpc, Priority};
//!
//! #[tokio::main]
//! async fn main() -> Result<(), Box<dyn std::error::Error>> {
//!     let client = SynorRpc::new("your-api-key");
//!
//!     // Get latest block
//!     let block = client.get_latest_block().await?;
//!     println!("Height: {}", block.height);
//!
//!     // Get transaction
//!     let tx = client.get_transaction("txid...").await?;
//!     println!("Status: {:?}", tx.status);
//!
//!     // Estimate fee
//!     let fee = client.estimate_fee(Priority::Medium).await?;
//!     println!("Fee rate: {}", fee.fee_rate);
//!
//!     Ok(())
//! }
//! ```

mod types;
mod error;
mod client;

pub use types::*;
pub use error::{RpcError, Result};
pub use client::SynorRpc;
