module.exports = {
  "metadata": {
    "section": "containerdata"
  },
  "definitions": {
    "PluginContainerData": {
      "optionalProperties": {
        "width": {
          "metadata": { "description": "Node display width." },
          "ref": "PluginContainerData_Width"
        },
        "alignment": {
          "metadata": {
            "emitEnum": "PluginContainerData_Alignment",
            "description": "Node alignment in its container."
          },
          "enum": ["CENTER", "LEFT", "RIGHT"]
        },
        "spoiler": {
          "metadata": { "description": "Spoiler cover settings.", "features": ["SPOILER"] },
          "ref": "PluginContainerData_Spoiler"
        },
        "height": {
          "metadata": { "description": "Node display height." },
          "ref": "PluginContainerData_Height"
        },
        "textWrap": {
          "metadata": {
            "description": "Whether the text should wrap around the node when it's displayed. If `textWrap` is `false`, the node fills the width of its container. \n Default: `true` for all node types except `DIVIDER`."
          },
          "type": "boolean"
        }
      }
    },
    "PluginContainerData_Spoiler": {
      "optionalProperties": {
        "enabled": {
          "metadata": {
            "description": "Whether the spoiler cover is enabled. \n Default: `false`"
          },
          "type": "boolean"
        },
        "description": {
          "metadata": { "description": "Text displayed on the spoiler cover." },
          "type": "string"
        },
        "buttonText": {
          "metadata": {
            "description": "Text that appears on the button that removes the spoiler cover."
          },
          "type": "string"
        }
      }
    },
    "PluginContainerData_Width": {
      "metadata": {
        "description": "Node display width." ,
        "oneOf": {
          "properties": ["size", "custom"]
        }
      },
      "optionalProperties": {
        "size": {
          "metadata": {
            "emitEnum": "PluginContainerData_Width_Type",
            "description": "Width of a node in a container. Supported values: \n - `CONTENT`: Width of the container matches the content width. \n - `SMALL`: Small width. \n - `ORIGINAL`: Width of the container matches the original image width. **Note:** This value is only applicable for `imageData` containers. \n `FULL_WIDTH`: Image container takes up the full width of the screen. **Note:** This value is only applicable for `imageData` containers."
          },
          "enum": ["CONTENT", "SMALL", "ORIGINAL", "FULL_WIDTH"]
        },
        "custom": {
          "metadata": { "description": "A custom width value in pixels." },
          "type": "string"
        }
      }
    },
    "PluginContainerData_Height": {
      "optionalProperties": {
        "custom": {
          "metadata": { "description": "Node display height in pixels." },
          "type": "string"
        }
      }
    }
  }
}