{
  "additionalProperties": false,
  "definitions": {
    "file-conditions": {
      "anyOf": [
        {
          "instanceof": "RegExp"
        },
        {
          "type": "string"
        }
      ]
    }
  },
  "properties": {
    "test": {
      "anyOf": [
        {
          "$ref": "#/definitions/file-conditions"
        },
        {
          "items": {
            "anyOf": [
              {
                "$ref": "#/definitions/file-conditions"
              }
            ]
          },
          "type": "array"
        }
      ]
    },
    "include": {
      "anyOf": [
        {
          "$ref": "#/definitions/file-conditions"
        },
        {
          "items": {
            "anyOf": [
              {
                "$ref": "#/definitions/file-conditions"
              }
            ]
          },
          "type": "array"
        }
      ]
    },
    "exclude": {
      "anyOf": [
        {
          "$ref": "#/definitions/file-conditions"
        },
        {
          "items": {
            "anyOf": [
              {
                "$ref": "#/definitions/file-conditions"
              }
            ]
          },
          "type": "array"
        }
      ]
    },
    "cache": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "string"
        }
      ]
    },
    "filename": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "instanceof": "Function"
        }
      ]
    },
    "algorithm": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "instanceof": "Function"
        }
      ]
    },
    "compressionOptions": {
      "additionalProperties": true,
      "type": "object"
    },
    "threshold": {
      "type": "number"
    },
    "minRatio": {
      "type": "number"
    },
    "deleteOriginalAssets": {
      "type": "boolean"
    }
  },
  "type": "object"
}