Skip to main content

greentic_secrets_spec/
lib.rs

1#![cfg_attr(not(feature = "std"), no_std)]
2
3#[cfg(not(feature = "std"))]
4extern crate alloc;
5
6pub mod backend;
7pub mod error;
8pub mod helpers;
9pub mod key_provider;
10pub mod requirements;
11pub mod result_ext;
12pub mod serde_util;
13pub mod types;
14pub mod uri;
15
16pub use backend::{SecretVersion, SecretsBackend, VersionedSecret};
17pub use error::{DecryptError, DecryptResult, Error, Result, SecretsError, SecretsResult};
18pub use helpers::*;
19pub use key_provider::*;
20pub use requirements::*;
21pub use result_ext::*;
22pub use serde_util::*;
23pub use types::*;
24pub use uri::*;
25
26#[cfg(not(feature = "std"))]
27use alloc::sync::Arc;
28#[cfg(feature = "std")]
29use std::sync::Arc;
30
31pub type DynSecretsBackend = Arc<dyn SecretsBackend + Send + Sync>;
32
33pub mod prelude {
34    pub use crate::ResultExt;
35    pub use crate::uri::*;
36    pub use crate::{
37        Envelope, KeyProvider, SecretIdentifier, SecretListItem, SecretMeta, SecretRecord,
38        SecretsBackend, SecretsError, SecretsResult, record_from_plain, with_ttl,
39    };
40}