#![no_std]
#![cfg_attr(
test,
allow(clippy::unwrap_used, clippy::indexing_slicing, clippy::panic)
)]
#![allow(async_fn_in_trait)]
#![allow(clippy::future_not_send)]
extern crate alloc;
mod alg;
mod claims;
mod codec;
mod encrypt;
mod error;
mod hash;
mod kdf;
mod keys;
pub mod label;
mod seal;
mod sign;
#[cfg(test)]
mod tests;
mod traits;
mod types;
pub use alg::{ContentAlgorithm, KeyAgreementAlgorithm, SignatureAlgorithm};
pub use claims::{Claims, MessageRole, ProtectedHeaders, ValidationParams};
pub use encrypt::{EncryptParams, EncryptedMessage, Opened, build_encrypted, decode_encrypted};
#[cfg(feature = "fixtures")]
pub use encrypt::{SealParts, build_encrypted_with_parts};
pub use error::{
BuildError, ClaimsError, DecodeError, OpenError, ProfileError, SignError, VerifyError,
};
pub use hash::{RequestHash, request_hash};
pub use kdf::{KdfParties, PartyIdentity};
pub use keys::{
Ed25519Signer, Ed25519Verifier, Es256Signer, KeyError, KeyLengthError, P256Verifier,
X25519Recipient, X25519RecipientPublic,
};
#[cfg(feature = "fixtures")]
pub use seal::build_sealed_with_parts;
pub use seal::{SealParams, VerifiedSealed, VerifySealedParams, build_sealed, verify_sealed};
pub use sign::{
SignParams, VerifiedSigned, VerifySignedParams, build_signed, build_signed_with_headers,
verify_signed,
};
pub use traits::{OpenRequest, Recipient, Signer, Verifier};
pub use types::{
ContentType, CoseBytes, ExternalAad, KeyId, MessageId, ResponseSubject, SealedAad, Signature,
Subject, UnixTime,
};
pub use zeroize::Zeroizing;