#![allow(rustdoc::broken_intra_doc_links)]
#![allow(rustdoc::private_intra_doc_links)]
#![allow(rustdoc::redundant_explicit_links)]
#![allow(rustdoc::invalid_rust_codeblocks)]
pub mod algorithm;
pub mod armor;
pub mod callbacks;
pub mod context;
pub mod dump;
pub mod encrypt;
pub mod error;
pub mod ffi;
pub mod ffi_safe;
pub mod key;
pub mod key_signature_builder;
pub mod keygen;
pub mod keyring;
pub mod ops;
pub mod secret;
pub mod security;
pub mod signature;
pub mod signature_handle;
pub mod strconv;
pub mod subkey;
pub mod uid;
pub mod verify;
pub mod version;
pub use algorithm::{Algorithm, Cipher, Compression, Curve, Hash, KeyUsage};
#[cfg(feature = "pqc")]
pub use algorithm::{PqcAlgorithm, librnp_supports_pqc};
pub use armor::{ContentType, armor_bytes, dearmor, dearmor_bytes, enarmor, guess_contents};
pub use callbacks::{KeyProvider, KeyRequestOutcome, PasswordProvider, RequestedKeyType};
pub use context::{Context, KeyringFormat};
pub use dump::{
DumpFlags, JsonDumpFlags, JsonFlags, dump_packets_bytes_to_json, dump_packets_to_json,
dump_packets_to_output,
};
pub use encrypt::{
AddPasswordOptions, AeadType, DecryptResult, Decryptor, EncryptFlags, Encryptor, decrypt,
decrypt_to,
};
pub use error::{Error, ErrorKind, Result, from_rnp_code, unknown_variant};
pub use key::{AddUidOptions, ProtectOptions, RevocationCode, RevocationReason};
pub use key::{
ExportFlags, Key, KeyIdentifier, LoadSaveFlags, RemoveFlags, RemoveSignaturesFlags, UnloadFlags,
};
pub use key_signature_builder::{
CertificationBuilder, ConfiguredBuilder, DirectSignatureBuilder, RevocationSignatureBuilder,
SignatureSetterOps,
};
pub use keygen::{KeyBuilder, SubkeyBuilder, generate_key_json};
pub use keyring::{IdentifierIterator, IdentifierKind};
pub use ops::{
ArmorType, Input, Output, OutputFileFlags, call_for_optional_string, call_for_string,
cstr_to_optional_string, cstr_to_string,
};
pub use secret::{SecretString, zero_string_bytes};
pub use security::{
FeatureType, SecurityFlags, SecurityLevel, SecurityRule, calculate_iterations,
request_password, supported_features, supports_feature,
};
pub use signature::{
Mode, Signer, generate_revocation_certificate, generate_revocation_certificate_with, sign,
sign_cleartext, sign_detached, verify, verify_detached,
};
pub use signature_handle::{Signature, SignatureType, Subpacket, SubpacketType};
pub use subkey::Subkey;
pub use uid::{Uid, UidType};
pub use verify::{
FileInfo, Recipient, SignatureStatus, Symenc, VerifyFlags, VerifyOp, VerifyResult,
VerifySignature,
};
pub fn version_string() -> String {
crate::version::version_string()
}