1#![allow(unsafe_code)]
2
3mod bls_cache;
4mod derive_keys;
5mod error;
6mod gtelement;
7mod public_key;
8mod secret_key;
9mod signature;
10
11#[cfg(feature = "py-bindings")]
12mod parse_hex;
13
14pub use bls_cache::BlsCache;
15pub use derive_keys::*;
16pub use error::{Error, Result};
17pub use gtelement::GTElement;
18pub use public_key::{hash_to_g1, hash_to_g1_with_dst, PublicKey};
19pub use secret_key::SecretKey;
20pub use signature::{
21    aggregate, aggregate_pairing, aggregate_verify, aggregate_verify_gt, hash_to_g2,
22    hash_to_g2_with_dst, sign, sign_raw, verify, Signature,
23};
24
25pub type G1Element = PublicKey;
26pub type G2Element = Signature;