mod engine;
mod env;
mod gpu_view;
mod localization;
mod platform;
mod readback;
mod renderer;
mod runner;
#[cfg(any(test, feature = "testing"))]
pub mod testing;
pub mod theme;
mod view_renderer;
mod widgets;
pub(crate) use waterui_backend_core::{animation, gesture, scroll, time};
pub use engine::{Brush, DrawContext, WidgetTheme};
use waterui_core::Environment;
pub trait Style: WidgetTheme + 'static {
fn install_tokens(&self, env: &mut Environment);
}
pub use gpu_view::{HydrolysisExt, HydrolysisGpuView};
pub use keyboard_types;
#[cfg(all(target_arch = "wasm32", feature = "web"))]
pub use platform::BrowserWindow;
#[cfg(feature = "winit")]
pub use platform::WinitWindow;
pub use platform::{
InputEvent, KeyCode, KeyState, Modifiers, OffscreenGpuContext, OffscreenSurface,
OffscreenWindow, PlatformWindow, PointerButton, PointerKind, SurfaceError, SurfaceFrame,
SurfaceProvider, TextInputPurpose, TextInputState, TouchPhase,
};
pub use renderer::{HydroState, HydrolysisRenderTarget, HydrolysisRenderer, RenderContext};
pub use runner::run;
pub use runner::{FrameCounters, FramePhases, FrameProfile, SemanticPumpResult, SemanticRuntime};
#[cfg(not(target_arch = "wasm32"))]
pub use runner::{HeadlessPumpResult, HeadlessRuntime, HeadlessSnapshot};
pub use view_renderer::HydrolysisViewRenderer;
#[cfg(hydrolysis_macos_system_webview)]
pub use widgets::platform::webview::MacSystemWebViewController;