1pub mod backend;
4pub mod broker;
5pub mod crypto;
6pub mod embedded;
7pub mod errors;
8pub mod http;
9#[cfg(feature = "imds")]
10pub mod imds;
11pub mod key_provider;
12pub mod policy;
13pub mod probe;
14pub mod provider;
15pub mod provider_secrets;
16pub mod resolver;
17pub mod rt;
18pub mod signing_keys;
19pub mod spec;
20pub mod spec_compat;
21pub mod spec_registry;
22pub mod spec_schema;
23pub mod spec_validate;
24pub mod types;
25pub mod uri;
26
27pub use crate::spec_registry::SecretSpecRegistry;
28pub use crate::spec_schema::specs_to_json_schema;
29pub use crate::spec_validate::SecretValidationResult;
30#[cfg(feature = "aws")]
31pub use backend::aws::AwsSecretsManagerBackend;
32#[cfg(feature = "env")]
33pub use backend::env::EnvBackend;
34#[cfg(feature = "file")]
35pub use backend::file::FileBackend;
36#[cfg(feature = "k8s")]
37pub use backend::k8s::K8sBackend;
38pub use backend::{SecretVersion, SecretsBackend, VersionedSecret};
39pub use broker::{BrokerSecret, SecretsBroker};
40pub use crypto::dek_cache::DekCache;
41pub use crypto::envelope::EnvelopeService;
42pub use embedded::{
43 CoreBuilder, CoreConfig, MemoryBackend, MemoryKeyProvider, Policy, SecretsCore, SecretsError,
44};
45pub use errors::{DecryptError, DecryptResult, Error, Result};
46pub use key_provider::KeyProvider;
47pub use policy::{Authorizer, PolicyGuard, Principal};
48pub use provider::Provider;
49pub use provider_secrets::{
50 ProviderSecret, events_provider_secret_uri, get_events_provider_secret,
51 get_messaging_adapter_secret, messaging_adapter_secret_uri, ttl_duration, ttl_seconds,
52};
53pub use resolver::{DefaultResolver, ResolverConfig};
54pub use signing_keys::{SigningPurpose, get_signing_key_ref, signing_key_ref_uri};
55pub use spec::{SecretDescribable, SecretSpec};
56pub use types::{
57 ContentType, EncryptionAlgorithm, Envelope, Scope, SecretIdentifier, SecretListItem,
58 SecretMeta, SecretRecord, Visibility,
59};
60pub use uri::SecretUri;