gglib_core/download/mod.rs
1//! Download domain types, events, errors, and traits.
2//!
3//! This module contains pure data types and trait definitions for the download
4//! system. No I/O, networking, or runtime dependencies allowed.
5//!
6//! # Structure
7//!
8//! - `types` - Core identifiers and data structures (`DownloadId`, `Quantization`, `ShardInfo`)
9//! - `events` - Download events and status types (`DownloadEvent`, `DownloadStatus`)
10//! - `errors` - Error types for download operations
11//! - `queue` - Queue snapshot DTOs (`QueueSnapshot`, `QueuedDownload`, `FailedDownload`)
12//! - `completion` - Queue run completion tracking types
13
14pub mod completion;
15pub mod errors;
16pub mod events;
17pub mod queue;
18pub mod types;
19
20// Re-export commonly used types
21pub use completion::{
22 AttemptCounts, CompletionDetail, CompletionKey, CompletionKind, QueueRunSummary,
23};
24pub use errors::{DownloadError, DownloadResult};
25pub use events::{DownloadEvent, DownloadStatus, DownloadSummary};
26pub use queue::{FailedDownload, QueueSnapshot, QueuedDownload};
27pub use types::{DownloadId, Quantization, ShardInfo};