tiedcrossing_jose/
lib.rs

1// SPDX-FileCopyrightText: 2022 Profian Inc. <opensource@profian.com>
2// SPDX-License-Identifier: AGPL-3.0-only
3
4#![warn(rust_2018_idioms, unused_lifetimes, unused_qualifications, clippy::all)]
5#![forbid(unsafe_code, clippy::expect_used, clippy::panic)]
6
7pub mod b64;
8pub mod jwk;
9pub mod jws;
10
11use b64::Bytes;
12use serde::{Deserialize, Serialize};
13
14pub trait MediaTyped {
15    const TYPE: &'static str;
16}
17
18#[derive(Clone, Debug, Default, PartialEq, Eq, Serialize, Deserialize)]
19pub struct Thumbprint {
20    #[serde(skip_serializing_if = "Option::is_none", default, rename = "x5t")]
21    s1: Option<Bytes>,
22
23    #[serde(skip_serializing_if = "Option::is_none", default, rename = "x5t#S256")]
24    s256: Option<Bytes>,
25}