package com.smyhub.infogenie.infogeniebackendjava.dto.request;

import lombok.Data;

/**
 * Generic request body shared by all vertical AI-tool endpoints
 * (name-analysis, variable-naming, poetry, translation, classical_conversion,
 *  expression-maker, linux-command, markdown_formatting, kinship-calculator).
 *
 * Not all fields are used by every endpoint; handlers read only what they need.
 */
@Data
public class AIToolRequest {

    /** Primary text input (name, code variable, poem topic, text to translate, etc.). */
    private String input;

    /** Secondary context — used by some tools (e.g. source language for translation). */
    private String context;

    /** Target language for translation tool. */
    private String targetLanguage;

    /** Source language for translation tool. */
    private String sourceLanguage;

    /** Programming language for variable-naming tool. */
    private String language;

    /** Style hint (e.g. poem style, expression tone). */
    private String style;

    /** Relationship description for kinship-calculator. */
    private String relationship;
}
