cts_common/lib.rs
1//! Defines common types and traits used across the CipherStash ecosystem, particularly for CipherStash Token Service (CTS) and the CTS Client
2//! used in `cipherstash-client`.
3//!
4//! # Features
5//!
6//! - `server` - Enables Server-specific types and traits.
7mod auth;
8mod crn;
9mod region;
10mod service;
11mod workspace;
12
13pub mod protocol;
14
15pub use auth::claims;
16pub use crn::{AsCrn, Crn, InvalidCrn};
17pub use region::{AwsRegion, Region, RegionError};
18pub use service::{CtsServiceDiscovery, ServiceDiscovery, ZeroKmsServiceDiscovery};
19pub use workspace::{InvalidWorkspaceId, Workspace, WorkspaceId, WorkspaceIdGenerationError};
20
21// Re-export axum if the server feature is enabled so that the server uses the same version
22#[cfg(feature = "server")]
23pub use axum;
24
25#[cfg(feature = "server")]
26pub use axum_extra;