pub mod command;
pub mod convert;
pub mod engine;
pub mod error;
pub mod id;
pub mod model;
pub mod op;
pub mod tree;

// Re-export key types for convenience
pub use command::command::Command;
pub use command::payload::{CommandPayload, SplitDirectionPayload, TableNavDirectionPayload};
pub use convert::{DocumentExport, DocumentImport};
pub use engine::engine::EditorEngine;
pub use error::EditorError;
pub use id::{IdGenerator, SequentialIdGenerator, UuidGenerator};
pub use model::block::{Block, BlockAlignment, BlockId};
pub use model::document::Document;
pub use model::inline::{Mark, TextSpan, normalize_spans};
pub use model::registry::{BlockTypeDef, MarkTypeDef, TypeRegistry, block_type, mark_type};
pub use model::selection::{Position, Selection};
pub use op::operation::Operation;
pub use tree::{collect_subtree, extract_plain_text};
