#![doc(html_root_url = "https://docs.rs/rbt-datalake/0.3.9")]
pub mod core;
pub mod engine;
pub mod json;
pub mod materializer;
pub mod scan;
pub mod testing;
pub use core::{
model_has_test_contract, parse_select_spec, resolve_scan_path, scan_path_exists,
BronzeCheckMode, BronzeDiagnostic, BronzeValidationReport, ColumnMeta, DependencyRef,
DiagnosticSeverity, Materialization, MaterializeConfig, MaterializeMode, ModelDag, ModelLayer,
ModelNode, ModelTests, OutputFormat, PathGlobSet, RbtProjectConfig, RbtTemplateEngine,
RefBackend, RefStrategy, ScanConfig, SelectMode, SelectToken, SourceFormat, SqlModelParser,
StagingFrontmatter, DEFAULT_MAX_ROW_GROUP_BYTES, DEFAULT_MAX_ROW_GROUP_ROWS,
DEFAULT_MEMTABLE_MAX_ROWS, DEFAULT_PROTOBUF_MAX_PAYLOAD_BYTES,
};
pub use engine::{
register_bronze_for_model, register_bronze_sources_for_dag, BronzeRegistrationMode,
BronzeSourceMeta, BronzeTableProvider, DagExecutionSummary, PreviewResult, RbtEngineBuilder,
TransformationEngine,
};
pub use materializer::{
materialize_stream, sibling_iceberg_dir, write_iceberg_fs_table, write_parquet_stream,
MaterializeWriteOptions, MultiFormatWriter, StreamWriteStats, WapMaterializer, WapStatus,
};
pub use json::{JShiftExtractor, JsonExtractSpec};
pub use scan::{parse_hive_partitions, LakeScanner, ScanRequest};
pub use testing::{
assertions_from_model_tests, Assertion, RecordBatchValidator, StreamingAssertionRunner,
UniqueKeyTracker, ValidationResult,
};
pub const VERSION: &str = env!("CARGO_PKG_VERSION");