use crate::error::RenderError;
use crate::quill::Quill;
use crate::{OutputFormat, RenderSession};
pub trait Backend: Send + Sync + std::fmt::Debug {
fn id(&self) -> &'static str;
fn supported_formats(&self) -> &'static [OutputFormat];
fn supports_canvas(&self) -> bool {
false
}
fn open(
&self,
plate_content: &str,
source: &Quill,
json_data: &serde_json::Value,
) -> Result<RenderSession, RenderError>;
}