namespace SentenceConverterModule.Models
{
    public record ConversionRequest(
        string Language = "pt",
        string InputType = "text",
        string? TextInput = null,
        IFormFile? FileInput = null,
        string? UrlInput = null,
        Dictionary<string, object>? Options = null
    );

    public record ConversionResult(
        bool Success,
        string? OutputText = null,
        string? ErrorMessage = null,
        Dictionary<string, object>? Metadata = null,
        string? PreviewHtml = null
    );

    public class ConversionRequestDto
    {
        public string? Language { get; set; }
        public string InputType { get; set; } = "text";
        public string? TextInput { get; set; }
        public IFormFile? FileInput { get; set; }
        public Dictionary<string, object>? Options { get; set; }
    }

    public class ConverterConfiguration
    {
        public string ConverterType { get; set; } = "";
        public string OutputType { get; set; } = "";
        public bool HasAdvancedOptions { get; set; } = false;
        public bool AllowShare { get; set; } = true;
        public Dictionary<string, string> LocalizedTexts { get; set; } = new();
    }
}
