{
  "source": "file.js",
  "method": "read",
  "input-schema": {
    "type": "object",
    "properties": {
      "path": {
        "type": "string",
        "format": "filechooser",
        "required": true
      },
      "encoding": {
        "type": "string",
        "enum": ["utf8", "utf-8", "ascii", "binary", "latin1", "hex", "base64", "base64url", "ucs2", "ucs-2", "utf16le", "utf-16le"],
        "description": "Optionally specify an encoding. Choose \"binary\" if reading binary files like images, pdfs etc."
      }
    },
    "additionalProperties": false
  },
  "output-schema": {
    "type": "string",
    "description": "Will be an object if the encoding is set as binary",
    "dynamic": {
      "target": "outputSchema",
      "dependencies": [
        {
          "field": "encoding",
          "value": "binary",
          "schema": {
            "type": "object"
          }
        }
      ]
    }
  },
  "meta": {
    "name": "read",
    "description": "Read a file and return its contents"
  }
}