1#![cfg_attr(docsrs, feature(doc_auto_cfg))]
4#![cfg_attr(not(feature = "std"), no_std)]
5#![warn(missing_docs)]
8#![deny(unsafe_code)]
9#![deny(unused_crate_dependencies)]
10#![deny(
11 clippy::arithmetic_side_effects,
12 clippy::cast_sign_loss,
13 clippy::cast_possible_truncation,
14 clippy::cast_possible_wrap,
15 clippy::string_slice
16)]
17
18use base64ct as _;
20
21#[cfg(test)]
23use fuel_crypto as _;
24
25#[cfg(feature = "std")]
27#[doc(no_inline)]
28pub use coins_bip32;
29#[cfg(feature = "std")]
31#[doc(no_inline)]
32pub use coins_bip39;
33#[doc(no_inline)]
35pub use fuel_types;
36#[cfg(feature = "random")]
37#[doc(no_inline)]
38pub use rand;
40
41mod error;
42mod hasher;
43mod message;
44mod mnemonic;
45mod secp256;
46
47pub mod ed25519;
48
49pub use secp256::backend::r1 as secp256r1;
50
51pub use secp256::{
52 PublicKey,
53 SecretKey,
54 Signature,
55};
56
57#[cfg(test)]
58mod tests;
59
60pub use error::Error;
61pub use hasher::Hasher;
62pub use message::Message;
63
64#[cfg(all(feature = "std", feature = "random"))]
65pub use mnemonic::generate_mnemonic_phrase;