from typing import Optional
from pydantic import BaseModel

class MessageRequest(BaseModel):
    whatsapp: str          # número de teléfono del cliente
    mensaje: str           # texto enviado por el cliente

class MessageResponse(BaseModel):
    whatsapp: str          # número de teléfono del cliente
    respuesta: str = None  # texto de respuesta del agente
    sticker_id: Optional[str] = None  # ID del sticker (opcional)
    imagen_id: Optional[str] = None  # ID de la imagen (opcional)

# Definición de los Sticker IDs
STICKER_IDS = {
    "inicio": "1467032777697848",
    "creditos": "1793176681331258",
    "inversiones": "1196047109076897",
    "asesor": "1823001752425945",
    "finalizado": "1568142694215054",
}

# Lista de IDs de Requerimiento (basada en el ejemplo proporcionado)
REQUERIMIENTOS = {
    "Consumo": "1983289529182573",
    "Microcrédito": "1512476523351955",
    "Impulso Mujer": "880980734506570",
    "Eco23": "1346135196999201",
    "Otra finalidad": "1520325972642188",
}

# Descripciones de Créditos (datos que hubieran venido de credito_getTiposCreditos)
DESCRIPCIONES_CREDITOS = """
* Consumo: Crédito de consumo para cumplir sueños personales o familiares (estudios, vehículo, viajes, etc.).
* Microcrédito: Crédito para fortalecer pequeños negocios o emprendimientos. Indica tu actividad económica y ventas mensuales.
* Impulso Mujer: Microcrédito dirigido a mujeres emprendedoras. Indica si tu negocio está activo y el objetivo del crédito.
* Eco23: Microcrédito sostenible para proyectos ecológicos o de impacto ambiental (ej. reciclaje, reforestación, energía limpia).
* Otra finalidad: Para otros fines no contemplados en las opciones anteriores.
"""