//! `san-motor` — Modèle canonique de SanBevyEditor.
//!
//! Crate Rust pur, zéro dépendance Bevy.
//! Définit les traits et types utilisés par toutes les couches de l'éditeur.
//!
//! # Modules
//!
//! - [`math`]      — Types géométriques (`Vec3`, `Quat`, `Transform`, `Color`)
//! - [`entity`]    — `EntityId`, trait `EntityStore`
//! - [`component`] — `ComponentValue`, trait `ComponentStore`
//! - [`asset`]     — `AssetId`, `AssetMeta`, trait `AssetStore`
//! - [`scene`]     — `SceneHandle`, trait `Scene`
//! - [`engine`]    — Trait `Engine` (composition root)
//! - [`command`]   — `EditorCommand` (unité undo/redo)

#[cfg(not(target_arch = "wasm32"))]
pub mod android;
pub mod asset;
pub mod bridge_protocol;
pub mod command;
pub mod component;
pub mod debug_protocol;
pub mod engine;
pub mod entity;
pub mod fs;
pub mod math;
pub mod physics;
pub mod scene;

// Ré-exports pratiques
pub use asset::{AssetId, AssetKind, AssetMeta, AssetStore};
pub use command::EditorCommand;
pub use component::{ComponentStore, ComponentValue};
pub use engine::Engine;
pub use entity::{EntityId, EntityStore};
pub use math::{Color, Quat, Transform, Vec3};
pub use scene::{OceanData, SavedEntity, SavedPrefab, SavedScene, Scene, SceneHandle};
