import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
 * This chart type shows the specified plot in a heat map fashion. This format is similar to the [Infrastructure Navigator](https://signalfx-product-docs.readthedocs-hosted.com/en/latest/built-in-content/infra-nav.html#infra), with squares representing each source for the selected metric, and the color of each square representing the value range of the metric.
 *
 * ## Example
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as signalfx from "@pulumi/signalfx";
 *
 * const myheatmapchart0 = new signalfx.HeatmapChart("myheatmapchart0", {
 *     name: "CPU Total Idle - Heatmap",
 *     programText: `myfilters = filter("cluster_name", "prod") and filter("role", "search")
 * data("cpu.total.idle", filter=myfilters).publish()
 * `,
 *     description: "Very cool Heatmap",
 *     disableSampling: true,
 *     sortBy: "+host",
 *     groupBies: [
 *         "hostname",
 *         "host",
 *     ],
 *     hideTimestamp: true,
 *     timezone: "Europe/Paris",
 *     colorRange: {
 *         minValue: 0,
 *         maxValue: 100,
 *         color: "#ff0000",
 *     },
 *     colorScales: [
 *         {
 *             gte: 99,
 *             color: "green",
 *         },
 *         {
 *             lt: 99,
 *             gte: 95,
 *             color: "yellow",
 *         },
 *         {
 *             lt: 95,
 *             color: "red",
 *         },
 *     ],
 * });
 * ```
 */
export declare class HeatmapChart extends pulumi.CustomResource {
    /**
     * Get an existing HeatmapChart 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?: HeatmapChartState, opts?: pulumi.CustomResourceOptions): HeatmapChart;
    /**
     * Returns true if the given object is an instance of HeatmapChart.  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 HeatmapChart;
    /**
     * Values and color for the color range. Example: `colorRange : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    readonly colorRange: pulumi.Output<outputs.HeatmapChartColorRange | undefined>;
    /**
     * One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `colorScale { gt = 60, color = "blue" } colorScale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    readonly colorScales: pulumi.Output<outputs.HeatmapChartColorScale[] | undefined>;
    /**
     * Description of the chart.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
     */
    readonly disableSampling: pulumi.Output<boolean | undefined>;
    /**
     * Properties to group by in the heatmap (in nesting order).
     */
    readonly groupBies: pulumi.Output<string[] | undefined>;
    /**
     * Whether to show the timestamp in the chart. `false` by default.
     */
    readonly hideTimestamp: pulumi.Output<boolean | undefined>;
    /**
     * How long (in seconds) to wait for late datapoints.
     */
    readonly maxDelay: pulumi.Output<number | undefined>;
    /**
     * The minimum resolution (in seconds) to use for computing the underlying program.
     */
    readonly minimumResolution: pulumi.Output<number | undefined>;
    /**
     * Name of the chart.
     */
    readonly name: pulumi.Output<string>;
    /**
     * Signalflow program text for the chart. More info at https://dev.splunk.com/observability/docs/signalflow/.
     */
    readonly programText: pulumi.Output<string>;
    /**
     * How often (in seconds) to refresh the values of the heatmap.
     */
    readonly refreshInterval: pulumi.Output<number | undefined>;
    /**
     * The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
     */
    readonly sortBy: pulumi.Output<string | undefined>;
    /**
     * Tags associated with the resource
     */
    readonly tags: pulumi.Output<string[] | undefined>;
    /**
     * The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
     */
    readonly timezone: pulumi.Output<string | undefined>;
    /**
     * Must be `"Metric"` or `"Binary`". `"Metric"` by default.
     */
    readonly unitPrefix: pulumi.Output<string | undefined>;
    /**
     * The URL of the chart.
     */
    readonly url: pulumi.Output<string>;
    /**
     * Create a HeatmapChart 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: HeatmapChartArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering HeatmapChart resources.
 */
export interface HeatmapChartState {
    /**
     * Values and color for the color range. Example: `colorRange : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    colorRange?: pulumi.Input<inputs.HeatmapChartColorRange>;
    /**
     * One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `colorScale { gt = 60, color = "blue" } colorScale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    colorScales?: pulumi.Input<pulumi.Input<inputs.HeatmapChartColorScale>[]>;
    /**
     * Description of the chart.
     */
    description?: pulumi.Input<string>;
    /**
     * If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
     */
    disableSampling?: pulumi.Input<boolean>;
    /**
     * Properties to group by in the heatmap (in nesting order).
     */
    groupBies?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Whether to show the timestamp in the chart. `false` by default.
     */
    hideTimestamp?: pulumi.Input<boolean>;
    /**
     * How long (in seconds) to wait for late datapoints.
     */
    maxDelay?: pulumi.Input<number>;
    /**
     * The minimum resolution (in seconds) to use for computing the underlying program.
     */
    minimumResolution?: pulumi.Input<number>;
    /**
     * Name of the chart.
     */
    name?: pulumi.Input<string>;
    /**
     * Signalflow program text for the chart. More info at https://dev.splunk.com/observability/docs/signalflow/.
     */
    programText?: pulumi.Input<string>;
    /**
     * How often (in seconds) to refresh the values of the heatmap.
     */
    refreshInterval?: pulumi.Input<number>;
    /**
     * The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
     */
    sortBy?: pulumi.Input<string>;
    /**
     * Tags associated with the resource
     */
    tags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
     */
    timezone?: pulumi.Input<string>;
    /**
     * Must be `"Metric"` or `"Binary`". `"Metric"` by default.
     */
    unitPrefix?: pulumi.Input<string>;
    /**
     * The URL of the chart.
     */
    url?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a HeatmapChart resource.
 */
export interface HeatmapChartArgs {
    /**
     * Values and color for the color range. Example: `colorRange : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    colorRange?: pulumi.Input<inputs.HeatmapChartColorRange>;
    /**
     * One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `colorScale { gt = 60, color = "blue" } colorScale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     */
    colorScales?: pulumi.Input<pulumi.Input<inputs.HeatmapChartColorScale>[]>;
    /**
     * Description of the chart.
     */
    description?: pulumi.Input<string>;
    /**
     * If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
     */
    disableSampling?: pulumi.Input<boolean>;
    /**
     * Properties to group by in the heatmap (in nesting order).
     */
    groupBies?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Whether to show the timestamp in the chart. `false` by default.
     */
    hideTimestamp?: pulumi.Input<boolean>;
    /**
     * How long (in seconds) to wait for late datapoints.
     */
    maxDelay?: pulumi.Input<number>;
    /**
     * The minimum resolution (in seconds) to use for computing the underlying program.
     */
    minimumResolution?: pulumi.Input<number>;
    /**
     * Name of the chart.
     */
    name?: pulumi.Input<string>;
    /**
     * Signalflow program text for the chart. More info at https://dev.splunk.com/observability/docs/signalflow/.
     */
    programText: pulumi.Input<string>;
    /**
     * How often (in seconds) to refresh the values of the heatmap.
     */
    refreshInterval?: pulumi.Input<number>;
    /**
     * The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
     */
    sortBy?: pulumi.Input<string>;
    /**
     * Tags associated with the resource
     */
    tags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
     */
    timezone?: pulumi.Input<string>;
    /**
     * Must be `"Metric"` or `"Binary`". `"Metric"` by default.
     */
    unitPrefix?: pulumi.Input<string>;
}
