{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ConnectionOptionsOIDCMetadata",
  "title": "ConnectionOptionsOIDCMetadata",
  "description": "OpenID Connect Provider Metadata as per https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata",
  "type": "object",
  "properties": {
    "acr_values_supported": {
      "$ref": "#/components/schemas/ConnectionAcrValuesSupported"
    },
    "authorization_endpoint": {
      "$ref": "#/components/schemas/ConnectionAuthorizationEndpoint"
    },
    "claim_types_supported": {
      "$ref": "#/components/schemas/ConnectionClaimTypesSupported"
    },
    "claims_locales_supported": {
      "$ref": "#/components/schemas/ConnectionClaimsLocalesSupported"
    },
    "claims_parameter_supported": {
      "$ref": "#/components/schemas/ConnectionClaimsParameterSupported"
    },
    "claims_supported": {
      "$ref": "#/components/schemas/ConnectionClaimsSupported"
    },
    "display_values_supported": {
      "$ref": "#/components/schemas/ConnectionDisplayValuesSupported"
    },
    "dpop_signing_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionDpopSigningAlgValuesSupported"
    },
    "end_session_endpoint": {
      "$ref": "#/components/schemas/ConnectionEndSessionEndpoint"
    },
    "grant_types_supported": {
      "$ref": "#/components/schemas/ConnectionGrantTypesSupported"
    },
    "id_token_encryption_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionIdTokenEncryptionAlgValuesSupported"
    },
    "id_token_encryption_enc_values_supported": {
      "$ref": "#/components/schemas/ConnectionIdTokenEncryptionEncValuesSupported"
    },
    "id_token_signing_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionIdTokenSigningAlgValuesSupported"
    },
    "issuer": {
      "$ref": "#/components/schemas/ConnectionIssuer"
    },
    "jwks_uri": {
      "$ref": "#/components/schemas/ConnectionJwksUri"
    },
    "op_policy_uri": {
      "$ref": "#/components/schemas/ConnectionOpPolicyUri"
    },
    "op_tos_uri": {
      "$ref": "#/components/schemas/ConnectionOpTosUri"
    },
    "registration_endpoint": {
      "$ref": "#/components/schemas/ConnectionRegistrationEndpoint"
    },
    "request_object_encryption_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionRequestObjectEncryptionAlgValuesSupported"
    },
    "request_object_encryption_enc_values_supported": {
      "$ref": "#/components/schemas/ConnectionRequestObjectEncryptionEncValuesSupported"
    },
    "request_object_signing_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionRequestObjectSigningAlgValuesSupported"
    },
    "request_parameter_supported": {
      "$ref": "#/components/schemas/ConnectionRequestParameterSupported"
    },
    "request_uri_parameter_supported": {
      "$ref": "#/components/schemas/ConnectionRequestUriParameterSupported"
    },
    "require_request_uri_registration": {
      "$ref": "#/components/schemas/ConnectionRequireRequestUriRegistration"
    },
    "response_modes_supported": {
      "$ref": "#/components/schemas/ConnectionResponseModesSupported"
    },
    "response_types_supported": {
      "$ref": "#/components/schemas/ConnectionResponseTypesSupported"
    },
    "scopes_supported": {
      "$ref": "#/components/schemas/ConnectionScopesSupported"
    },
    "service_documentation": {
      "$ref": "#/components/schemas/ConnectionServiceDocumentation"
    },
    "subject_types_supported": {
      "$ref": "#/components/schemas/ConnectionSubjectTypesSupported"
    },
    "token_endpoint": {
      "$ref": "#/components/schemas/ConnectionTokenEndpoint"
    },
    "token_endpoint_auth_methods_supported": {
      "$ref": "#/components/schemas/ConnectionTokenEndpointAuthMethodsSupported"
    },
    "token_endpoint_auth_signing_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionTokenEndpointAuthSigningAlgValuesSupported"
    },
    "ui_locales_supported": {
      "$ref": "#/components/schemas/ConnectionUiLocalesSupported"
    },
    "userinfo_encryption_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionUserinfoEncryptionAlgValuesSupported"
    },
    "userinfo_encryption_enc_values_supported": {
      "$ref": "#/components/schemas/ConnectionUserinfoEncryptionEncValuesSupported"
    },
    "userinfo_endpoint": {
      "$ref": "#/components/schemas/ConnectionUserinfoEndpoint"
    },
    "userinfo_signing_alg_values_supported": {
      "$ref": "#/components/schemas/ConnectionUserinfoSigningAlgValuesSupported"
    }
  },
  "required": [
    "authorization_endpoint",
    "id_token_signing_alg_values_supported",
    "issuer",
    "jwks_uri"
  ],
  "additionalProperties": true
}