#![warn(missing_docs)]
#![deny(
unsafe_code,
trivial_casts,
trivial_numeric_casts,
unused_import_braces,
unused_qualifications
)]
#![allow(
clippy::doc_markdown,
clippy::elidable_lifetime_names,
clippy::use_self,
clippy::missing_errors_doc,
clippy::missing_panics_doc,
clippy::must_use_candidate,
clippy::return_self_not_must_use,
clippy::semicolon_if_nothing_returned,
clippy::or_fun_call,
clippy::missing_const_for_fn,
clippy::multiple_crate_versions,
clippy::too_many_lines,
clippy::option_if_let_else,
clippy::single_match_else,
clippy::uninlined_format_args,
clippy::cast_possible_truncation,
clippy::redundant_pub_crate,
clippy::redundant_clone,
clippy::items_after_statements,
clippy::if_not_else,
clippy::explicit_iter_loop,
clippy::enum_glob_use,
clippy::branches_sharing_code,
clippy::too_long_first_doc_paragraph,
clippy::useless_let_if_seq,
clippy::large_stack_frames,
clippy::match_same_arms,
clippy::similar_names,
clippy::single_char_pattern,
clippy::needless_pass_by_value
)]
pub mod error;
pub use error::Error;
pub mod attrid;
pub use attrid::AttrId;
pub mod cipher;
pub mod kdf;
pub mod views;
pub use views::threshold_marker::{
self, MarkerView, ThresholdParticipant, ThresholdScheme, group_public_key, participants,
set_group_public_key, set_participants, threshold_kind, threshold_params,
};
pub use views::threshold_meta::{
self, DisclosureView, ThresholdDisclosure, ThresholdMetaCipher, ThresholdMetadata,
decrypt_threshold_meta, encrypt_threshold_meta, generate_meta_key, read_threshold_params,
stamp_disclosure_attrs,
};
pub use views::{
AttrView, CipherAttrView, CipherView, ConvView, DataView, FingerprintView, KdfAttrView,
KdfView, OpenView, SealView, SignView, ThresholdAttrView, ThresholdDisclosureView,
ThresholdKeyView, ThresholdView, VerifyView, Views,
};
pub mod keysplit;
pub mod mk;
pub use mk::{
Builder, EncodedMultikey, FN_DSA_KEY_CODECS, KEY_CODECS, KEY_SHARE_CODECS, MAX_ATTRIBUTES,
MAX_DECODED_SIZE, ML_DSA_KEY_CODECS, ML_KEM_KEY_CODECS, Multikey, SLH_DSA_KEY_CODECS,
X25519_KEY_CODECS,
};
pub mod nonce;
pub use nonce::{EncodedNonce, Nonce};
pub use multi_util::EncodingInfo;
pub mod types;
pub use types::{KeyScheme, PrivateKeyBytes, PublicKeyBytes};
#[cfg(feature = "serde")]
pub mod serde;
pub mod prelude {
pub use super::*;
pub use multi_base::Base;
pub use multi_codec::Codec;
pub use multi_util::BaseEncoded;
}