{
  "type": "component",
  "props": {
    "color": {
      "type": "String",
      "desc": "Color name for component from the Quasar Color Palette",
      "examples": [
        "primary",
        "teal-10"
      ],
      "category": "style"
    },
    "icon": {
      "type": "String",
      "desc": "Icon to display when refreshing the content",
      "examples": [
        "map",
        "ion-add",
        "img:https://cdn.quasar.dev/logo/svg/quasar-logo.svg",
        "img:statics/path/to/some_image.png"
      ],
      "category": "content"
    },
    "no-mouse": {
      "type": "Boolean",
      "desc": "Don't listen for mouse events",
      "category": "behavior"
    },
    "disable": {
      "type": "Boolean",
      "desc": "Put component in disabled mode",
      "category": "state"
    }
  },
  "slots": {
    "default": {
      "desc": "Content (area controlled by the component) goes here"
    }
  },
  "events": {
    "refresh": {
      "desc": "Called whenever a refresh is triggered; at this time, your function should load more data",
      "params": {
        "done": {
          "type": "Function",
          "desc": "Call the done() function when your data has been refreshed",
          "params": null,
          "returns": null
        }
      }
    }
  },
  "methods": {
    "trigger": {
      "desc": "Triggers a refresh"
    },
    "updateScrollTarget": {
      "desc": "Updates the scroll target; Useful when the parent elements change so that the scrolling target also changes"
    }
  }
}