use std::error::Error;
use async_trait::async_trait;
pub mod renderer;
#[async_trait]
pub trait Renderer {
async fn get(canvas_element_id: &str) -> Result<Self, Box<dyn Error>> where Self: Sized;
async fn render_frame(&self, time_delta_ms: f64) -> Result<(), Box<dyn Error>>;
}