mod components;
mod modal;
mod panel;
mod panels;
pub use components::*;
pub use modal::ModalWidget;
pub use panel::{FnWidget, Panel};
pub use panels::{
EngineStatusPanelWidget, HelpPanelWidget, MetricDetailPanelWidget, MetricModalWidget,
MetricTableWidget, SearchBarWidget,
};
mod template;
pub use template::*;
use crate::state::AppState;
use radiate_engines::Chromosome;
use ratatui::{buffer::Buffer, layout::Rect};
pub trait AppWidget<C: Chromosome> {
fn render(&self, area: Rect, buf: &mut Buffer, state: &mut AppState<C>);
}