{
  "mixins": [
    "composables/private.use-model-toggle/use-model-toggle",
    "composables/private.use-anchor/use-anchor-static",
    "composables/private.use-portal/use-portal",
    "composables/private.use-transition/use-transition"
  ],

  "meta": {
    "docsUrl": "https://v2.quasar.dev/vue-components/tooltip"
  },

  "props": {
    "max-height": {
      "extends": "size",
      "type": ["String", "null"],
      "default": "null",
      "desc": "The maximum height of the Tooltip; Size in CSS units, including unit name",
      "category": "content"
    },

    "max-width": {
      "extends": "size",
      "type": ["String", "null"],
      "default": "null",
      "desc": "The maximum width of the Tooltip; Size in CSS units, including unit name",
      "category": "content"
    },

    "transition-show": {
      "default": "'jump-down'"
    },

    "transition-hide": {
      "default": "'jump-up'"
    },

    "anchor": {
      "type": "String",
      "desc": "Two values setting the starting position or anchor point of the Tooltip relative to its target",
      "values": [
        "'top left'",
        "'top middle'",
        "'top right'",
        "'top start'",
        "'top end'",
        "'center left'",
        "'center middle'",
        "'center right'",
        "'center start'",
        "'center end'",
        "'bottom left'",
        "'bottom middle'",
        "'bottom right'",
        "'bottom start'",
        "'bottom end'"
      ],
      "default": "'bottom middle'",
      "category": "position"
    },

    "self": {
      "type": "String",
      "desc": "Two values setting the Tooltip's own position relative to its target",
      "values": [
        "'top left'",
        "'top middle'",
        "'top right'",
        "'top start'",
        "'top end'",
        "'center left'",
        "'center middle'",
        "'center right'",
        "'center start'",
        "'center end'",
        "'bottom left'",
        "'bottom middle'",
        "'bottom right'",
        "'bottom start'",
        "'bottom end'"
      ],
      "default": "'top middle'",
      "category": "position"
    },

    "offset": {
      "type": "Array",
      "desc": "An array of two numbers (in pixels) which expands the anchor element's bounding box outward horizontally and vertically; the Tooltip is then positioned against the expanded box, so the visible effect depends on the 'anchor'/'self' points in use",
      "default": "[14, 14]",
      "examples": ["[8, 8]", "[5, 10]"],
      "category": "position"
    },

    "cursor-position": {
      "type": "Boolean",
      "desc": "Position the Tooltip at the pointer instead of relative to its target; the pointer must settle for a moment first, and the position is then frozen for as long as the Tooltip stays shown. Ignored when the Tooltip is shown through keyboard focus or its model, since neither reports a pointer position",
      "addedIn": "v2.30",
      "category": "position"
    },

    "delay": {
      "type": "Number",
      "desc": "Configure Tooltip to appear with delay",
      "default": "0",
      "category": "behavior"
    },

    "hide-delay": {
      "type": "Number",
      "desc": "Configure Tooltip to disappear with delay",
      "default": "0",
      "category": "behavior"
    },

    "persistent": {
      "type": "Boolean",
      "desc": "Prevents Tooltip from auto-closing when app's route changes",
      "category": "behavior"
    }
  },

  "slots": {
    "default": {
      "extends": "default"
    }
  },

  "methods": {
    "updatePosition": {
      "desc": "The Tooltip follows its target automatically (through any scrolling container) and this method only re-checks whether the intended placement still fits the viewport (which side the Tooltip opens to and its maximum size); call it for the scenarios Quasar cannot detect",
      "params": null,
      "returns": null
    }
  }
}
