import * as pulumi from "@pulumi/pulumi";
/**
 * Provides a Wavefront Dashboard JSON resource. This allows dashboards to be created, updated, and deleted.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as wavefront from "@pulumi/wavefront";
 *
 * const testDashboardJson = new wavefront.DashboardJson("test_dashboard_json", {dashboardJson: `{
 *   "acl": {
 *     "canModify": [
 *       "group-uuid",
 *       "role-uuid"
 *     ],
 *     "canView": [
 *       "group-uuid",
 *       "role-uuid"
 *     ]
 *   },
 *   "name": "Terraform Test Dashboard Json",
 *   "description": "a",
 *   "eventFilterType": "BYCHART",
 *   "eventQuery": "",
 *   "defaultTimeWindow": "",
 *   "url": "tftestimport",
 *   "displayDescription": false,
 *   "displaySectionTableOfContents": true,
 *   "displayQueryParameters": false,
 *   "sections": [
 *     {
 *       "name": "section 1",
 *       "rows": [
 *         {
 *           "charts": [
 *             {
 *               "name": "chart 1",
 *               "sources": [
 *                 {
 *                   "name": "source 1",
 *                   "query": "ts()",
 *                   "scatterPlotSource": "Y",
 *                   "querybuilderEnabled": false,
 *                   "sourceDescription": ""
 *                 }
 *               ],
 *               "units": "someunit",
 *               "base": 0,
 *               "noDefaultEvents": false,
 *               "interpolatePoints": false,
 *               "includeObsoleteMetrics": false,
 *               "description": "This is chart 1, showing something",
 *               "chartSettings": {
 *                 "type": "markdown-widget",
 *                 "max": 100,
 *                 "expectedDataSpacing": 120,
 *                 "windowing": "full",
 *                 "windowSize": 10,
 *                 "autoColumnTags": false,
 *                 "columnTags": "deprecated",
 *                 "tagMode": "all",
 *                 "numTags": 2,
 *                 "customTags": [
 *                   "tag1",
 *                   "tag2"
 *                 ],
 *                 "groupBySource": true,
 *                 "y1Max": 100,
 *                 "y1Units": "units",
 *                 "y0ScaleSIBy1024": true,
 *                 "y1ScaleSIBy1024": true,
 *                 "y0UnitAutoscaling": true,
 *                 "y1UnitAutoscaling": true,
 *                 "fixedLegendEnabled": true,
 *                 "fixedLegendUseRawStats": true,
 *                 "fixedLegendPosition": "RIGHT",
 *                 "fixedLegendDisplayStats": [
 *                   "stat1",
 *                   "stat2"
 *                 ],
 *                 "fixedLegendFilterSort": "TOP",
 *                 "fixedLegendFilterLimit": 1,
 *                 "fixedLegendFilterField": "CURRENT",
 *                 "plainMarkdownContent": "markdown content"
 *               },
 *               "chartAttributes": {
 *                 "dashboardLinks": {
 *                   "*": {
 *                     "variables": {
 *                       "xxx": "xxx"
 *                     },
 *                     "destination": "/dashboards/xxxx"
 *                   }
 *                 }
 *               },
 *               "summarization": "MEAN"
 *             }
 *           ],
 *           "heightFactor": 50
 *         }
 *       ]
 *     }
 *   ],
 *   "parameterDetails": {
 *     "param": {
 *       "hideFromView": false,
 *       "description": null,
 *       "allowAll": null,
 *       "tagKey": null,
 *       "queryValue": null,
 *       "dynamicFieldType": null,
 *       "reverseDynSort": null,
 *       "parameterType": "SIMPLE",
 *       "label": "test",
 *       "defaultValue": "Label",
 *       "valuesToReadableStrings": {
 *         "Label": "test"
 *       },
 *       "selectedLabel": "Label",
 *       "value": "test"
 *     }
 *   },
 *   "tags": {
 *     "customerTags": [
 *       "terraform"
 *     ]
 *   }
 * }
 * `});
 * ```
 *
 * *
 * *Note:
 * ** If there are dynamic variables in the Wavefront dashboard json, then these variables must be present in a separate file as mentioned in the section below.
 *
 * ## Import
 *
 * Dashboard JSON can be imported by using the `id`, e.g.:
 *
 * ```sh
 * $ pulumi import wavefront:index/dashboardJson:DashboardJson dashboard_json tftestimport
 * ```
 */
export declare class DashboardJson extends pulumi.CustomResource {
    /**
     * Get an existing DashboardJson resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DashboardJsonState, opts?: pulumi.CustomResourceOptions): DashboardJson;
    /**
     * Returns true if the given object is an instance of DashboardJson.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is DashboardJson;
    /**
     * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance)
     * for instructions on how to get to your API documentation for more details.
     */
    readonly dashboardJson: pulumi.Output<string>;
    /**
     * Create a DashboardJson resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: DashboardJsonArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering DashboardJson resources.
 */
export interface DashboardJsonState {
    /**
     * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance)
     * for instructions on how to get to your API documentation for more details.
     */
    dashboardJson?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a DashboardJson resource.
 */
export interface DashboardJsonArgs {
    /**
     * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance)
     * for instructions on how to get to your API documentation for more details.
     */
    dashboardJson: pulumi.Input<string>;
}
