{
  "settings": [
    {
      "key": "width",
      "desc": "Width of `window`.",
      "defaultValue": 400,
      "type": "number"
    },
    {
      "key": "height",
      "desc": "Height of `window`.",
      "defaultValue": 300,
      "type": "number"
    },
    {
      "key": "headerHeight",
      "desc": "Header height of `window`.",
      "defaultValue": 36,
      "type": "number"
    },
    {
      "key": "icon",
      "desc": "An icon place at the top left corner of the window and the docker bar. It supports unicode icons or svg strings.",
      "defaultValue": "",
      "type": "string"
    },
    {
      "key": "showMinimizeButton",
      "desc": "Whether to show the minimize button or not.",
      "defaultValue": true,
      "type": "boolean"
    },
    {
      "key": "showMaximizeButton",
      "desc": "Whether to show the maximize button or not.",
      "defaultValue": true,
      "type": "boolean"
    },
    {
      "key": "showCloseButton",
      "desc": "Whether to show close button or not.",
      "defaultValue": true,
      "type": "boolean"
    },
    {
      "key": "showSlideButton",
      "desc": "Whether to show slide button or not.",
      "defaultValue": true,
      "type": "boolean"
    },
    {
      "key": "showButtonInDocker",
      "desc": "Whether to show button in docker or not.",
      "defaultValue": true,
      "type": "boolean"
    },
    {
      "key": "title",
      "desc": "Title of the window.",
      "defaultValue": "azUI",
      "type": "string"
    },
    {
      "key": "snapToEdge",
      "desc": "Whether to snap to container or not when dragging cursor is close to the container border.",
      "defaultValue": true,
      "type": "boolean"
    }
  ],
  "methods": [
    {
      "params": [],
      "key": "children",
      "desc": "Get child windows.",
      "returns": "Returns an array of child windows with class '.azWindowContent>.azWindow'."
    },
    {
      "params": [
        {
          "key": "notify",
          "desc": "Whether notify the docker or not.",
          "defaultValue": false,
          "type": "boolean"
        }
      ],
      "key": "activate",
      "desc": "Activate the window."
    },
    {
      "params": [
        {
          "key": "notify",
          "desc": "Whether notify the docker or not.",
          "defaultValue": false,
          "type": "boolean"
        }
      ],
      "key": "inactivate",
      "desc": "Inactivate the window."
    },
    {
      "params": [
        {
          "key": "notify",
          "desc": "Whether notify the docker or not.",
          "defaultValue": false,
          "type": "boolean"
        }
      ],
      "key": "close",
      "desc": "Close the window. \n        <pre><code> const abc = '123';\n const def = function() {};</code></pre>"
    },
    {
      "params": [],
      "key": "slideup",
      "desc": "Slide up the window."
    },
    {
      "params": [],
      "key": "slidedown",
      "desc": "Slide down the window."
    },
    {
      "params": [],
      "key": "minimize",
      "desc": "Minimize the window."
    },
    {
      "params": [],
      "key": "maximize",
      "desc": "Maximize the window."
    },
    {
      "params": [],
      "key": "restore",
      "desc": "Restore the window."
    }
  ],
  "events": [
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeactivate",
      "desc": "Fires before the window is activated."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afteractivate",
      "desc": "Fires after the window is activated."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeinactivate",
      "desc": "Fires before the window is inactivated."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterinactivate",
      "desc": "Fires after the window is inactivated."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeclose",
      "desc": "Fires before the window is closed."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterclose",
      "desc": "Fires after the window is closed."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeslideup",
      "desc": "Fires before the window is slid up."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterslideup",
      "desc": "Fires after the window is slid up."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeslidedown",
      "desc": "Fires before the window is slid down."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterslidedown",
      "desc": "Fires after the window is slid down."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforeminimize",
      "desc": "Fires before the window is minimized."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterminimize",
      "desc": "Fires after the window is minimized."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforemaximize",
      "desc": "Fires before the window is maximized."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "aftermaximize",
      "desc": "Fires after the window is maximized."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "beforerestore",
      "desc": "Fires before the window is restored."
    },
    {
      "params": [
        {
          "key": "elem",
          "desc": "The DOM of the window, event.detail.elem."
        }
      ],
      "key": "afterrestore",
      "desc": "Fires after the window is restored."
    }
  ]
}