1#![forbid(unsafe_code)]
4#![warn(missing_docs)]
5
6pub(crate) mod apply;
8pub(crate) mod capture;
10pub(crate) mod config;
12pub(crate) mod error;
14pub(crate) mod identity;
16pub mod model;
18pub(crate) mod plan;
20pub(crate) mod reconcile;
22pub(crate) mod runtime;
24pub(crate) mod store;
26
27#[must_use]
29pub const fn version() -> &'static str {
30 env!("CARGO_PKG_VERSION")
31}
32
33pub use apply::{ApplyError, RestApplyResult, SalesforceApplier, project_sync_link};
34pub use capture::{capture_batch, capture_stream, load_replay_id};
35pub use config::{ConflictPolicy, LaneThresholds, ObjectSync, Owner};
36pub use error::ForceSyncError;
37pub use identity::SyncKey;
38pub use model::{ChangeEnvelope, ChangeOperation, SourceCursor, SourceSystem};
39pub use plan::{ApplyLane, MergeOutcome, PlanDecision, PlannerContext, merge_payload, plan_change};
40pub use reconcile::DriftItem;
41pub use reconcile::{detect_drift, enqueue_repair, run_reconcile_once};
42pub use runtime::{SyncEngine, SyncEngineBuilder};
43pub use store::pg::{
44 AppendResult, CheckpointState, DeadLetter, LeasedTask, PgStore, SyncConflict, SyncLink, migrate,
45};