data class OidcDiscoveryResponse(val issuer: String, val authorizationEndpoint: String, val tokenEndpoint: String, val introspectionEndpoint: String? = null, val userinfoEndpoint: String? = null, val endSessionEndpoint: String? = null, val jwksUri: String, val checkSessionIframe: String? = null, val grantTypesSupported: List<String> = emptyList(), val responseTypesSupported: List<String> = emptyList(), val subjectTypesSupported: List<String> = emptyList(), val idTokenSigningAlgValuesSupported: List<String> = emptyList(), val idTokenEncryptionAlgValuesSupported: List<String> = emptyList(), val idTokenEncryptionEncValuesSupported: List<String> = emptyList(), val userinfoSigningAlgValuesSupported: List<String> = emptyList(), val userinfoEncryptionAlgValuesSupported: List<String> = emptyList(), val userinfoEncryptionEncValuesSupported: List<String> = emptyList(), val requestObjectSigningAlgValuesSupported: List<String> = emptyList(), val requestObjectEncryptionAlgValuesSupported: List<String> = emptyList(), val requestObjectEncryptionEncValuesSupported: List<String> = emptyList(), val responseModesSupported: List<String> = emptyList(), val registrationEndpoint: String? = null, val tokenEndpointAuthMethodsSupported: List<String> = emptyList(), val tokenEndpointAuthSigningAlgValuesSupported: List<String> = emptyList(), val introspectionEndpointAuthMethodsSupported: List<String> = emptyList(), val introspectionEndpointAuthSigningAlgValuesSupported: List<String> = emptyList(), val authorizationSigningAlgValuesSupported: List<String> = emptyList(), val authorizationEncryptionAlgValuesSupported: List<String> = emptyList(), val authorizationEncryptionEncValuesSupported: List<String> = emptyList(), val claimsSupported: List<String> = emptyList(), val claimTypesSupported: List<String> = emptyList(), val claimsParameterSupported: Boolean? = null, val scopesSupported: List<String> = emptyList(), val requestParameterSupported: Boolean? = null, val requestUriParameterSupported: Boolean? = null, val requireRequestUriRegistration: Boolean? = null, val codeChallengeMethodsSupported: List<String> = emptyList(), val tlsClientCertificateBoundAccessTokens: Boolean? = null, val revocationEndpoint: String? = null, val revocationEndpointAuthMethodsSupported: List<String> = emptyList(), val revocationEndpointAuthSigningAlgValuesSupported: List<String> = emptyList(), val backchannelLogoutSupported: Boolean? = null, val backchannelLogoutSessionSupported: Boolean? = null, val deviceAuthorizationEndpoint: String? = null, val backchannelTokenDeliveryModesSupported: List<String> = emptyList(), val backchannelAuthenticationEndpoint: String? = null, val backchannelAuthenticationRequestSigningAlgValuesSupported: List<String> = emptyList(), val requirePushedAuthorizationRequests: Boolean? = null, val pushedAuthorizationRequestEndpoint: String? = null, val mtlsEndpointAliases: Map<String, String>? = null, val authorizationResponseIssParameterSupported: Boolean? = null)