{
  "name": "splight",
  "version": "1.2.18",
  "description": "A Pulumi package for creating and managing Splight resources.",
  "keywords": [
    "splightplatform",
    "splight",
    "infrastructure"
  ],
  "homepage": "https://www.splight-ai.com",
  "license": "Apache-2.0",
  "attribution": "This Pulumi package is based on the [`splight` Terraform Provider](https://github.com/splightplatform/terraform-provider-splight).",
  "repository": "https://github.com/splightplatform/pulumi-splight",
  "logoUrl": "https://raw.githubusercontent.com/splightplatform/pulumi-splight/main/docs/logo.png",
  "pluginDownloadURL": "github://api.github.com/splightplatform",
  "publisher": "splightplatform",
  "meta": {
    "moduleFormat": "(.*)(?:/[^/]*)"
  },
  "language": {
    "csharp": {
      "packageReferences": {
        "Pulumi": "3.*"
      },
      "compatibility": "tfbridge20",
      "rootNamespace": "Splight",
      "respectSchemaVersion": true
    },
    "go": {
      "importBasePath": "github.com/splightplatform/pulumi-splight/sdk/go/splight",
      "generateResourceContainerTypes": true,
      "generateExtraInputTypes": true,
      "respectSchemaVersion": true
    },
    "nodejs": {
      "packageName": "@splightplatform/pulumi-splight",
      "packageDescription": "A Pulumi package for creating and managing Splight resources.",
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/splightplatform/terraform-provider-splight)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-splight` repo](https://github.com/splightplatform/pulumi-splight/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-splight` repo](https://github.com/splightplatform/terraform-provider-splight/issues).",
      "dependencies": {
        "@pulumi/pulumi": "^3.0.0"
      },
      "devDependencies": {
        "@types/mime": "^2.0.0",
        "@types/node": "^10.0.0"
      },
      "compatibility": "tfbridge20",
      "disableUnionOutputTypes": true,
      "respectSchemaVersion": true
    },
    "python": {
      "packageName": "pulumi_splight",
      "requires": {
        "pulumi": ">=3.0.0,<4.0.0"
      },
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/splightplatform/terraform-provider-splight)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-splight` repo](https://github.com/splightplatform/pulumi-splight/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-splight` repo](https://github.com/splightplatform/terraform-provider-splight/issues).",
      "compatibility": "tfbridge20",
      "respectSchemaVersion": true,
      "pyproject": {}
    }
  },
  "config": {
    "variables": {
      "hostname": {
        "type": "string"
      },
      "token": {
        "type": "string",
        "secret": true
      }
    }
  },
  "types": {
    "splight:index/ActionAsset:ActionAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n"
        },
        "name": {
          "type": "string",
          "description": "asset name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/ActionSetpoint:ActionSetpoint": {
      "properties": {
        "attribute": {
          "$ref": "#/types/splight:index%2FActionSetpointAttribute:ActionSetpointAttribute",
          "description": "the target attribute of the setpoint which should also be an attribute of the specified asset\n"
        },
        "id": {
          "type": "string",
          "description": "setpoint Id\n"
        },
        "name": {
          "type": "string",
          "description": "setpoint name\n"
        },
        "value": {
          "type": "string",
          "description": "JSON encoded scalar value\n"
        }
      },
      "type": "object",
      "required": [
        "attribute",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "attribute",
            "id",
            "name",
            "value"
          ]
        }
      }
    },
    "splight:index/ActionSetpointAttribute:ActionSetpointAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "attribute id\n"
        },
        "name": {
          "type": "string",
          "description": "attribute name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AlertAlertItem:AlertAlertItem": {
      "properties": {
        "expression": {
          "type": "string",
          "description": "how the expression is shown (i.e 'A * 2')\n",
          "willReplaceOnChanges": true
        },
        "expressionPlain": {
          "type": "string",
          "description": "actual mongo query containing the expression\n",
          "willReplaceOnChanges": true
        },
        "id": {
          "type": "string",
          "description": "Id of the function item\n"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FAlertAlertItemQueryFilterAsset:AlertAlertItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FAlertAlertItemQueryFilterAttribute:AlertAlertItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string",
          "description": "function used to aggregate data\n",
          "willReplaceOnChanges": true
        },
        "queryGroupUnit": {
          "type": "string",
          "description": "time window to apply the aggregation\n",
          "willReplaceOnChanges": true
        },
        "queryPlain": {
          "type": "string",
          "description": "actual mongo query\n",
          "willReplaceOnChanges": true
        },
        "refId": {
          "type": "string",
          "description": "identifier of the variable (i.e 'A')\n",
          "willReplaceOnChanges": true
        },
        "type": {
          "type": "string",
          "description": "either QUERY or EXPRESSION\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "expression",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryGroupFunction",
        "queryGroupUnit",
        "queryPlain",
        "refId",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expression",
            "expressionPlain",
            "id",
            "queryFilterAsset",
            "queryFilterAttribute",
            "queryGroupFunction",
            "queryGroupUnit",
            "queryPlain",
            "refId",
            "type"
          ]
        }
      }
    },
    "splight:index/AlertAlertItemQueryFilterAsset:AlertAlertItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "splight:index/AlertAlertItemQueryFilterAttribute:AlertAlertItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "splight:index/AlertRelatedAsset:AlertRelatedAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n"
        },
        "name": {
          "type": "string",
          "description": "asset name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AlertTag:AlertTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AlertThreshold:AlertThreshold": {
      "properties": {
        "status": {
          "type": "string",
          "description": "[alert|warning|no_alert] status value for the threshold\n"
        },
        "statusText": {
          "type": "string",
          "description": "optional custom value to be displayed in the platform.\n"
        },
        "value": {
          "type": "number",
          "description": "value to be considered to compare\n"
        }
      },
      "type": "object",
      "required": [
        "status",
        "value"
      ]
    },
    "splight:index/AlgorithmInput:AlgorithmInput": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sensitive": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ]
    },
    "splight:index/AlgorithmTag:AlgorithmTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AssetKind:AssetKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AssetRelationAsset:AssetRelationAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "asset name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AssetRelationRelatedAsset:AssetRelationRelatedAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "asset name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AssetRelationRelatedAssetKind:AssetRelationRelatedAssetKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/AssetTag:AssetTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/BusActivePower:BusActivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/BusKind:BusKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/BusNominalVoltageKv:BusNominalVoltageKv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/BusReactivePower:BusReactivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/BusTag:BusTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/CommandAction:CommandAction": {
      "properties": {
        "asset": {
          "$ref": "#/types/splight:index%2FCommandActionAsset:CommandActionAsset",
          "description": "asset associated with the action (to be deprecated)\n"
        },
        "id": {
          "type": "string",
          "description": "action Id\n"
        },
        "name": {
          "type": "string",
          "description": "setpoint name\n"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "id",
        "name"
      ]
    },
    "splight:index/CommandActionAsset:CommandActionAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n"
        },
        "name": {
          "type": "string",
          "description": "asset name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/ComponentInput:ComponentInput": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sensitive": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ]
    },
    "splight:index/ComponentRoutineConfig:ComponentRoutineConfig": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sensitive": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ]
    },
    "splight:index/ComponentRoutineInput:ComponentRoutineInput": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "valueType": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineInputValue:ComponentRoutineInputValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "valueType"
      ]
    },
    "splight:index/ComponentRoutineInputValue:ComponentRoutineInputValue": {
      "properties": {
        "asset": {
          "type": "string"
        },
        "attribute": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "attribute"
      ]
    },
    "splight:index/ComponentRoutineOutput:ComponentRoutineOutput": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "valueType": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineOutputValue:ComponentRoutineOutputValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "valueType"
      ]
    },
    "splight:index/ComponentRoutineOutputValue:ComponentRoutineOutputValue": {
      "properties": {
        "asset": {
          "type": "string"
        },
        "attribute": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "attribute"
      ]
    },
    "splight:index/ComponentTag:ComponentTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/ConnectorInput:ConnectorInput": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sensitive": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ]
    },
    "splight:index/ConnectorTag:ConnectorTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/DashboardActionlistChartChartItem:DashboardActionlistChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardActionlistChartChartItemQueryFilterAsset:DashboardActionlistChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardActionlistChartChartItemQueryFilterAttribute:DashboardActionlistChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardActionlistChartChartItemQueryFilterAsset:DashboardActionlistChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardActionlistChartChartItemQueryFilterAttribute:DashboardActionlistChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardActionlistChartThreshold:DashboardActionlistChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardActionlistChartValueMapping:DashboardActionlistChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardAlerteventsChartChartItem:DashboardAlerteventsChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardAlerteventsChartChartItemQueryFilterAsset:DashboardAlerteventsChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardAlerteventsChartChartItemQueryFilterAttribute:DashboardAlerteventsChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardAlerteventsChartChartItemQueryFilterAsset:DashboardAlerteventsChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAlerteventsChartChartItemQueryFilterAttribute:DashboardAlerteventsChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAlerteventsChartThreshold:DashboardAlerteventsChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardAlerteventsChartValueMapping:DashboardAlerteventsChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardAlertlistChartChartItem:DashboardAlertlistChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardAlertlistChartChartItemQueryFilterAsset:DashboardAlertlistChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardAlertlistChartChartItemQueryFilterAttribute:DashboardAlertlistChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardAlertlistChartChartItemQueryFilterAsset:DashboardAlertlistChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAlertlistChartChartItemQueryFilterAttribute:DashboardAlertlistChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAlertlistChartThreshold:DashboardAlertlistChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardAlertlistChartValueMapping:DashboardAlertlistChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardAssetlistChartChartItem:DashboardAssetlistChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardAssetlistChartChartItemQueryFilterAsset:DashboardAssetlistChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardAssetlistChartChartItemQueryFilterAttribute:DashboardAssetlistChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardAssetlistChartChartItemQueryFilterAsset:DashboardAssetlistChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAssetlistChartChartItemQueryFilterAttribute:DashboardAssetlistChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardAssetlistChartThreshold:DashboardAssetlistChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardAssetlistChartValueMapping:DashboardAssetlistChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardBarChartChartItem:DashboardBarChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardBarChartChartItemQueryFilterAsset:DashboardBarChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardBarChartChartItemQueryFilterAttribute:DashboardBarChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardBarChartChartItemQueryFilterAsset:DashboardBarChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardBarChartChartItemQueryFilterAttribute:DashboardBarChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardBarChartThreshold:DashboardBarChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardBarChartValueMapping:DashboardBarChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardBargaugeChartChartItem:DashboardBargaugeChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardBargaugeChartChartItemQueryFilterAsset:DashboardBargaugeChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardBargaugeChartChartItemQueryFilterAttribute:DashboardBargaugeChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardBargaugeChartChartItemQueryFilterAsset:DashboardBargaugeChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardBargaugeChartChartItemQueryFilterAttribute:DashboardBargaugeChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardBargaugeChartThreshold:DashboardBargaugeChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardBargaugeChartValueMapping:DashboardBargaugeChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardCommandlistChartChartItem:DashboardCommandlistChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardCommandlistChartChartItemQueryFilterAsset:DashboardCommandlistChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardCommandlistChartChartItemQueryFilterAttribute:DashboardCommandlistChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardCommandlistChartChartItemQueryFilterAsset:DashboardCommandlistChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardCommandlistChartChartItemQueryFilterAttribute:DashboardCommandlistChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardCommandlistChartThreshold:DashboardCommandlistChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardCommandlistChartValueMapping:DashboardCommandlistChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardGaugeChartChartItem:DashboardGaugeChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardGaugeChartChartItemQueryFilterAsset:DashboardGaugeChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardGaugeChartChartItemQueryFilterAttribute:DashboardGaugeChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardGaugeChartChartItemQueryFilterAsset:DashboardGaugeChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardGaugeChartChartItemQueryFilterAttribute:DashboardGaugeChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardGaugeChartThreshold:DashboardGaugeChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardGaugeChartValueMapping:DashboardGaugeChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardHistogramChartChartItem:DashboardHistogramChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardHistogramChartChartItemQueryFilterAsset:DashboardHistogramChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardHistogramChartChartItemQueryFilterAttribute:DashboardHistogramChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardHistogramChartChartItemQueryFilterAsset:DashboardHistogramChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardHistogramChartChartItemQueryFilterAttribute:DashboardHistogramChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardHistogramChartThreshold:DashboardHistogramChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardHistogramChartValueMapping:DashboardHistogramChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardImageChartChartItem:DashboardImageChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardImageChartChartItemQueryFilterAsset:DashboardImageChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardImageChartChartItemQueryFilterAttribute:DashboardImageChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardImageChartChartItemQueryFilterAsset:DashboardImageChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardImageChartChartItemQueryFilterAttribute:DashboardImageChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardImageChartThreshold:DashboardImageChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardImageChartValueMapping:DashboardImageChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardRelatedAsset:DashboardRelatedAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n"
        },
        "name": {
          "type": "string",
          "description": "asset name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/DashboardStatChartChartItem:DashboardStatChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardStatChartChartItemQueryFilterAsset:DashboardStatChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardStatChartChartItemQueryFilterAttribute:DashboardStatChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardStatChartChartItemQueryFilterAsset:DashboardStatChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardStatChartChartItemQueryFilterAttribute:DashboardStatChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardStatChartThreshold:DashboardStatChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardStatChartValueMapping:DashboardStatChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardTableChartChartItem:DashboardTableChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardTableChartChartItemQueryFilterAsset:DashboardTableChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardTableChartChartItemQueryFilterAttribute:DashboardTableChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardTableChartChartItemQueryFilterAsset:DashboardTableChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTableChartChartItemQueryFilterAttribute:DashboardTableChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTableChartThreshold:DashboardTableChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardTableChartValueMapping:DashboardTableChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardTag:DashboardTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/DashboardTextChartChartItem:DashboardTextChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardTextChartChartItemQueryFilterAsset:DashboardTextChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardTextChartChartItemQueryFilterAttribute:DashboardTextChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardTextChartChartItemQueryFilterAsset:DashboardTextChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTextChartChartItemQueryFilterAttribute:DashboardTextChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTextChartThreshold:DashboardTextChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardTextChartValueMapping:DashboardTextChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/DashboardTimeseriesChartChartItem:DashboardTimeseriesChartChartItem": {
      "properties": {
        "color": {
          "type": "string"
        },
        "expressionPlain": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FDashboardTimeseriesChartChartItemQueryFilterAsset:DashboardTimeseriesChartChartItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FDashboardTimeseriesChartChartItemQueryFilterAttribute:DashboardTimeseriesChartChartItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string"
        },
        "queryGroupUnit": {
          "type": "string"
        },
        "queryLimit": {
          "type": "integer"
        },
        "queryPlain": {
          "type": "string"
        },
        "querySortDirection": {
          "type": "integer"
        },
        "refId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "color",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryPlain",
        "refId",
        "type"
      ]
    },
    "splight:index/DashboardTimeseriesChartChartItemQueryFilterAsset:DashboardTimeseriesChartChartItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTimeseriesChartChartItemQueryFilterAttribute:DashboardTimeseriesChartChartItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/DashboardTimeseriesChartThreshold:DashboardTimeseriesChartThreshold": {
      "properties": {
        "color": {
          "type": "string"
        },
        "displayText": {
          "type": "string"
        },
        "value": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "color",
        "displayText",
        "value"
      ]
    },
    "splight:index/DashboardTimeseriesChartValueMapping:DashboardTimeseriesChartValueMapping": {
      "properties": {
        "displayText": {
          "type": "string"
        },
        "matchValue": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "displayText",
        "matchValue",
        "order",
        "type"
      ]
    },
    "splight:index/ExternalGridKind:ExternalGridKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/ExternalGridTag:ExternalGridTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/FileRelatedAsset:FileRelatedAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "asset id\n"
        },
        "name": {
          "type": "string",
          "description": "asset name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/FileTag:FileTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/FunctionFunctionItem:FunctionFunctionItem": {
      "properties": {
        "expression": {
          "type": "string",
          "description": "how the expression is shown (i.e 'A * 2')\n",
          "willReplaceOnChanges": true
        },
        "expressionPlain": {
          "type": "string",
          "description": "actual mongo query containing the expression\n",
          "willReplaceOnChanges": true
        },
        "id": {
          "type": "string",
          "description": "Id of the function item\n"
        },
        "queryFilterAsset": {
          "$ref": "#/types/splight:index%2FFunctionFunctionItemQueryFilterAsset:FunctionFunctionItemQueryFilterAsset",
          "description": "Asset filter\n"
        },
        "queryFilterAttribute": {
          "$ref": "#/types/splight:index%2FFunctionFunctionItemQueryFilterAttribute:FunctionFunctionItemQueryFilterAttribute",
          "description": "Attribute filter\n"
        },
        "queryGroupFunction": {
          "type": "string",
          "description": "function used to aggregate data\n",
          "willReplaceOnChanges": true
        },
        "queryGroupUnit": {
          "type": "string",
          "description": "time window to apply the aggregation\n",
          "willReplaceOnChanges": true
        },
        "queryPlain": {
          "type": "string",
          "description": "actual mongo query\n",
          "willReplaceOnChanges": true
        },
        "refId": {
          "type": "string",
          "description": "identifier of the variable (i.e 'A')\n",
          "willReplaceOnChanges": true
        },
        "type": {
          "type": "string",
          "description": "either QUERY or EXPRESSION\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "expression",
        "expressionPlain",
        "queryFilterAsset",
        "queryFilterAttribute",
        "queryGroupFunction",
        "queryGroupUnit",
        "queryPlain",
        "refId",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expression",
            "expressionPlain",
            "id",
            "queryFilterAsset",
            "queryFilterAttribute",
            "queryGroupFunction",
            "queryGroupUnit",
            "queryPlain",
            "refId",
            "type"
          ]
        }
      }
    },
    "splight:index/FunctionFunctionItemQueryFilterAsset:FunctionFunctionItemQueryFilterAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "splight:index/FunctionFunctionItemQueryFilterAttribute:FunctionFunctionItemQueryFilterAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n",
          "willReplaceOnChanges": true
        },
        "type": {
          "type": "string",
          "description": "type of the resource\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "splight:index/FunctionTag:FunctionTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/FunctionTargetAsset:FunctionTargetAsset": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/FunctionTargetAttribute:FunctionTargetAttribute": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "type of the resource\n"
        }
      },
      "type": "object"
    },
    "splight:index/GeneratorActivePower:GeneratorActivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorDailyEmissionAvoided:GeneratorDailyEmissionAvoided": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorDailyEnergy:GeneratorDailyEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorKind:GeneratorKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/GeneratorMonthlyEnergy:GeneratorMonthlyEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorReactivePower:GeneratorReactivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorSwitchStatus:GeneratorSwitchStatus": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/GeneratorTag:GeneratorTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/GridKind:GridKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/GridTag:GridTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/InverterAccumulatedEnergy:InverterAccumulatedEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/InverterActivePower:InverterActivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/InverterDailyEnergy:InverterDailyEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/InverterEnergyMeasurementType:InverterEnergyMeasurementType": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/InverterKind:InverterKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/InverterMake:InverterMake": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/InverterMaxActivePower:InverterMaxActivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/InverterModel:InverterModel": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/InverterRawDailyEnergy:InverterRawDailyEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/InverterSerialNumber:InverterSerialNumber": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/InverterSwitchStatus:InverterSwitchStatus": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/InverterTag:InverterTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/InverterTemperature:InverterTemperature": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineAbsorptivity:LineAbsorptivity": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineActivePower:LineActivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineActivePowerEnd:LineActivePowerEnd": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineAmpacity:LineAmpacity": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineAtmosphere:LineAtmosphere": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineCapacitance:LineCapacitance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineConductance:LineConductance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineConductorMass:LineConductorMass": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineContingency:LineContingency": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineCurrent:LineCurrent": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineCurrentR:LineCurrentR": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineCurrentT:LineCurrentT": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineDiameter:LineDiameter": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineEmissivity:LineEmissivity": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineEnergy:LineEnergy": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineKind:LineKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/LineLength:LineLength": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineMaxTemperature:LineMaxTemperature": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineMaximumAllowedCurrent:LineMaximumAllowedCurrent": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineMaximumAllowedPower:LineMaximumAllowedPower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineMaximumAllowedTemperature:LineMaximumAllowedTemperature": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineMaximumAllowedTemperatureLte:LineMaximumAllowedTemperatureLte": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineMaximumAllowedTemperatureSte:LineMaximumAllowedTemperatureSte": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineNumberOfConductors:LineNumberOfConductors": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineReactance:LineReactance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineReactivePower:LineReactivePower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineReferenceResistance:LineReferenceResistance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineResistance:LineResistance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineSafetyMarginForPower:LineSafetyMarginForPower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineSpecificHeat:LineSpecificHeat": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineSusceptance:LineSusceptance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineSwitchStatusEnd:LineSwitchStatusEnd": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineSwitchStatusStart:LineSwitchStatusStart": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineTag:LineTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/LineTemperatureCoeffResistance:LineTemperatureCoeffResistance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineThermalElongationCoef:LineThermalElongationCoef": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/LineVoltageR:LineVoltageR": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineVoltageSt:LineVoltageSt": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/LineVoltageTr:LineVoltageTr": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/SegmentAltitude:SegmentAltitude": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentAzimuth:SegmentAzimuth": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentCumulativeDistance:SegmentCumulativeDistance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentKind:SegmentKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SegmentReferenceSag:SegmentReferenceSag": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentReferenceTemperature:SegmentReferenceTemperature": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentSpanLength:SegmentSpanLength": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/SegmentTag:SegmentTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SegmentTemperature:SegmentTemperature": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/SegmentWindDirection:SegmentWindDirection": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/SegmentWindSpeed:SegmentWindSpeed": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/ServerConfig:ServerConfig": {
      "properties": {
        "description": {
          "type": "string"
        },
        "multiple": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sensitive": {
          "type": "boolean"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ]
    },
    "splight:index/ServerEnvVar:ServerEnvVar": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ]
    },
    "splight:index/ServerPort:ServerPort": {
      "properties": {
        "exposedPort": {
          "type": "integer"
        },
        "internalPort": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "exposedPort",
        "internalPort",
        "name",
        "protocol"
      ]
    },
    "splight:index/ServerTag:ServerTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SlackGeneratorKind:SlackGeneratorKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SlackGeneratorTag:SlackGeneratorTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SlackLineKind:SlackLineKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/SlackLineSwitchStatusEnd:SlackLineSwitchStatusEnd": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/SlackLineSwitchStatusStart:SlackLineSwitchStatusStart": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/SlackLineTag:SlackLineTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/TransformerActivePowerHv:TransformerActivePowerHv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerActivePowerLoss:TransformerActivePowerLoss": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerActivePowerLv:TransformerActivePowerLv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerCapacitance:TransformerCapacitance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerConductance:TransformerConductance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerContingency:TransformerContingency": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerCurrentHv:TransformerCurrentHv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerCurrentLv:TransformerCurrentLv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerKind:TransformerKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "kind id\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "kind name\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/TransformerMaximumAllowedCurrent:TransformerMaximumAllowedCurrent": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerMaximumAllowedPower:TransformerMaximumAllowedPower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerReactance:TransformerReactance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerReactivePowerHv:TransformerReactivePowerHv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerReactivePowerLoss:TransformerReactivePowerLoss": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerReactivePowerLv:TransformerReactivePowerLv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerResistance:TransformerResistance": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerSafetyMarginForPower:TransformerSafetyMarginForPower": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerStandardType:TransformerStandardType": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerSwitchStatusHv:TransformerSwitchStatusHv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerSwitchStatusLv:TransformerSwitchStatusLv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerTag:TransformerTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "tag id\n"
        },
        "name": {
          "type": "string",
          "description": "tag name\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ]
    },
    "splight:index/TransformerTapPos:TransformerTapPos": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/TransformerVoltageHv:TransformerVoltageHv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerVoltageLv:TransformerVoltageLv": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit"
          ]
        }
      }
    },
    "splight:index/TransformerXnOhm:TransformerXnOhm": {
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "id": {
          "type": "string",
          "description": "id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "unit of measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "asset",
            "id",
            "name",
            "type",
            "unit",
            "value"
          ]
        }
      }
    },
    "splight:index/getAssetKindsKind:getAssetKindsKind": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "splight:index/getBusesTag:getBusesTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "splight:index/getGeneratorsTag:getGeneratorsTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "splight:index/getGridsTag:getGridsTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "splight:index/getLinesTag:getLinesTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "splight:index/getTagsTag:getTagsTag": {
      "properties": {
        "id": {
          "type": "string",
          "description": "Id of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    }
  },
  "provider": {
    "description": "The provider type for the splight package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
    "properties": {
      "hostname": {
        "type": "string"
      },
      "token": {
        "type": "string",
        "secret": true
      }
    },
    "type": "object",
    "inputProperties": {
      "hostname": {
        "type": "string"
      },
      "token": {
        "type": "string",
        "secret": true
      }
    }
  },
  "resources": {
    "splight:index/action:Action": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myAsset = new splight.Asset(\"myAsset\", {\n    description: \"My Asset Description\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [{\n            type: \"Point\",\n            coordinates: [\n                0,\n                0,\n            ],\n        }],\n    }),\n});\nconst myAttribute = new splight.AssetAttribute(\"myAttribute\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: myAsset.id,\n});\nconst myAction = new splight.Action(\"myAction\", {\n    asset: {\n        id: myAsset.id,\n        name: myAsset.name,\n    },\n    setpoints: [{\n        value: JSON.stringify(1),\n        attribute: {\n            id: myAttribute.id,\n            name: myAttribute.name,\n        },\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nmy_asset = splight.Asset(\"myAsset\",\n    description=\"My Asset Description\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [{\n            \"type\": \"Point\",\n            \"coordinates\": [\n                0,\n                0,\n            ],\n        }],\n    }))\nmy_attribute = splight.AssetAttribute(\"myAttribute\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=my_asset.id)\nmy_action = splight.Action(\"myAction\",\n    asset={\n        \"id\": my_asset.id,\n        \"name\": my_asset.name,\n    },\n    setpoints=[{\n        \"value\": json.dumps(1),\n        \"attribute\": {\n            \"id\": my_attribute.id,\n            \"name\": my_attribute.name,\n        },\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myAsset = new Splight.Asset(\"myAsset\", new()\n    {\n        Description = \"My Asset Description\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n                new Dictionary<string, object?>\n                {\n                    [\"type\"] = \"Point\",\n                    [\"coordinates\"] = new[]\n                    {\n                        0,\n                        0,\n                    },\n                },\n            },\n        }),\n    });\n\n    var myAttribute = new Splight.AssetAttribute(\"myAttribute\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = myAsset.Id,\n    });\n\n    var myAction = new Splight.Action(\"myAction\", new()\n    {\n        Asset = new Splight.Inputs.ActionAssetArgs\n        {\n            Id = myAsset.Id,\n            Name = myAsset.Name,\n        },\n        Setpoints = new[]\n        {\n            new Splight.Inputs.ActionSetpointArgs\n            {\n                Value = JsonSerializer.Serialize(1),\n                Attribute = new Splight.Inputs.ActionSetpointAttributeArgs\n                {\n                    Id = myAttribute.Id,\n                    Name = myAttribute.Name,\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\": \"GeometryCollection\",\n\t\t\t\"geometries\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"type\": \"Point\",\n\t\t\t\t\t\"coordinates\": []float64{\n\t\t\t\t\t\t0,\n\t\t\t\t\t\t0,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmyAsset, err := splight.NewAsset(ctx, \"myAsset\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"My Asset Description\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmyAttribute, err := splight.NewAssetAttribute(ctx, \"myAttribute\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: myAsset.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(1)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = splight.NewAction(ctx, \"myAction\", &splight.ActionArgs{\n\t\t\tAsset: &splight.ActionAssetArgs{\n\t\t\t\tId:   myAsset.ID(),\n\t\t\t\tName: myAsset.Name,\n\t\t\t},\n\t\t\tSetpoints: splight.ActionSetpointArray{\n\t\t\t\t&splight.ActionSetpointArgs{\n\t\t\t\t\tValue: pulumi.String(json1),\n\t\t\t\t\tAttribute: &splight.ActionSetpointAttributeArgs{\n\t\t\t\t\t\tId:   myAttribute.ID(),\n\t\t\t\t\t\tName: myAttribute.Name,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Action;\nimport com.pulumi.splight.ActionArgs;\nimport com.pulumi.splight.inputs.ActionAssetArgs;\nimport com.pulumi.splight.inputs.ActionSetpointArgs;\nimport com.pulumi.splight.inputs.ActionSetpointAttributeArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAsset = new Asset(\"myAsset\", AssetArgs.builder()\n            .description(\"My Asset Description\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(jsonObject(\n                        jsonProperty(\"type\", \"Point\"),\n                        jsonProperty(\"coordinates\", jsonArray(\n                            0, \n                            0\n                        ))\n                    )))\n                )))\n            .build());\n\n        var myAttribute = new AssetAttribute(\"myAttribute\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(myAsset.id())\n            .build());\n\n        var myAction = new Action(\"myAction\", ActionArgs.builder()\n            .asset(ActionAssetArgs.builder()\n                .id(myAsset.id())\n                .name(myAsset.name())\n                .build())\n            .setpoints(ActionSetpointArgs.builder()\n                .value(serializeJson(\n                    1))\n                .attribute(ActionSetpointAttributeArgs.builder()\n                    .id(myAttribute.id())\n                    .name(myAttribute.name())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAsset:\n    type: splight:Asset\n    properties:\n      description: My Asset Description\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries:\n            - type: Point\n              coordinates:\n                - 0\n                - 0\n  myAttribute:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${myAsset.id}\n  myAction:\n    type: splight:Action\n    properties:\n      asset:\n        id: ${myAsset.id}\n        name: ${myAsset.name}\n      setpoints:\n        - value:\n            fn::toJSON: 1\n          attribute:\n            id: ${myAttribute.id}\n            name: ${myAttribute.name}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/action:Action [options] splight_action.<name> <action_id>\n```\n\n",
      "properties": {
        "asset": {
          "$ref": "#/types/splight:index%2FActionAsset:ActionAsset",
          "description": "target asset of the setpoint\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the action to be created\n"
        },
        "setpoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FActionSetpoint:ActionSetpoint"
          },
          "description": "action setpoints\n"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "name",
        "setpoints"
      ],
      "inputProperties": {
        "asset": {
          "$ref": "#/types/splight:index%2FActionAsset:ActionAsset",
          "description": "target asset of the setpoint\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the action to be created\n"
        },
        "setpoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FActionSetpoint:ActionSetpoint"
          },
          "description": "action setpoints\n"
        }
      },
      "requiredInputs": [
        "asset",
        "setpoints"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Action resources.\n",
        "properties": {
          "asset": {
            "$ref": "#/types/splight:index%2FActionAsset:ActionAsset",
            "description": "target asset of the setpoint\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the action to be created\n"
          },
          "setpoints": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FActionSetpoint:ActionSetpoint"
            },
            "description": "action setpoints\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/alert:Alert": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/alert:Alert [options] splight_alert.<name> <alert_id>\n```\n\n",
      "properties": {
        "aggregation": {
          "type": "string",
          "description": "aggregation to be applied to reads before comparisson\n"
        },
        "alertItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertAlertItem:AlertAlertItem"
          },
          "description": "traces to be used to compute the results\n"
        },
        "cronDom": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronDow": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronHours": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMinutes": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMonth": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronYear": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "description": {
          "type": "string",
          "description": "The description of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the resource\n"
        },
        "operator": {
          "type": "string",
          "description": "operator to be used to compare the read value with the threshold value\n"
        },
        "rateUnit": {
          "type": "string",
          "description": "[day|hour|minute] schedule unit\n"
        },
        "rateValue": {
          "type": "integer",
          "description": "schedule value\n"
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertRelatedAsset:AlertRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "severity": {
          "type": "string",
          "description": "[sev1,...,sev8] severity for the alert\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertTag:AlertTag"
          },
          "description": "tags of the resource\n"
        },
        "targetVariable": {
          "type": "string",
          "description": "variable to be used to compare with thresholds\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertThreshold:AlertThreshold"
          }
        },
        "timeWindow": {
          "type": "integer",
          "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
        },
        "type": {
          "type": "string",
          "description": "[cron|rate] type for the cron\n"
        }
      },
      "type": "object",
      "required": [
        "aggregation",
        "alertItems",
        "cronDom",
        "cronDow",
        "cronHours",
        "cronMinutes",
        "cronMonth",
        "cronYear",
        "description",
        "name",
        "operator",
        "rateUnit",
        "rateValue",
        "severity",
        "targetVariable",
        "thresholds",
        "timeWindow",
        "type"
      ],
      "inputProperties": {
        "aggregation": {
          "type": "string",
          "description": "aggregation to be applied to reads before comparisson\n"
        },
        "alertItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertAlertItem:AlertAlertItem"
          },
          "description": "traces to be used to compute the results\n"
        },
        "cronDom": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronDow": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronHours": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMinutes": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMonth": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronYear": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "description": {
          "type": "string",
          "description": "The description of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the resource\n"
        },
        "operator": {
          "type": "string",
          "description": "operator to be used to compare the read value with the threshold value\n"
        },
        "rateUnit": {
          "type": "string",
          "description": "[day|hour|minute] schedule unit\n"
        },
        "rateValue": {
          "type": "integer",
          "description": "schedule value\n"
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertRelatedAsset:AlertRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "severity": {
          "type": "string",
          "description": "[sev1,...,sev8] severity for the alert\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertTag:AlertTag"
          },
          "description": "tags of the resource\n"
        },
        "targetVariable": {
          "type": "string",
          "description": "variable to be used to compare with thresholds\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlertThreshold:AlertThreshold"
          }
        },
        "timeWindow": {
          "type": "integer",
          "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
        },
        "type": {
          "type": "string",
          "description": "[cron|rate] type for the cron\n"
        }
      },
      "requiredInputs": [
        "aggregation",
        "alertItems",
        "description",
        "operator",
        "severity",
        "targetVariable",
        "thresholds",
        "timeWindow",
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Alert resources.\n",
        "properties": {
          "aggregation": {
            "type": "string",
            "description": "aggregation to be applied to reads before comparisson\n"
          },
          "alertItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlertAlertItem:AlertAlertItem"
            },
            "description": "traces to be used to compute the results\n"
          },
          "cronDom": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronDow": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronHours": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronMinutes": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronMonth": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronYear": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "description": {
            "type": "string",
            "description": "The description of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "The name of the resource\n"
          },
          "operator": {
            "type": "string",
            "description": "operator to be used to compare the read value with the threshold value\n"
          },
          "rateUnit": {
            "type": "string",
            "description": "[day|hour|minute] schedule unit\n"
          },
          "rateValue": {
            "type": "integer",
            "description": "schedule value\n"
          },
          "relatedAssets": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlertRelatedAsset:AlertRelatedAsset"
            },
            "description": "related assets of the resource\n"
          },
          "severity": {
            "type": "string",
            "description": "[sev1,...,sev8] severity for the alert\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlertTag:AlertTag"
            },
            "description": "tags of the resource\n"
          },
          "targetVariable": {
            "type": "string",
            "description": "variable to be used to compare with thresholds\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlertThreshold:AlertThreshold"
            }
          },
          "timeWindow": {
            "type": "integer",
            "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
          },
          "type": {
            "type": "string",
            "description": "[cron|rate] type for the cron\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/algorithm:Algorithm": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/algorithm:Algorithm [options] splight_algorithm.<name> <algorithm_id>\n```\n\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlgorithmInput:AlgorithmInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the algorithm\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the algorithm to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the algorithm runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the algorithm\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlgorithmTag:AlgorithmTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub algorithm\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "version"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlgorithmInput:AlgorithmInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the algorithm\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the algorithm to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the algorithm runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the algorithm\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAlgorithmTag:AlgorithmTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub algorithm\n"
        }
      },
      "requiredInputs": [
        "version"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Algorithm resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "optional description to add details of the resource\n"
          },
          "inputs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlgorithmInput:AlgorithmInput"
            },
            "description": "static config parameters of the routine\n"
          },
          "logLevel": {
            "type": "string",
            "description": "log level of the algorithm\n"
          },
          "machineInstanceSize": {
            "type": "string",
            "description": "instance size\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the algorithm to be created\n"
          },
          "node": {
            "type": "string",
            "description": "id of the compute node where the algorithm runs\n"
          },
          "restartPolicy": {
            "type": "string",
            "description": "restart policy of the algorithm\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAlgorithmTag:AlgorithmTag"
            },
            "description": "tags of the resource\n"
          },
          "version": {
            "type": "string",
            "description": "[NAME-VERSION] the version of the hub algorithm\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/asset:Asset": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/asset:Asset [options] splight_asset.<name> <asset_id>\n```\n\n",
      "properties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "GeoJSON GeomtryCollection\n"
        },
        "kind": {
          "$ref": "#/types/splight:index%2FAssetKind:AssetKind",
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAssetTag:AssetTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "GeoJSON GeomtryCollection\n"
        },
        "kind": {
          "$ref": "#/types/splight:index%2FAssetKind:AssetKind",
          "description": "kind of the resource\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FAssetTag:AssetTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Asset resources.\n",
        "properties": {
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "GeoJSON GeomtryCollection\n"
          },
          "kind": {
            "$ref": "#/types/splight:index%2FAssetKind:AssetKind",
            "description": "kind of the resource\n",
            "willReplaceOnChanges": true
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FAssetTag:AssetTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/assetAttribute:AssetAttribute": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myAsset = new splight.Asset(\"myAsset\", {\n    description: \"My Asset Description\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [{\n            type: \"Point\",\n            coordinates: [\n                0,\n                0,\n            ],\n        }],\n    }),\n});\nconst myAttribute = new splight.AssetAttribute(\"myAttribute\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: myAsset.id,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nmy_asset = splight.Asset(\"myAsset\",\n    description=\"My Asset Description\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [{\n            \"type\": \"Point\",\n            \"coordinates\": [\n                0,\n                0,\n            ],\n        }],\n    }))\nmy_attribute = splight.AssetAttribute(\"myAttribute\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=my_asset.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myAsset = new Splight.Asset(\"myAsset\", new()\n    {\n        Description = \"My Asset Description\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n                new Dictionary<string, object?>\n                {\n                    [\"type\"] = \"Point\",\n                    [\"coordinates\"] = new[]\n                    {\n                        0,\n                        0,\n                    },\n                },\n            },\n        }),\n    });\n\n    var myAttribute = new Splight.AssetAttribute(\"myAttribute\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = myAsset.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\": \"GeometryCollection\",\n\t\t\t\"geometries\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"type\": \"Point\",\n\t\t\t\t\t\"coordinates\": []float64{\n\t\t\t\t\t\t0,\n\t\t\t\t\t\t0,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmyAsset, err := splight.NewAsset(ctx, \"myAsset\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"My Asset Description\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewAssetAttribute(ctx, \"myAttribute\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: myAsset.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAsset = new Asset(\"myAsset\", AssetArgs.builder()\n            .description(\"My Asset Description\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(jsonObject(\n                        jsonProperty(\"type\", \"Point\"),\n                        jsonProperty(\"coordinates\", jsonArray(\n                            0, \n                            0\n                        ))\n                    )))\n                )))\n            .build());\n\n        var myAttribute = new AssetAttribute(\"myAttribute\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(myAsset.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAsset:\n    type: splight:Asset\n    properties:\n      description: My Asset Description\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries:\n            - type: Point\n              coordinates:\n                - 0\n                - 0\n  myAttribute:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${myAsset.id}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/assetAttribute:AssetAttribute [options] splight_asset_attribute.<name> <asset_attribute_id>\n```\n\n",
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "optional reference to the unit of the measure\n"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "name",
        "type"
      ],
      "inputProperties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "optional reference to the unit of the measure\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "asset",
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AssetAttribute resources.\n",
        "properties": {
          "asset": {
            "type": "string",
            "description": "reference to the asset to be linked to\n",
            "willReplaceOnChanges": true
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "type": {
            "type": "string",
            "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
          },
          "unit": {
            "type": "string",
            "description": "optional reference to the unit of the measure\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "splight:index/assetMetadata:AssetMetadata": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myAsset = new splight.Asset(\"myAsset\", {\n    description: \"My Asset Description\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [{\n            type: \"Point\",\n            coordinates: [\n                0,\n                0,\n            ],\n        }],\n    }),\n});\nconst myAssetMetadata = new splight.AssetMetadata(\"myAssetMetadata\", {\n    type: \"Number\",\n    unit: \"meters\",\n    value: JSON.stringify(10),\n    asset: myAsset.id,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nmy_asset = splight.Asset(\"myAsset\",\n    description=\"My Asset Description\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [{\n            \"type\": \"Point\",\n            \"coordinates\": [\n                0,\n                0,\n            ],\n        }],\n    }))\nmy_asset_metadata = splight.AssetMetadata(\"myAssetMetadata\",\n    type=\"Number\",\n    unit=\"meters\",\n    value=json.dumps(10),\n    asset=my_asset.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myAsset = new Splight.Asset(\"myAsset\", new()\n    {\n        Description = \"My Asset Description\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n                new Dictionary<string, object?>\n                {\n                    [\"type\"] = \"Point\",\n                    [\"coordinates\"] = new[]\n                    {\n                        0,\n                        0,\n                    },\n                },\n            },\n        }),\n    });\n\n    var myAssetMetadata = new Splight.AssetMetadata(\"myAssetMetadata\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Value = JsonSerializer.Serialize(10),\n        Asset = myAsset.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\": \"GeometryCollection\",\n\t\t\t\"geometries\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"type\": \"Point\",\n\t\t\t\t\t\"coordinates\": []float64{\n\t\t\t\t\t\t0,\n\t\t\t\t\t\t0,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmyAsset, err := splight.NewAsset(ctx, \"myAsset\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"My Asset Description\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(10)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = splight.NewAssetMetadata(ctx, \"myAssetMetadata\", &splight.AssetMetadataArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tValue: pulumi.String(json1),\n\t\t\tAsset: myAsset.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetMetadata;\nimport com.pulumi.splight.AssetMetadataArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAsset = new Asset(\"myAsset\", AssetArgs.builder()\n            .description(\"My Asset Description\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(jsonObject(\n                        jsonProperty(\"type\", \"Point\"),\n                        jsonProperty(\"coordinates\", jsonArray(\n                            0, \n                            0\n                        ))\n                    )))\n                )))\n            .build());\n\n        var myAssetMetadata = new AssetMetadata(\"myAssetMetadata\", AssetMetadataArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .value(serializeJson(\n                10))\n            .asset(myAsset.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAsset:\n    type: splight:Asset\n    properties:\n      description: My Asset Description\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries:\n            - type: Point\n              coordinates:\n                - 0\n                - 0\n  myAssetMetadata:\n    type: splight:AssetMetadata\n    properties:\n      type: Number\n      unit: meters\n      value:\n        fn::toJSON: 10\n      asset: ${myAsset.id}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/assetMetadata:AssetMetadata [options] splight_asset_metadata.<name> <asset_metadata_id>\n```\n\n",
      "properties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "optional reference to the unit of the measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "name",
        "type",
        "value"
      ],
      "inputProperties": {
        "asset": {
          "type": "string",
          "description": "reference to the asset to be linked to\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
        },
        "unit": {
          "type": "string",
          "description": "optional reference to the unit of the measure\n"
        },
        "value": {
          "type": "string",
          "description": "metadata value\n"
        }
      },
      "requiredInputs": [
        "asset",
        "type",
        "value"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AssetMetadata resources.\n",
        "properties": {
          "asset": {
            "type": "string",
            "description": "reference to the asset to be linked to\n",
            "willReplaceOnChanges": true
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "type": {
            "type": "string",
            "description": "[String|Boolean|Number] type of the data to be ingested in this attribute\n"
          },
          "unit": {
            "type": "string",
            "description": "optional reference to the unit of the measure\n"
          },
          "value": {
            "type": "string",
            "description": "metadata value\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/assetRelation:AssetRelation": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/assetRelation:AssetRelation [options] splight_relation.<name> <relation_id>\n```\n\n",
      "properties": {
        "asset": {
          "$ref": "#/types/splight:index%2FAssetRelationAsset:AssetRelationAsset",
          "description": "asset where the relation origins\n"
        },
        "description": {
          "type": "string",
          "description": "relation description\n"
        },
        "name": {
          "type": "string",
          "description": "relation name\n"
        },
        "relatedAsset": {
          "$ref": "#/types/splight:index%2FAssetRelationRelatedAsset:AssetRelationRelatedAsset",
          "description": "target asset of the relation\n"
        },
        "relatedAssetKind": {
          "$ref": "#/types/splight:index%2FAssetRelationRelatedAssetKind:AssetRelationRelatedAssetKind",
          "description": "kind of the target relation asset\n"
        }
      },
      "type": "object",
      "required": [
        "asset",
        "name",
        "relatedAssetKind"
      ],
      "inputProperties": {
        "asset": {
          "$ref": "#/types/splight:index%2FAssetRelationAsset:AssetRelationAsset",
          "description": "asset where the relation origins\n",
          "willReplaceOnChanges": true
        },
        "description": {
          "type": "string",
          "description": "relation description\n"
        },
        "name": {
          "type": "string",
          "description": "relation name\n",
          "willReplaceOnChanges": true
        },
        "relatedAsset": {
          "$ref": "#/types/splight:index%2FAssetRelationRelatedAsset:AssetRelationRelatedAsset",
          "description": "target asset of the relation\n"
        },
        "relatedAssetKind": {
          "$ref": "#/types/splight:index%2FAssetRelationRelatedAssetKind:AssetRelationRelatedAssetKind",
          "description": "kind of the target relation asset\n"
        }
      },
      "requiredInputs": [
        "asset",
        "relatedAssetKind"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AssetRelation resources.\n",
        "properties": {
          "asset": {
            "$ref": "#/types/splight:index%2FAssetRelationAsset:AssetRelationAsset",
            "description": "asset where the relation origins\n",
            "willReplaceOnChanges": true
          },
          "description": {
            "type": "string",
            "description": "relation description\n"
          },
          "name": {
            "type": "string",
            "description": "relation name\n",
            "willReplaceOnChanges": true
          },
          "relatedAsset": {
            "$ref": "#/types/splight:index%2FAssetRelationRelatedAsset:AssetRelationRelatedAsset",
            "description": "target asset of the relation\n"
          },
          "relatedAssetKind": {
            "$ref": "#/types/splight:index%2FAssetRelationRelatedAssetKind:AssetRelationRelatedAssetKind",
            "description": "kind of the target relation asset\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/bus:Bus": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/bus:Bus [options] splight_bus.<name> <bus_id>\n```\n\n",
      "properties": {
        "activePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FBusActivePower:BusActivePower"
          },
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FBusKind:BusKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "nominalVoltageKv": {
          "$ref": "#/types/splight:index%2FBusNominalVoltageKv:BusNominalVoltageKv",
          "description": "attribute of the resource\n"
        },
        "reactivePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FBusReactivePower:BusReactivePower"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FBusTag:BusTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "activePowers",
        "kinds",
        "name",
        "nominalVoltageKv",
        "reactivePowers",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "nominalVoltageKv": {
          "$ref": "#/types/splight:index%2FBusNominalVoltageKv:BusNominalVoltageKv",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FBusTag:BusTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Bus resources.\n",
        "properties": {
          "activePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FBusActivePower:BusActivePower"
            },
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FBusKind:BusKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "nominalVoltageKv": {
            "$ref": "#/types/splight:index%2FBusNominalVoltageKv:BusNominalVoltageKv",
            "description": "attribute of the resource\n"
          },
          "reactivePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FBusReactivePower:BusReactivePower"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FBusTag:BusTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/command:Command": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myAsset = new splight.Asset(\"myAsset\", {\n    description: \"My Asset Description\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [{\n            type: \"Point\",\n            coordinates: [\n                0,\n                0,\n            ],\n        }],\n    }),\n});\nconst myAttribute = new splight.AssetAttribute(\"myAttribute\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: myAsset.id,\n});\nconst myAction = new splight.Action(\"myAction\", {\n    asset: {\n        id: myAsset.id,\n        name: myAsset.name,\n    },\n    setpoints: [{\n        value: JSON.stringify(1),\n        attribute: {\n            id: myAttribute.id,\n            name: myAttribute.name,\n        },\n    }],\n});\nconst myCommand = new splight.Command(\"myCommand\", {actions: [{\n    id: myAction.id,\n    name: myAction.name,\n    asset: {\n        id: myAsset.id,\n        name: myAsset.name,\n    },\n}]});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nmy_asset = splight.Asset(\"myAsset\",\n    description=\"My Asset Description\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [{\n            \"type\": \"Point\",\n            \"coordinates\": [\n                0,\n                0,\n            ],\n        }],\n    }))\nmy_attribute = splight.AssetAttribute(\"myAttribute\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=my_asset.id)\nmy_action = splight.Action(\"myAction\",\n    asset={\n        \"id\": my_asset.id,\n        \"name\": my_asset.name,\n    },\n    setpoints=[{\n        \"value\": json.dumps(1),\n        \"attribute\": {\n            \"id\": my_attribute.id,\n            \"name\": my_attribute.name,\n        },\n    }])\nmy_command = splight.Command(\"myCommand\", actions=[{\n    \"id\": my_action.id,\n    \"name\": my_action.name,\n    \"asset\": {\n        \"id\": my_asset.id,\n        \"name\": my_asset.name,\n    },\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myAsset = new Splight.Asset(\"myAsset\", new()\n    {\n        Description = \"My Asset Description\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n                new Dictionary<string, object?>\n                {\n                    [\"type\"] = \"Point\",\n                    [\"coordinates\"] = new[]\n                    {\n                        0,\n                        0,\n                    },\n                },\n            },\n        }),\n    });\n\n    var myAttribute = new Splight.AssetAttribute(\"myAttribute\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = myAsset.Id,\n    });\n\n    var myAction = new Splight.Action(\"myAction\", new()\n    {\n        Asset = new Splight.Inputs.ActionAssetArgs\n        {\n            Id = myAsset.Id,\n            Name = myAsset.Name,\n        },\n        Setpoints = new[]\n        {\n            new Splight.Inputs.ActionSetpointArgs\n            {\n                Value = JsonSerializer.Serialize(1),\n                Attribute = new Splight.Inputs.ActionSetpointAttributeArgs\n                {\n                    Id = myAttribute.Id,\n                    Name = myAttribute.Name,\n                },\n            },\n        },\n    });\n\n    var myCommand = new Splight.Command(\"myCommand\", new()\n    {\n        Actions = new[]\n        {\n            new Splight.Inputs.CommandActionArgs\n            {\n                Id = myAction.Id,\n                Name = myAction.Name,\n                Asset = new Splight.Inputs.CommandActionAssetArgs\n                {\n                    Id = myAsset.Id,\n                    Name = myAsset.Name,\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\": \"GeometryCollection\",\n\t\t\t\"geometries\": []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"type\": \"Point\",\n\t\t\t\t\t\"coordinates\": []float64{\n\t\t\t\t\t\t0,\n\t\t\t\t\t\t0,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tmyAsset, err := splight.NewAsset(ctx, \"myAsset\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"My Asset Description\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tmyAttribute, err := splight.NewAssetAttribute(ctx, \"myAttribute\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: myAsset.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(1)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\tmyAction, err := splight.NewAction(ctx, \"myAction\", &splight.ActionArgs{\n\t\t\tAsset: &splight.ActionAssetArgs{\n\t\t\t\tId:   myAsset.ID(),\n\t\t\t\tName: myAsset.Name,\n\t\t\t},\n\t\t\tSetpoints: splight.ActionSetpointArray{\n\t\t\t\t&splight.ActionSetpointArgs{\n\t\t\t\t\tValue: pulumi.String(json1),\n\t\t\t\t\tAttribute: &splight.ActionSetpointAttributeArgs{\n\t\t\t\t\t\tId:   myAttribute.ID(),\n\t\t\t\t\t\tName: myAttribute.Name,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewCommand(ctx, \"myCommand\", &splight.CommandArgs{\n\t\t\tActions: splight.CommandActionArray{\n\t\t\t\t&splight.CommandActionArgs{\n\t\t\t\t\tId:   myAction.ID(),\n\t\t\t\t\tName: myAction.Name,\n\t\t\t\t\tAsset: &splight.CommandActionAssetArgs{\n\t\t\t\t\t\tId:   myAsset.ID(),\n\t\t\t\t\t\tName: myAsset.Name,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Action;\nimport com.pulumi.splight.ActionArgs;\nimport com.pulumi.splight.inputs.ActionAssetArgs;\nimport com.pulumi.splight.inputs.ActionSetpointArgs;\nimport com.pulumi.splight.inputs.ActionSetpointAttributeArgs;\nimport com.pulumi.splight.Command;\nimport com.pulumi.splight.CommandArgs;\nimport com.pulumi.splight.inputs.CommandActionArgs;\nimport com.pulumi.splight.inputs.CommandActionAssetArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAsset = new Asset(\"myAsset\", AssetArgs.builder()\n            .description(\"My Asset Description\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(jsonObject(\n                        jsonProperty(\"type\", \"Point\"),\n                        jsonProperty(\"coordinates\", jsonArray(\n                            0, \n                            0\n                        ))\n                    )))\n                )))\n            .build());\n\n        var myAttribute = new AssetAttribute(\"myAttribute\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(myAsset.id())\n            .build());\n\n        var myAction = new Action(\"myAction\", ActionArgs.builder()\n            .asset(ActionAssetArgs.builder()\n                .id(myAsset.id())\n                .name(myAsset.name())\n                .build())\n            .setpoints(ActionSetpointArgs.builder()\n                .value(serializeJson(\n                    1))\n                .attribute(ActionSetpointAttributeArgs.builder()\n                    .id(myAttribute.id())\n                    .name(myAttribute.name())\n                    .build())\n                .build())\n            .build());\n\n        var myCommand = new Command(\"myCommand\", CommandArgs.builder()\n            .actions(CommandActionArgs.builder()\n                .id(myAction.id())\n                .name(myAction.name())\n                .asset(CommandActionAssetArgs.builder()\n                    .id(myAsset.id())\n                    .name(myAsset.name())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAsset:\n    type: splight:Asset\n    properties:\n      description: My Asset Description\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries:\n            - type: Point\n              coordinates:\n                - 0\n                - 0\n  myAttribute:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${myAsset.id}\n  myAction:\n    type: splight:Action\n    properties:\n      asset:\n        id: ${myAsset.id}\n        name: ${myAsset.name}\n      setpoints:\n        - value:\n            fn::toJSON: 1\n          attribute:\n            id: ${myAttribute.id}\n            name: ${myAttribute.name}\n  myCommand:\n    type: splight:Command\n    properties:\n      actions:\n        - id: ${myAction.id}\n          name: ${myAction.name}\n          asset:\n            id: ${myAsset.id}\n            name: ${myAsset.name}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/command:Command [options] splight_command.<name> <command_id>\n```\n\n",
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FCommandAction:CommandAction"
          },
          "description": "command actions\n"
        },
        "description": {
          "type": "string",
          "description": "the description of the command to be created\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the command to be created\n"
        }
      },
      "type": "object",
      "required": [
        "actions",
        "name"
      ],
      "inputProperties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FCommandAction:CommandAction"
          },
          "description": "command actions\n"
        },
        "description": {
          "type": "string",
          "description": "the description of the command to be created\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the command to be created\n"
        }
      },
      "requiredInputs": [
        "actions"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Command resources.\n",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FCommandAction:CommandAction"
            },
            "description": "command actions\n"
          },
          "description": {
            "type": "string",
            "description": "the description of the command to be created\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the command to be created\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/component:Component": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/component:Component [options] splight_component.<name> <component_id>\n```\n\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentInput:ComponentInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the component\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the component to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the component runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the component\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentTag:ComponentTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub component\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "version"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentInput:ComponentInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the component\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the component to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the component runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the component\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentTag:ComponentTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub component\n"
        }
      },
      "requiredInputs": [
        "version"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Component resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "optional description to add details of the resource\n"
          },
          "inputs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FComponentInput:ComponentInput"
            },
            "description": "static config parameters of the routine\n"
          },
          "logLevel": {
            "type": "string",
            "description": "log level of the component\n"
          },
          "machineInstanceSize": {
            "type": "string",
            "description": "instance size\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the component to be created\n"
          },
          "node": {
            "type": "string",
            "description": "id of the compute node where the component runs\n"
          },
          "restartPolicy": {
            "type": "string",
            "description": "restart policy of the component\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FComponentTag:ComponentTag"
            },
            "description": "tags of the resource\n"
          },
          "version": {
            "type": "string",
            "description": "[NAME-VERSION] the version of the hub component\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/componentRoutine:ComponentRoutine": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/componentRoutine:ComponentRoutine [options] splight_component_routine.<name> <component_routine_id>\n```\n\n",
      "properties": {
        "componentId": {
          "type": "string",
          "description": "reference to component to be attached\n"
        },
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineConfig:ComponentRoutineConfig"
          },
          "description": "static config parameters of the routine\n"
        },
        "description": {
          "type": "string",
          "description": "optional complementary information about the routine\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineInput:ComponentRoutineInput"
          },
          "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
        },
        "name": {
          "type": "string",
          "description": "name of the routine\n"
        },
        "outputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineOutput:ComponentRoutineOutput"
          },
          "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
        },
        "type": {
          "type": "string",
          "description": "[IncomingRoutine|OutgoingRoutine] direction of the data flow (from device to system or from system to device)\n"
        }
      },
      "type": "object",
      "required": [
        "componentId",
        "name",
        "type"
      ],
      "inputProperties": {
        "componentId": {
          "type": "string",
          "description": "reference to component to be attached\n"
        },
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineConfig:ComponentRoutineConfig"
          },
          "description": "static config parameters of the routine\n"
        },
        "description": {
          "type": "string",
          "description": "optional complementary information about the routine\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineInput:ComponentRoutineInput"
          },
          "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
        },
        "name": {
          "type": "string",
          "description": "name of the routine\n"
        },
        "outputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FComponentRoutineOutput:ComponentRoutineOutput"
          },
          "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
        },
        "type": {
          "type": "string",
          "description": "[IncomingRoutine|OutgoingRoutine] direction of the data flow (from device to system or from system to device)\n"
        }
      },
      "requiredInputs": [
        "componentId",
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ComponentRoutine resources.\n",
        "properties": {
          "componentId": {
            "type": "string",
            "description": "reference to component to be attached\n"
          },
          "configs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FComponentRoutineConfig:ComponentRoutineConfig"
            },
            "description": "static config parameters of the routine\n"
          },
          "description": {
            "type": "string",
            "description": "optional complementary information about the routine\n"
          },
          "inputs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FComponentRoutineInput:ComponentRoutineInput"
            },
            "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
          },
          "name": {
            "type": "string",
            "description": "name of the routine\n"
          },
          "outputs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FComponentRoutineOutput:ComponentRoutineOutput"
            },
            "description": "asset attribute where to ingest data. Only valid for IncomingRoutine\n"
          },
          "type": {
            "type": "string",
            "description": "[IncomingRoutine|OutgoingRoutine] direction of the data flow (from device to system or from system to device)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/connector:Connector": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/connector:Connector [options] splight_connector.<name> <connector_id>\n```\n\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FConnectorInput:ConnectorInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the connector\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the connector to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the connector runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the connector\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FConnectorTag:ConnectorTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub connector\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "version"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "inputs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FConnectorInput:ConnectorInput"
          },
          "description": "static config parameters of the routine\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the connector\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the connector to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the connector runs\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the connector\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FConnectorTag:ConnectorTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub connector\n"
        }
      },
      "requiredInputs": [
        "version"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Connector resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "optional description to add details of the resource\n"
          },
          "inputs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FConnectorInput:ConnectorInput"
            },
            "description": "static config parameters of the routine\n"
          },
          "logLevel": {
            "type": "string",
            "description": "log level of the connector\n"
          },
          "machineInstanceSize": {
            "type": "string",
            "description": "instance size\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the connector to be created\n"
          },
          "node": {
            "type": "string",
            "description": "id of the compute node where the connector runs\n"
          },
          "restartPolicy": {
            "type": "string",
            "description": "restart policy of the connector\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FConnectorTag:ConnectorTag"
            },
            "description": "tags of the resource\n"
          },
          "version": {
            "type": "string",
            "description": "[NAME-VERSION] the version of the hub connector\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboard:Dashboard": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboard:Dashboard [options] splight_dashboard.<name> <dashboard_id>\n```\n\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "dashboard description\n"
        },
        "name": {
          "type": "string",
          "description": "dashboard name\n"
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardRelatedAsset:DashboardRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTag:DashboardTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "dashboard description\n"
        },
        "name": {
          "type": "string",
          "description": "dashboard name\n"
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardRelatedAsset:DashboardRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTag:DashboardTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Dashboard resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "dashboard description\n"
          },
          "name": {
            "type": "string",
            "description": "dashboard name\n"
          },
          "relatedAssets": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardRelatedAsset:DashboardRelatedAsset"
            },
            "description": "related assets of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTag:DashboardTag"
            },
            "description": "tags of the resource\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardActionlistChart:DashboardActionlistChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardActionlistChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    actionListType: \"table\",\n    filterName: \"some name\",\n    filterAssetName: \"some asset name\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardActionlistChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    action_list_type=\"table\",\n    filter_name=\"some name\",\n    filter_asset_name=\"some asset name\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardActionlistChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        ActionListType = \"table\",\n        FilterName = \"some name\",\n        FilterAssetName = \"some asset name\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardActionlistChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardActionlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardActionlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardActionlistChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardActionlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardActionlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardActionlistChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardActionlistChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardActionlistChart(ctx, \"dashboardChartTest\", &splight.DashboardActionlistChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tActionListType:    pulumi.String(\"table\"),\n\t\t\tFilterName:        pulumi.String(\"some name\"),\n\t\t\tFilterAssetName:   pulumi.String(\"some asset name\"),\n\t\t\tChartItems: splight.DashboardActionlistChartChartItemArray{\n\t\t\t\t&splight.DashboardActionlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardActionlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardActionlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardActionlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardActionlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardActionlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardActionlistChartThresholdArray{\n\t\t\t\t&splight.DashboardActionlistChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardActionlistChartValueMappingArray{\n\t\t\t\t&splight.DashboardActionlistChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardActionlistChart;\nimport com.pulumi.splight.DashboardActionlistChartArgs;\nimport com.pulumi.splight.inputs.DashboardActionlistChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardActionlistChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardActionlistChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardActionlistChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardActionlistChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardActionlistChart(\"dashboardChartTest\", DashboardActionlistChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .actionListType(\"table\")\n            .filterName(\"some name\")\n            .filterAssetName(\"some asset name\")\n            .chartItems(            \n                DashboardActionlistChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardActionlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardActionlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardActionlistChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardActionlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardActionlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardActionlistChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardActionlistChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardActionlistChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      actionListType: table\n      filterName: some name\n      filterAssetName: some asset name\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardActionlistChart:DashboardActionlistChart [options] splight_dashboard_actionlist_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "actionListType": {
          "type": "string",
          "description": "action list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartChartItem:DashboardActionlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterAssetName": {
          "type": "string",
          "description": "filter asset name\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartThreshold:DashboardActionlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartValueMapping:DashboardActionlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "actionListType": {
          "type": "string",
          "description": "action list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartChartItem:DashboardActionlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterAssetName": {
          "type": "string",
          "description": "filter asset name\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartThreshold:DashboardActionlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardActionlistChartValueMapping:DashboardActionlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardActionlistChart resources.\n",
        "properties": {
          "actionListType": {
            "type": "string",
            "description": "action list type\n"
          },
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardActionlistChartChartItem:DashboardActionlistChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "filterAssetName": {
            "type": "string",
            "description": "filter asset name\n"
          },
          "filterName": {
            "type": "string",
            "description": "filter name\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardActionlistChartThreshold:DashboardActionlistChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardActionlistChartValueMapping:DashboardActionlistChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardAlerteventsChart:DashboardAlerteventsChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardAlerteventsChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    filterName: \"some name\",\n    filterOldStatuses: [\"warning\"],\n    filterNewStatuses: [\n        \"no_alert\",\n        \"warning\",\n    ],\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardAlerteventsChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    filter_name=\"some name\",\n    filter_old_statuses=[\"warning\"],\n    filter_new_statuses=[\n        \"no_alert\",\n        \"warning\",\n    ],\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardAlerteventsChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        FilterName = \"some name\",\n        FilterOldStatuses = new[]\n        {\n            \"warning\",\n        },\n        FilterNewStatuses = new[]\n        {\n            \"no_alert\",\n            \"warning\",\n        },\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardAlerteventsChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAlerteventsChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAlerteventsChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardAlerteventsChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAlerteventsChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAlerteventsChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardAlerteventsChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardAlerteventsChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardAlerteventsChart(ctx, \"dashboardChartTest\", &splight.DashboardAlerteventsChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tFilterName:        pulumi.String(\"some name\"),\n\t\t\tFilterOldStatuses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"warning\"),\n\t\t\t},\n\t\t\tFilterNewStatuses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"no_alert\"),\n\t\t\t\tpulumi.String(\"warning\"),\n\t\t\t},\n\t\t\tChartItems: splight.DashboardAlerteventsChartChartItemArray{\n\t\t\t\t&splight.DashboardAlerteventsChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAlerteventsChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAlerteventsChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardAlerteventsChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAlerteventsChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAlerteventsChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardAlerteventsChartThresholdArray{\n\t\t\t\t&splight.DashboardAlerteventsChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardAlerteventsChartValueMappingArray{\n\t\t\t\t&splight.DashboardAlerteventsChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardAlerteventsChart;\nimport com.pulumi.splight.DashboardAlerteventsChartArgs;\nimport com.pulumi.splight.inputs.DashboardAlerteventsChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardAlerteventsChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardAlerteventsChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardAlerteventsChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardAlerteventsChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardAlerteventsChart(\"dashboardChartTest\", DashboardAlerteventsChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .filterName(\"some name\")\n            .filterOldStatuses(\"warning\")\n            .filterNewStatuses(            \n                \"no_alert\",\n                \"warning\")\n            .chartItems(            \n                DashboardAlerteventsChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAlerteventsChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAlerteventsChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardAlerteventsChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAlerteventsChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAlerteventsChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardAlerteventsChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardAlerteventsChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardAlerteventsChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      filterName: some name\n      filterOldStatuses:\n        - warning\n      filterNewStatuses:\n        - no_alert\n        - warning\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardAlerteventsChart:DashboardAlerteventsChart [options] splight_dashboard_alertevents_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartChartItem:DashboardAlerteventsChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterNewStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter new status\n"
        },
        "filterOldStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter old status\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartThreshold:DashboardAlerteventsChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartValueMapping:DashboardAlerteventsChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartChartItem:DashboardAlerteventsChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterNewStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter new status\n"
        },
        "filterOldStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter old status\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartThreshold:DashboardAlerteventsChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlerteventsChartValueMapping:DashboardAlerteventsChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardAlerteventsChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlerteventsChartChartItem:DashboardAlerteventsChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "filterName": {
            "type": "string",
            "description": "filter name\n"
          },
          "filterNewStatuses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "filter new status\n"
          },
          "filterOldStatuses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "filter old status\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlerteventsChartThreshold:DashboardAlerteventsChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlerteventsChartValueMapping:DashboardAlerteventsChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardAlertlistChart:DashboardAlertlistChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardAlertlistChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    filterName: \"some name\",\n    filterStatuses: [\"healthy\"],\n    alertListType: \"table\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardAlertlistChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    filter_name=\"some name\",\n    filter_statuses=[\"healthy\"],\n    alert_list_type=\"table\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardAlertlistChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        FilterName = \"some name\",\n        FilterStatuses = new[]\n        {\n            \"healthy\",\n        },\n        AlertListType = \"table\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardAlertlistChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAlertlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAlertlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardAlertlistChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAlertlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAlertlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardAlertlistChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardAlertlistChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardAlertlistChart(ctx, \"dashboardChartTest\", &splight.DashboardAlertlistChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tFilterName:        pulumi.String(\"some name\"),\n\t\t\tFilterStatuses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"healthy\"),\n\t\t\t},\n\t\t\tAlertListType: pulumi.String(\"table\"),\n\t\t\tChartItems: splight.DashboardAlertlistChartChartItemArray{\n\t\t\t\t&splight.DashboardAlertlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAlertlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAlertlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardAlertlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAlertlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAlertlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardAlertlistChartThresholdArray{\n\t\t\t\t&splight.DashboardAlertlistChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardAlertlistChartValueMappingArray{\n\t\t\t\t&splight.DashboardAlertlistChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardAlertlistChart;\nimport com.pulumi.splight.DashboardAlertlistChartArgs;\nimport com.pulumi.splight.inputs.DashboardAlertlistChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardAlertlistChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardAlertlistChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardAlertlistChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardAlertlistChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardAlertlistChart(\"dashboardChartTest\", DashboardAlertlistChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .filterName(\"some name\")\n            .filterStatuses(\"healthy\")\n            .alertListType(\"table\")\n            .chartItems(            \n                DashboardAlertlistChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAlertlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAlertlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardAlertlistChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAlertlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAlertlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardAlertlistChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardAlertlistChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardAlertlistChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      filterName: some name\n      filterStatuses:\n        - healthy\n      alertListType: table\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardAlertlistChart:DashboardAlertlistChart [options] splight_dashboard_alertlist_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "alertListType": {
          "type": "string",
          "description": "alert list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartChartItem:DashboardAlertlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter status list\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartThreshold:DashboardAlertlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartValueMapping:DashboardAlertlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "alertListType": {
          "type": "string",
          "description": "alert list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartChartItem:DashboardAlertlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter status list\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartThreshold:DashboardAlertlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAlertlistChartValueMapping:DashboardAlertlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardAlertlistChart resources.\n",
        "properties": {
          "alertListType": {
            "type": "string",
            "description": "alert list type\n"
          },
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlertlistChartChartItem:DashboardAlertlistChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "filterName": {
            "type": "string",
            "description": "filter name\n"
          },
          "filterStatuses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "filter status list\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlertlistChartThreshold:DashboardAlertlistChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAlertlistChartValueMapping:DashboardAlertlistChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardAssetlistChart:DashboardAssetlistChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardAssetlistChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    filterName: \"some name\",\n    filterStatuses: [\"healthy\"],\n    assetListType: \"table\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardAssetlistChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    filter_name=\"some name\",\n    filter_statuses=[\"healthy\"],\n    asset_list_type=\"table\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardAssetlistChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        FilterName = \"some name\",\n        FilterStatuses = new[]\n        {\n            \"healthy\",\n        },\n        AssetListType = \"table\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardAssetlistChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAssetlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAssetlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardAssetlistChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardAssetlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardAssetlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardAssetlistChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardAssetlistChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardAssetlistChart(ctx, \"dashboardChartTest\", &splight.DashboardAssetlistChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tFilterName:        pulumi.String(\"some name\"),\n\t\t\tFilterStatuses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"healthy\"),\n\t\t\t},\n\t\t\tAssetListType: pulumi.String(\"table\"),\n\t\t\tChartItems: splight.DashboardAssetlistChartChartItemArray{\n\t\t\t\t&splight.DashboardAssetlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAssetlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAssetlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardAssetlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardAssetlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardAssetlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardAssetlistChartThresholdArray{\n\t\t\t\t&splight.DashboardAssetlistChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardAssetlistChartValueMappingArray{\n\t\t\t\t&splight.DashboardAssetlistChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardAssetlistChart;\nimport com.pulumi.splight.DashboardAssetlistChartArgs;\nimport com.pulumi.splight.inputs.DashboardAssetlistChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardAssetlistChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardAssetlistChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardAssetlistChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardAssetlistChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardAssetlistChart(\"dashboardChartTest\", DashboardAssetlistChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .filterName(\"some name\")\n            .filterStatuses(\"healthy\")\n            .assetListType(\"table\")\n            .chartItems(            \n                DashboardAssetlistChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAssetlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAssetlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardAssetlistChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardAssetlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardAssetlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardAssetlistChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardAssetlistChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardAssetlistChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      filterName: some name\n      filterStatuses:\n        - healthy\n      assetListType: table\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardAssetlistChart:DashboardAssetlistChart [options] splight_dashboard_assetlist_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "assetListType": {
          "type": "string",
          "description": "asset list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartChartItem:DashboardAssetlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter status list\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartThreshold:DashboardAssetlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartValueMapping:DashboardAssetlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "assetListType": {
          "type": "string",
          "description": "asset list type\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartChartItem:DashboardAssetlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "filterStatuses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "filter status list\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartThreshold:DashboardAssetlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardAssetlistChartValueMapping:DashboardAssetlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardAssetlistChart resources.\n",
        "properties": {
          "assetListType": {
            "type": "string",
            "description": "asset list type\n"
          },
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAssetlistChartChartItem:DashboardAssetlistChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "filterName": {
            "type": "string",
            "description": "filter name\n"
          },
          "filterStatuses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "filter status list\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAssetlistChartThreshold:DashboardAssetlistChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardAssetlistChartValueMapping:DashboardAssetlistChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardBarChart:DashboardBarChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardBarChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    yAxisUnit: \"MW\",\n    numberOfDecimals: 2,\n    orientation: \"vertical\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardBarChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    y_axis_unit=\"MW\",\n    number_of_decimals=2,\n    orientation=\"vertical\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardBarChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        YAxisUnit = \"MW\",\n        NumberOfDecimals = 2,\n        Orientation = \"vertical\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardBarChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardBarChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardBarChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardBarChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardBarChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardBarChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardBarChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardBarChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardBarChart(ctx, \"dashboardChartTest\", &splight.DashboardBarChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tYAxisUnit:         pulumi.String(\"MW\"),\n\t\t\tNumberOfDecimals:  pulumi.Int(2),\n\t\t\tOrientation:       pulumi.String(\"vertical\"),\n\t\t\tChartItems: splight.DashboardBarChartChartItemArray{\n\t\t\t\t&splight.DashboardBarChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardBarChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardBarChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardBarChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardBarChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardBarChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardBarChartThresholdArray{\n\t\t\t\t&splight.DashboardBarChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardBarChartValueMappingArray{\n\t\t\t\t&splight.DashboardBarChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardBarChart;\nimport com.pulumi.splight.DashboardBarChartArgs;\nimport com.pulumi.splight.inputs.DashboardBarChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardBarChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardBarChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardBarChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardBarChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardBarChart(\"dashboardChartTest\", DashboardBarChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .yAxisUnit(\"MW\")\n            .numberOfDecimals(2)\n            .orientation(\"vertical\")\n            .chartItems(            \n                DashboardBarChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardBarChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardBarChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardBarChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardBarChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardBarChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardBarChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardBarChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardBarChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      yAxisUnit: MW\n      numberOfDecimals: 2\n      orientation: vertical\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardBarChart:DashboardBarChart [options] splight_dashboard_bar_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartChartItem:DashboardBarChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "orientation": {
          "type": "string",
          "description": "orientation\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartThreshold:DashboardBarChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartValueMapping:DashboardBarChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartChartItem:DashboardBarChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "orientation": {
          "type": "string",
          "description": "orientation\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartThreshold:DashboardBarChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBarChartValueMapping:DashboardBarChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardBarChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBarChartChartItem:DashboardBarChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "orientation": {
            "type": "string",
            "description": "orientation\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBarChartThreshold:DashboardBarChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBarChartValueMapping:DashboardBarChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          },
          "yAxisUnit": {
            "type": "string",
            "description": "y axis units\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardBargaugeChart:DashboardBargaugeChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardBargaugeChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    maxLimit: 100,\n    numberOfDecimals: 2,\n    orientation: \"vertical\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"EXPRESSION\",\n            queryPlain: \"\",\n            expressionPlain: JSON.stringify({\n                $function: {\n                    body: \"function ($A) { return $A/50 }\",\n                    args: [\"$A\"],\n                    lang: \"js\",\n                },\n            }),\n            queryFilterAsset: {},\n            queryFilterAttribute: {},\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardBargaugeChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    max_limit=100,\n    number_of_decimals=2,\n    orientation=\"vertical\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"EXPRESSION\",\n            \"query_plain\": \"\",\n            \"expression_plain\": json.dumps({\n                \"_function\": {\n                    \"body\": \"function ($A) { return $A/50 }\",\n                    \"args\": [\"$A\"],\n                    \"lang\": \"js\",\n                },\n            }),\n            \"query_filter_asset\": {},\n            \"query_filter_attribute\": {},\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardBargaugeChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        MaxLimit = 100,\n        NumberOfDecimals = 2,\n        Orientation = \"vertical\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardBargaugeChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardBargaugeChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardBargaugeChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardBargaugeChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"EXPRESSION\",\n                QueryPlain = \"\",\n                ExpressionPlain = JsonSerializer.Serialize(new Dictionary<string, object?>\n                {\n                    [\"$function\"] = new Dictionary<string, object?>\n                    {\n                        [\"body\"] = \"function ($A) { return $A/50 }\",\n                        [\"args\"] = new[]\n                        {\n                            \"$A\",\n                        },\n                        [\"lang\"] = \"js\",\n                    },\n                }),\n                QueryFilterAsset = null,\n                QueryFilterAttribute = null,\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardBargaugeChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardBargaugeChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON1, err := json.Marshal(map[string]interface{}{\n\t\t\t\"$function\": map[string]interface{}{\n\t\t\t\t\"body\": \"function ($A) { return $A/50 }\",\n\t\t\t\t\"args\": []string{\n\t\t\t\t\t\"$A\",\n\t\t\t\t},\n\t\t\t\t\"lang\": \"js\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = splight.NewDashboardBargaugeChart(ctx, \"dashboardChartTest\", &splight.DashboardBargaugeChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tMaxLimit:          pulumi.Int(100),\n\t\t\tNumberOfDecimals:  pulumi.Int(2),\n\t\t\tOrientation:       pulumi.String(\"vertical\"),\n\t\t\tChartItems: splight.DashboardBargaugeChartChartItemArray{\n\t\t\t\t&splight.DashboardBargaugeChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardBargaugeChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardBargaugeChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardBargaugeChartChartItemArgs{\n\t\t\t\t\tRefId:                pulumi.String(\"B\"),\n\t\t\t\t\tColor:                pulumi.String(\"blue\"),\n\t\t\t\t\tType:                 pulumi.String(\"EXPRESSION\"),\n\t\t\t\t\tQueryPlain:           pulumi.String(\"\"),\n\t\t\t\t\tExpressionPlain:      pulumi.String(json1),\n\t\t\t\t\tQueryFilterAsset:     &splight.DashboardBargaugeChartChartItemQueryFilterAssetArgs{},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardBargaugeChartChartItemQueryFilterAttributeArgs{},\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardBargaugeChartThresholdArray{\n\t\t\t\t&splight.DashboardBargaugeChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardBargaugeChartValueMappingArray{\n\t\t\t\t&splight.DashboardBargaugeChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardBargaugeChart;\nimport com.pulumi.splight.DashboardBargaugeChartArgs;\nimport com.pulumi.splight.inputs.DashboardBargaugeChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardBargaugeChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardBargaugeChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardBargaugeChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardBargaugeChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardBargaugeChart(\"dashboardChartTest\", DashboardBargaugeChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .maxLimit(100)\n            .numberOfDecimals(2)\n            .orientation(\"vertical\")\n            .chartItems(            \n                DashboardBargaugeChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardBargaugeChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardBargaugeChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardBargaugeChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"EXPRESSION\")\n                    .queryPlain(\"\")\n                    .expressionPlain(serializeJson(\n                        jsonObject(\n                            jsonProperty(\"$function\", jsonObject(\n                                jsonProperty(\"body\", \"function ($A) { return $A/50 }\"),\n                                jsonProperty(\"args\", jsonArray(\"$A\")),\n                                jsonProperty(\"lang\", \"js\")\n                            ))\n                        )))\n                    .queryFilterAsset()\n                    .queryFilterAttribute()\n                    .build())\n            .thresholds(DashboardBargaugeChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardBargaugeChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardBargaugeChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      maxLimit: 100\n      numberOfDecimals: 2\n      orientation: vertical\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: EXPRESSION\n          queryPlain:\n          expressionPlain:\n            fn::toJSON:\n              $function:\n                body: function ($A) { return $A/50 }\n                args:\n                  - $A\n                lang: js\n          queryFilterAsset: {}\n          queryFilterAttribute: {}\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardBargaugeChart:DashboardBargaugeChart [options] splight_dashboard_bargauge_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartChartItem:DashboardBargaugeChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "maxLimit": {
          "type": "integer",
          "description": "bar gauge max limit\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "orientation": {
          "type": "string",
          "description": "orientation\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartThreshold:DashboardBargaugeChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartValueMapping:DashboardBargaugeChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartChartItem:DashboardBargaugeChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "maxLimit": {
          "type": "integer",
          "description": "bar gauge max limit\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "orientation": {
          "type": "string",
          "description": "orientation\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartThreshold:DashboardBargaugeChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardBargaugeChartValueMapping:DashboardBargaugeChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardBargaugeChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBargaugeChartChartItem:DashboardBargaugeChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "maxLimit": {
            "type": "integer",
            "description": "bar gauge max limit\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "orientation": {
            "type": "string",
            "description": "orientation\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBargaugeChartThreshold:DashboardBargaugeChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardBargaugeChartValueMapping:DashboardBargaugeChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardCommandlistChart:DashboardCommandlistChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardCommandlistChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    commandListType: \"table\",\n    filterName: \"some name\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardCommandlistChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    command_list_type=\"table\",\n    filter_name=\"some name\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardCommandlistChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        CommandListType = \"table\",\n        FilterName = \"some name\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardCommandlistChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardCommandlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardCommandlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardCommandlistChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardCommandlistChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardCommandlistChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardCommandlistChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardCommandlistChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardCommandlistChart(ctx, \"dashboardChartTest\", &splight.DashboardCommandlistChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tCommandListType:   pulumi.String(\"table\"),\n\t\t\tFilterName:        pulumi.String(\"some name\"),\n\t\t\tChartItems: splight.DashboardCommandlistChartChartItemArray{\n\t\t\t\t&splight.DashboardCommandlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardCommandlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardCommandlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardCommandlistChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardCommandlistChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardCommandlistChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardCommandlistChartThresholdArray{\n\t\t\t\t&splight.DashboardCommandlistChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardCommandlistChartValueMappingArray{\n\t\t\t\t&splight.DashboardCommandlistChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardCommandlistChart;\nimport com.pulumi.splight.DashboardCommandlistChartArgs;\nimport com.pulumi.splight.inputs.DashboardCommandlistChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardCommandlistChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardCommandlistChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardCommandlistChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardCommandlistChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardCommandlistChart(\"dashboardChartTest\", DashboardCommandlistChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .commandListType(\"table\")\n            .filterName(\"some name\")\n            .chartItems(            \n                DashboardCommandlistChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardCommandlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardCommandlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardCommandlistChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardCommandlistChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardCommandlistChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardCommandlistChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardCommandlistChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardCommandlistChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      commandListType: table\n      filterName: some name\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardCommandlistChart:DashboardCommandlistChart [options] splight_dashboard_commandlist_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartChartItem:DashboardCommandlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "commandListType": {
          "type": "string",
          "description": "[table|button_list]command list type\n"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartThreshold:DashboardCommandlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartValueMapping:DashboardCommandlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartChartItem:DashboardCommandlistChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "commandListType": {
          "type": "string",
          "description": "[table|button_list]command list type\n"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "filterName": {
          "type": "string",
          "description": "filter name\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartThreshold:DashboardCommandlistChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardCommandlistChartValueMapping:DashboardCommandlistChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardCommandlistChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardCommandlistChartChartItem:DashboardCommandlistChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "commandListType": {
            "type": "string",
            "description": "[table|button_list]command list type\n"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "filterName": {
            "type": "string",
            "description": "filter name\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardCommandlistChartThreshold:DashboardCommandlistChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardCommandlistChartValueMapping:DashboardCommandlistChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardGaugeChart:DashboardGaugeChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardGaugeChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    maxLimit: 100,\n    numberOfDecimals: 2,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardGaugeChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    max_limit=100,\n    number_of_decimals=2,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardGaugeChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        MaxLimit = 100,\n        NumberOfDecimals = 2,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardGaugeChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardGaugeChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardGaugeChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardGaugeChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardGaugeChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardGaugeChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardGaugeChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardGaugeChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardGaugeChart(ctx, \"dashboardChartTest\", &splight.DashboardGaugeChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tMaxLimit:          pulumi.Int(100),\n\t\t\tNumberOfDecimals:  pulumi.Int(2),\n\t\t\tChartItems: splight.DashboardGaugeChartChartItemArray{\n\t\t\t\t&splight.DashboardGaugeChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardGaugeChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardGaugeChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardGaugeChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardGaugeChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardGaugeChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardGaugeChartThresholdArray{\n\t\t\t\t&splight.DashboardGaugeChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardGaugeChartValueMappingArray{\n\t\t\t\t&splight.DashboardGaugeChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardGaugeChart;\nimport com.pulumi.splight.DashboardGaugeChartArgs;\nimport com.pulumi.splight.inputs.DashboardGaugeChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardGaugeChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardGaugeChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardGaugeChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardGaugeChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardGaugeChart(\"dashboardChartTest\", DashboardGaugeChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .maxLimit(100)\n            .numberOfDecimals(2)\n            .chartItems(            \n                DashboardGaugeChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardGaugeChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardGaugeChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardGaugeChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardGaugeChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardGaugeChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardGaugeChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardGaugeChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardGaugeChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      maxLimit: 100\n      numberOfDecimals: 2\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardGaugeChart:DashboardGaugeChart [options] splight_dashboard_gauge_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartChartItem:DashboardGaugeChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "maxLimit": {
          "type": "integer",
          "description": "bar gauge max limit\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartThreshold:DashboardGaugeChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartValueMapping:DashboardGaugeChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartChartItem:DashboardGaugeChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "maxLimit": {
          "type": "integer",
          "description": "bar gauge max limit\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartThreshold:DashboardGaugeChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardGaugeChartValueMapping:DashboardGaugeChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardGaugeChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardGaugeChartChartItem:DashboardGaugeChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "maxLimit": {
            "type": "integer",
            "description": "bar gauge max limit\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardGaugeChartThreshold:DashboardGaugeChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardGaugeChartValueMapping:DashboardGaugeChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardHistogramChart:DashboardHistogramChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardHistogramChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    numberOfDecimals: 2,\n    bucketCount: 20,\n    bucketSize: 2,\n    histogramType: \"categorical\",\n    sorting: \"count\",\n    stacked: true,\n    categoriesTopMaxLimit: undefined,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardHistogramChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    number_of_decimals=2,\n    bucket_count=20,\n    bucket_size=2,\n    histogram_type=\"categorical\",\n    sorting=\"count\",\n    stacked=True,\n    categories_top_max_limit=None,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardHistogramChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        NumberOfDecimals = 2,\n        BucketCount = 20,\n        BucketSize = 2,\n        HistogramType = \"categorical\",\n        Sorting = \"count\",\n        Stacked = true,\n        CategoriesTopMaxLimit = null,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardHistogramChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardHistogramChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardHistogramChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardHistogramChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardHistogramChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardHistogramChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardHistogramChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardHistogramChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardHistogramChart(ctx, \"dashboardChartTest\", &splight.DashboardHistogramChartArgs{\n\t\t\tTab:                   dashboardTabTest.ID(),\n\t\t\tTimestampGte:          pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:          pulumi.String(\"now\"),\n\t\t\tDescription:           pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:             pulumi.Int(1),\n\t\t\tMinWidth:              pulumi.Int(4),\n\t\t\tDisplayTimeRange:      pulumi.Bool(true),\n\t\t\tLabelsDisplay:         pulumi.Bool(true),\n\t\t\tLabelsAggregation:     pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:       pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:        pulumi.Bool(true),\n\t\t\tHeight:                pulumi.Int(10),\n\t\t\tWidth:                 pulumi.Int(20),\n\t\t\tCollection:            pulumi.String(\"default\"),\n\t\t\tNumberOfDecimals:      pulumi.Int(2),\n\t\t\tBucketCount:           pulumi.Int(20),\n\t\t\tBucketSize:            pulumi.Int(2),\n\t\t\tHistogramType:         pulumi.String(\"categorical\"),\n\t\t\tSorting:               pulumi.String(\"count\"),\n\t\t\tStacked:               pulumi.Bool(true),\n\t\t\tCategoriesTopMaxLimit: nil,\n\t\t\tChartItems: splight.DashboardHistogramChartChartItemArray{\n\t\t\t\t&splight.DashboardHistogramChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardHistogramChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardHistogramChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardHistogramChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardHistogramChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardHistogramChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardHistogramChartThresholdArray{\n\t\t\t\t&splight.DashboardHistogramChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardHistogramChartValueMappingArray{\n\t\t\t\t&splight.DashboardHistogramChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardHistogramChart;\nimport com.pulumi.splight.DashboardHistogramChartArgs;\nimport com.pulumi.splight.inputs.DashboardHistogramChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardHistogramChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardHistogramChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardHistogramChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardHistogramChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardHistogramChart(\"dashboardChartTest\", DashboardHistogramChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .numberOfDecimals(2)\n            .bucketCount(20)\n            .bucketSize(2)\n            .histogramType(\"categorical\")\n            .sorting(\"count\")\n            .stacked(true)\n            .categoriesTopMaxLimit(null)\n            .chartItems(            \n                DashboardHistogramChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardHistogramChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardHistogramChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardHistogramChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardHistogramChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardHistogramChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardHistogramChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardHistogramChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardHistogramChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      numberOfDecimals: 2\n      bucketCount: 20\n      bucketSize: 2\n      histogramType: categorical\n      sorting: count\n      stacked: true\n      categoriesTopMaxLimit: null\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardHistogramChart:DashboardHistogramChart [options] splight_dashboard_histogram_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "bucketCount": {
          "type": "integer",
          "description": "bucket count\n"
        },
        "bucketSize": {
          "type": "integer",
          "description": "bucket size\n"
        },
        "categoriesTopMaxLimit": {
          "type": "integer",
          "description": "categories top max limit\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartChartItem:DashboardHistogramChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "histogramType": {
          "type": "string",
          "description": "histogram type\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "sorting": {
          "type": "string",
          "description": "sorting type\n"
        },
        "stacked": {
          "type": "boolean",
          "description": "whether to stack or not the histogram\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartThreshold:DashboardHistogramChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartValueMapping:DashboardHistogramChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "bucketCount": {
          "type": "integer",
          "description": "bucket count\n"
        },
        "bucketSize": {
          "type": "integer",
          "description": "bucket size\n"
        },
        "categoriesTopMaxLimit": {
          "type": "integer",
          "description": "categories top max limit\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartChartItem:DashboardHistogramChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "histogramType": {
          "type": "string",
          "description": "histogram type\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "sorting": {
          "type": "string",
          "description": "sorting type\n"
        },
        "stacked": {
          "type": "boolean",
          "description": "whether to stack or not the histogram\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartThreshold:DashboardHistogramChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardHistogramChartValueMapping:DashboardHistogramChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardHistogramChart resources.\n",
        "properties": {
          "bucketCount": {
            "type": "integer",
            "description": "bucket count\n"
          },
          "bucketSize": {
            "type": "integer",
            "description": "bucket size\n"
          },
          "categoriesTopMaxLimit": {
            "type": "integer",
            "description": "categories top max limit\n"
          },
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardHistogramChartChartItem:DashboardHistogramChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "histogramType": {
            "type": "string",
            "description": "histogram type\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "sorting": {
            "type": "string",
            "description": "sorting type\n"
          },
          "stacked": {
            "type": "boolean",
            "description": "whether to stack or not the histogram\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardHistogramChartThreshold:DashboardHistogramChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardHistogramChartValueMapping:DashboardHistogramChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardImageChart:DashboardImageChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardImageChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    imageUrl: \"123-123-123-123-123\",\n    imageFile: undefined,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardImageChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    image_url=\"123-123-123-123-123\",\n    image_file=None,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardImageChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        ImageUrl = \"123-123-123-123-123\",\n        ImageFile = null,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardImageChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardImageChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardImageChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardImageChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardImageChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardImageChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardImageChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardImageChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardImageChart(ctx, \"dashboardChartTest\", &splight.DashboardImageChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tImageUrl:          pulumi.String(\"123-123-123-123-123\"),\n\t\t\tImageFile:         nil,\n\t\t\tChartItems: splight.DashboardImageChartChartItemArray{\n\t\t\t\t&splight.DashboardImageChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardImageChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardImageChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardImageChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardImageChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardImageChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardImageChartThresholdArray{\n\t\t\t\t&splight.DashboardImageChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardImageChartValueMappingArray{\n\t\t\t\t&splight.DashboardImageChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardImageChart;\nimport com.pulumi.splight.DashboardImageChartArgs;\nimport com.pulumi.splight.inputs.DashboardImageChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardImageChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardImageChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardImageChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardImageChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardImageChart(\"dashboardChartTest\", DashboardImageChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .imageUrl(\"123-123-123-123-123\")\n            .imageFile(null)\n            .chartItems(            \n                DashboardImageChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardImageChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardImageChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardImageChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardImageChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardImageChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardImageChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardImageChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardImageChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      imageUrl: 123-123-123-123-123\n      imageFile: null\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardImageChart:DashboardImageChart [options] splight_dashboard_image_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartChartItem:DashboardImageChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "imageFile": {
          "type": "string",
          "description": "image file\n"
        },
        "imageUrl": {
          "type": "string",
          "description": "image url\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartThreshold:DashboardImageChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartValueMapping:DashboardImageChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartChartItem:DashboardImageChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "imageFile": {
          "type": "string",
          "description": "image file\n"
        },
        "imageUrl": {
          "type": "string",
          "description": "image url\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartThreshold:DashboardImageChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardImageChartValueMapping:DashboardImageChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardImageChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardImageChartChartItem:DashboardImageChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "imageFile": {
            "type": "string",
            "description": "image file\n"
          },
          "imageUrl": {
            "type": "string",
            "description": "image url\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardImageChartThreshold:DashboardImageChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardImageChartValueMapping:DashboardImageChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardStatChart:DashboardStatChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardStatChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    yAxisUnit: \"MW\",\n    border: false,\n    numberOfDecimals: 4,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardStatChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    y_axis_unit=\"MW\",\n    border=False,\n    number_of_decimals=4,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardStatChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        YAxisUnit = \"MW\",\n        Border = false,\n        NumberOfDecimals = 4,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardStatChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardStatChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardStatChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardStatChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardStatChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardStatChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardStatChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardStatChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardStatChart(ctx, \"dashboardChartTest\", &splight.DashboardStatChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tYAxisUnit:         pulumi.String(\"MW\"),\n\t\t\tBorder:            pulumi.Bool(false),\n\t\t\tNumberOfDecimals:  pulumi.Int(4),\n\t\t\tChartItems: splight.DashboardStatChartChartItemArray{\n\t\t\t\t&splight.DashboardStatChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardStatChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardStatChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardStatChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardStatChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardStatChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardStatChartThresholdArray{\n\t\t\t\t&splight.DashboardStatChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardStatChartValueMappingArray{\n\t\t\t\t&splight.DashboardStatChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardStatChart;\nimport com.pulumi.splight.DashboardStatChartArgs;\nimport com.pulumi.splight.inputs.DashboardStatChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardStatChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardStatChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardStatChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardStatChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardStatChart(\"dashboardChartTest\", DashboardStatChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .yAxisUnit(\"MW\")\n            .border(false)\n            .numberOfDecimals(4)\n            .chartItems(            \n                DashboardStatChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardStatChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardStatChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardStatChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardStatChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardStatChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardStatChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardStatChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardStatChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      yAxisUnit: MW\n      border: false\n      numberOfDecimals: 4\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardStatChart:DashboardStatChart [options] splight_dashboard_stat_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "border": {
          "type": "boolean",
          "description": "whether to show the border or not\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartChartItem:DashboardStatChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartThreshold:DashboardStatChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartValueMapping:DashboardStatChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "border": {
          "type": "boolean",
          "description": "whether to show the border or not\n"
        },
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartChartItem:DashboardStatChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartThreshold:DashboardStatChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardStatChartValueMapping:DashboardStatChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardStatChart resources.\n",
        "properties": {
          "border": {
            "type": "boolean",
            "description": "whether to show the border or not\n"
          },
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardStatChartChartItem:DashboardStatChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardStatChartThreshold:DashboardStatChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardStatChartValueMapping:DashboardStatChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          },
          "yAxisUnit": {
            "type": "string",
            "description": "y axis units\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardTab:DashboardTab": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardTab:DashboardTab [options] splight_dashboard_tab.<name> <dashboard_tab_id>\n```\n\n",
      "properties": {
        "dashboard": {
          "type": "string",
          "description": "dashboard id where to place it\n"
        },
        "name": {
          "type": "string",
          "description": "name for the tab\n"
        },
        "order": {
          "type": "integer",
          "description": "order within the dashboard\n"
        }
      },
      "type": "object",
      "required": [
        "dashboard",
        "name"
      ],
      "inputProperties": {
        "dashboard": {
          "type": "string",
          "description": "dashboard id where to place it\n"
        },
        "name": {
          "type": "string",
          "description": "name for the tab\n"
        },
        "order": {
          "type": "integer",
          "description": "order within the dashboard\n"
        }
      },
      "requiredInputs": [
        "dashboard"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardTab resources.\n",
        "properties": {
          "dashboard": {
            "type": "string",
            "description": "dashboard id where to place it\n"
          },
          "name": {
            "type": "string",
            "description": "name for the tab\n"
          },
          "order": {
            "type": "integer",
            "description": "order within the dashboard\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardTableChart:DashboardTableChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardTableChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    yAxisUnit: \"MW\",\n    numberOfDecimals: 4,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardTableChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    y_axis_unit=\"MW\",\n    number_of_decimals=4,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardTableChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        YAxisUnit = \"MW\",\n        NumberOfDecimals = 4,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardTableChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTableChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTableChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardTableChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTableChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTableChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardTableChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardTableChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardTableChart(ctx, \"dashboardChartTest\", &splight.DashboardTableChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tYAxisUnit:         pulumi.String(\"MW\"),\n\t\t\tNumberOfDecimals:  pulumi.Int(4),\n\t\t\tChartItems: splight.DashboardTableChartChartItemArray{\n\t\t\t\t&splight.DashboardTableChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTableChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTableChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardTableChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTableChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTableChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardTableChartThresholdArray{\n\t\t\t\t&splight.DashboardTableChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardTableChartValueMappingArray{\n\t\t\t\t&splight.DashboardTableChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardTableChart;\nimport com.pulumi.splight.DashboardTableChartArgs;\nimport com.pulumi.splight.inputs.DashboardTableChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardTableChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardTableChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardTableChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardTableChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardTableChart(\"dashboardChartTest\", DashboardTableChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .yAxisUnit(\"MW\")\n            .numberOfDecimals(4)\n            .chartItems(            \n                DashboardTableChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTableChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTableChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardTableChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTableChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTableChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardTableChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardTableChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardTableChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      yAxisUnit: MW\n      numberOfDecimals: 4\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardTableChart:DashboardTableChart [options] splight_dashboard_table_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartChartItem:DashboardTableChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartThreshold:DashboardTableChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartValueMapping:DashboardTableChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis unit\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartChartItem:DashboardTableChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartThreshold:DashboardTableChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTableChartValueMapping:DashboardTableChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis unit\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardTableChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTableChartChartItem:DashboardTableChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTableChartThreshold:DashboardTableChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTableChartValueMapping:DashboardTableChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          },
          "yAxisUnit": {
            "type": "string",
            "description": "y axis unit\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardTextChart:DashboardTextChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardTextChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    text: \"text to show\",\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardTextChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    text=\"text to show\",\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardTextChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        Text = \"text to show\",\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardTextChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTextChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTextChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardTextChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTextChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTextChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardTextChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardTextChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardTextChart(ctx, \"dashboardChartTest\", &splight.DashboardTextChartArgs{\n\t\t\tTab:               dashboardTabTest.ID(),\n\t\t\tTimestampGte:      pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:      pulumi.String(\"now\"),\n\t\t\tDescription:       pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:         pulumi.Int(1),\n\t\t\tMinWidth:          pulumi.Int(4),\n\t\t\tDisplayTimeRange:  pulumi.Bool(true),\n\t\t\tLabelsDisplay:     pulumi.Bool(true),\n\t\t\tLabelsAggregation: pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:   pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:    pulumi.Bool(true),\n\t\t\tHeight:            pulumi.Int(10),\n\t\t\tWidth:             pulumi.Int(20),\n\t\t\tCollection:        pulumi.String(\"default\"),\n\t\t\tText:              pulumi.String(\"text to show\"),\n\t\t\tChartItems: splight.DashboardTextChartChartItemArray{\n\t\t\t\t&splight.DashboardTextChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTextChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTextChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardTextChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTextChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTextChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardTextChartThresholdArray{\n\t\t\t\t&splight.DashboardTextChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardTextChartValueMappingArray{\n\t\t\t\t&splight.DashboardTextChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardTextChart;\nimport com.pulumi.splight.DashboardTextChartArgs;\nimport com.pulumi.splight.inputs.DashboardTextChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardTextChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardTextChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardTextChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardTextChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardTextChart(\"dashboardChartTest\", DashboardTextChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .text(\"text to show\")\n            .chartItems(            \n                DashboardTextChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTextChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTextChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardTextChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTextChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTextChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardTextChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardTextChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardTextChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      text: text to show\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardTextChart:DashboardTextChart [options] splight_dashboard_text_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartChartItem:DashboardTextChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "text": {
          "type": "string",
          "description": "text to display\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartThreshold:DashboardTextChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartValueMapping:DashboardTextChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartChartItem:DashboardTextChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "text": {
          "type": "string",
          "description": "text to display\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartThreshold:DashboardTextChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTextChartValueMapping:DashboardTextChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardTextChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTextChartChartItem:DashboardTextChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "text": {
            "type": "string",
            "description": "text to display\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTextChartThreshold:DashboardTextChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTextChartValueMapping:DashboardTextChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/dashboardTimeseriesChart:DashboardTimeseriesChart": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst assetTest = new splight.Asset(\"assetTest\", {\n    description: \"Created with Terraform\",\n    customTimezone: \"America/Los_Angeles\",\n    geometry: JSON.stringify({\n        type: \"GeometryCollection\",\n        geometries: [],\n    }),\n});\nconst attributeTest1 = new splight.AssetAttribute(\"attributeTest1\", {\n    type: \"Number\",\n    unit: \"meters\",\n    asset: assetTest.id,\n});\nconst attributeTest2 = new splight.AssetAttribute(\"attributeTest2\", {\n    type: \"Number\",\n    unit: \"seconds\",\n    asset: assetTest.id,\n});\nconst dashboardTest = new splight.Dashboard(\"dashboardTest\", {});\nconst dashboardTabTest = new splight.DashboardTab(\"dashboardTabTest\", {\n    order: 0,\n    dashboard: dashboardTest.id,\n});\nconst dashboardChartTest = new splight.DashboardTimeseriesChart(\"dashboardChartTest\", {\n    tab: dashboardTabTest.id,\n    timestampGte: \"now - 7d\",\n    timestampLte: \"now\",\n    description: \"Chart description\",\n    minHeight: 1,\n    minWidth: 4,\n    displayTimeRange: true,\n    labelsDisplay: true,\n    labelsAggregation: \"last\",\n    labelsPlacement: \"bottom\",\n    showBeyondData: true,\n    height: 10,\n    width: 20,\n    collection: \"default\",\n    yAxisMaxLimit: 100,\n    yAxisMinLimit: 0,\n    yAxisUnit: \"kW\",\n    numberOfDecimals: 4,\n    xAxisFormat: \"MM-dd HH:mm\",\n    xAxisAutoSkip: true,\n    xAxisMaxTicksLimit: undefined,\n    lineInterpolationStyle: \"rounded\",\n    timeseriesType: \"bar\",\n    fill: true,\n    showLine: true,\n    chartItems: [\n        {\n            refId: \"A\",\n            type: \"QUERY\",\n            color: \"red\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest1.id,\n                name: attributeTest1.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest1.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"day\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            refId: \"B\",\n            color: \"blue\",\n            type: \"QUERY\",\n            expressionPlain: \"\",\n            queryFilterAsset: {\n                id: assetTest.id,\n                name: assetTest.name,\n            },\n            queryFilterAttribute: {\n                id: attributeTest2.id,\n                name: attributeTest2.name,\n            },\n            queryPlain: pulumi.jsonStringify([\n                {\n                    $match: {\n                        asset: assetTest.id,\n                        attribute: attributeTest2.id,\n                    },\n                },\n                {\n                    $addFields: {\n                        timestamp: {\n                            $dateTrunc: {\n                                date: \"$timestamp\",\n                                unit: \"hour\",\n                                binSize: 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    $group: {\n                        _id: \"$timestamp\",\n                        value: {\n                            $last: \"$value\",\n                        },\n                        timestamp: {\n                            $last: \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds: [{\n        color: \"#00edcf\",\n        displayText: \"T1Test\",\n        value: 13.1,\n    }],\n    valueMappings: [{\n        displayText: \"MODIFICADO\",\n        matchValue: \"123.3\",\n        type: \"exact_match\",\n        order: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_splight as splight\n\nasset_test = splight.Asset(\"assetTest\",\n    description=\"Created with Terraform\",\n    custom_timezone=\"America/Los_Angeles\",\n    geometry=json.dumps({\n        \"type\": \"GeometryCollection\",\n        \"geometries\": [],\n    }))\nattribute_test1 = splight.AssetAttribute(\"attributeTest1\",\n    type=\"Number\",\n    unit=\"meters\",\n    asset=asset_test.id)\nattribute_test2 = splight.AssetAttribute(\"attributeTest2\",\n    type=\"Number\",\n    unit=\"seconds\",\n    asset=asset_test.id)\ndashboard_test = splight.Dashboard(\"dashboardTest\")\ndashboard_tab_test = splight.DashboardTab(\"dashboardTabTest\",\n    order=0,\n    dashboard=dashboard_test.id)\ndashboard_chart_test = splight.DashboardTimeseriesChart(\"dashboardChartTest\",\n    tab=dashboard_tab_test.id,\n    timestamp_gte=\"now - 7d\",\n    timestamp_lte=\"now\",\n    description=\"Chart description\",\n    min_height=1,\n    min_width=4,\n    display_time_range=True,\n    labels_display=True,\n    labels_aggregation=\"last\",\n    labels_placement=\"bottom\",\n    show_beyond_data=True,\n    height=10,\n    width=20,\n    collection=\"default\",\n    y_axis_max_limit=100,\n    y_axis_min_limit=0,\n    y_axis_unit=\"kW\",\n    number_of_decimals=4,\n    x_axis_format=\"MM-dd HH:mm\",\n    x_axis_auto_skip=True,\n    x_axis_max_ticks_limit=None,\n    line_interpolation_style=\"rounded\",\n    timeseries_type=\"bar\",\n    fill=True,\n    show_line=True,\n    chart_items=[\n        {\n            \"ref_id\": \"A\",\n            \"type\": \"QUERY\",\n            \"color\": \"red\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test1.id,\n                \"name\": attribute_test1.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test1.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"day\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n        {\n            \"ref_id\": \"B\",\n            \"color\": \"blue\",\n            \"type\": \"QUERY\",\n            \"expression_plain\": \"\",\n            \"query_filter_asset\": {\n                \"id\": asset_test.id,\n                \"name\": asset_test.name,\n            },\n            \"query_filter_attribute\": {\n                \"id\": attribute_test2.id,\n                \"name\": attribute_test2.name,\n            },\n            \"query_plain\": pulumi.Output.json_dumps([\n                {\n                    \"_match\": {\n                        \"asset\": asset_test.id,\n                        \"attribute\": attribute_test2.id,\n                    },\n                },\n                {\n                    \"$addFields\": {\n                        \"timestamp\": {\n                            \"$dateTrunc\": {\n                                \"date\": \"$timestamp\",\n                                \"unit\": \"hour\",\n                                \"binSize\": 1,\n                            },\n                        },\n                    },\n                },\n                {\n                    \"$group\": {\n                        \"_id\": \"$timestamp\",\n                        \"value\": {\n                            \"$last\": \"$value\",\n                        },\n                        \"timestamp\": {\n                            \"$last\": \"$timestamp\",\n                        },\n                    },\n                },\n            ]),\n        },\n    ],\n    thresholds=[{\n        \"color\": \"#00edcf\",\n        \"display_text\": \"T1Test\",\n        \"value\": 13.1,\n    }],\n    value_mappings=[{\n        \"display_text\": \"MODIFICADO\",\n        \"match_value\": \"123.3\",\n        \"type\": \"exact_match\",\n        \"order\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var assetTest = new Splight.Asset(\"assetTest\", new()\n    {\n        Description = \"Created with Terraform\",\n        CustomTimezone = \"America/Los_Angeles\",\n        Geometry = JsonSerializer.Serialize(new Dictionary<string, object?>\n        {\n            [\"type\"] = \"GeometryCollection\",\n            [\"geometries\"] = new[]\n            {\n            },\n        }),\n    });\n\n    var attributeTest1 = new Splight.AssetAttribute(\"attributeTest1\", new()\n    {\n        Type = \"Number\",\n        Unit = \"meters\",\n        Asset = assetTest.Id,\n    });\n\n    var attributeTest2 = new Splight.AssetAttribute(\"attributeTest2\", new()\n    {\n        Type = \"Number\",\n        Unit = \"seconds\",\n        Asset = assetTest.Id,\n    });\n\n    var dashboardTest = new Splight.Dashboard(\"dashboardTest\");\n\n    var dashboardTabTest = new Splight.DashboardTab(\"dashboardTabTest\", new()\n    {\n        Order = 0,\n        Dashboard = dashboardTest.Id,\n    });\n\n    var dashboardChartTest = new Splight.DashboardTimeseriesChart(\"dashboardChartTest\", new()\n    {\n        Tab = dashboardTabTest.Id,\n        TimestampGte = \"now - 7d\",\n        TimestampLte = \"now\",\n        Description = \"Chart description\",\n        MinHeight = 1,\n        MinWidth = 4,\n        DisplayTimeRange = true,\n        LabelsDisplay = true,\n        LabelsAggregation = \"last\",\n        LabelsPlacement = \"bottom\",\n        ShowBeyondData = true,\n        Height = 10,\n        Width = 20,\n        Collection = \"default\",\n        YAxisMaxLimit = 100,\n        YAxisMinLimit = 0,\n        YAxisUnit = \"kW\",\n        NumberOfDecimals = 4,\n        XAxisFormat = \"MM-dd HH:mm\",\n        XAxisAutoSkip = true,\n        XAxisMaxTicksLimit = null,\n        LineInterpolationStyle = \"rounded\",\n        TimeseriesType = \"bar\",\n        Fill = true,\n        ShowLine = true,\n        ChartItems = new[]\n        {\n            new Splight.Inputs.DashboardTimeseriesChartChartItemArgs\n            {\n                RefId = \"A\",\n                Type = \"QUERY\",\n                Color = \"red\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTimeseriesChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTimeseriesChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest1.Id,\n                    Name = attributeTest1.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest1.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"day\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n            new Splight.Inputs.DashboardTimeseriesChartChartItemArgs\n            {\n                RefId = \"B\",\n                Color = \"blue\",\n                Type = \"QUERY\",\n                ExpressionPlain = \"\",\n                QueryFilterAsset = new Splight.Inputs.DashboardTimeseriesChartChartItemQueryFilterAssetArgs\n                {\n                    Id = assetTest.Id,\n                    Name = assetTest.Name,\n                },\n                QueryFilterAttribute = new Splight.Inputs.DashboardTimeseriesChartChartItemQueryFilterAttributeArgs\n                {\n                    Id = attributeTest2.Id,\n                    Name = attributeTest2.Name,\n                },\n                QueryPlain = Output.JsonSerialize(Output.Create(new[]\n                {\n                    new Dictionary<string, object?>\n                    {\n                        [\"$match\"] = new Dictionary<string, object?>\n                        {\n                            [\"asset\"] = assetTest.Id,\n                            [\"attribute\"] = attributeTest2.Id,\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$addFields\"] = new Dictionary<string, object?>\n                        {\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$dateTrunc\"] = new Dictionary<string, object?>\n                                {\n                                    [\"date\"] = \"$timestamp\",\n                                    [\"unit\"] = \"hour\",\n                                    [\"binSize\"] = 1,\n                                },\n                            },\n                        },\n                    },\n                    new Dictionary<string, object?>\n                    {\n                        [\"$group\"] = new Dictionary<string, object?>\n                        {\n                            [\"_id\"] = \"$timestamp\",\n                            [\"value\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$value\",\n                            },\n                            [\"timestamp\"] = new Dictionary<string, object?>\n                            {\n                                [\"$last\"] = \"$timestamp\",\n                            },\n                        },\n                    },\n                })),\n            },\n        },\n        Thresholds = new[]\n        {\n            new Splight.Inputs.DashboardTimeseriesChartThresholdArgs\n            {\n                Color = \"#00edcf\",\n                DisplayText = \"T1Test\",\n                Value = 13.1,\n            },\n        },\n        ValueMappings = new[]\n        {\n            new Splight.Inputs.DashboardTimeseriesChartValueMappingArgs\n            {\n                DisplayText = \"MODIFICADO\",\n                MatchValue = \"123.3\",\n                Type = \"exact_match\",\n                Order = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"type\":       \"GeometryCollection\",\n\t\t\t\"geometries\": []interface{}{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\tassetTest, err := splight.NewAsset(ctx, \"assetTest\", &splight.AssetArgs{\n\t\t\tDescription:    pulumi.String(\"Created with Terraform\"),\n\t\t\tCustomTimezone: pulumi.String(\"America/Los_Angeles\"),\n\t\t\tGeometry:       pulumi.String(json0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest1, err := splight.NewAssetAttribute(ctx, \"attributeTest1\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"meters\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tattributeTest2, err := splight.NewAssetAttribute(ctx, \"attributeTest2\", &splight.AssetAttributeArgs{\n\t\t\tType:  pulumi.String(\"Number\"),\n\t\t\tUnit:  pulumi.String(\"seconds\"),\n\t\t\tAsset: assetTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTest, err := splight.NewDashboard(ctx, \"dashboardTest\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tdashboardTabTest, err := splight.NewDashboardTab(ctx, \"dashboardTabTest\", &splight.DashboardTabArgs{\n\t\t\tOrder:     pulumi.Int(0),\n\t\t\tDashboard: dashboardTest.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewDashboardTimeseriesChart(ctx, \"dashboardChartTest\", &splight.DashboardTimeseriesChartArgs{\n\t\t\tTab:                    dashboardTabTest.ID(),\n\t\t\tTimestampGte:           pulumi.String(\"now - 7d\"),\n\t\t\tTimestampLte:           pulumi.String(\"now\"),\n\t\t\tDescription:            pulumi.String(\"Chart description\"),\n\t\t\tMinHeight:              pulumi.Int(1),\n\t\t\tMinWidth:               pulumi.Int(4),\n\t\t\tDisplayTimeRange:       pulumi.Bool(true),\n\t\t\tLabelsDisplay:          pulumi.Bool(true),\n\t\t\tLabelsAggregation:      pulumi.String(\"last\"),\n\t\t\tLabelsPlacement:        pulumi.String(\"bottom\"),\n\t\t\tShowBeyondData:         pulumi.Bool(true),\n\t\t\tHeight:                 pulumi.Int(10),\n\t\t\tWidth:                  pulumi.Int(20),\n\t\t\tCollection:             pulumi.String(\"default\"),\n\t\t\tYAxisMaxLimit:          pulumi.Int(100),\n\t\t\tYAxisMinLimit:          pulumi.Int(0),\n\t\t\tYAxisUnit:              pulumi.String(\"kW\"),\n\t\t\tNumberOfDecimals:       pulumi.Int(4),\n\t\t\tXAxisFormat:            pulumi.String(\"MM-dd HH:mm\"),\n\t\t\tXAxisAutoSkip:          pulumi.Bool(true),\n\t\t\tXAxisMaxTicksLimit:     nil,\n\t\t\tLineInterpolationStyle: pulumi.String(\"rounded\"),\n\t\t\tTimeseriesType:         pulumi.String(\"bar\"),\n\t\t\tFill:                   pulumi.Bool(true),\n\t\t\tShowLine:               pulumi.Bool(true),\n\t\t\tChartItems: splight.DashboardTimeseriesChartChartItemArray{\n\t\t\t\t&splight.DashboardTimeseriesChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"A\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tColor:           pulumi.String(\"red\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTimeseriesChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTimeseriesChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest1.ID(),\n\t\t\t\t\t\tName: attributeTest1.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest1.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest1Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON1, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest1Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"day\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson1 := string(tmpJSON1)\n\t\t\t\t\t\treturn json1, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t\t&splight.DashboardTimeseriesChartChartItemArgs{\n\t\t\t\t\tRefId:           pulumi.String(\"B\"),\n\t\t\t\t\tColor:           pulumi.String(\"blue\"),\n\t\t\t\t\tType:            pulumi.String(\"QUERY\"),\n\t\t\t\t\tExpressionPlain: pulumi.String(\"\"),\n\t\t\t\t\tQueryFilterAsset: &splight.DashboardTimeseriesChartChartItemQueryFilterAssetArgs{\n\t\t\t\t\t\tId:   assetTest.ID(),\n\t\t\t\t\t\tName: assetTest.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryFilterAttribute: &splight.DashboardTimeseriesChartChartItemQueryFilterAttributeArgs{\n\t\t\t\t\t\tId:   attributeTest2.ID(),\n\t\t\t\t\t\tName: attributeTest2.Name,\n\t\t\t\t\t},\n\t\t\t\t\tQueryPlain: pulumi.All(assetTest.ID(), attributeTest2.ID()).ApplyT(func(_args []interface{}) (string, error) {\n\t\t\t\t\t\tassetTestId := _args[0].(string)\n\t\t\t\t\t\tattributeTest2Id := _args[1].(string)\n\t\t\t\t\t\tvar _zero string\n\t\t\t\t\t\ttmpJSON2, err := json.Marshal([]interface{}{\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$match\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"asset\":     assetTestId,\n\t\t\t\t\t\t\t\t\t\"attribute\": attributeTest2Id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$addFields\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$dateTrunc\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\t\"date\":    \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\":    \"hour\",\n\t\t\t\t\t\t\t\t\t\t\t\"binSize\": 1,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\t\"$group\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\"_id\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t\"value\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$value\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"timestamp\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\t\t\"$last\": \"$timestamp\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t\t\t\tif err != nil {\n\t\t\t\t\t\t\treturn _zero, err\n\t\t\t\t\t\t}\n\t\t\t\t\t\tjson2 := string(tmpJSON2)\n\t\t\t\t\t\treturn json2, nil\n\t\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThresholds: splight.DashboardTimeseriesChartThresholdArray{\n\t\t\t\t&splight.DashboardTimeseriesChartThresholdArgs{\n\t\t\t\t\tColor:       pulumi.String(\"#00edcf\"),\n\t\t\t\t\tDisplayText: pulumi.String(\"T1Test\"),\n\t\t\t\t\tValue:       pulumi.Float64(13.1),\n\t\t\t\t},\n\t\t\t},\n\t\t\tValueMappings: splight.DashboardTimeseriesChartValueMappingArray{\n\t\t\t\t&splight.DashboardTimeseriesChartValueMappingArgs{\n\t\t\t\t\tDisplayText: pulumi.String(\"MODIFICADO\"),\n\t\t\t\t\tMatchValue:  pulumi.String(\"123.3\"),\n\t\t\t\t\tType:        pulumi.String(\"exact_match\"),\n\t\t\t\t\tOrder:       pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Asset;\nimport com.pulumi.splight.AssetArgs;\nimport com.pulumi.splight.AssetAttribute;\nimport com.pulumi.splight.AssetAttributeArgs;\nimport com.pulumi.splight.Dashboard;\nimport com.pulumi.splight.DashboardTab;\nimport com.pulumi.splight.DashboardTabArgs;\nimport com.pulumi.splight.DashboardTimeseriesChart;\nimport com.pulumi.splight.DashboardTimeseriesChartArgs;\nimport com.pulumi.splight.inputs.DashboardTimeseriesChartChartItemArgs;\nimport com.pulumi.splight.inputs.DashboardTimeseriesChartChartItemQueryFilterAssetArgs;\nimport com.pulumi.splight.inputs.DashboardTimeseriesChartChartItemQueryFilterAttributeArgs;\nimport com.pulumi.splight.inputs.DashboardTimeseriesChartThresholdArgs;\nimport com.pulumi.splight.inputs.DashboardTimeseriesChartValueMappingArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var assetTest = new Asset(\"assetTest\", AssetArgs.builder()\n            .description(\"Created with Terraform\")\n            .customTimezone(\"America/Los_Angeles\")\n            .geometry(serializeJson(\n                jsonObject(\n                    jsonProperty(\"type\", \"GeometryCollection\"),\n                    jsonProperty(\"geometries\", jsonArray(\n                    ))\n                )))\n            .build());\n\n        var attributeTest1 = new AssetAttribute(\"attributeTest1\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"meters\")\n            .asset(assetTest.id())\n            .build());\n\n        var attributeTest2 = new AssetAttribute(\"attributeTest2\", AssetAttributeArgs.builder()\n            .type(\"Number\")\n            .unit(\"seconds\")\n            .asset(assetTest.id())\n            .build());\n\n        var dashboardTest = new Dashboard(\"dashboardTest\");\n\n        var dashboardTabTest = new DashboardTab(\"dashboardTabTest\", DashboardTabArgs.builder()\n            .order(0)\n            .dashboard(dashboardTest.id())\n            .build());\n\n        var dashboardChartTest = new DashboardTimeseriesChart(\"dashboardChartTest\", DashboardTimeseriesChartArgs.builder()\n            .tab(dashboardTabTest.id())\n            .timestampGte(\"now - 7d\")\n            .timestampLte(\"now\")\n            .description(\"Chart description\")\n            .minHeight(1)\n            .minWidth(4)\n            .displayTimeRange(true)\n            .labelsDisplay(true)\n            .labelsAggregation(\"last\")\n            .labelsPlacement(\"bottom\")\n            .showBeyondData(true)\n            .height(10)\n            .width(20)\n            .collection(\"default\")\n            .yAxisMaxLimit(100)\n            .yAxisMinLimit(0)\n            .yAxisUnit(\"kW\")\n            .numberOfDecimals(4)\n            .xAxisFormat(\"MM-dd HH:mm\")\n            .xAxisAutoSkip(true)\n            .xAxisMaxTicksLimit(null)\n            .lineInterpolationStyle(\"rounded\")\n            .timeseriesType(\"bar\")\n            .fill(true)\n            .showLine(true)\n            .chartItems(            \n                DashboardTimeseriesChartChartItemArgs.builder()\n                    .refId(\"A\")\n                    .type(\"QUERY\")\n                    .color(\"red\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTimeseriesChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTimeseriesChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest1.id())\n                        .name(attributeTest1.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest1.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest1Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest1Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"day\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build(),\n                DashboardTimeseriesChartChartItemArgs.builder()\n                    .refId(\"B\")\n                    .color(\"blue\")\n                    .type(\"QUERY\")\n                    .expressionPlain(\"\")\n                    .queryFilterAsset(DashboardTimeseriesChartChartItemQueryFilterAssetArgs.builder()\n                        .id(assetTest.id())\n                        .name(assetTest.name())\n                        .build())\n                    .queryFilterAttribute(DashboardTimeseriesChartChartItemQueryFilterAttributeArgs.builder()\n                        .id(attributeTest2.id())\n                        .name(attributeTest2.name())\n                        .build())\n                    .queryPlain(Output.tuple(assetTest.id(), attributeTest2.id()).applyValue(values -> {\n                        var assetTestId = values.t1;\n                        var attributeTest2Id = values.t2;\n                        return serializeJson(\n                            jsonArray(\n                                jsonObject(\n                                    jsonProperty(\"$match\", jsonObject(\n                                        jsonProperty(\"asset\", assetTestId),\n                                        jsonProperty(\"attribute\", attributeTest2Id)\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$addFields\", jsonObject(\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$dateTrunc\", jsonObject(\n                                                jsonProperty(\"date\", \"$timestamp\"),\n                                                jsonProperty(\"unit\", \"hour\"),\n                                                jsonProperty(\"binSize\", 1)\n                                            ))\n                                        ))\n                                    ))\n                                ), \n                                jsonObject(\n                                    jsonProperty(\"$group\", jsonObject(\n                                        jsonProperty(\"_id\", \"$timestamp\"),\n                                        jsonProperty(\"value\", jsonObject(\n                                            jsonProperty(\"$last\", \"$value\")\n                                        )),\n                                        jsonProperty(\"timestamp\", jsonObject(\n                                            jsonProperty(\"$last\", \"$timestamp\")\n                                        ))\n                                    ))\n                                )\n                            ));\n                    }))\n                    .build())\n            .thresholds(DashboardTimeseriesChartThresholdArgs.builder()\n                .color(\"#00edcf\")\n                .displayText(\"T1Test\")\n                .value(13.1)\n                .build())\n            .valueMappings(DashboardTimeseriesChartValueMappingArgs.builder()\n                .displayText(\"MODIFICADO\")\n                .matchValue(\"123.3\")\n                .type(\"exact_match\")\n                .order(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  assetTest:\n    type: splight:Asset\n    properties:\n      description: Created with Terraform\n      customTimezone: America/Los_Angeles\n      geometry:\n        fn::toJSON:\n          type: GeometryCollection\n          geometries: []\n  attributeTest1:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: meters\n      asset: ${assetTest.id}\n  attributeTest2:\n    type: splight:AssetAttribute\n    properties:\n      type: Number\n      unit: seconds\n      asset: ${assetTest.id}\n  dashboardTest:\n    type: splight:Dashboard\n  dashboardTabTest:\n    type: splight:DashboardTab\n    properties:\n      order: 0\n      dashboard: ${dashboardTest.id}\n  dashboardChartTest:\n    type: splight:DashboardTimeseriesChart\n    properties:\n      tab: ${dashboardTabTest.id}\n      timestampGte: now - 7d\n      timestampLte: now\n      description: Chart description\n      minHeight: 1\n      minWidth: 4\n      displayTimeRange: true\n      labelsDisplay: true\n      labelsAggregation: last\n      labelsPlacement: bottom\n      showBeyondData: true\n      height: 10\n      width: 20\n      collection: default\n      yAxisMaxLimit: 100\n      yAxisMinLimit: 0\n      yAxisUnit: kW\n      numberOfDecimals: 4\n      xAxisFormat: MM-dd HH:mm\n      xAxisAutoSkip: true\n      xAxisMaxTicksLimit: null\n      lineInterpolationStyle: rounded\n      timeseriesType: bar\n      fill: true\n      showLine: true\n      chartItems:\n        - refId: A\n          type: QUERY\n          color: red\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest1.id}\n            name: ${attributeTest1.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest1.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: day\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n        - refId: B\n          color: blue\n          type: QUERY\n          expressionPlain:\n          queryFilterAsset:\n            id: ${assetTest.id}\n            name: ${assetTest.name}\n          queryFilterAttribute:\n            id: ${attributeTest2.id}\n            name: ${attributeTest2.name}\n          queryPlain:\n            fn::toJSON:\n              - $match:\n                  asset: ${assetTest.id}\n                  attribute: ${attributeTest2.id}\n              - $addFields:\n                  timestamp:\n                    $dateTrunc:\n                      date: $timestamp\n                      unit: hour\n                      binSize: 1\n              - $group:\n                  _id: $timestamp\n                  value:\n                    $last: $value\n                  timestamp:\n                    $last: $timestamp\n      thresholds:\n        - color: '#00edcf'\n          displayText: T1Test\n          value: 13.1\n      valueMappings:\n        - displayText: MODIFICADO\n          matchValue: '123.3'\n          type: exact_match\n          order: 0\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/dashboardTimeseriesChart:DashboardTimeseriesChart [options] splight_dashboard_timeseries_chart.<name> <dashboard_chart_id>\n```\n\n",
      "properties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartChartItem:DashboardTimeseriesChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "fill": {
          "type": "boolean",
          "description": "whether to fill the area under the curve or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "lineInterpolationStyle": {
          "type": "string",
          "description": "line interpolation style\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "showLine": {
          "type": "boolean",
          "description": "whether to show the line or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartThreshold:DashboardTimeseriesChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timeseriesType": {
          "type": "string",
          "description": "[line|bar] timeseries type\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartValueMapping:DashboardTimeseriesChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "xAxisAutoSkip": {
          "type": "boolean",
          "description": "x axis auto skip\n"
        },
        "xAxisFormat": {
          "type": "string",
          "description": "x axis time format\n"
        },
        "xAxisMaxTicksLimit": {
          "type": "integer",
          "description": "x axis max ticks limit\n"
        },
        "yAxisMaxLimit": {
          "type": "integer",
          "description": "y axis max limit\n"
        },
        "yAxisMinLimit": {
          "type": "integer",
          "description": "y axis min limit\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "type": "object",
      "required": [
        "chartItems",
        "name",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "inputProperties": {
        "chartItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartChartItem:DashboardTimeseriesChartChartItem"
          },
          "description": "chart traces to be included\n"
        },
        "collection": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "chart description\n"
        },
        "displayTimeRange": {
          "type": "boolean",
          "description": "whether to display the time range or not\n"
        },
        "fill": {
          "type": "boolean",
          "description": "whether to fill the area under the curve or not\n"
        },
        "height": {
          "type": "integer",
          "description": "chart height in px\n"
        },
        "labelsAggregation": {
          "type": "string",
          "description": "[last|avg|...] aggregation\n"
        },
        "labelsDisplay": {
          "type": "boolean",
          "description": "whether to display the labels or not\n"
        },
        "labelsPlacement": {
          "type": "string",
          "description": "[right|bottom] placement\n"
        },
        "lineInterpolationStyle": {
          "type": "string",
          "description": "line interpolation style\n"
        },
        "minHeight": {
          "type": "integer",
          "description": "minimum chart height\n"
        },
        "minWidth": {
          "type": "integer",
          "description": "minimum chart width\n"
        },
        "name": {
          "type": "string",
          "description": "name of the chart\n"
        },
        "numberOfDecimals": {
          "type": "integer",
          "description": "number of decimals\n"
        },
        "positionX": {
          "type": "integer",
          "description": "chart x position\n"
        },
        "positionY": {
          "type": "integer",
          "description": "chart y position\n"
        },
        "refreshInterval": {
          "type": "string",
          "description": "refresh interval\n"
        },
        "relativeWindowTime": {
          "type": "string",
          "description": "relative window time\n"
        },
        "showBeyondData": {
          "type": "boolean",
          "description": "whether to show data which is beyond timestamp_lte or not\n"
        },
        "showLine": {
          "type": "boolean",
          "description": "whether to show the line or not\n"
        },
        "tab": {
          "type": "string",
          "description": "id for the tab where to place the chart\n"
        },
        "thresholds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartThreshold:DashboardTimeseriesChartThreshold"
          },
          "description": "optional static lines to be added to the chart as references\n"
        },
        "timeseriesType": {
          "type": "string",
          "description": "[line|bar] timeseries type\n"
        },
        "timestampGte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to end reading\n"
        },
        "timestampLte": {
          "type": "string",
          "description": "date in isoformat or shortcut string where to start reading\n"
        },
        "timezone": {
          "type": "string",
          "description": "chart timezone\n"
        },
        "valueMappings": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FDashboardTimeseriesChartValueMapping:DashboardTimeseriesChartValueMapping"
          },
          "description": "optional mappings to transform data with rules\n"
        },
        "width": {
          "type": "integer",
          "description": "chart width in cols (max 20)\n"
        },
        "xAxisAutoSkip": {
          "type": "boolean",
          "description": "x axis auto skip\n"
        },
        "xAxisFormat": {
          "type": "string",
          "description": "x axis time format\n"
        },
        "xAxisMaxTicksLimit": {
          "type": "integer",
          "description": "x axis max ticks limit\n"
        },
        "yAxisMaxLimit": {
          "type": "integer",
          "description": "y axis max limit\n"
        },
        "yAxisMinLimit": {
          "type": "integer",
          "description": "y axis min limit\n"
        },
        "yAxisUnit": {
          "type": "string",
          "description": "y axis units\n"
        }
      },
      "requiredInputs": [
        "chartItems",
        "tab",
        "timestampGte",
        "timestampLte"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DashboardTimeseriesChart resources.\n",
        "properties": {
          "chartItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTimeseriesChartChartItem:DashboardTimeseriesChartChartItem"
            },
            "description": "chart traces to be included\n"
          },
          "collection": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "chart description\n"
          },
          "displayTimeRange": {
            "type": "boolean",
            "description": "whether to display the time range or not\n"
          },
          "fill": {
            "type": "boolean",
            "description": "whether to fill the area under the curve or not\n"
          },
          "height": {
            "type": "integer",
            "description": "chart height in px\n"
          },
          "labelsAggregation": {
            "type": "string",
            "description": "[last|avg|...] aggregation\n"
          },
          "labelsDisplay": {
            "type": "boolean",
            "description": "whether to display the labels or not\n"
          },
          "labelsPlacement": {
            "type": "string",
            "description": "[right|bottom] placement\n"
          },
          "lineInterpolationStyle": {
            "type": "string",
            "description": "line interpolation style\n"
          },
          "minHeight": {
            "type": "integer",
            "description": "minimum chart height\n"
          },
          "minWidth": {
            "type": "integer",
            "description": "minimum chart width\n"
          },
          "name": {
            "type": "string",
            "description": "name of the chart\n"
          },
          "numberOfDecimals": {
            "type": "integer",
            "description": "number of decimals\n"
          },
          "positionX": {
            "type": "integer",
            "description": "chart x position\n"
          },
          "positionY": {
            "type": "integer",
            "description": "chart y position\n"
          },
          "refreshInterval": {
            "type": "string",
            "description": "refresh interval\n"
          },
          "relativeWindowTime": {
            "type": "string",
            "description": "relative window time\n"
          },
          "showBeyondData": {
            "type": "boolean",
            "description": "whether to show data which is beyond timestamp_lte or not\n"
          },
          "showLine": {
            "type": "boolean",
            "description": "whether to show the line or not\n"
          },
          "tab": {
            "type": "string",
            "description": "id for the tab where to place the chart\n"
          },
          "thresholds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTimeseriesChartThreshold:DashboardTimeseriesChartThreshold"
            },
            "description": "optional static lines to be added to the chart as references\n"
          },
          "timeseriesType": {
            "type": "string",
            "description": "[line|bar] timeseries type\n"
          },
          "timestampGte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to end reading\n"
          },
          "timestampLte": {
            "type": "string",
            "description": "date in isoformat or shortcut string where to start reading\n"
          },
          "timezone": {
            "type": "string",
            "description": "chart timezone\n"
          },
          "valueMappings": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FDashboardTimeseriesChartValueMapping:DashboardTimeseriesChartValueMapping"
            },
            "description": "optional mappings to transform data with rules\n"
          },
          "width": {
            "type": "integer",
            "description": "chart width in cols (max 20)\n"
          },
          "xAxisAutoSkip": {
            "type": "boolean",
            "description": "x axis auto skip\n"
          },
          "xAxisFormat": {
            "type": "string",
            "description": "x axis time format\n"
          },
          "xAxisMaxTicksLimit": {
            "type": "integer",
            "description": "x axis max ticks limit\n"
          },
          "yAxisMaxLimit": {
            "type": "integer",
            "description": "y axis max limit\n"
          },
          "yAxisMinLimit": {
            "type": "integer",
            "description": "y axis min limit\n"
          },
          "yAxisUnit": {
            "type": "string",
            "description": "y axis units\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/externalGrid:ExternalGrid": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/externalGrid:ExternalGrid [options] splight_external_grid.<name> <external_grid_id>\n```\n\n",
      "properties": {
        "bus": {
          "type": "string",
          "description": "id of the related Bus object\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "grid": {
          "type": "string",
          "description": "id of the related Grid object\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FExternalGridKind:ExternalGridKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FExternalGridTag:ExternalGridTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "kinds",
        "name",
        "timezone"
      ],
      "inputProperties": {
        "bus": {
          "type": "string",
          "description": "id of the related Bus object\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "grid": {
          "type": "string",
          "description": "id of the related Grid object\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FExternalGridTag:ExternalGridTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ExternalGrid resources.\n",
        "properties": {
          "bus": {
            "type": "string",
            "description": "id of the related Bus object\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "grid": {
            "type": "string",
            "description": "id of the related Grid object\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FExternalGridKind:ExternalGridKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FExternalGridTag:ExternalGridTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/file:File": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/file:File [options] splight_file.<name> <file_id>\n```\n\n",
      "properties": {
        "checksum": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "complementary information to describe the file\n"
        },
        "parent": {
          "type": "string",
          "description": "the id reference for a folder to be placed in\n"
        },
        "path": {
          "type": "string",
          "description": "the path for the file resource in your system\n"
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFileRelatedAsset:FileRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFileTag:FileTag"
          },
          "description": "tags of the resource\n"
        },
        "uploaded": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "checksum",
        "path",
        "uploaded"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "complementary information to describe the file\n"
        },
        "parent": {
          "type": "string",
          "description": "the id reference for a folder to be placed in\n"
        },
        "path": {
          "type": "string",
          "description": "the path for the file resource in your system\n",
          "willReplaceOnChanges": true
        },
        "relatedAssets": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFileRelatedAsset:FileRelatedAsset"
          },
          "description": "related assets of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFileTag:FileTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "requiredInputs": [
        "path"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering File resources.\n",
        "properties": {
          "checksum": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "complementary information to describe the file\n"
          },
          "parent": {
            "type": "string",
            "description": "the id reference for a folder to be placed in\n"
          },
          "path": {
            "type": "string",
            "description": "the path for the file resource in your system\n",
            "willReplaceOnChanges": true
          },
          "relatedAssets": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FFileRelatedAsset:FileRelatedAsset"
            },
            "description": "related assets of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FFileTag:FileTag"
            },
            "description": "tags of the resource\n"
          },
          "uploaded": {
            "type": "boolean"
          }
        },
        "type": "object"
      }
    },
    "splight:index/fileFolder:FileFolder": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myFileParentFolder = new splight.FileFolder(\"myFileParentFolder\", {});\nconst myFileFolder = new splight.FileFolder(\"myFileFolder\", {parent: myFileParentFolder.id});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nmy_file_parent_folder = splight.FileFolder(\"myFileParentFolder\")\nmy_file_folder = splight.FileFolder(\"myFileFolder\", parent=my_file_parent_folder.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myFileParentFolder = new Splight.FileFolder(\"myFileParentFolder\");\n\n    var myFileFolder = new Splight.FileFolder(\"myFileFolder\", new()\n    {\n        Parent = myFileParentFolder.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmyFileParentFolder, err := splight.NewFileFolder(ctx, \"myFileParentFolder\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = splight.NewFileFolder(ctx, \"myFileFolder\", &splight.FileFolderArgs{\n\t\t\tParent: myFileParentFolder.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.FileFolder;\nimport com.pulumi.splight.FileFolderArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myFileParentFolder = new FileFolder(\"myFileParentFolder\");\n\n        var myFileFolder = new FileFolder(\"myFileFolder\", FileFolderArgs.builder()\n            .parent(myFileParentFolder.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myFileParentFolder:\n    type: splight:FileFolder\n  myFileFolder:\n    type: splight:FileFolder\n    properties:\n      parent: ${myFileParentFolder.id}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/fileFolder:FileFolder [options] splight_file_folder.<name> <file_folder_id>\n```\n\n",
      "properties": {
        "name": {
          "type": "string",
          "description": "folder name\n"
        },
        "parent": {
          "type": "string",
          "description": "optional folder id where to place this folder\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "folder name\n",
          "willReplaceOnChanges": true
        },
        "parent": {
          "type": "string",
          "description": "optional folder id where to place this folder\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FileFolder resources.\n",
        "properties": {
          "name": {
            "type": "string",
            "description": "folder name\n",
            "willReplaceOnChanges": true
          },
          "parent": {
            "type": "string",
            "description": "optional folder id where to place this folder\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/function:Function": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/function:Function [options] splight_function.<name> <function_id>\n```\n\n",
      "properties": {
        "cronDom": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronDow": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronHours": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMinutes": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMonth": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronYear": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "description": {
          "type": "string",
          "description": "The description of the resource\n"
        },
        "functionItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFunctionFunctionItem:FunctionFunctionItem"
          },
          "description": "traces to be used to compute the results\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the resource\n"
        },
        "rateUnit": {
          "type": "string",
          "description": "[day|hour|minute] schedule unit\n"
        },
        "rateValue": {
          "type": "integer",
          "description": "schedule value\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFunctionTag:FunctionTag"
          },
          "description": "tags of the resource\n"
        },
        "targetAsset": {
          "$ref": "#/types/splight:index%2FFunctionTargetAsset:FunctionTargetAsset",
          "description": "Asset filter\n"
        },
        "targetAttribute": {
          "$ref": "#/types/splight:index%2FFunctionTargetAttribute:FunctionTargetAttribute",
          "description": "Attribute filter\n"
        },
        "targetVariable": {
          "type": "string",
          "description": "variable to be considered to be ingested\n"
        },
        "timeWindow": {
          "type": "integer",
          "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
        },
        "type": {
          "type": "string",
          "description": "[cron|rate] type for the cron\n"
        }
      },
      "type": "object",
      "required": [
        "cronDom",
        "cronDow",
        "cronHours",
        "cronMinutes",
        "cronMonth",
        "cronYear",
        "description",
        "functionItems",
        "name",
        "rateUnit",
        "rateValue",
        "targetAsset",
        "targetAttribute",
        "targetVariable",
        "timeWindow",
        "type"
      ],
      "inputProperties": {
        "cronDom": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronDow": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronHours": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMinutes": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronMonth": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "cronYear": {
          "type": "integer",
          "description": "schedule value for cron\n"
        },
        "description": {
          "type": "string",
          "description": "The description of the resource\n"
        },
        "functionItems": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFunctionFunctionItem:FunctionFunctionItem"
          },
          "description": "traces to be used to compute the results\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the resource\n"
        },
        "rateUnit": {
          "type": "string",
          "description": "[day|hour|minute] schedule unit\n"
        },
        "rateValue": {
          "type": "integer",
          "description": "schedule value\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FFunctionTag:FunctionTag"
          },
          "description": "tags of the resource\n"
        },
        "targetAsset": {
          "$ref": "#/types/splight:index%2FFunctionTargetAsset:FunctionTargetAsset",
          "description": "Asset filter\n"
        },
        "targetAttribute": {
          "$ref": "#/types/splight:index%2FFunctionTargetAttribute:FunctionTargetAttribute",
          "description": "Attribute filter\n"
        },
        "targetVariable": {
          "type": "string",
          "description": "variable to be considered to be ingested\n"
        },
        "timeWindow": {
          "type": "integer",
          "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
        },
        "type": {
          "type": "string",
          "description": "[cron|rate] type for the cron\n"
        }
      },
      "requiredInputs": [
        "description",
        "functionItems",
        "targetAsset",
        "targetAttribute",
        "targetVariable",
        "timeWindow",
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Function resources.\n",
        "properties": {
          "cronDom": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronDow": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronHours": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronMinutes": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronMonth": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "cronYear": {
            "type": "integer",
            "description": "schedule value for cron\n"
          },
          "description": {
            "type": "string",
            "description": "The description of the resource\n"
          },
          "functionItems": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FFunctionFunctionItem:FunctionFunctionItem"
            },
            "description": "traces to be used to compute the results\n"
          },
          "name": {
            "type": "string",
            "description": "The name of the resource\n"
          },
          "rateUnit": {
            "type": "string",
            "description": "[day|hour|minute] schedule unit\n"
          },
          "rateValue": {
            "type": "integer",
            "description": "schedule value\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FFunctionTag:FunctionTag"
            },
            "description": "tags of the resource\n"
          },
          "targetAsset": {
            "$ref": "#/types/splight:index%2FFunctionTargetAsset:FunctionTargetAsset",
            "description": "Asset filter\n"
          },
          "targetAttribute": {
            "$ref": "#/types/splight:index%2FFunctionTargetAttribute:FunctionTargetAttribute",
            "description": "Attribute filter\n"
          },
          "targetVariable": {
            "type": "string",
            "description": "variable to be considered to be ingested\n"
          },
          "timeWindow": {
            "type": "integer",
            "description": "window to fetch data from. Data out of that window will not be considered for evaluation\n"
          },
          "type": {
            "type": "string",
            "description": "[cron|rate] type for the cron\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/generator:Generator": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/generator:Generator [options] splight_generator.<name> <generator_id>\n```\n\n",
      "properties": {
        "activePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorActivePower:GeneratorActivePower"
          },
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "dailyEmissionAvoideds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorDailyEmissionAvoided:GeneratorDailyEmissionAvoided"
          },
          "description": "attribute of the resource\n"
        },
        "dailyEnergies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorDailyEnergy:GeneratorDailyEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorKind:GeneratorKind"
          },
          "description": "kind of the resource\n"
        },
        "monthlyEnergies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorMonthlyEnergy:GeneratorMonthlyEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "reactivePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorReactivePower:GeneratorReactivePower"
          },
          "description": "attribute of the resource\n"
        },
        "switchStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorSwitchStatus:GeneratorSwitchStatus"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorTag:GeneratorTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "activePowers",
        "dailyEmissionAvoideds",
        "dailyEnergies",
        "kinds",
        "monthlyEnergies",
        "name",
        "reactivePowers",
        "switchStatuses",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGeneratorTag:GeneratorTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Generator resources.\n",
        "properties": {
          "activePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorActivePower:GeneratorActivePower"
            },
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "dailyEmissionAvoideds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorDailyEmissionAvoided:GeneratorDailyEmissionAvoided"
            },
            "description": "attribute of the resource\n"
          },
          "dailyEnergies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorDailyEnergy:GeneratorDailyEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorKind:GeneratorKind"
            },
            "description": "kind of the resource\n"
          },
          "monthlyEnergies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorMonthlyEnergy:GeneratorMonthlyEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "reactivePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorReactivePower:GeneratorReactivePower"
            },
            "description": "attribute of the resource\n"
          },
          "switchStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorSwitchStatus:GeneratorSwitchStatus"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGeneratorTag:GeneratorTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/grid:Grid": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/grid:Grid [options] splight_grid.<name> <grid_id>\n```\n\n",
      "properties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGridKind:GridKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGridTag:GridTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "kinds",
        "name",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FGridTag:GridTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Grid resources.\n",
        "properties": {
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGridKind:GridKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FGridTag:GridTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/inverter:Inverter": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/inverter:Inverter [options] splight_inverter.<name> <inverter_id>\n```\n\n",
      "properties": {
        "accumulatedEnergies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterAccumulatedEnergy:InverterAccumulatedEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "activePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterActivePower:InverterActivePower"
          },
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "dailyEnergies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterDailyEnergy:InverterDailyEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "energyMeasurementType": {
          "$ref": "#/types/splight:index%2FInverterEnergyMeasurementType:InverterEnergyMeasurementType",
          "description": "attribute of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterKind:InverterKind"
          },
          "description": "kind of the resource\n"
        },
        "make": {
          "$ref": "#/types/splight:index%2FInverterMake:InverterMake",
          "description": "attribute of the resource\n"
        },
        "maxActivePower": {
          "$ref": "#/types/splight:index%2FInverterMaxActivePower:InverterMaxActivePower",
          "description": "attribute of the resource\n"
        },
        "model": {
          "$ref": "#/types/splight:index%2FInverterModel:InverterModel",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "rawDailyEnergies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterRawDailyEnergy:InverterRawDailyEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "serialNumber": {
          "$ref": "#/types/splight:index%2FInverterSerialNumber:InverterSerialNumber",
          "description": "attribute of the resource\n"
        },
        "switchStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterSwitchStatus:InverterSwitchStatus"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterTag:InverterTag"
          },
          "description": "tags of the resource\n"
        },
        "temperatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterTemperature:InverterTemperature"
          },
          "description": "attribute of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "accumulatedEnergies",
        "activePowers",
        "dailyEnergies",
        "kinds",
        "name",
        "rawDailyEnergies",
        "switchStatuses",
        "temperatures",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "energyMeasurementType": {
          "$ref": "#/types/splight:index%2FInverterEnergyMeasurementType:InverterEnergyMeasurementType",
          "description": "attribute of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "make": {
          "$ref": "#/types/splight:index%2FInverterMake:InverterMake",
          "description": "attribute of the resource\n"
        },
        "maxActivePower": {
          "$ref": "#/types/splight:index%2FInverterMaxActivePower:InverterMaxActivePower",
          "description": "attribute of the resource\n"
        },
        "model": {
          "$ref": "#/types/splight:index%2FInverterModel:InverterModel",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "serialNumber": {
          "$ref": "#/types/splight:index%2FInverterSerialNumber:InverterSerialNumber",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FInverterTag:InverterTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Inverter resources.\n",
        "properties": {
          "accumulatedEnergies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterAccumulatedEnergy:InverterAccumulatedEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "activePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterActivePower:InverterActivePower"
            },
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "dailyEnergies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterDailyEnergy:InverterDailyEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "energyMeasurementType": {
            "$ref": "#/types/splight:index%2FInverterEnergyMeasurementType:InverterEnergyMeasurementType",
            "description": "attribute of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterKind:InverterKind"
            },
            "description": "kind of the resource\n"
          },
          "make": {
            "$ref": "#/types/splight:index%2FInverterMake:InverterMake",
            "description": "attribute of the resource\n"
          },
          "maxActivePower": {
            "$ref": "#/types/splight:index%2FInverterMaxActivePower:InverterMaxActivePower",
            "description": "attribute of the resource\n"
          },
          "model": {
            "$ref": "#/types/splight:index%2FInverterModel:InverterModel",
            "description": "attribute of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "rawDailyEnergies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterRawDailyEnergy:InverterRawDailyEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "serialNumber": {
            "$ref": "#/types/splight:index%2FInverterSerialNumber:InverterSerialNumber",
            "description": "attribute of the resource\n"
          },
          "switchStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterSwitchStatus:InverterSwitchStatus"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterTag:InverterTag"
            },
            "description": "tags of the resource\n"
          },
          "temperatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FInverterTemperature:InverterTemperature"
            },
            "description": "attribute of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/line:Line": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/line:Line [options] splight_line.<name> <line_id>\n```\n\n",
      "properties": {
        "absorptivity": {
          "$ref": "#/types/splight:index%2FLineAbsorptivity:LineAbsorptivity",
          "description": "attribute of the resource\n"
        },
        "activePowerEnds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineActivePowerEnd:LineActivePowerEnd"
          },
          "description": "attribute of the resource\n"
        },
        "activePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineActivePower:LineActivePower"
          },
          "description": "attribute of the resource\n"
        },
        "ampacities": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineAmpacity:LineAmpacity"
          },
          "description": "attribute of the resource\n"
        },
        "atmosphere": {
          "$ref": "#/types/splight:index%2FLineAtmosphere:LineAtmosphere",
          "description": "attribute of the resource\n"
        },
        "capacitance": {
          "$ref": "#/types/splight:index%2FLineCapacitance:LineCapacitance",
          "description": "attribute of the resource\n"
        },
        "conductance": {
          "$ref": "#/types/splight:index%2FLineConductance:LineConductance",
          "description": "attribute of the resource\n"
        },
        "conductorMass": {
          "$ref": "#/types/splight:index%2FLineConductorMass:LineConductorMass",
          "description": "attribute of the resource\n"
        },
        "contingencies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineContingency:LineContingency"
          },
          "description": "attribute of the resource\n"
        },
        "currentRs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineCurrentR:LineCurrentR"
          },
          "description": "attribute of the resource\n"
        },
        "currentS": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineCurrent:LineCurrent"
          },
          "description": "attribute of the resource\n"
        },
        "currentTs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineCurrentT:LineCurrentT"
          },
          "description": "attribute of the resource\n"
        },
        "currents": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineCurrent:LineCurrent"
          },
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "diameter": {
          "$ref": "#/types/splight:index%2FLineDiameter:LineDiameter",
          "description": "attribute of the resource\n"
        },
        "emissivity": {
          "$ref": "#/types/splight:index%2FLineEmissivity:LineEmissivity",
          "description": "attribute of the resource\n"
        },
        "energies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineEnergy:LineEnergy"
          },
          "description": "attribute of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineKind:LineKind"
          },
          "description": "kind of the resource\n"
        },
        "length": {
          "$ref": "#/types/splight:index%2FLineLength:LineLength",
          "description": "attribute of the resource\n"
        },
        "maxTemperatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineMaxTemperature:LineMaxTemperature"
          },
          "description": "attribute of the resource\n"
        },
        "maximumAllowedCurrent": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedCurrent:LineMaximumAllowedCurrent",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedPower": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedPower:LineMaximumAllowedPower",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperature": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperature:LineMaximumAllowedTemperature",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperatureLte": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureLte:LineMaximumAllowedTemperatureLte",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperatureSte": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureSte:LineMaximumAllowedTemperatureSte",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "numberOfConductors": {
          "$ref": "#/types/splight:index%2FLineNumberOfConductors:LineNumberOfConductors",
          "description": "attribute of the resource\n"
        },
        "reactance": {
          "$ref": "#/types/splight:index%2FLineReactance:LineReactance",
          "description": "attribute of the resource\n"
        },
        "reactivePowers": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineReactivePower:LineReactivePower"
          },
          "description": "attribute of the resource\n"
        },
        "referenceResistance": {
          "$ref": "#/types/splight:index%2FLineReferenceResistance:LineReferenceResistance",
          "description": "attribute of the resource\n"
        },
        "resistance": {
          "$ref": "#/types/splight:index%2FLineResistance:LineResistance",
          "description": "attribute of the resource\n"
        },
        "safetyMarginForPower": {
          "$ref": "#/types/splight:index%2FLineSafetyMarginForPower:LineSafetyMarginForPower",
          "description": "attribute of the resource\n"
        },
        "specificHeat": {
          "$ref": "#/types/splight:index%2FLineSpecificHeat:LineSpecificHeat",
          "description": "attribute of the resource\n"
        },
        "susceptance": {
          "$ref": "#/types/splight:index%2FLineSusceptance:LineSusceptance",
          "description": "attribute of the resource\n"
        },
        "switchStatusEnds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineSwitchStatusEnd:LineSwitchStatusEnd"
          },
          "description": "attribute of the resource\n"
        },
        "switchStatusStarts": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineSwitchStatusStart:LineSwitchStatusStart"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineTag:LineTag"
          },
          "description": "tags of the resource\n"
        },
        "temperatureCoeffResistance": {
          "$ref": "#/types/splight:index%2FLineTemperatureCoeffResistance:LineTemperatureCoeffResistance",
          "description": "attribute of the resource\n"
        },
        "thermalElongationCoef": {
          "$ref": "#/types/splight:index%2FLineThermalElongationCoef:LineThermalElongationCoef",
          "description": "attribute of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        },
        "voltageRs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineVoltageR:LineVoltageR"
          },
          "description": "attribute of the resource\n"
        },
        "voltageSts": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineVoltageSt:LineVoltageSt"
          },
          "description": "attribute of the resource\n"
        },
        "voltageTrs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineVoltageTr:LineVoltageTr"
          },
          "description": "attribute of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "absorptivity",
        "activePowerEnds",
        "activePowers",
        "ampacities",
        "atmosphere",
        "capacitance",
        "conductance",
        "conductorMass",
        "contingencies",
        "currentRs",
        "currentS",
        "currentTs",
        "currents",
        "diameter",
        "emissivity",
        "energies",
        "kinds",
        "length",
        "maxTemperatures",
        "maximumAllowedCurrent",
        "maximumAllowedPower",
        "maximumAllowedTemperature",
        "maximumAllowedTemperatureLte",
        "maximumAllowedTemperatureSte",
        "name",
        "numberOfConductors",
        "reactance",
        "reactivePowers",
        "referenceResistance",
        "resistance",
        "safetyMarginForPower",
        "specificHeat",
        "susceptance",
        "switchStatusEnds",
        "switchStatusStarts",
        "tags",
        "temperatureCoeffResistance",
        "thermalElongationCoef",
        "timezone",
        "voltageRs",
        "voltageSts",
        "voltageTrs"
      ],
      "inputProperties": {
        "absorptivity": {
          "$ref": "#/types/splight:index%2FLineAbsorptivity:LineAbsorptivity",
          "description": "attribute of the resource\n"
        },
        "atmosphere": {
          "$ref": "#/types/splight:index%2FLineAtmosphere:LineAtmosphere",
          "description": "attribute of the resource\n"
        },
        "capacitance": {
          "$ref": "#/types/splight:index%2FLineCapacitance:LineCapacitance",
          "description": "attribute of the resource\n"
        },
        "conductance": {
          "$ref": "#/types/splight:index%2FLineConductance:LineConductance",
          "description": "attribute of the resource\n"
        },
        "conductorMass": {
          "$ref": "#/types/splight:index%2FLineConductorMass:LineConductorMass",
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "diameter": {
          "$ref": "#/types/splight:index%2FLineDiameter:LineDiameter",
          "description": "attribute of the resource\n"
        },
        "emissivity": {
          "$ref": "#/types/splight:index%2FLineEmissivity:LineEmissivity",
          "description": "attribute of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "length": {
          "$ref": "#/types/splight:index%2FLineLength:LineLength",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedCurrent": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedCurrent:LineMaximumAllowedCurrent",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedPower": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedPower:LineMaximumAllowedPower",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperature": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperature:LineMaximumAllowedTemperature",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperatureLte": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureLte:LineMaximumAllowedTemperatureLte",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedTemperatureSte": {
          "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureSte:LineMaximumAllowedTemperatureSte",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "numberOfConductors": {
          "$ref": "#/types/splight:index%2FLineNumberOfConductors:LineNumberOfConductors",
          "description": "attribute of the resource\n"
        },
        "reactance": {
          "$ref": "#/types/splight:index%2FLineReactance:LineReactance",
          "description": "attribute of the resource\n"
        },
        "referenceResistance": {
          "$ref": "#/types/splight:index%2FLineReferenceResistance:LineReferenceResistance",
          "description": "attribute of the resource\n"
        },
        "resistance": {
          "$ref": "#/types/splight:index%2FLineResistance:LineResistance",
          "description": "attribute of the resource\n"
        },
        "safetyMarginForPower": {
          "$ref": "#/types/splight:index%2FLineSafetyMarginForPower:LineSafetyMarginForPower",
          "description": "attribute of the resource\n"
        },
        "specificHeat": {
          "$ref": "#/types/splight:index%2FLineSpecificHeat:LineSpecificHeat",
          "description": "attribute of the resource\n"
        },
        "susceptance": {
          "$ref": "#/types/splight:index%2FLineSusceptance:LineSusceptance",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FLineTag:LineTag"
          },
          "description": "tags of the resource\n"
        },
        "temperatureCoeffResistance": {
          "$ref": "#/types/splight:index%2FLineTemperatureCoeffResistance:LineTemperatureCoeffResistance",
          "description": "attribute of the resource\n"
        },
        "thermalElongationCoef": {
          "$ref": "#/types/splight:index%2FLineThermalElongationCoef:LineThermalElongationCoef",
          "description": "attribute of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Line resources.\n",
        "properties": {
          "absorptivity": {
            "$ref": "#/types/splight:index%2FLineAbsorptivity:LineAbsorptivity",
            "description": "attribute of the resource\n"
          },
          "activePowerEnds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineActivePowerEnd:LineActivePowerEnd"
            },
            "description": "attribute of the resource\n"
          },
          "activePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineActivePower:LineActivePower"
            },
            "description": "attribute of the resource\n"
          },
          "ampacities": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineAmpacity:LineAmpacity"
            },
            "description": "attribute of the resource\n"
          },
          "atmosphere": {
            "$ref": "#/types/splight:index%2FLineAtmosphere:LineAtmosphere",
            "description": "attribute of the resource\n"
          },
          "capacitance": {
            "$ref": "#/types/splight:index%2FLineCapacitance:LineCapacitance",
            "description": "attribute of the resource\n"
          },
          "conductance": {
            "$ref": "#/types/splight:index%2FLineConductance:LineConductance",
            "description": "attribute of the resource\n"
          },
          "conductorMass": {
            "$ref": "#/types/splight:index%2FLineConductorMass:LineConductorMass",
            "description": "attribute of the resource\n"
          },
          "contingencies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineContingency:LineContingency"
            },
            "description": "attribute of the resource\n"
          },
          "currentRs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineCurrentR:LineCurrentR"
            },
            "description": "attribute of the resource\n"
          },
          "currentS": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineCurrent:LineCurrent"
            },
            "description": "attribute of the resource\n"
          },
          "currentTs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineCurrentT:LineCurrentT"
            },
            "description": "attribute of the resource\n"
          },
          "currents": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineCurrent:LineCurrent"
            },
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "diameter": {
            "$ref": "#/types/splight:index%2FLineDiameter:LineDiameter",
            "description": "attribute of the resource\n"
          },
          "emissivity": {
            "$ref": "#/types/splight:index%2FLineEmissivity:LineEmissivity",
            "description": "attribute of the resource\n"
          },
          "energies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineEnergy:LineEnergy"
            },
            "description": "attribute of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineKind:LineKind"
            },
            "description": "kind of the resource\n"
          },
          "length": {
            "$ref": "#/types/splight:index%2FLineLength:LineLength",
            "description": "attribute of the resource\n"
          },
          "maxTemperatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineMaxTemperature:LineMaxTemperature"
            },
            "description": "attribute of the resource\n"
          },
          "maximumAllowedCurrent": {
            "$ref": "#/types/splight:index%2FLineMaximumAllowedCurrent:LineMaximumAllowedCurrent",
            "description": "attribute of the resource\n"
          },
          "maximumAllowedPower": {
            "$ref": "#/types/splight:index%2FLineMaximumAllowedPower:LineMaximumAllowedPower",
            "description": "attribute of the resource\n"
          },
          "maximumAllowedTemperature": {
            "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperature:LineMaximumAllowedTemperature",
            "description": "attribute of the resource\n"
          },
          "maximumAllowedTemperatureLte": {
            "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureLte:LineMaximumAllowedTemperatureLte",
            "description": "attribute of the resource\n"
          },
          "maximumAllowedTemperatureSte": {
            "$ref": "#/types/splight:index%2FLineMaximumAllowedTemperatureSte:LineMaximumAllowedTemperatureSte",
            "description": "attribute of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "numberOfConductors": {
            "$ref": "#/types/splight:index%2FLineNumberOfConductors:LineNumberOfConductors",
            "description": "attribute of the resource\n"
          },
          "reactance": {
            "$ref": "#/types/splight:index%2FLineReactance:LineReactance",
            "description": "attribute of the resource\n"
          },
          "reactivePowers": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineReactivePower:LineReactivePower"
            },
            "description": "attribute of the resource\n"
          },
          "referenceResistance": {
            "$ref": "#/types/splight:index%2FLineReferenceResistance:LineReferenceResistance",
            "description": "attribute of the resource\n"
          },
          "resistance": {
            "$ref": "#/types/splight:index%2FLineResistance:LineResistance",
            "description": "attribute of the resource\n"
          },
          "safetyMarginForPower": {
            "$ref": "#/types/splight:index%2FLineSafetyMarginForPower:LineSafetyMarginForPower",
            "description": "attribute of the resource\n"
          },
          "specificHeat": {
            "$ref": "#/types/splight:index%2FLineSpecificHeat:LineSpecificHeat",
            "description": "attribute of the resource\n"
          },
          "susceptance": {
            "$ref": "#/types/splight:index%2FLineSusceptance:LineSusceptance",
            "description": "attribute of the resource\n"
          },
          "switchStatusEnds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineSwitchStatusEnd:LineSwitchStatusEnd"
            },
            "description": "attribute of the resource\n"
          },
          "switchStatusStarts": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineSwitchStatusStart:LineSwitchStatusStart"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineTag:LineTag"
            },
            "description": "tags of the resource\n"
          },
          "temperatureCoeffResistance": {
            "$ref": "#/types/splight:index%2FLineTemperatureCoeffResistance:LineTemperatureCoeffResistance",
            "description": "attribute of the resource\n"
          },
          "thermalElongationCoef": {
            "$ref": "#/types/splight:index%2FLineThermalElongationCoef:LineThermalElongationCoef",
            "description": "attribute of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          },
          "voltageRs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineVoltageR:LineVoltageR"
            },
            "description": "attribute of the resource\n"
          },
          "voltageSts": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineVoltageSt:LineVoltageSt"
            },
            "description": "attribute of the resource\n"
          },
          "voltageTrs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FLineVoltageTr:LineVoltageTr"
            },
            "description": "attribute of the resource\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/node:Node": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myNode = new splight.Node(\"myNode\", {type: \"splight_hosted\"});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nmy_node = splight.Node(\"myNode\", type=\"splight_hosted\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myNode = new Splight.Node(\"myNode\", new()\n    {\n        Type = \"splight_hosted\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.NewNode(ctx, \"myNode\", &splight.NodeArgs{\n\t\t\tType: pulumi.String(\"splight_hosted\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Node;\nimport com.pulumi.splight.NodeArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myNode = new Node(\"myNode\", NodeArgs.builder()\n            .type(\"splight_hosted\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myNode:\n    type: splight:Node\n    properties:\n      type: splight_hosted\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/node:Node [options] splight_node.<name> <node_id>\n```\n\n",
      "properties": {
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "type": {
          "type": "string",
          "description": "either splight*hosted or self*hosted\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "type"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "name of the resource\n",
          "willReplaceOnChanges": true
        },
        "type": {
          "type": "string",
          "description": "either splight*hosted or self*hosted\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Node resources.\n",
        "properties": {
          "name": {
            "type": "string",
            "description": "name of the resource\n",
            "willReplaceOnChanges": true
          },
          "type": {
            "type": "string",
            "description": "either splight*hosted or self*hosted\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "splight:index/secret:Secret": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst mySecret = new splight.Secret(\"mySecret\", {rawValue: \"My Secret Value\"});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nmy_secret = splight.Secret(\"mySecret\", raw_value=\"My Secret Value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var mySecret = new Splight.Secret(\"mySecret\", new()\n    {\n        RawValue = \"My Secret Value\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.NewSecret(ctx, \"mySecret\", &splight.SecretArgs{\n\t\t\tRawValue: pulumi.String(\"My Secret Value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Secret;\nimport com.pulumi.splight.SecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySecret = new Secret(\"mySecret\", SecretArgs.builder()\n            .rawValue(\"My Secret Value\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySecret:\n    type: splight:Secret\n    properties:\n      rawValue: My Secret Value\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/secret:Secret [options] splight_secret.<name> <secret_id>\n```\n\n",
      "properties": {
        "name": {
          "type": "string"
        },
        "rawValue": {
          "type": "string",
          "secret": true
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "rawValue",
        "value"
      ],
      "inputProperties": {
        "name": {
          "type": "string"
        },
        "rawValue": {
          "type": "string",
          "secret": true
        }
      },
      "requiredInputs": [
        "rawValue"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Secret resources.\n",
        "properties": {
          "name": {
            "type": "string"
          },
          "rawValue": {
            "type": "string",
            "secret": true
          },
          "value": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "splight:index/segment:Segment": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/segment:Segment [options] splight_segment.<name> <segment_id>\n```\n\n",
      "properties": {
        "altitude": {
          "$ref": "#/types/splight:index%2FSegmentAltitude:SegmentAltitude",
          "description": "attribute of the resource\n"
        },
        "azimuth": {
          "$ref": "#/types/splight:index%2FSegmentAzimuth:SegmentAzimuth",
          "description": "attribute of the resource\n"
        },
        "cumulativeDistance": {
          "$ref": "#/types/splight:index%2FSegmentCumulativeDistance:SegmentCumulativeDistance",
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentKind:SegmentKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "referenceSag": {
          "$ref": "#/types/splight:index%2FSegmentReferenceSag:SegmentReferenceSag",
          "description": "attribute of the resource\n"
        },
        "referenceTemperature": {
          "$ref": "#/types/splight:index%2FSegmentReferenceTemperature:SegmentReferenceTemperature",
          "description": "attribute of the resource\n"
        },
        "spanLength": {
          "$ref": "#/types/splight:index%2FSegmentSpanLength:SegmentSpanLength",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentTag:SegmentTag"
          },
          "description": "tags of the resource\n"
        },
        "temperatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentTemperature:SegmentTemperature"
          },
          "description": "attribute of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        },
        "windDirections": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentWindDirection:SegmentWindDirection"
          },
          "description": "attribute of the resource\n"
        },
        "windSpeeds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentWindSpeed:SegmentWindSpeed"
          },
          "description": "attribute of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "kinds",
        "name",
        "temperatures",
        "timezone",
        "windDirections",
        "windSpeeds"
      ],
      "inputProperties": {
        "altitude": {
          "$ref": "#/types/splight:index%2FSegmentAltitude:SegmentAltitude",
          "description": "attribute of the resource\n"
        },
        "azimuth": {
          "$ref": "#/types/splight:index%2FSegmentAzimuth:SegmentAzimuth",
          "description": "attribute of the resource\n"
        },
        "cumulativeDistance": {
          "$ref": "#/types/splight:index%2FSegmentCumulativeDistance:SegmentCumulativeDistance",
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "referenceSag": {
          "$ref": "#/types/splight:index%2FSegmentReferenceSag:SegmentReferenceSag",
          "description": "attribute of the resource\n"
        },
        "referenceTemperature": {
          "$ref": "#/types/splight:index%2FSegmentReferenceTemperature:SegmentReferenceTemperature",
          "description": "attribute of the resource\n"
        },
        "spanLength": {
          "$ref": "#/types/splight:index%2FSegmentSpanLength:SegmentSpanLength",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSegmentTag:SegmentTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Segment resources.\n",
        "properties": {
          "altitude": {
            "$ref": "#/types/splight:index%2FSegmentAltitude:SegmentAltitude",
            "description": "attribute of the resource\n"
          },
          "azimuth": {
            "$ref": "#/types/splight:index%2FSegmentAzimuth:SegmentAzimuth",
            "description": "attribute of the resource\n"
          },
          "cumulativeDistance": {
            "$ref": "#/types/splight:index%2FSegmentCumulativeDistance:SegmentCumulativeDistance",
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSegmentKind:SegmentKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "referenceSag": {
            "$ref": "#/types/splight:index%2FSegmentReferenceSag:SegmentReferenceSag",
            "description": "attribute of the resource\n"
          },
          "referenceTemperature": {
            "$ref": "#/types/splight:index%2FSegmentReferenceTemperature:SegmentReferenceTemperature",
            "description": "attribute of the resource\n"
          },
          "spanLength": {
            "$ref": "#/types/splight:index%2FSegmentSpanLength:SegmentSpanLength",
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSegmentTag:SegmentTag"
            },
            "description": "tags of the resource\n"
          },
          "temperatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSegmentTemperature:SegmentTemperature"
            },
            "description": "attribute of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          },
          "windDirections": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSegmentWindDirection:SegmentWindDirection"
            },
            "description": "attribute of the resource\n"
          },
          "windSpeeds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSegmentWindSpeed:SegmentWindSpeed"
            },
            "description": "attribute of the resource\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/server:Server": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/server:Server [options] splight_server.<name> <server_id>\n```\n\n",
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerConfig:ServerConfig"
          },
          "description": "static config parameters of the routine\n"
        },
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "envVars": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerEnvVar:ServerEnvVar"
          },
          "description": "environment variables for the server\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the server\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the server to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the server runs\n"
        },
        "ports": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerPort:ServerPort"
          },
          "description": "ports of the server\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the server\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerTag:ServerTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub server\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "version"
      ],
      "inputProperties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerConfig:ServerConfig"
          },
          "description": "static config parameters of the routine\n"
        },
        "description": {
          "type": "string",
          "description": "optional description to add details of the resource\n"
        },
        "envVars": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerEnvVar:ServerEnvVar"
          },
          "description": "environment variables for the server\n"
        },
        "logLevel": {
          "type": "string",
          "description": "log level of the server\n"
        },
        "machineInstanceSize": {
          "type": "string",
          "description": "instance size\n"
        },
        "name": {
          "type": "string",
          "description": "the name of the server to be created\n"
        },
        "node": {
          "type": "string",
          "description": "id of the compute node where the server runs\n"
        },
        "ports": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerPort:ServerPort"
          },
          "description": "ports of the server\n"
        },
        "restartPolicy": {
          "type": "string",
          "description": "restart policy of the server\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FServerTag:ServerTag"
          },
          "description": "tags of the resource\n"
        },
        "version": {
          "type": "string",
          "description": "[NAME-VERSION] the version of the hub server\n"
        }
      },
      "requiredInputs": [
        "version"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Server resources.\n",
        "properties": {
          "configs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FServerConfig:ServerConfig"
            },
            "description": "static config parameters of the routine\n"
          },
          "description": {
            "type": "string",
            "description": "optional description to add details of the resource\n"
          },
          "envVars": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FServerEnvVar:ServerEnvVar"
            },
            "description": "environment variables for the server\n"
          },
          "logLevel": {
            "type": "string",
            "description": "log level of the server\n"
          },
          "machineInstanceSize": {
            "type": "string",
            "description": "instance size\n"
          },
          "name": {
            "type": "string",
            "description": "the name of the server to be created\n"
          },
          "node": {
            "type": "string",
            "description": "id of the compute node where the server runs\n"
          },
          "ports": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FServerPort:ServerPort"
            },
            "description": "ports of the server\n"
          },
          "restartPolicy": {
            "type": "string",
            "description": "restart policy of the server\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FServerTag:ServerTag"
            },
            "description": "tags of the resource\n"
          },
          "version": {
            "type": "string",
            "description": "[NAME-VERSION] the version of the hub server\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/slackGenerator:SlackGenerator": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/slackGenerator:SlackGenerator [options] splight_slack_generator.<name> <slack_generator_id>\n```\n\n",
      "properties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackGeneratorKind:SlackGeneratorKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackGeneratorTag:SlackGeneratorTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "kinds",
        "name",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackGeneratorTag:SlackGeneratorTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SlackGenerator resources.\n",
        "properties": {
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackGeneratorKind:SlackGeneratorKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackGeneratorTag:SlackGeneratorTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/slackLine:SlackLine": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/slackLine:SlackLine [options] splight_slack_line.<name> <slack_line_id>\n```\n\n",
      "properties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackLineKind:SlackLineKind"
          },
          "description": "kind of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "switchStatusEnds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackLineSwitchStatusEnd:SlackLineSwitchStatusEnd"
          },
          "description": "attribute of the resource\n"
        },
        "switchStatusStarts": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackLineSwitchStatusStart:SlackLineSwitchStatusStart"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackLineTag:SlackLineTag"
          },
          "description": "tags of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        }
      },
      "type": "object",
      "required": [
        "kinds",
        "name",
        "switchStatusEnds",
        "switchStatusStarts",
        "timezone"
      ],
      "inputProperties": {
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FSlackLineTag:SlackLineTag"
          },
          "description": "tags of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SlackLine resources.\n",
        "properties": {
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackLineKind:SlackLineKind"
            },
            "description": "kind of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "switchStatusEnds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackLineSwitchStatusEnd:SlackLineSwitchStatusEnd"
            },
            "description": "attribute of the resource\n"
          },
          "switchStatusStarts": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackLineSwitchStatusStart:SlackLineSwitchStatusStart"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FSlackLineTag:SlackLineTag"
            },
            "description": "tags of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/tag:Tag": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@splightplatform/pulumi-splight\";\n\nconst myTag = new splight.Tag(\"myTag\", {});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nmy_tag = splight.Tag(\"myTag\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Splight.Splight;\n\nreturn await Deployment.RunAsync(() => \n{\n    var myTag = new Splight.Tag(\"myTag\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.NewTag(ctx, \"myTag\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.Tag;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myTag = new Tag(\"myTag\");\n\n    }\n}\n```\n```yaml\nresources:\n  myTag:\n    type: splight:Tag\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/tag:Tag [options] splight_tag.<name> <tag_id>\n```\n\n",
      "properties": {
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Tag resources.\n",
        "properties": {
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          }
        },
        "type": "object"
      }
    },
    "splight:index/transformer:Transformer": {
      "description": "## Example Usage\n\n## Import\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import splight:index/transformer:Transformer [options] splight_transformer.<name> <transformer_id>\n```\n\n",
      "properties": {
        "activePowerHvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerActivePowerHv:TransformerActivePowerHv"
          },
          "description": "attribute of the resource\n"
        },
        "activePowerLosses": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerActivePowerLoss:TransformerActivePowerLoss"
          },
          "description": "attribute of the resource\n"
        },
        "activePowerLvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerActivePowerLv:TransformerActivePowerLv"
          },
          "description": "attribute of the resource\n"
        },
        "capacitance": {
          "$ref": "#/types/splight:index%2FTransformerCapacitance:TransformerCapacitance",
          "description": "attribute of the resource\n"
        },
        "conductance": {
          "$ref": "#/types/splight:index%2FTransformerConductance:TransformerConductance",
          "description": "attribute of the resource\n"
        },
        "contingencies": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerContingency:TransformerContingency"
          },
          "description": "attribute of the resource\n"
        },
        "currentHvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerCurrentHv:TransformerCurrentHv"
          },
          "description": "attribute of the resource\n"
        },
        "currentLvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerCurrentLv:TransformerCurrentLv"
          },
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "kinds": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerKind:TransformerKind"
          },
          "description": "kind of the resource\n"
        },
        "maximumAllowedCurrent": {
          "$ref": "#/types/splight:index%2FTransformerMaximumAllowedCurrent:TransformerMaximumAllowedCurrent",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedPower": {
          "$ref": "#/types/splight:index%2FTransformerMaximumAllowedPower:TransformerMaximumAllowedPower",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "reactance": {
          "$ref": "#/types/splight:index%2FTransformerReactance:TransformerReactance",
          "description": "attribute of the resource\n"
        },
        "reactivePowerHvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerReactivePowerHv:TransformerReactivePowerHv"
          },
          "description": "attribute of the resource\n"
        },
        "reactivePowerLosses": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerReactivePowerLoss:TransformerReactivePowerLoss"
          },
          "description": "attribute of the resource\n"
        },
        "reactivePowerLvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerReactivePowerLv:TransformerReactivePowerLv"
          },
          "description": "attribute of the resource\n"
        },
        "resistance": {
          "$ref": "#/types/splight:index%2FTransformerResistance:TransformerResistance",
          "description": "attribute of the resource\n"
        },
        "safetyMarginForPower": {
          "$ref": "#/types/splight:index%2FTransformerSafetyMarginForPower:TransformerSafetyMarginForPower",
          "description": "attribute of the resource\n"
        },
        "standardType": {
          "$ref": "#/types/splight:index%2FTransformerStandardType:TransformerStandardType",
          "description": "attribute of the resource\n"
        },
        "switchStatusHvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerSwitchStatusHv:TransformerSwitchStatusHv"
          },
          "description": "attribute of the resource\n"
        },
        "switchStatusLvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerSwitchStatusLv:TransformerSwitchStatusLv"
          },
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerTag:TransformerTag"
          },
          "description": "tags of the resource\n"
        },
        "tapPos": {
          "$ref": "#/types/splight:index%2FTransformerTapPos:TransformerTapPos",
          "description": "attribute of the resource\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone of the resource (set by the geo-location)\n"
        },
        "voltageHvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerVoltageHv:TransformerVoltageHv"
          },
          "description": "attribute of the resource\n"
        },
        "voltageLvs": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerVoltageLv:TransformerVoltageLv"
          },
          "description": "attribute of the resource\n"
        },
        "xnOhm": {
          "$ref": "#/types/splight:index%2FTransformerXnOhm:TransformerXnOhm",
          "description": "attribute of the resource\n"
        }
      },
      "type": "object",
      "required": [
        "activePowerHvs",
        "activePowerLosses",
        "activePowerLvs",
        "contingencies",
        "currentHvs",
        "currentLvs",
        "kinds",
        "name",
        "reactivePowerHvs",
        "reactivePowerLosses",
        "reactivePowerLvs",
        "switchStatusHvs",
        "switchStatusLvs",
        "timezone",
        "voltageHvs",
        "voltageLvs"
      ],
      "inputProperties": {
        "capacitance": {
          "$ref": "#/types/splight:index%2FTransformerCapacitance:TransformerCapacitance",
          "description": "attribute of the resource\n"
        },
        "conductance": {
          "$ref": "#/types/splight:index%2FTransformerConductance:TransformerConductance",
          "description": "attribute of the resource\n"
        },
        "customTimezone": {
          "type": "string",
          "description": "custom timezone to use instead of the one computed from the geo-location\n"
        },
        "description": {
          "type": "string",
          "description": "description of the resource\n"
        },
        "geometry": {
          "type": "string",
          "description": "geo position and shape of the resource\n"
        },
        "maximumAllowedCurrent": {
          "$ref": "#/types/splight:index%2FTransformerMaximumAllowedCurrent:TransformerMaximumAllowedCurrent",
          "description": "attribute of the resource\n"
        },
        "maximumAllowedPower": {
          "$ref": "#/types/splight:index%2FTransformerMaximumAllowedPower:TransformerMaximumAllowedPower",
          "description": "attribute of the resource\n"
        },
        "name": {
          "type": "string",
          "description": "name of the resource\n"
        },
        "reactance": {
          "$ref": "#/types/splight:index%2FTransformerReactance:TransformerReactance",
          "description": "attribute of the resource\n"
        },
        "resistance": {
          "$ref": "#/types/splight:index%2FTransformerResistance:TransformerResistance",
          "description": "attribute of the resource\n"
        },
        "safetyMarginForPower": {
          "$ref": "#/types/splight:index%2FTransformerSafetyMarginForPower:TransformerSafetyMarginForPower",
          "description": "attribute of the resource\n"
        },
        "standardType": {
          "$ref": "#/types/splight:index%2FTransformerStandardType:TransformerStandardType",
          "description": "attribute of the resource\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/splight:index%2FTransformerTag:TransformerTag"
          },
          "description": "tags of the resource\n"
        },
        "tapPos": {
          "$ref": "#/types/splight:index%2FTransformerTapPos:TransformerTapPos",
          "description": "attribute of the resource\n"
        },
        "xnOhm": {
          "$ref": "#/types/splight:index%2FTransformerXnOhm:TransformerXnOhm",
          "description": "attribute of the resource\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Transformer resources.\n",
        "properties": {
          "activePowerHvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerActivePowerHv:TransformerActivePowerHv"
            },
            "description": "attribute of the resource\n"
          },
          "activePowerLosses": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerActivePowerLoss:TransformerActivePowerLoss"
            },
            "description": "attribute of the resource\n"
          },
          "activePowerLvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerActivePowerLv:TransformerActivePowerLv"
            },
            "description": "attribute of the resource\n"
          },
          "capacitance": {
            "$ref": "#/types/splight:index%2FTransformerCapacitance:TransformerCapacitance",
            "description": "attribute of the resource\n"
          },
          "conductance": {
            "$ref": "#/types/splight:index%2FTransformerConductance:TransformerConductance",
            "description": "attribute of the resource\n"
          },
          "contingencies": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerContingency:TransformerContingency"
            },
            "description": "attribute of the resource\n"
          },
          "currentHvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerCurrentHv:TransformerCurrentHv"
            },
            "description": "attribute of the resource\n"
          },
          "currentLvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerCurrentLv:TransformerCurrentLv"
            },
            "description": "attribute of the resource\n"
          },
          "customTimezone": {
            "type": "string",
            "description": "custom timezone to use instead of the one computed from the geo-location\n"
          },
          "description": {
            "type": "string",
            "description": "description of the resource\n"
          },
          "geometry": {
            "type": "string",
            "description": "geo position and shape of the resource\n"
          },
          "kinds": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerKind:TransformerKind"
            },
            "description": "kind of the resource\n"
          },
          "maximumAllowedCurrent": {
            "$ref": "#/types/splight:index%2FTransformerMaximumAllowedCurrent:TransformerMaximumAllowedCurrent",
            "description": "attribute of the resource\n"
          },
          "maximumAllowedPower": {
            "$ref": "#/types/splight:index%2FTransformerMaximumAllowedPower:TransformerMaximumAllowedPower",
            "description": "attribute of the resource\n"
          },
          "name": {
            "type": "string",
            "description": "name of the resource\n"
          },
          "reactance": {
            "$ref": "#/types/splight:index%2FTransformerReactance:TransformerReactance",
            "description": "attribute of the resource\n"
          },
          "reactivePowerHvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerReactivePowerHv:TransformerReactivePowerHv"
            },
            "description": "attribute of the resource\n"
          },
          "reactivePowerLosses": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerReactivePowerLoss:TransformerReactivePowerLoss"
            },
            "description": "attribute of the resource\n"
          },
          "reactivePowerLvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerReactivePowerLv:TransformerReactivePowerLv"
            },
            "description": "attribute of the resource\n"
          },
          "resistance": {
            "$ref": "#/types/splight:index%2FTransformerResistance:TransformerResistance",
            "description": "attribute of the resource\n"
          },
          "safetyMarginForPower": {
            "$ref": "#/types/splight:index%2FTransformerSafetyMarginForPower:TransformerSafetyMarginForPower",
            "description": "attribute of the resource\n"
          },
          "standardType": {
            "$ref": "#/types/splight:index%2FTransformerStandardType:TransformerStandardType",
            "description": "attribute of the resource\n"
          },
          "switchStatusHvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerSwitchStatusHv:TransformerSwitchStatusHv"
            },
            "description": "attribute of the resource\n"
          },
          "switchStatusLvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerSwitchStatusLv:TransformerSwitchStatusLv"
            },
            "description": "attribute of the resource\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerTag:TransformerTag"
            },
            "description": "tags of the resource\n"
          },
          "tapPos": {
            "$ref": "#/types/splight:index%2FTransformerTapPos:TransformerTapPos",
            "description": "attribute of the resource\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone of the resource (set by the geo-location)\n"
          },
          "voltageHvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerVoltageHv:TransformerVoltageHv"
            },
            "description": "attribute of the resource\n"
          },
          "voltageLvs": {
            "type": "array",
            "items": {
              "$ref": "#/types/splight:index%2FTransformerVoltageLv:TransformerVoltageLv"
            },
            "description": "attribute of the resource\n"
          },
          "xnOhm": {
            "$ref": "#/types/splight:index%2FTransformerXnOhm:TransformerXnOhm",
            "description": "attribute of the resource\n"
          }
        },
        "type": "object"
      }
    }
  },
  "functions": {
    "splight:index/getAssetKinds:getAssetKinds": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst kinds = splight.getAssetKinds({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nkinds = splight.get_asset_kinds()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var kinds = Splight.GetAssetKinds.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetAssetKinds(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var kinds = SplightFunctions.getAssetKinds();\n\n    }\n}\n```\n```yaml\nvariables:\n  kinds:\n    fn::invoke:\n      Function: splight:getAssetKinds\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getAssetKinds.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "kinds": {
            "items": {
              "$ref": "#/types/splight:index%2FgetAssetKindsKind:getAssetKindsKind"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "kinds"
        ],
        "type": "object"
      }
    },
    "splight:index/getBuses:getBuses": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst buses = splight.getBuses({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nbuses = splight.get_buses()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var buses = Splight.GetBuses.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetBuses(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var buses = SplightFunctions.getBuses();\n\n    }\n}\n```\n```yaml\nvariables:\n  buses:\n    fn::invoke:\n      Function: splight:getBuses\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getBuses.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "tags": {
            "items": {
              "$ref": "#/types/splight:index%2FgetBusesTag:getBusesTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    },
    "splight:index/getGenerators:getGenerators": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst generators = splight.getGenerators({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\ngenerators = splight.get_generators()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var generators = Splight.GetGenerators.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetGenerators(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var generators = SplightFunctions.getGenerators();\n\n    }\n}\n```\n```yaml\nvariables:\n  generators:\n    fn::invoke:\n      Function: splight:getGenerators\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getGenerators.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "tags": {
            "items": {
              "$ref": "#/types/splight:index%2FgetGeneratorsTag:getGeneratorsTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    },
    "splight:index/getGrids:getGrids": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst grids = splight.getGrids({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\ngrids = splight.get_grids()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var grids = Splight.GetGrids.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetGrids(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var grids = SplightFunctions.getGrids();\n\n    }\n}\n```\n```yaml\nvariables:\n  grids:\n    fn::invoke:\n      Function: splight:getGrids\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getGrids.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "tags": {
            "items": {
              "$ref": "#/types/splight:index%2FgetGridsTag:getGridsTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    },
    "splight:index/getLines:getLines": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst lines = splight.getLines({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\nlines = splight.get_lines()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var lines = Splight.GetLines.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetLines(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var lines = SplightFunctions.getLines();\n\n    }\n}\n```\n```yaml\nvariables:\n  lines:\n    fn::invoke:\n      Function: splight:getLines\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getLines.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "tags": {
            "items": {
              "$ref": "#/types/splight:index%2FgetLinesTag:getLinesTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    },
    "splight:index/getTags:getTags": {
      "description": "## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as splight from \"@pulumi/splight\";\n\nconst tags = splight.getTags({});\n```\n```python\nimport pulumi\nimport pulumi_splight as splight\n\ntags = splight.get_tags()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Splight = Pulumi.Splight;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var tags = Splight.GetTags.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n\t\"github.com/splightplatform/pulumi-splight/sdk/go/splight\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := splight.GetTags(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.splight.SplightFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var tags = SplightFunctions.getTags();\n\n    }\n}\n```\n```yaml\nvariables:\n  tags:\n    fn::invoke:\n      Function: splight:getTags\n      Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getTags.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.\n",
            "type": "string"
          },
          "tags": {
            "items": {
              "$ref": "#/types/splight:index%2FgetTagsTag:getTagsTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    }
  }
}
