Skip to main content

openid/
lib.rs

1#![doc = include_str!("../README.md")]
2#![warn(
3    missing_docs,
4    missing_debug_implementations,
5    missing_copy_implementations,
6    trivial_casts,
7    trivial_numeric_casts,
8    unused_extern_crates,
9    unused_import_braces,
10    unused_qualifications,
11    variant_size_differences
12)]
13mod address;
14mod bearer;
15mod claims;
16mod client;
17mod config;
18mod configurable;
19mod custom_claims;
20mod deserializers;
21mod discovered;
22mod display;
23pub mod error;
24mod options;
25pub mod pkce;
26mod prompt;
27pub mod provider;
28mod response_mode;
29mod standard_claims;
30mod standard_claims_subject;
31mod token;
32mod token_introspection;
33mod userinfo;
34/// Token validation methods.
35pub mod validation;
36
37/// UMA2 OIDC/OAuth2 extension.
38///
39/// See [Federated Authorization for User-Managed Access (UMA) 2.0](https://docs.kantarainitiative.org/uma/wg/oauth-uma-federated-authz-2.0-09.html)
40#[cfg(any(feature = "uma2", doc))]
41pub mod uma2;
42
43pub use ::biscuit::{Compact, CompactJson, Empty, SingleOrMultiple, jws::Compact as Jws};
44pub use address::Address;
45pub use bearer::{Bearer, TemporalBearerGuard};
46pub use claims::Claims;
47pub use client::Client;
48pub use config::Config;
49pub use configurable::Configurable;
50pub use custom_claims::CustomClaims;
51pub use discovered::Discovered;
52pub use display::Display;
53pub use error::{OAuth2Error, OAuth2ErrorCode};
54pub use options::Options;
55pub use pkce::{Pkce, PkceSha256, generate_s256_pkce};
56pub use prompt::Prompt;
57pub use provider::Provider;
58pub use response_mode::ResponseMode;
59pub use standard_claims::StandardClaims;
60pub use standard_claims_subject::StandardClaimsSubject;
61pub use token::Token;
62pub use token_introspection::TokenIntrospection;
63pub use userinfo::Userinfo;
64
65/// Reimport `biscuit` dependency.
66pub mod biscuit {
67    pub use biscuit::*;
68}
69
70/// Alias for [Jws]
71pub type IdToken<T> = Jws<T, Empty>;
72/// Alias for discovered [Client].
73///
74/// See also:
75///
76/// - [Discovered]
77/// - [StandardClaims]
78pub type DiscoveredClient = Client<Discovered, StandardClaims>;
79/// Alias for discovered UMA2 [Client]
80///
81/// See also:
82///
83/// - [uma2::DiscoveredUma2]
84/// - [StandardClaims]
85#[cfg(feature = "uma2")]
86pub type DiscoveredUma2Client = Client<uma2::DiscoveredUma2, StandardClaims>;