//! Synor ZK SDK for Rust
//!
//! Zero-Knowledge proof systems for ZK-Rollups and privacy.
//!
//! # Example
//!
//! ```rust,no_run
//! use synor_sdk::zk::{SynorZk, ZkConfig, ProofRequest, CircuitType, ProofSystem};
//!
//! #[tokio::main]
//! async fn main() -> Result<(), Box<dyn std::error::Error>> {
//!     let config = ZkConfig::new("your-api-key");
//!     let zk = SynorZk::new(config);
//!
//!     // Generate a proof
//!     let proof = zk.generate_proof(ProofRequest {
//!         circuit_type: CircuitType::Transfer,
//!         public_inputs: vec![],
//!         private_inputs: vec![],
//!         system: Some(ProofSystem::Groth16),
//!     }).await?;
//!
//!     // Verify the proof
//!     let result = zk.verify_proof(&proof).await?;
//!     println!("Valid: {}", result.valid);
//!
//!     Ok(())
//! }
//! ```

mod types;
mod client;

pub use types::*;
pub use client::*;
