pub mod asset;
mod binding_style;
pub mod cache;
pub mod collision;
pub mod compiler;
mod compiler_bind;
mod compiler_style;
pub mod constraints;
pub mod control;
pub mod data;
pub mod debug;
pub mod debug_export;
mod debug_geometry;
mod debug_plan;
#[cfg(test)]
mod debug_tests;
mod diagnostic_budget;
pub mod error;
pub mod export;
pub mod expression;
pub mod fingerprint;
pub mod font;
pub mod geometry;
pub mod image;
pub mod inspect;
pub mod ir;
pub mod layout;
mod layout_collision;
mod layout_context;
mod layout_exclusion;
mod layout_flow;
mod layout_geometry;
mod layout_measure;
mod layout_page;
mod layout_policy;
mod layout_region;
mod layout_table;
mod layout_table_stream;
#[cfg(test)]
mod layout_table_tests;
pub mod limits;
mod memory;
pub mod page;
pub mod patch;
mod patch_log;
pub mod preset;
pub mod resolved;
mod resolved_table;
pub mod source;
mod source_build;
mod source_element;
mod source_layout;
mod source_page;
mod source_page_build;
mod source_style;
mod source_table;
mod source_text;
mod source_transform;
pub mod style;
pub mod table;
mod table_columns;
pub mod text;
#[cfg(test)]
mod text_break_tests;
mod transform_math;
pub mod units;
pub mod validation;
mod validation_capability;
mod validation_data;
mod validation_layout;
mod validation_page;
mod validation_table;
pub use asset::{Asset, AssetResolver, FileResolver, MemoryResolver, TemplateResolver};
pub use cache::SceneCache;
pub use collision::{
CollisionBounds, CollisionPolicy, CollisionResolution, CollisionRule, LinearSpatialIndex,
SpatialIndex,
};
pub use compiler::{Compiler, CompilerBuilder};
pub use constraints::{Alignment, Distribution, LayoutConstraints};
pub use control::{
CancellationToken, OperationControl, ProgressEvent, ProgressObserver, ProgressPhase,
};
pub use data::{
resolve_computed_fields, CurrencyValue, DataField, DataSchema, DataType, DataValue,
};
pub use debug::{CollisionMask, DebugOverlay, DebugOverlayOptions, DebugPrimitive, MaskView};
pub use debug_export::{export_collision_mask, MaskFormat};
pub use error::{ErrorCode, FileMakerError, Result};
pub use export::{
export, export_bytes, export_controlled, export_dataset_csv, export_dataset_csv_bytes,
ExportCapabilities, ExportContext, ExportFormat, ExportLoss, ExportLossKind, ExportLossReport,
ExportOutcome, ExportRequest, ExportStyleOverride, Fidelity, HtmlMode, PdfMode,
};
pub use expression::{Expression, ExpressionBudget};
pub use fingerprint::{DocumentFingerprint, FingerprintBuilder};
pub use font::{FontAsset, FontManager, FontResolver, FontSubset};
pub use geometry::{BoundsSet, Insets, PathCommand, Point, Rect, Shape, Size, Transform};
pub use image::{
resolve_image_placement, ImageCrop, ImageFit, ImageOptions, ImageOrientation, ImagePlacement,
PixelRect,
};
pub use inspect::{ElementInspection, LayoutExplanation, PageInspection, SceneInspector};
pub use ir::{
AiPolicy, DocumentIr, ElementId, ElementIr, ElementKind, ExclusionIr, GeometryIr, LayoutMode,
PathCommandIr, Provenance, RegionIr, TableIr, TemplateIr, TextIr, TransformIr,
};
pub use layout::{LayoutEngine, LayoutOptions};
pub use limits::ResourceLimits;
pub use page::{PageBand, PagePlacement, PageRole, PageTemplate, PageTemplateSet};
pub use patch::{Patch, PatchOperation, PatchTransaction};
pub use patch_log::OperationLog;
pub use preset::{Orientation, Preset, PresetRegistry};
pub use resolved::{
LayoutTrace, ResolvedElement, ResolvedExclusion, ResolvedPage, ResolvedRegion, ResolvedScene,
};
pub use resolved_table::{ResolvedTableCell, ResolvedTableFragment, ResolvedTableRow};
pub use source::{
ColorSource, EdgeSource, ElementSource, ElementStyleRuleSource, ExclusionSource, MirrorSource,
ModelKind, PageLayerSource, PageSource, TableSource, TableStyleRuleSource, TemplateSourceV1,
TextSourceOptions, TransformSource,
};
pub use style::{Color, ComputedStyle, ElementStyleRule, Style, StyleCascade};
pub use table::{
BorrowedDataset, ColumnWidth, DataRow, Dataset, InMemoryDataset, StreamingDataset, TableColumn,
TablePage, TablePageSink, TablePaginator, TableSpec, TableStyleRule,
};
pub use table_columns::{resolve_table_columns, ResolvedTableColumn};
pub use text::{
Glyph, GlyphRun, TextDiagnostic, TextEngine, TextLayout, TextLine, TextOptions, TextOverflow,
WritingMode,
};
pub use units::{Length, Unit};
pub use validation::{
preflight, validate_data, validate_layout, validate_template, PreflightOptions, ValidationCode,
ValidationIssue, ValidationReport, ValidationSeverity,
};
pub const FILEMAKER_SCHEMA_V1: &str = "1.0";
pub const ENGINE_VERSION: &str = env!("CARGO_PKG_VERSION");