1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
//! Prelude module for convenient imports.
//!
//! This module re-exports commonly used types, traits, and functions from arch-toolkit,
//! allowing you to import everything you need with a single `use arch_toolkit::prelude::*;`.
//!
//! # Examples
//!
//! ## Basic Usage
//!
//! ```no_run
//! use arch_toolkit::prelude::*;
//!
//! # async fn example() -> Result<()> {
//! let client = ArchClient::new()?;
//! let packages: Vec<AurPackage> = client.aur().search("yay").await?;
//! Ok(())
//! # }
//! ```
//!
//! ## With Custom Configuration
//!
//! ```no_run
//! use arch_toolkit::prelude::*;
//! use std::time::Duration;
//!
//! # async fn example() -> Result<()> {
//! let client = ArchClient::builder()
//! .timeout(Duration::from_secs(60))
//! .user_agent("my-app/1.0")
//! .build()?;
//! let packages = client.aur().search("yay").await?;
//! Ok(())
//! # }
//! ```
//!
//! ## Using Mock for Testing
//!
//! ```no_run
//! use arch_toolkit::prelude::*;
//!
//! # async fn example() -> Result<()> {
//! let mock = MockAurApi::new()
//! .with_search_result("yay", Ok(vec![]));
//! let packages = mock.search("yay").await?;
//! Ok(())
//! # }
//! ```
//!
//! ## Dependency Resolution
//!
//! ```ignore
//! use arch_toolkit::prelude::*;
//!
//! let resolver = DependencyResolver::new();
//! let packages = vec![
//! PackageRef {
//! name: "firefox".into(),
//! version: "121.0".into(),
//! source: PackageSource::Official {
//! repo: "extra".into(),
//! arch: "x86_64".into(),
//! },
//! },
//! ];
//!
//! let result = resolver.resolve(&packages).unwrap();
//! println!("Found {} dependencies", result.dependencies.len());
//! ```
// Core client types
pub use crate;
// Data types
pub use crate;
// Error handling
pub use crate;
// Traits
pub use crateAurApi;
// Testing
pub use crateMockAurApi;
// Configuration types
pub use crate;
pub use crateValidationConfig;
pub use crateRetryPolicy;
pub use crateCacheInvalidator;
// Health types
pub use crate;
// Dependency types and functions
pub use crate;
pub use crate;