winbrew_models\catalog/mod.rs
1//! Typed catalog payloads and raw upstream catalog records.
2//!
3//! The catalog family separates Winbrew's typed catalog surface from the raw
4//! schema that comes from upstream ingestion. The typed types validate package
5//! identity, source, and installer metadata; the raw types intentionally stay
6//! schema-shaped so conversion code can own parsing and normalization.
7//!
8//! Keep catalog-specific logic here when it needs to answer one of these
9//! questions:
10//!
11//! - what a catalog package looks like after validation
12//! - how a raw package or installer record should be converted
13//! - which metadata fields belong to the generated catalog index
14
15pub mod conversion;
16pub mod installer_type;
17pub mod metadata;
18pub mod package;
19pub mod raw;
20
21pub use installer_type::CatalogInstallerType;
22pub use metadata::CatalogMetadata;
23pub use package::{CanonicalInstallerKey, CatalogInstaller, CatalogPackage};
24pub use raw::{RawCatalogInstaller, RawCatalogPackage};