#[derive(Debug, Clone, PartialEq)]
pub enum TypedArray {
Uint8Array,
Int8Array,
Uint16Array,
Int16Array,
Uint32Array,
Int32Array,
Float32Array,
Float64Array,
BigInt64Array,
BigUint64Array,
}
#[derive(Debug, Clone, PartialEq)]
pub enum SHAFamily {
SHA1,
SHA256,
SHA384,
SHA512,
}
#[derive(Debug, Clone, PartialEq)]
pub enum EncodingFormat {
Hex,
Base64,
Base64Url,
Base64UrlNoPad,
None,
}
#[derive(Debug, Clone, PartialEq)]
pub enum ECDSACurve {
P256,
P384,
P521,
}
#[derive(Debug, Clone, PartialEq)]
pub enum ExportKeyFormat {
JWK,
SPKI,
PKCS8,
Raw,
}
impl ToString for SHAFamily {
fn to_string(&self) -> String {
match self {
SHAFamily::SHA1 => "SHA-1".to_string(),
SHAFamily::SHA256 => "SHA-256".to_string(),
SHAFamily::SHA384 => "SHA-384".to_string(),
SHAFamily::SHA512 => "SHA-512".to_string(),
}
}
}
impl ToString for EncodingFormat {
fn to_string(&self) -> String {
match self {
EncodingFormat::Hex => "hex".to_string(),
EncodingFormat::Base64 => "base64".to_string(),
EncodingFormat::Base64Url => "base64url".to_string(),
EncodingFormat::Base64UrlNoPad => "base64urlnopad".to_string(),
EncodingFormat::None => "none".to_string(),
}
}
}
impl ToString for ECDSACurve {
fn to_string(&self) -> String {
match self {
ECDSACurve::P256 => "P-256".to_string(),
ECDSACurve::P384 => "P-384".to_string(),
ECDSACurve::P521 => "P-521".to_string(),
}
}
}
impl ToString for ExportKeyFormat {
fn to_string(&self) -> String {
match self {
ExportKeyFormat::JWK => "jwk".to_string(),
ExportKeyFormat::SPKI => "spki".to_string(),
ExportKeyFormat::PKCS8 => "pkcs8".to_string(),
ExportKeyFormat::Raw => "raw".to_string(),
}
}
}