//! Types for signatures.
use std::fmt;
use std::ops::Deref;
use constants::Curve;
use Error;
use Result;
use crypto::{
mpis,
Hash,
Signer,
};
use HashAlgorithm;
use PublicKeyAlgorithm;
use SignatureType;
use packet::Signature;
use packet::Key;
use KeyID;
use packet::UserID;
use packet::UserAttribute;
use Packet;
use packet;
use packet::signature::subpacket::SubpacketArea;
use serialize::SerializeInto;
use nettle::{self, dsa, ecc, ecdsa, ed25519,