1pub mod catalog;
9pub mod compliance;
10pub mod domain;
11pub mod ports;
12pub mod schemas;
13
14pub use catalog::{CatalogError, RegulatoryStatus, SectorCatalog, SectorDescriptor};
15
16pub use domain::{
17 error::DppError,
18 gtin::{Gln, GlnError, Gtin, GtinError, gs1_check_digit},
19 identity::{AccessTier, PassportCredential, PassportCredentialSubject, SignedCredential},
20 lint::{LintFinding, LintResult, LintSeverity, lint_sector_data},
21 passport::{
22 FacilitySnapshot, ManufacturerInfo, MaterialEntry, Passport, PassportId, PassportView,
23 ProductCategory,
24 },
25 product_identity::ProductIdentity,
26 sector::{
27 AluminiumData, BatteryChemistry, BatteryData, BatteryType, CarbonFootprint,
28 CarbonFootprintClass, ConstructionData, DetergentData, ElectronicsData,
29 EnergyEfficiencyClass, FibreEntry, FurnitureData, LifecycleStage, MaterialComposition,
30 ProductionRoute, RepairCriterion, RepairabilityScore, Sector, SectorData, SteelData,
31 SurfactantEntry, SvhcSubstance, SystemBoundary, TextileData, ToyData, TyreData,
32 UnsoldGoodsDestination, UnsoldGoodsReason, UnsoldGoodsReport, redact_sector_data,
33 validate_fibre_composition, validate_surfactants, validate_svhc_substances,
34 },
35 status::PassportStatus,
36 transfer::{
37 OperatorRole, ResponsibleOperator, TransferChain, TransferError, TransferReason,
38 TransferRecord, TransferStatus,
39 },
40};
41
42pub use domain::field_error::{FieldError, ValidationErrors};
43
44#[cfg(not(target_arch = "wasm32"))]
45pub use domain::validation::{
46 BatchValidationItem, SectorValidator, SectorValidatorRegistry, batch_errors,
47 validate_raw_sector_data, validate_sector_data, validate_sector_data_batch,
48 validate_sector_data_with_registry,
49};
50
51pub use ports::archive::{
52 ArchivePort, ArchiveReceipt, ArchiveStatus, ArchiveVerification, GhostArchive,
53};
54pub use ports::compliance::{
55 ComplianceError, ComplianceErrorKind, ComplianceFinding, ComplianceRegistry, ComplianceResult,
56 ComplianceStatus, ComplianceStrategy, gate_determination,
57};
58pub use ports::registry_sync::{
59 GhostRegistrySync, RegistrationRequest, RegistryIdentifiers, RegistryRecord, RegistryStatus,
60 RegistrySyncPort,
61};
62
63pub use compliance::passthrough_registry::PassthroughRegistry;