rust_auth_utils/
types.rs

1#[derive(Debug, Clone, PartialEq)]
2pub enum TypedArray {
3    Uint8Array,
4    Int8Array,
5    Uint16Array,
6    Int16Array,
7    Uint32Array,
8    Int32Array,
9    Float32Array,
10    Float64Array,
11    BigInt64Array,
12    BigUint64Array,
13}
14
15#[derive(Debug, Clone, PartialEq)]
16pub enum SHAFamily {
17    SHA1,
18    SHA256,
19    SHA384,
20    SHA512,
21}
22
23#[derive(Debug, Clone, PartialEq)]
24pub enum EncodingFormat {
25    Hex,
26    Base64,
27    Base64Url,
28    Base64UrlNoPad,
29    None,
30}
31
32#[derive(Debug, Clone, PartialEq)]
33pub enum ECDSACurve {
34    P256,
35    P384,
36    P521,
37}
38
39#[derive(Debug, Clone, PartialEq)]
40pub enum ExportKeyFormat {
41    JWK,
42    SPKI,
43    PKCS8,
44    Raw,
45}
46
47impl ToString for SHAFamily {
48    fn to_string(&self) -> String {
49        match self {
50            SHAFamily::SHA1 => "SHA-1".to_string(),
51            SHAFamily::SHA256 => "SHA-256".to_string(),
52            SHAFamily::SHA384 => "SHA-384".to_string(),
53            SHAFamily::SHA512 => "SHA-512".to_string(),
54        }
55    }
56}
57
58impl ToString for EncodingFormat {
59    fn to_string(&self) -> String {
60        match self {
61            EncodingFormat::Hex => "hex".to_string(),
62            EncodingFormat::Base64 => "base64".to_string(),
63            EncodingFormat::Base64Url => "base64url".to_string(),
64            EncodingFormat::Base64UrlNoPad => "base64urlnopad".to_string(),
65            EncodingFormat::None => "none".to_string(),
66        }
67    }
68}
69
70impl ToString for ECDSACurve {
71    fn to_string(&self) -> String {
72        match self {
73            ECDSACurve::P256 => "P-256".to_string(),
74            ECDSACurve::P384 => "P-384".to_string(),
75            ECDSACurve::P521 => "P-521".to_string(),
76        }
77    }
78}
79
80impl ToString for ExportKeyFormat {
81    fn to_string(&self) -> String {
82        match self {
83            ExportKeyFormat::JWK => "jwk".to_string(),
84            ExportKeyFormat::SPKI => "spki".to_string(),
85            ExportKeyFormat::PKCS8 => "pkcs8".to_string(),
86            ExportKeyFormat::Raw => "raw".to_string(),
87        }
88    }
89}