{
  "schemaVersion": "1.0.0",
  "readme": "README.md",
  "modules": [
    {
      "kind": "javascript-module",
      "path": "light-dom-element.js",
      "declarations": [
        {
          "kind": "class",
          "description": "Web Component to populate html slots into template using Light DOM. Slots content and template could be local in the page or pointed via URL.",
          "name": "LightDomElement",
          "tagName": "light-dom-element",
          "members": [
            {
              "kind": "field",
              "name": "promise",
              "type": {
                "text": "Promise<this>"
              },
              "description": "resolved when template and slots payload is rendered"
            },
            {
              "kind": "method",
              "name": "applyTemplate",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "templateElement",
                  "type": {
                    "text": "HTMLTemplateElement"
                  }
                }
              ],
              "description": "applies template content and renders slots, called from `slotsInit()`"
            },
            {
              "kind": "method",
              "name": "fetch",
              "parameters": [
                {
                  "name": "url"
                }
              ],
              "description": "override to load and process URL before returning a HTML string with data within slots."
            },
            {
              "kind": "method",
              "name": "slotsInit",
              "return": {
                "type": {
                  "text": "Promise<LightDomElement>"
                }
              },
              "description": "reads payload and template from body or by attributes, apply template and renders slots"
            }
          ],
          "events":[],
          "slots":[],
          "attributes": [
              {   "name": "tag",
                  "description": "tag name of declarative custom element"
              },
              {   "name": "srcset",
                  "description": "id of container with slots"
              },
              {   "name": "src",
                  "description": "url for html with slots"
              },
              {   "name": "for",
                  "description": "id for html template"
              },
              {   "name": "code",
                  "description": "url for html template"
              }
          ],
          "demos":[],
          "superclass": {
            "name": "ShadowDomElement"
          },
          "tagName": "light-dom-element",
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "LightDomElement",
            "module": "light-dom-element.js"
          }
        },
        {
          "kind": "custom-element-definition",
          "name": "shadow-dom-element",
          "declaration": {
            "name": "ShadowDomElement",
            "module": "shadow-dom-element.js"
          }
        }
      ]
    }
  ]
}
