| IAuthorizationDetailsMetadataProvider | Discovery metadata contributor for the RFC 9396 Rich Authorization Requests feature. Sources the set of authorization_details types the server supports, projected from the same keyed-DI registry that request-time dispatch uses — single source of truth for «what does this server understand». |
| IAuthorizationDetailsPolicy | Single request-time entry point for the RFC 9396 authorization_details policy: per-client allowlist (§5.1) plus per-type composite dispatch (§5). Endpoint-side adapters delegate here so /authorize, /par, CIBA and device-flow share one policy source. |
| IAuthorizationDetailValidator | Validates a single RFC 9396 authorization_details entry whose type value matches the implementation. Hosts register one implementation per supported type via AddAuthorizationDetailValidator<TValidator>(this IServiceCollection, string); the composite IAuthorizationDetailsPolicy dispatches each request entry to the implementation keyed by the entry's type value. |