mod behavior;
mod config;
mod drag_drop;
mod error;
mod layout;
#[cfg(not(target_arch = "wasm32"))]
mod notification;
mod project;
#[cfg(not(target_arch = "wasm32"))]
mod recent_files;
#[cfg(not(target_arch = "wasm32"))]
mod settings;
mod theme;
mod widget;

pub use drag_drop::render_drop_overlay_with_category;
pub use error::MosaicError;
#[cfg(not(target_arch = "wasm32"))]
pub use layout::LayoutEvent;
pub use layout::Mosaic;
#[cfg(not(target_arch = "wasm32"))]
pub use layout::format_window_title;
#[cfg(not(target_arch = "wasm32"))]
pub use notification::{ToastKind, Toasts};
pub use project::{ProjectSaveFile, WindowLayout};
#[cfg(not(target_arch = "wasm32"))]
pub use recent_files::{RecentFiles, RecentFilesAction};
#[cfg(not(target_arch = "wasm32"))]
pub use settings::Settings;
#[cfg(not(target_arch = "wasm32"))]
pub use theme::ThemeConfig;
pub use theme::{ThemeState, apply_theme, render_theme_editor_window};
pub use widget::{Pane, Widget, WidgetContext, WidgetEntry};
