{
  "type": "metric",
  "description": "Dashboard metric card with formatted value.",
  "hasChildren": false,
  "propsSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "object",
    "properties": {
      "value": {
        "default": "",
        "type": "string"
      },
      "sql": {
        "description": "DuckDB SQL with {{udf_name}} and $param_name placeholders. Returns first column of first row.",
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "prefix": {
        "default": "",
        "type": "string"
      },
      "suffix": {
        "default": "",
        "type": "string"
      },
      "format": {
        "default": "compact",
        "description": "How to format the number. \"compact\" abbreviates large values (e.g. 1.2M, 45.3K, 2.5B). \"comma\" adds thousand separators (e.g. 1,234,567). \"none\" displays the raw value as-is.",
        "type": "string",
        "enum": [
          "compact",
          "comma",
          "none"
        ]
      },
      "decimals": {
        "default": 1,
        "type": "number"
      },
      "size": {
        "default": 36,
        "description": "Font size of the number in pixels. e.g. 24, 36, 48, 72, 96, 144. Default 36.",
        "type": "number"
      },
      "color": {
        "type": "string"
      },
      "style": {
        "type": "string"
      }
    },
    "description": "Metric card for dashboards. Shows a single large formatted value from SQL, $param substitution in value, or a static value."
  }
}
