pub mod authoring;
mod connectivity;
mod error;
mod flow;
mod port;
mod release;
mod system;
pub use authoring::{
assign_to_group, connect_port_to_element, connect_ports, contain_in_spatial_structure,
create_classified_system, create_group, create_port, create_system, nest_ports,
reference_in_spatial_structure, ClassifiedSystemDraft, SystemAuthoringError,
SystemAuthoringResult, SystemKind,
};
pub use connectivity::{
Connection, ConnectionGraph, Direction, FlowNetwork, FlowQuery, NetworkGraph,
};
pub use error::{NotInSchema, SchemaGap, SchemaResolutionError, SystemAnomaly};
pub use flow::{role_inconsistencies, ElementRole, FlowDirection, RoleInconsistency};
pub use ifc_schema::SchemaVersion;
pub use port::{ports, Attachment, Port};
pub use release::schema_of;
pub use system::{systems, System};
pub use zone::{long_name_of, spatial_placements, try_zones, zones, SpatialPlacement, Zone};
mod assignment;
pub(crate) mod zone;