{
  "@slot": {
    "type": "string",
    "required": true,
    "autocomplete": [
      {
        "description": "Slot ID"
      }
    ]
  },
  "@from": {
    "type": "string",
    "autocomplete": [
      {
        "description": "Match micro-frame-sse name attribute"
      }
    ]
  },
  "@client-reorder": {
    "autocomplete": [
      {
        "description": "See client-reorder in <await>. Also support additional 'after-first-chunk' value.",
        "descriptionMoreURL": "https://markojs.com/docs/core-tags/#await"
      }
    ]
  },
  "@timeout": {
    "type": "number",
    "autocomplete": [
      {
        "description": "An idle timeout in ms after which the request is ended (default 30 seconds)"
      }
    ]
  },
  "@catch <catch>": {
    "attributes": {},
    "autocomplete": [
      {
        "displayText": "@catch|<err>|",
        "description": "A block rendered when the resource fails to load",
        "snippet": "@catch|${1:err}|"
      }
    ]
  },
  "@loading <loading>": {
    "attributes": {},
    "autocomplete": [
      {
        "description": "A block rendered while the resource is loading and removed after loading is complete"
      }
    ]
  },
  "@no-refresh": {
    "type": "boolean",
    "autocomplete": [
      {
        "description": "Flag to disable slot content refresh after stream src change."
      }
    ]
  },
  "@class": {
    "autocomplete": [
      {
        "description": "Marko class attribute"
      }
    ]
  },
  "@style": {
    "autocomplete": [
      {
        "description": "Marko style attribute"
      }
    ]
  }
}
