use liteparse::config::LiteParseConfig;
use liteparse::parser::LiteParse;
use liteparse::types::PdfInput;
pub fn render_pages(bytes: &[u8]) -> Result<Vec<(String, Vec<u8>)>, String> {
let runtime = tokio::runtime::Builder::new_current_thread()
.enable_all()
.build()
.map_err(|e| format!("Failed to start async runtime: {e}"))?;
let input = PdfInput::Bytes(bytes.to_vec());
runtime.block_on(async move {
let config = LiteParseConfig { ocr_enabled: false, quiet: true, ..Default::default() };
let shots = LiteParse::new(config)
.screenshot_input(input, None)
.await
.map_err(|e| format!("Failed to render PDF pages: {e}"))?;
Ok(shots.into_iter().map(|s| (format!("page_{}.png", s.page_num), s.image_bytes)).collect())
})
}