package com.arena.combat.config;

import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConfigurationProperties(prefix = "openai")
@Getter
@Setter
public class OpenAiProperties {

    /**
     * Clave secreta de OpenAI API. Obtenida desde la variable de entorno OPENAI_API_KEY.
     */
    private String apiKey = "demo-key";

    /**
     * Modelo configurado para los jefes (por defecto gpt-4o-mini).
     */
    private String model = "gpt-4o-mini";

    /**
     * URL del endpoint de chat completions.
     */
    private String apiUrl = "https://api.openai.com/v1/chat/completions";

    /**
     * Timeout en segundos para la llamada HTTP.
     */
    private int timeoutSeconds = 15;

    public boolean isConfigured() {
        return apiKey != null && !apiKey.isBlank() && !apiKey.equalsIgnoreCase("demo-key") && !apiKey.startsWith("sk-demo");
    }
}
