class SpringDocHints implements RuntimeHintsRegistrar {

	static Class[] typesToRegister = {
			//swagger-models
			io.swagger.v3.oas.models.security.SecurityScheme.Type.class,
			io.swagger.v3.oas.models.security.SecurityScheme.In.class,
			io.swagger.v3.oas.models.media.Encoding.class,
			io.swagger.v3.oas.models.info.Contact.class,
			io.swagger.v3.oas.models.info.License.class,
			io.swagger.v3.oas.models.security.OAuthFlow.class, io.swagger.v3.oas.models.security.OAuthFlows.class,
			io.swagger.v3.oas.models.security.SecurityScheme.class,
			io.swagger.v3.oas.models.tags.Tag.class,
			io.swagger.v3.oas.models.servers.ServerVariable.class,
			io.swagger.v3.oas.models.servers.Server.class,
			io.swagger.v3.oas.models.security.SecurityRequirement.class,
			io.swagger.v3.oas.models.info.Info.class,
			io.swagger.v3.oas.models.parameters.RequestBody.class,
			io.swagger.v3.oas.models.media.Schema.class,
			io.swagger.v3.oas.models.media.Content.class,
			io.swagger.v3.oas.models.media.ArraySchema.class,
			io.swagger.v3.oas.models.responses.ApiResponse.class,
			io.swagger.v3.oas.models.responses.ApiResponses.class,
			io.swagger.v3.oas.models.ExternalDocumentation.class,
			io.swagger.v3.oas.models.links.LinkParameter.class,
			io.swagger.v3.oas.models.links.Link.class,
			io.swagger.v3.oas.models.parameters.Parameter.class,
			io.swagger.v3.oas.models.Operation.class,
			io.swagger.v3.oas.models.headers.Header.class,
			ModelConverter.class,
			ModelConverters.class,
			SpecFilter.class,
			MediaType.class,
			ApiResponsesSerializer.class,
			PathsSerializer.class,
			ComponentsMixin.class,
			ExtensionsMixin.class,
			OpenAPIMixin.class,
			OperationMixin.class,
			SchemaMixin.class,
			Schema31Mixin.class,
			Components31Mixin.class,
			OpenAPI31Mixin.class,
			Discriminator31Mixin.class,
			Paths.class,
			XML.class,
			UUIDSchema.class,
			PathItem.class,
			ServerVariables.class,
			OpenAPI.class,
			Components.class,
			StringSchema.class,
			DateTimeSchema.class,
			Discriminator.class,
			BooleanSchema.class,
			FileSchema.class,
			IntegerSchema.class,
			MapSchema.class,
			ObjectSchema.class,
			Scopes.class,
			DateSchema.class,
			ComposedSchema.class,
			BinarySchema.class,
			ByteArraySchema.class,
			EmailSchema.class,
			Example.class,
			EncodingProperty.class,
			NumberSchema.class,
			PasswordSchema.class,
			CookieParameter.class,
			HeaderParameter.class,
			PathParameter.class,
			QueryParameter.class,
			DateSchemaMixin.class,
			ExampleMixin.class,
			MediaTypeMixin.class,
			//springdoc classes
			org.springdoc.core.annotations.ParameterObject.class,
			org.springdoc.core.converters.models.Pageable.class,
			org.springdoc.core.extractor.DelegatingMethodParameter.class,
			// spring
			org.springframework.core.MethodParameter.class
	};

	@Override
	public void registerHints(RuntimeHints hints, ClassLoader classLoader) {<FILL_FUNCTION_BODY>}

}

		hints.proxies()
				.registerJdkProxy(org.springframework.web.context.request.NativeWebRequest.class);
		hints.reflection()
				.registerType(java.lang.Module.class,
						hint -> hint.withMembers(MemberCategory.DECLARED_FIELDS,
								MemberCategory.INVOKE_DECLARED_CONSTRUCTORS,
								MemberCategory.INVOKE_DECLARED_METHODS))
				.registerType(java.lang.ModuleLayer.class, MemberCategory.INVOKE_DECLARED_METHODS)
				.registerType(java.lang.module.Configuration.class, MemberCategory.INVOKE_DECLARED_METHODS)
				.registerType(java.lang.module.ResolvedModule.class, MemberCategory.INVOKE_DECLARED_METHODS);
		//swagger-models
		Arrays.stream(typesToRegister).forEach(aClass ->
				hints.reflection().registerType(aClass,
						hint -> hint.withMembers(
								MemberCategory.DECLARED_FIELDS,
								MemberCategory.INVOKE_DECLARED_CONSTRUCTORS,
								MemberCategory.INVOKE_DECLARED_METHODS
						)));

		//springdoc
		hints.reflection().registerField(FieldUtils.getDeclaredField(io.swagger.v3.core.converter.ModelConverters.class, "converters", true));
		hints.reflection().registerType(org.springdoc.core.utils.Constants.class, hint -> hint.withMembers(MemberCategory.DECLARED_FIELDS));
		hints.resources().registerPattern(SpringDocUIConfiguration.SPRINGDOC_CONFIG_PROPERTIES)
				.registerResourceBundle("sun.util.resources.LocaleNames");
	
<no_super_class>