{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.github.io/benchling/json-schema/MafftOptions.json",
  "title": "MafftOptions",
  "description": "Options to pass to the MAFFT algorithm, only applicable for MAFFT.",
  "properties": {
    "adjustDirection": {
      "default": "fast",
      "description": "Adjust direction:\n  * `fast`: Enabled, quickly.\n  * `accurate`: Enabled, accurately (slow).\n  * `disabled`: Disabled, fastest.\n",
      "enum": [
        "fast",
        "accurate",
        "disabled"
      ],
      "type": "string"
    },
    "gapExtensionPenalty": {
      "default": 0.0,
      "description": "Gap extension penalty.",
      "type": "number"
    },
    "gapOpenPenalty": {
      "default": 1.53,
      "description": "Gap open penalty.",
      "type": "number"
    },
    "maxIterations": {
      "default": 0,
      "description": "Max refinement iterations. Not applicable for auto strategy, as it will be selected automatically.",
      "type": "integer"
    },
    "retree": {
      "default": 2,
      "description": "Tree rebuilding. Only used for 6-mer strategy.",
      "type": "integer"
    },
    "strategy": {
      "default": "auto",
      "description": "MAFFT Strategy:\n  * `auto`: Pick a strategy automatically based on the count and size of inputs.\n  * `sixmer`: Use 6-mer distance for constructing the guide tree.\n  * `localpair`: Compute local pairwise alignments using Smith-Waterman for constructing the guide tree and iterative refinement.\n  * `globalpair`: Compute global pairwise alignments using Needleman-Wunsch for constructing the guide tree and iterative refinement.\n",
      "enum": [
        "auto",
        "sixmer",
        "localpair",
        "globalpair"
      ],
      "type": "string"
    }
  },
  "type": "object"
}