{
  "widget": {
    "name": "Accordion",
    "selector": "jqx-accordion"
  },
  "properties": [
    {
      "name": "expandAnimationMode",
      "value": "slide",
      "allowedValues": [ "slide", "none" ],
      "description": "Sets or gets the animation type.",
      "demoValues": [ "none", "slide" ],
      "type": "string"
    },
    {
      "name": "expandedIndexes",
      "value": [ ],
      "allowedValues": [ ],
      "description": "Sets or gets the expanded item(s). If the property expandMode is set to either 'single', 'singleFitHeight', 'toggle' or 'none', only the item corresponding to the first value in the array is expanded. If the property expandMode is set to either 'single' or 'singleFitHeight' and the expandedIndexes array is empty, the first item is expanded automatically.",
      "demoValues": [ "[0,1]", "[2,3]" ],
      "type": "array"
    },
    {
      "name": "expandMode",
      "value": "singleFitHeight",
      "allowedValues": [ "single", "singleFitHeight", "multiple", "toggle", "none" ],
      "description": "Sets or gets navigation expander's expand mode.",
      "demoValues": [ "multiple", "none" ],
      "type": "string"
    },
    {
      "name": "messages",
      "value": "{ \"en\": { \"missingReference\": \"{{elementType}}: Missing reference to {{files}}.\", \"significantPrecisionDigits\": \"{{elementType}}: the properties significantDigits and precisionDigits cannot be set at the same time.\" } }",
      "allowedValues": [ ],
      "description": "Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property <strong>language</strong>. ",
      "demoValues": [
        "{ \"de\": { \"missingReference\": \"{{elementType}}: Fehlende Bezugnahme auf {{files}}.\", \"significantPrecisionDigits\": \"{{elementType}}: Die Eigenschaften significantDigits und precisionDigits koennen nicht gleichzeitig eingestellt werden.\" } }",
        "{ \"de\": { \"missingReference\": \"{{elementType}}: Fehlende Bezugnahme auf {{files}}.\", \"significantPrecisionDigits\": \"{{elementType}}: Die Eigenschaften significantDigits und precisionDigits koennen nicht gleichzeitig eingestellt werden.\" } }"
      ],
      "type": "object"
    }
  ],
  "events": [
    {
      "name": "collapse",
      "description": "This event is triggered when an item is collapsed."
    },
    {
      "name": "expand",
      "description": "This event is triggered when an item is expanded."
    }
  ],
  "methods": [
    {
      "name": "collapse",
      "description": "Collapses an item at a specified position.",
      "demoValues": [ 0 ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "position",
          "type": "number",
          "description": "The position of the collapsed item.",
          "optional": false
        }
      ]
    },
    {
      "name": "expand",
      "description": "Expands an item at a specified position.",
      "demoValues": [ 0 ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "position",
          "type": "number",
          "description": "The position of the expanded item.",
          "optional": false
        }
      ]
    },
    {
      "name": "insert",
      "description": "Inserts a new item at a specified position.",
      "demoValues": [ 0, "New item" ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "position",
          "type": "number",
          "description": "The position where the item must be inserted.",
          "optional": false
        },
        {
          "name": "value",
          "type": "any",
          "description": "The value of the new item.",
          "optional": false
        }
      ]
    },
    {
      "name": "remove",
      "description": "Removes an item at a specified position.",
      "demoValues": [ 5 ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "position",
          "type": "number",
          "description": "The position of the removed item.",
          "optional": false
        }
      ]
    },
    {
      "name": "update",
      "description": "Updates an item from the dropDown list.",
      "demoValues": [ 5, "Updated item" ],
      "returnDataType": "None",
      "arguments": [
        {
          "name": "position",
          "type": "number",
          "description": "The position where the item must be updated.",
          "optional": false
        },
        {
          "name": "value",
          "type": "any",
          "description": "The value of the updated item.",
          "optional": false
        }
      ]
    }
  ]
}