{
  "tool": "redimensionneur",
  "name": "Le Redimensionneur en lot",
  "apiVersion": "1",
  "description": "Redimensionne une image (largeur/hauteur/plus grand côté/pourcentage) en conservant le ratio, puis ré-encode en JPEG/PNG/WebP. 100 % dans le navigateur.",
  "url": "https://sui-juris.fr/p2p-tools/redimensionneur/",
  "ops": {
    "resize": {
      "summary": "Redimensionne une image et la ré-encode.",
      "args": {
        "fileBytes":  { "type": "base64", "required": true, "description": "L'image source encodée en base64." },
        "filename":   { "type": "string", "required": false, "description": "Nom du fichier source (défaut image)." },
        "mode":       { "type": "string", "required": false, "default": "longest", "enum": ["width", "height", "longest", "percent"], "description": "Dimension de référence : largeur, hauteur, plus grand côté, ou pourcentage." },
        "value":      { "type": "number", "required": false, "description": "Valeur cible (px, ou % si mode=percent)." },
        "width":      { "type": "number", "required": false, "description": "Raccourci : largeur cible en px (fixe mode=width)." },
        "height":     { "type": "number", "required": false, "description": "Raccourci : hauteur cible en px (fixe mode=height)." },
        "format":     { "type": "string", "required": false, "default": "image/jpeg", "enum": ["image/jpeg", "image/png", "image/webp"], "description": "Format de sortie." },
        "quality":    { "type": "number", "required": false, "default": 85, "description": "Qualité 1–100 (ignorée pour PNG)." },
        "noEnlarge":  { "type": "boolean", "required": false, "default": false, "description": "Ne pas agrandir au-delà de la taille d'origine." }
      },
      "returns": { "bytes": "base64 de l'image redimensionnée", "mime": "type MIME de sortie", "filename": "nom suggéré", "width": "largeur px", "height": "hauteur px" }
    }
  }
}
