Skip to main content

kget/
lib.rs

1//! KGet - A powerful download library for Rust
2//!
3//! `kget` provides robust downloading capabilities including HTTP/HTTPS,
4pub mod download;
5pub mod advanced_download;
6pub mod config;
7pub mod optimization;
8pub mod utils;
9pub mod progress;
10pub mod ftp;
11pub mod sftp;
12pub mod torrent;
13
14
15pub use config::{Config, ProxyConfig, ProxyType};
16pub use optimization::Optimizer;
17pub use download::{download, verify_iso_integrity};
18pub use advanced_download::AdvancedDownloader;
19pub use progress::create_progress_bar;
20
21// Re-export utils for tests
22pub use utils::{get_filename_from_url_or_default, resolve_output_path, print}; 
23
24
25#[derive(Debug, Clone)]
26pub struct DownloadOptions {
27    pub quiet_mode: bool,
28    pub output_path: Option<String>,
29    pub verify_iso: bool,
30}
31
32impl Default for DownloadOptions {
33    fn default() -> Self {
34        Self {
35            quiet_mode: false,
36            output_path: None,
37            verify_iso: false,
38        }
39    }
40}