{
  "$schema": "../../schemas/component-contract.schema.json",
  "name": "button",
  "category": "actions",
  "status": "stable",
  "kind": "native",
  "since": "2.0.0",
  "requiresJavaScript": false,
  "formAssociated": true,
  "attributes": {
    "type": {
      "type": "\"button\" | \"submit\" | \"reset\"",
      "default": "submit"
    },
    "data-variant": {
      "type": "\"primary\" | \"secondary\" | \"outline\" | \"ghost\" | \"danger\" | \"text\"",
      "default": "secondary",
      "reflects": true
    },
    "data-size": {
      "type": "\"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"icon\"",
      "default": "md",
      "reflects": true
    },
    "data-shape": {
      "type": "\"square\" | \"circle\"",
      "reflects": true
    },
    "data-icon": {
      "type": "string",
      "reflects": true
    },
    "data-icon-position": {
      "type": "\"start\" | \"end\"",
      "default": "start",
      "reflects": true
    },
    "data-loading": {
      "type": "boolean",
      "reflects": true
    },
    "disabled": {
      "type": "boolean",
      "reflects": true
    },
    "aria-busy": {
      "type": "boolean"
    },
    "aria-label": {
      "type": "string"
    }
  },
  "properties": {},
  "methods": {
    "focus": {
      "returns": "void"
    },
    "blur": {
      "returns": "void"
    },
    "click": {
      "returns": "void"
    }
  },
  "events": {
    "click": {
      "native": true,
      "bubbles": true,
      "composed": true
    }
  },
  "slots": {
    "default": "Button label text or icon + label"
  },
  "parts": [],
  "cssProperties": [
    "--blora-button-bg",
    "--blora-button-fg",
    "--blora-button-bd",
    "--blora-button-pad-y",
    "--blora-button-pad-x",
    "--blora-button-height",
    "--blora-button-icon-size",
    "--blora-button-radius",
    "--blora-button-corner"
  ],
  "accessibilityPattern": "button"
}
