{
  "schemaVersion": "1.0.0",
  "readme": "",
  "modules": [
    {
      "kind": "javascript-module",
      "path": "vaadin-tooltip.js",
      "declarations": [],
      "exports": [
        {
          "kind": "js",
          "name": "*",
          "declaration": {
            "name": "*",
            "module": "src/vaadin-tooltip.js"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/vaadin-tooltip-mixin.js",
      "declarations": [
        {
          "kind": "mixin",
          "description": "A mixin providing common tooltip functionality.",
          "name": "TooltipMixin",
          "members": [
            {
              "kind": "field",
              "name": "ariaTarget",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Element used to link with the `aria-describedby`\nattribute. Supports array of multiple elements.\nWhen not set, defaults to `target`.",
              "attribute": "aria-target"
            },
            {
              "kind": "field",
              "name": "context",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Object with properties passed to `generator` and\n`shouldShow` functions for generating tooltip text\nor detecting whether to show the tooltip or not.",
              "attribute": "context"
            },
            {
              "kind": "field",
              "name": "focusDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on keyboard focus, when not in manual mode.",
              "attribute": "focus-delay"
            },
            {
              "kind": "field",
              "name": "for",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "The id of the element to be used as `target` value.\nThe element should be in the DOM by the time when\nthe attribute is set, otherwise a warning is shown.",
              "attribute": "for",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "generator",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Function used to generate the tooltip content.\nWhen provided, it overrides the `text` property.\nUse the `context` property to provide argument\nthat can be passed to the generator function.",
              "attribute": "generator"
            },
            {
              "kind": "field",
              "name": "hideDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis closed on losing hover, when not in manual mode.\nOn blur, the tooltip is closed immediately.",
              "attribute": "hide-delay"
            },
            {
              "kind": "field",
              "name": "hoverDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on hover, when not in manual mode.",
              "attribute": "hover-delay"
            },
            {
              "kind": "field",
              "name": "manual",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is controlled programmatically\ninstead of reacting to focus and mouse events.",
              "attribute": "manual"
            },
            {
              "kind": "field",
              "name": "markdown",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When enabled, the tooltip text is rendered as Markdown.\n\n**Note:** Using Markdown is discouraged if accessibility of the tooltip\ncontent is essential, as semantics of the rendered HTML content\n(headers, lists, ...) will not be conveyed to assistive technologies.",
              "attribute": "markdown"
            },
            {
              "kind": "field",
              "name": "opened",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is opened.\nIn manual mode, this can be set programmatically.\nIn automatic mode, this is set automatically by internal logic.",
              "attribute": "opened"
            },
            {
              "kind": "field",
              "name": "position",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "Position of the overlay with respect to the target.\nSupported values: `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
              "attribute": "position",
              "inheritedFrom": {
                "name": "PopoverPositionMixin",
                "package": "@vaadin/popover/src/vaadin-popover-position-mixin.js"
              }
            },
            {
              "kind": "method",
              "name": "setDefaultFocusDelay",
              "static": true,
              "parameters": [
                {
                  "name": "focusDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default focus delay to be used by all tooltip instances,\nexcept for those that have focus delay configured using property."
            },
            {
              "kind": "method",
              "name": "setDefaultHideDelay",
              "static": true,
              "parameters": [
                {
                  "name": "hideDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default hide delay to be used by all tooltip instances,\nexcept for those that have hide delay configured using property."
            },
            {
              "kind": "method",
              "name": "setDefaultHoverDelay",
              "static": true,
              "parameters": [
                {
                  "name": "hoverDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default hover delay to be used by all tooltip instances,\nexcept for those that have hover delay configured using property."
            },
            {
              "kind": "field",
              "name": "shouldShow",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Function used to detect whether to show the tooltip based on a condition,\ncalled every time the tooltip is about to be shown on hover and focus.\nThe function takes two parameters: `target` and `context`, which contain\nvalues of the corresponding tooltip properties at the time of calling.\nThe tooltip is only shown when the function invocation returns `true`.",
              "attribute": "should-show"
            },
            {
              "kind": "field",
              "name": "target",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Reference to the DOM element used both to trigger the overlay\nby user interaction and to visually position it on the screen.\n\nDefaults to an element referenced with `for` attribute, in\nwhich case it must be located in the same shadow scope.",
              "attribute": "target",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "text",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "String used as a tooltip content.",
              "attribute": "text"
            }
          ],
          "events": [
            {
              "name": "content-changed",
              "type": {
                "text": "CustomEvent"
              }
            }
          ],
          "attributes": [
            {
              "name": "focus-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on keyboard focus, when not in manual mode.",
              "fieldName": "focusDelay"
            },
            {
              "name": "for",
              "type": {
                "text": "string"
              },
              "description": "The id of the element to be used as `target` value.\nThe element should be in the DOM by the time when\nthe attribute is set, otherwise a warning is shown.",
              "fieldName": "for",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "name": "hide-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis closed on losing hover, when not in manual mode.\nOn blur, the tooltip is closed immediately.",
              "fieldName": "hideDelay"
            },
            {
              "name": "hover-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on hover, when not in manual mode.",
              "fieldName": "hoverDelay"
            },
            {
              "name": "manual",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is controlled programmatically\ninstead of reacting to focus and mouse events.",
              "fieldName": "manual"
            },
            {
              "name": "markdown",
              "type": {
                "text": "boolean"
              },
              "description": "When enabled, the tooltip text is rendered as Markdown.\n\n**Note:** Using Markdown is discouraged if accessibility of the tooltip\ncontent is essential, as semantics of the rendered HTML content\n(headers, lists, ...) will not be conveyed to assistive technologies.",
              "fieldName": "markdown"
            },
            {
              "name": "opened",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is opened.\nIn manual mode, this can be set programmatically.\nIn automatic mode, this is set automatically by internal logic.",
              "fieldName": "opened"
            },
            {
              "name": "position",
              "type": {
                "text": "string"
              },
              "description": "Position of the overlay with respect to the target.\nSupported values: `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
              "fieldName": "position",
              "inheritedFrom": {
                "name": "PopoverPositionMixin",
                "package": "@vaadin/popover/src/vaadin-popover-position-mixin.js"
              }
            },
            {
              "name": "text",
              "type": {
                "text": "string"
              },
              "description": "String used as a tooltip content.",
              "fieldName": "text"
            }
          ],
          "mixins": [
            {
              "name": "PopoverPositionMixin",
              "package": "@vaadin/popover/src/vaadin-popover-position-mixin.js"
            },
            {
              "name": "PopoverTargetMixin",
              "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
            }
          ],
          "parameters": [
            {
              "name": "superClass"
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "TooltipMixin",
          "declaration": {
            "name": "TooltipMixin",
            "module": "src/vaadin-tooltip-mixin.js"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/vaadin-tooltip.js",
      "declarations": [
        {
          "kind": "class",
          "description": "`<vaadin-tooltip>` is a Web Component for creating tooltips.\n\n```html\n<button id=\"confirm\">Confirm</button>\n<vaadin-tooltip text=\"Click to save changes\" for=\"confirm\"></vaadin-tooltip>\n```\n\n### Markdown Support\n\nThe tooltip supports rendering Markdown content by setting the `markdown` property:\n\n```html\n<button id=\"info\">Info</button>\n<vaadin-tooltip\n  text=\"**Important:** Click to view *detailed* information\"\n  markdown\n  for=\"info\">\n</vaadin-tooltip>\n```\n\n### Styling\n\nThe following shadow DOM parts are available for styling:\n\nPart name   | Description\n----------- | ---------------\n`overlay`   | The overlay element\n`content`   | The overlay content element\n\nThe following state attributes are available for styling:\n\nAttribute        | Description\n-----------------|----------------------------------------\n`markdown`       | Reflects the `markdown` property value.\n`position`       | Reflects the `position` property value.\n\nThe following custom CSS properties are available for styling:\n\nCustom CSS property                |\n:----------------------------------|\n| `--vaadin-tooltip-background`    |\n| `--vaadin-tooltip-border-color`  |\n| `--vaadin-tooltip-border-radius` |\n| `--vaadin-tooltip-border-width`  |\n| `--vaadin-tooltip-font-size`     |\n| `--vaadin-tooltip-font-weight`   |\n| `--vaadin-tooltip-line-height`   |\n| `--vaadin-tooltip-max-width`     |\n| `--vaadin-tooltip-offset-bottom` |\n| `--vaadin-tooltip-offset-end`    |\n| `--vaadin-tooltip-offset-start`  |\n| `--vaadin-tooltip-offset-top`    |\n| `--vaadin-tooltip-padding`       |\n| `--vaadin-tooltip-shadow`        |\n| `--vaadin-tooltip-text-color`    |\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.",
          "name": "Tooltip",
          "members": [
            {
              "kind": "field",
              "name": "ariaTarget",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Element used to link with the `aria-describedby`\nattribute. Supports array of multiple elements.\nWhen not set, defaults to `target`.",
              "attribute": "aria-target",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "context",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Object with properties passed to `generator` and\n`shouldShow` functions for generating tooltip text\nor detecting whether to show the tooltip or not.",
              "attribute": "context",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "focusDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on keyboard focus, when not in manual mode.",
              "attribute": "focus-delay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "for",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "The id of the element to be used as `target` value.\nThe element should be in the DOM by the time when\nthe attribute is set, otherwise a warning is shown.",
              "attribute": "for",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "generator",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Function used to generate the tooltip content.\nWhen provided, it overrides the `text` property.\nUse the `context` property to provide argument\nthat can be passed to the generator function.",
              "attribute": "generator",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "hideDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis closed on losing hover, when not in manual mode.\nOn blur, the tooltip is closed immediately.",
              "attribute": "hide-delay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "hoverDelay",
              "privacy": "public",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on hover, when not in manual mode.",
              "attribute": "hover-delay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "manual",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is controlled programmatically\ninstead of reacting to focus and mouse events.",
              "attribute": "manual",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "markdown",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When enabled, the tooltip text is rendered as Markdown.\n\n**Note:** Using Markdown is discouraged if accessibility of the tooltip\ncontent is essential, as semantics of the rendered HTML content\n(headers, lists, ...) will not be conveyed to assistive technologies.",
              "attribute": "markdown",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "opened",
              "privacy": "public",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is opened.\nIn manual mode, this can be set programmatically.\nIn automatic mode, this is set automatically by internal logic.",
              "attribute": "opened",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "position",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "Position of the overlay with respect to the target.\nSupported values: `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
              "attribute": "position",
              "inheritedFrom": {
                "name": "PopoverPositionMixin",
                "package": "@vaadin/popover/src/vaadin-popover-position-mixin.js"
              }
            },
            {
              "kind": "method",
              "name": "setDefaultFocusDelay",
              "static": true,
              "parameters": [
                {
                  "name": "focusDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default focus delay to be used by all tooltip instances,\nexcept for those that have focus delay configured using property.",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "method",
              "name": "setDefaultHideDelay",
              "static": true,
              "parameters": [
                {
                  "name": "hideDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default hide delay to be used by all tooltip instances,\nexcept for those that have hide delay configured using property.",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "method",
              "name": "setDefaultHoverDelay",
              "static": true,
              "parameters": [
                {
                  "name": "hoverDelay",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Sets the default hover delay to be used by all tooltip instances,\nexcept for those that have hover delay configured using property.",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "shouldShow",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Function used to detect whether to show the tooltip based on a condition,\ncalled every time the tooltip is about to be shown on hover and focus.\nThe function takes two parameters: `target` and `context`, which contain\nvalues of the corresponding tooltip properties at the time of calling.\nThe tooltip is only shown when the function invocation returns `true`.",
              "attribute": "should-show",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "target",
              "privacy": "public",
              "type": {
                "text": "object"
              },
              "description": "Reference to the DOM element used both to trigger the overlay\nby user interaction and to visually position it on the screen.\n\nDefaults to an element referenced with `for` attribute, in\nwhich case it must be located in the same shadow scope.",
              "attribute": "target",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "kind": "field",
              "name": "text",
              "privacy": "public",
              "type": {
                "text": "string"
              },
              "description": "String used as a tooltip content.",
              "attribute": "text",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            }
          ],
          "events": [
            {
              "name": "content-changed",
              "type": {
                "text": "CustomEvent"
              },
              "description": "Fired when the tooltip text content is changed.",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            }
          ],
          "mixins": [
            {
              "name": "TooltipMixin",
              "module": "src/vaadin-tooltip-mixin.js"
            },
            {
              "name": "ThemePropertyMixin",
              "package": "@vaadin/vaadin-themable-mixin/vaadin-theme-property-mixin.js"
            },
            {
              "name": "ElementMixin",
              "package": "@vaadin/component-base/src/element-mixin.js"
            },
            {
              "name": "PolylitMixin",
              "package": "@vaadin/component-base/src/polylit-mixin.js"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "tagName": "vaadin-tooltip",
          "customElement": true,
          "attributes": [
            {
              "name": "focus-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on keyboard focus, when not in manual mode.",
              "fieldName": "focusDelay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "for",
              "type": {
                "text": "string"
              },
              "description": "The id of the element to be used as `target` value.\nThe element should be in the DOM by the time when\nthe attribute is set, otherwise a warning is shown.",
              "fieldName": "for",
              "inheritedFrom": {
                "name": "PopoverTargetMixin",
                "package": "@vaadin/popover/src/vaadin-popover-target-mixin.js"
              }
            },
            {
              "name": "hide-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis closed on losing hover, when not in manual mode.\nOn blur, the tooltip is closed immediately.",
              "fieldName": "hideDelay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "hover-delay",
              "type": {
                "text": "number"
              },
              "description": "The delay in milliseconds before the tooltip\nis opened on hover, when not in manual mode.",
              "fieldName": "hoverDelay",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "manual",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is controlled programmatically\ninstead of reacting to focus and mouse events.",
              "fieldName": "manual",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "markdown",
              "type": {
                "text": "boolean"
              },
              "description": "When enabled, the tooltip text is rendered as Markdown.\n\n**Note:** Using Markdown is discouraged if accessibility of the tooltip\ncontent is essential, as semantics of the rendered HTML content\n(headers, lists, ...) will not be conveyed to assistive technologies.",
              "fieldName": "markdown",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "opened",
              "type": {
                "text": "boolean"
              },
              "description": "When true, the tooltip is opened.\nIn manual mode, this can be set programmatically.\nIn automatic mode, this is set automatically by internal logic.",
              "fieldName": "opened",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            },
            {
              "name": "position",
              "type": {
                "text": "string"
              },
              "description": "Position of the overlay with respect to the target.\nSupported values: `top-start`, `top`, `top-end`,\n`bottom-start`, `bottom`, `bottom-end`, `start-top`,\n`start`, `start-bottom`, `end-top`, `end`, `end-bottom`.",
              "fieldName": "position",
              "inheritedFrom": {
                "name": "PopoverPositionMixin",
                "package": "@vaadin/popover/src/vaadin-popover-position-mixin.js"
              }
            },
            {
              "name": "text",
              "type": {
                "text": "string"
              },
              "description": "String used as a tooltip content.",
              "fieldName": "text",
              "inheritedFrom": {
                "name": "TooltipMixin",
                "module": "src/vaadin-tooltip-mixin.js"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "Tooltip",
          "declaration": {
            "name": "Tooltip",
            "module": "src/vaadin-tooltip.js"
          }
        }
      ]
    }
  ]
}
