{
    "additionalProperties": true,
    "type": "object",
    "properties": {
        "width": {
            "type": "number",
            "minimum": 1
        },
        "height": {
            "type": "number",
            "minimum": 1
        },
        "scale": {
            "type": "number",
            "exclusiveMinimum": 0
        },
        "fit": {
            "enum": ["cover", "contain", "fill", "inside", "outside"]
        },
        "scaleUp": {
            "type": "boolean"
        },
        "position": {
            "enum": [
                "top",
                "right top",
                "right",
                "right bottom",
                "bottom",
                "left bottom",
                "left",
                "left top",
                "north",
                "northeast",
                "east",
                "southeast",
                "south",
                "southwest",
                "west",
                "northwest",
                "center",
                "centre",
                "entropy",
                "attention"
            ]
        },
        "background": {
            "anyOf": [{ "type": "string" }, { "type": "object" }]
        },
        "format": {
            "enum": ["jpeg", "png", "webp", "avif", "tiff"]
        },
        "quality": {
            "type": "number",
            "minimum": 1
        },
        "sharpOptions": {
            "type": "object",
            "properties": {
                "resize": { "type": "object", "additionalProperties": true },
                "png": { "type": "object", "additionalProperties": true },
                "jpeg": { "type": "object", "additionalProperties": true },
                "webp": { "type": "object", "additionalProperties": true },
                "tiff": { "type": "object", "additionalProperties": true }
            }
        },
        "fileLoader": {
            "type": "string"
        },
        "fileLoaderOptionsGenerator": {
            "anyOf": [{ "type": "string" }, { "instanceof": "Function" }]
        }
    }
}
