freedom_api/
lib.rs

1#![doc = include_str!("../README.md")]
2
3mod api;
4#[cfg(feature = "caching")]
5mod caching_client;
6mod client;
7pub mod error;
8pub mod extensions;
9mod gateway_licenses;
10mod utils;
11
12pub use self::{
13    api::{Api, Container, Inner, PaginatedStream, Value, post::Post},
14    client::Client,
15    gateway_licenses::GatewayApi,
16};
17
18/// Contains the client, data models, and traits necessary for queries
19pub mod prelude {
20    #[cfg(feature = "caching")]
21    pub use crate::caching_client::CachingClient;
22    pub use crate::{
23        api::{
24            Api, Container, Inner, PaginatedStream, Value,
25            post::{
26                BandDetailsBuilder, OverrideBuilder, Post, SatelliteBuilder,
27                SatelliteConfigurationBuilder, UserBuilder,
28            },
29        },
30        client::Client,
31        config::*,
32        extensions::*,
33        models::*,
34    };
35}
36
37/// Data types exposed by the Freedom API
38///
39/// Re-export of the models found in the `freedom-models` crate.
40pub mod models {
41    pub use freedom_models::{
42        account::*, azel::*, band::*, satellite::*, satellite_configuration::*, site::*, task::*,
43        user::*,
44    };
45}
46
47/// Configuration options for Freedom API
48///
49/// Re-export of the types found in the `freedom-config` crate.
50pub mod config {
51    pub use freedom_config::{
52        Config, ConfigBuilder, Env, Environment, IntoEnv, Prod, Secret, Test,
53    };
54}