package dev.lions.user.manager.client.api;

import dev.lions.user.manager.client.filter.AuthHeaderFactory;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;
import org.eclipse.microprofile.rest.client.annotation.RegisterClientHeaders;
import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;

import java.util.Map;

@RegisterRestClient(configKey = "user-api")
@RegisterClientHeaders(AuthHeaderFactory.class)
@Path("/api/health")
@Produces(MediaType.APPLICATION_JSON)
public interface HealthRestClient {

    @GET
    @Path("/keycloak")
    Map<String, Object> getKeycloakHealth();

    @GET
    @Path("/status")
    Map<String, Object> getServiceStatus();
}
